为了更好的统一一下调用接口,有两种方法,一种是 继承、一种是用协议,协议有更好的延展性。
// 1. 这里我们采用协议的方式
首先我们定义一个协议 PayDataProtocol (数据协议 )
@protocol PayDataProtocol <NSObject>
@property (nonatomic) NSString * shop_id;//商户id
@property (nonatomic) NSString * shop_no;//商户no
@property (nonatomic) NSString * order_no;//订单号
....
@end
// 2. 支付宝实现这个协议
//数据协议
@interface AliPayDataModel :NSObject< PayDataProtocol >
@property (nonatomic,copy) NSString * shop_id;//商户id
@property (nonatomic,copy) NSString * shop_no;//商户no
@property (nonatomic,copy) NSString * order_no;//订单号
@end
// 3. 执行(这里用单例)
@interface PayActionTool :NSObject
+ (void)startPayWithData:(id< PayDataProtocol >)data block:(void^(NSDictionary*))block;
@end