KWMAPIManager.h 11.1 KB
Newer Older
houweibin committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
//
//  KWMAPIManager.h
//
//  Created by kevin on 3/14/15.
//

#import <Foundation/Foundation.h>

#import "AFNetworking.h"
#import "KWMRequestListResult.h"
#import "KWMRequestResult.h"
#import "KWMCemaroseResult.h"
#import "KWMCustomer.h"
#import "KWMCustomerResult.h"
#import "KWMBrandsResult.h"
#import "KWMSearchResult.h"
#import "KWMBlogResult.h"
#import "KWMNewGoodsModel.h"
#import "KWMNewProducts.h"
#import "KWMProductTypeResult.h"
#import "KWMProductType.h"
#import "KWMBrandsTypeResult.h"
#import "KWMImagesResult.h"
#import "KWMImage.h"
#import "KWMAppVersion.h"
#import "KWMProductResult.h"
#import "KWMProduct.h"
#import "KWMOrdersResult.h"
#import "KWMOrder.h"
#import "KWMExchangeRateResult.h"
lee committed
31
#import "KWMCartResult.h"
32 33
#import "KWMCheckoutPayResult.h"
#import "KWMWechatPayData.h"
houweibin committed
34
#import "KWMOrderPaid.h"
35

houweibin committed
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68



#define KWM_COMMON_DATE_FORMAT @"yyyy-MM-dd HH:mm:ss"
#define KWM_PAGE_SIZE 20
#define SESSID                          @"PHPSESSID"

//#define API_HOST                        @"toyoung.kollway.com"

//#define API_HOST                        @"192.168.0.5"

#define API_HOST                        @"apps.cemarose.com"

#define API_HOST_PORT                   8088

@interface KWMAPIManager : NSObject

@property (nonatomic) NSString *baseUrl;

+ (KWMAPIManager *)sharedManager;
- (NSString *)toAbsoluteUrl:(NSString *)relativeUrl;

/**
 * 手机登录-获取短信API
 * @param parameters {mobile=?手机号}
 * @param success 成功callback
 * @param failure 失败callback
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) phoneSms:(NSDictionary *)parameters
                            success:(void(^)(NSURLSessionDataTask *task,KWMCemaroseResult *result))success
                            failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

lee committed
69 70 71 72 73 74 75 76 77 78

/**
 *  登陆网站接口
 *
 *  @param success <#success description#>
 *  @param failure <#failure description#>
 */
- (void) loginWebSuccess:(void(^)()) success failure:(void(^)(NSError *error)) failure;

/**
79
 *  立即购买使用
lee committed
80 81 82 83 84 85 86 87
 *
 *  @param variantId <#variantId description#>
 *  @param quantity  <#quantity description#>
 *  @param success   <#success description#>
 *  @param failure   <#failure description#>
 *
 *  @return <#return value description#>
 */
88
- (NSURLSessionDataTask *) tmpCartWithVariantId:(NSNumber *) variantId quantity:(NSInteger) quantity success:(void(^)(NSURLSessionDataTask *task,NSString *cartCookie)) success failure:(void(^)(NSURLSessionDataTask *task,NSError *error)) failure;
lee committed
89
/**
90
 *  添加商品到购物车
lee committed
91 92 93 94 95 96 97 98
 *
 *  @param variantId <#variantId description#>
 *  @param quantity  <#quantity description#>
 *  @param success   <#success description#>
 *  @param failure   <#failure description#>
 *
 *  @return <#return value description#>
 */
99
- (NSURLSessionDataTask *) addProductWithVariantId:(NSNumber *) variantId quantity:(NSInteger) quantity success:(void(^)(NSURLSessionDataTask *task,KWMRequestResult *result)) success failure:(void(^)(NSURLSessionDataTask *task,NSError *error)) failure;
lee committed
100 101 102 103 104 105 106 107 108
/**
 *
 *
 *  @param variantId <#variantId description#>
 *  @param success   <#success description#>
 *  @param failure   <#failure description#>
 *
 *  @return <#return value description#>
 */
lee committed
109 110 111 112
- (NSURLSessionDataTask *) changeProductWithVariantId:(NSNumber *) variantId quantity:(NSInteger) quantity success:(void(^)(NSURLSessionDataTask *task,KWMCartResult *result)) success failure:(void(^)(NSURLSessionDataTask *task,NSError *error)) failure;

-(NSURLSessionDataTask *) updateProductWithVariantIds:(NSArray<NSNumber *> *) variantIds quantities:(NSArray<NSNumber *> *) quantities success:(void(^)(NSURLSessionDataTask *task,KWMCartResult *result)) success failure:(void(^)(NSURLSessionDataTask *task,NSError *error)) failure;

lee committed
113 114 115 116 117 118 119 120 121 122
/**
 *  获取系统购物车
 *
 *  @param success <#success description#>
 *  @param failure <#failure description#>
 *
 *  @return <#return value description#>
 */
