// // AFNOHeaderHttpTool.m // Ifish // // Created by imac on 16/10/27. // Copyright © 2016年 lianxiang. All rights reserved. // #import "AFNOHeaderHttpTool.h" #import "AFNetworking.h" #import "SVProgressHUD.h" #import "IfishDeviceInfo.h" #define ContentType @"text/html" @implementation AFNOHeaderHttpTool - (instancetype)init { self = [super init]; if (self) { // _manager = [AFHTTPSessionManager manager]; // //请求超时时间为15秒 // _manager.requestSerializer.timeoutInterval = 15; // _manager.requestSerializer = [AFJSONRequestSerializer serializer]; // _manager.responseSerializer = [AFJSONResponseSerializer serializer]; // // // 内容类型 // _manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html", nil]; } return self; } + (AFNOHeaderHttpTool *)sharedInstance { static AFNOHeaderHttpTool *_instance = nil; static dispatch_once_t once; dispatch_once(&once, ^{ _instance = [[self alloc] init]; }); return _instance; } -(NSString *)getRequestPath:(NSString *)urlPath keysArray:(NSArray *)keys valuesArray:(NSArray *)values{ urlPath = [urlPath stringByAppendingString:@"?"]; for (int i=0; i0 && // error == nil){ // [SVProgressHUD dismissWithDelay:0.3]; // id result=[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil]; // NSLog(@"获取数据 resalut = %@",result); // if ([result isKindOfClass:[NSDictionary class]]) { //// NSString *resCode = [NSString stringWithFormat:@"%@",[result objectForKey:RESPONSE_CODE]];//状态码 //// //返回数据正确 ,则解析到数据接收内容 //// if([resCode integerValue]==kReqSuccess) //// { // /** // 获取后台给定的正确码100,做逻辑处理 // */ // dispatch_async(dispatch_get_main_queue(), ^{ // //直接显示成功信息 // success(result); // }); //// }else{ //// /* //// 获取后台给定的其他错误码,做逻辑处理(暂无数据等) //// */ //// dispatch_async(dispatch_get_main_queue(), ^{ //// failure(result); //// }); //// } // }else{ // NSLog(@"json格式错误"); // } // }else if ([data length] == 0 && // error == nil){ // //请求数据长度为0(服务器返回数据内容问题) // [SVProgressHUD dismiss]; // }else if (error != nil){ // //反馈错误信息(网络连接失败(服务器关停)等信息) // if (error) { // [SVProgressHUD dismiss]; // } // } // }]; // [sessionDataTask resume]; //} +(void) requestWihtMethod:(RequestType) methodType url : (NSString *)url params:(NSDictionary *)params success:(void (^)(id response))success failure:(void (^)(NSError *err))failure { // NSURL* baseURL = [NSURL URLWithString:DEV_IFISH_SERVER]; // //获得请求管理者 // AFHTTPRequestOperationManager*manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:baseURL]; AFHTTPRequestOperationManager*manager=[AFHTTPRequestOperationManager manager]; //此类中接口 无安全校验 manager.responseSerializer=[AFHTTPResponseSerializer serializer]; manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html", nil];; //#ifdef ContentType // manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:ContentType]; //#endif // manager.requestSerializer.HTTPShouldHandleCookies = YES; switch (methodType) { case RequestTypeGet: { //GET请求 [manager GET:url parameters:params success:^(AFHTTPRequestOperation* operation, NSDictionary* responseObj) { if (success) { success(responseObj); } } failure:^(AFHTTPRequestOperation* operation, NSError* error) { if (failure) { failure(error); } }]; } break; case RequestTypePost: { //POST请求 [manager POST:url parameters:params success:^(AFHTTPRequestOperation* operation, NSDictionary* responseObj) { if (success) { [SVProgressHUD dismiss]; success(responseObj); } } failure:^(AFHTTPRequestOperation* operation, NSError* error) { if (failure){ [SVProgressHUD dismiss]; failure(error); } }]; } break; default: break; } } +(void)saveCustomIconWith:(NSNumber*)UserId deviceId:(NSString*)deviceId customIconName:(NSString*)customIconName customShowName:(NSString*)customShowName success:(void (^)(id response))success failure:(void (^)(NSError* err))failure{ NSDictionary*para=@{ @"priId.userId":UserId, @"priId.deviceId":deviceId, @"customShowName":customShowName, @"customIconName":customIconName }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:kSaveCustomIcon params:para success:success failure:failure]; } +(void)getLookReportById:(NSString *)reportId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"reportId":reportId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishgetLookReportById params:para success:success failure:failure]; } +(void)deleteDeviceCameraWith:(NSString *)cameraId deiviceId:(NSString *)deiviceId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"cameraId":cameraId, @"deviceId":deiviceId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishdeleteDeviceCamera params:para success:success failure:failure]; } +(void)kanHuKaiGuanWith:(NSString *)cameraId userId:(NSString *)userId status:(NSString *)status success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"cameraId":cameraId, @"userId":userId, @"status":status }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishOnOffLook params:para success:success failure:failure]; } +(void)deviceBindCameraWith:(NSString *)cameraId userId:(NSNumber *)userId deviceId:(DeviceModel *)device success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"cameraId":cameraId, @"deviceId":device.deviceId, @"userId": userId }; NSMutableDictionary*paradic=[[NSMutableDictionary alloc]initWithDictionary:para]; if ([device.type isEqualToString:DECICE_TYPE_XUANDUO3F]) { paradic[@"type"]=@"1"; } [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishdeviceBindCamera params:para success:success failure:failure]; } +(void)getKanHuListWithShopsId:(NSString *)shopsUserId firstResult:(NSString *)firstResult pageSize:(NSString *)pageSize success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"shopsUserId":shopsUserId, @"firstResult":firstResult, @"pageSize":pageSize }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishlookList params:para success:success failure:failure]; } +(void)bindCameraWith:(NSString *)cameraId userId:(NSNumber *)userId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"cameraId":cameraId, @"userId":userId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishBindCamera params:para success:success failure:failure]; } +(void)setRemindWaterInfWith:(NSString*)deviceId waterRemind:(NSString*)waterRemind remindCycle:(NSString*)remindCycle success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { if ([deviceId isKindOfClass:[NSNumber class]]) { NSString*devid=[NSString stringWithFormat:@"%@",deviceId]; deviceId=devid; } NSString*macid=[[deviceId componentsSeparatedByString:@"_"] firstObject]; NSString*deviceType=[[deviceId componentsSeparatedByString:@"_"] lastObject]; NSString*type=@"0";//0换水 1杀菌 if ([deviceType isEqualToString:@"3f"]) { type=@"1"; } NSDictionary*para=@{ @"deviceId":macid, @"waterRemind":waterRemind, @"remindCycle":remindCycle, @"type":type }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:kSetRemindWaterInf params:para success:success failure:failure]; } +(void)getRemindWaterInfwith:(NSString*)deviceId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"deviceId":deviceId, }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:kGetRemindWaterInf params:para success:success failure:failure]; } +(void)scanCodeActiveCamea:(NSString *)cameraId deiviceId:(NSString *)deiviceId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"cameraId":cameraId, @"deviceId":deiviceId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:JiHuoSheXiangTou params:para success:success failure:failure]; } +(void)getShopsStatus:(NSString *)shopsId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure{ NSDictionary*para=@{ @"shopsId":shopsId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishGetShopsStatus params:para success:success failure:failure]; } +(void)xuanZeKanHuShangJia:(NSString *)shopsPhone yongHuId:(NSNumber *)userId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"phoneNumber":shopsPhone, @"userId":userId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishChoiceShops params:para success:success failure:failure]; } +(void)sendReportWithUserId:(NSString * )userId baoGaoHtmlName:(NSString *)fileName reportId:(NSString *)reportId success:(void (^)(id response))success failure:(void (^)(NSError* err))failure { NSDictionary*para=@{ @"userId":userId, @"fileName":fileName, @"reportId":reportId }; [AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishSendReport params:para success:success failure:failure]; } -(NSDictionary *)getErrorDict:( NSError *)error { NSMutableDictionary * resalut = InitObject(NSMutableDictionary); [resalut setObject:[NSString stringWithFormat:@"%ld",error.code] forKey:RESPONSE_CODE]; [resalut setObject:error.domain forKey:RESPONSE_MESSAGE]; return resalut; } @end