- (NSURLSessionDataTask *) getCartSuccess:(void(^)(NSURLSessionDataTask *task,KWMCartResult *result)) success failure:(void(^)(NSURLSessionDataTask *task,NSError *error)) failure;

houweibin committed
123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235
/**
 * 手机登录API
 * @param parameters {mobile=?手机号,code=?收到的短信验证码}
 * @param success 成功callback
 * @param failure 失败callback
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) phoneLogin:(NSDictionary *)parameters
                              success:(void(^)(NSURLSessionDataTask *task,KWMCustomerResult *result))success
                              failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;


/**
 * 获取所有品牌
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getAllBrand:(NSDictionary *)parameters
                               success:(void(^)(NSURLSessionDataTask *task,KWMBrandsResult *result))success
                               failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 搜索API
 * @param parameters {keyword=?搜索内容}
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) searchProduct:(NSDictionary *)parameters
                               success:(void(^)(NSURLSessionDataTask *task,KWMSearchResult *result))success
                               failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 博客API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getAllBlog:(NSDictionary *)parameters
                                 success:(void(^)(NSURLSessionDataTask *task,KWMBlogResult *result))success
                                 failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 商品——新品API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getNewProducts:(NSDictionary *)parameters
                              success:(void(^)(NSURLSessionDataTask *task,KWMNewProducts *result))success
                              failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 商品——打折API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getDiscountProducts:(NSDictionary *)parameters
                                       success:(void(^)(NSURLSessionDataTask *task,KWMNewProducts *result))success
                                       failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 获取商品分类API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getProductTypes:(NSDictionary *)parameters type:(NSInteger)type
                                   success:(void(^)(NSURLSessionDataTask *task,KWMProductTypeResult *result))success
                                   failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;
/**
 * 品牌类型--API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getBrandsType:(NSDictionary *)parameters
                                 success:(void(^)(NSURLSessionDataTask *task,KWMBrandsTypeResult *result))success
                                 failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 汇率--API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getExchangeRate:(NSDictionary *)parameters
                                   success:(void(^)(NSURLSessionDataTask *task,KWMExchangeRateResult *result))success
                                   failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 获取获取某个订单api
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getAdminOrder:(NSDictionary *)parameters orderId:(NSNumber *)orderId
                            success:(void(^)(NSURLSessionDataTask *task,KWMOrdersResult *result))success
                            failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 获取产品相关图片--API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getProductImages:(NSDictionary *)parameters productId:(NSNumber *)productId
                                    success:(void(^)(NSURLSessionDataTask *task,KWMImagesResult *result))success
                                    failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 获取商品api,因為admin商品有剩余库存数量字段,所以商品詳細還需要請求此api。
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) getAdminProduct:(NSDictionary *)parameters productId:(NSNumber *)productId
                                   success:(void(^)(NSURLSessionDataTask *task,KWMProductResult *result))success
                                   failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 取消订单api
 * amount 退款金额 (default: false)(十进制:21.20)If set, Shopify will attempt to void/refund the payment depending on the status.
 * restock 是否将此订单商品重新包装会商店 (default: false)
 * reason 订单取消原因 (用户customer, 库存inventory, 假货fraud, 其他other)(default: other)
 * email 发送邮箱通知用户 (default: false)
 * refund 更复杂的退款方式 As specified in the Refund documentation. Required for some more complex refund situations.
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) cancelOrder:(NSDictionary *)parameters orderId:(NSNumber *)orderId
                               success:(void(^)(NSURLSessionDataTask *task,KWMProductResult *result))success
                               failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267
/**
 * 微信统一下单API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) wechatPayUnifiedOrder:(NSDictionary *)parameters
                                         success:(void(^)(NSURLSessionDataTask *task,KWMCheckoutPayResult *result))success
                                         failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 支付宝统一下单API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) aliPayUnifiedOrder:(NSDictionary *)parameters
                                      success:(void(^)(NSURLSessionDataTask *task,KWMCheckoutPayResult *result))success
                                      failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 微信订单查询API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) wechatPayOrderQuery:(NSDictionary *)parameters
                                       success:(void(^)(NSURLSessionDataTask *task,KWMCheckoutPayResult *result))success
                                       failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

/**
 * 支付宝订单查询API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) aliPayOrderQuery:(NSDictionary *)parameters
                                    success:(void(^)(NSURLSessionDataTask *task,KWMCheckoutPayResult *result))success
                                    failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

houweibin committed
268 269 270 271 272 273 274 275
/**
 * 通过checkout_token查询shopify订单API
 * @return NSURLSessionDataTask
 */
- (NSURLSessionDataTask *) appOrderQuery:(NSDictionary *)parameters
                                 success:(void(^)(NSURLSessionDataTask *task,KWMCheckoutPayResult *result))success
                                 failure:(void(^)(NSURLSessionDataTask *task,NSError *error))failure;

houweibin committed
276
@end