// // iSalesNetwork.m // RedAnt ERP Mobile // // Created by Ray on 14-6-20. // Copyright (c) 2014年 United Software Applications, Inc. All rights reserved. // #import "iSalesNetwork.h" #import "RAUtils.h" #import "OLDataProvider.h" @implementation iSalesNetwork +(void) LoadImage:(NSString*) url into:(UIImageView*) container { DebugLog(@"LoadImage:(NSString*) url in:(UIImageView*) container"); NSString* file_name=[url lastPathComponent]; NSData* img_data = [iSalesDB load_cached_img:file_name]; if(img_data==nil) { DebugLog(@"IMG NOT CACHED %@",file_name); img_data = [NSData dataWithContentsOfURL:[NSURL URLWithString:url]]; [iSalesDB cache_img:img_data :file_name ]; //load from internet; } if(img_data!=nil) { UIImage * img =[UIImage imageWithData:img_data]; if(img==nil) DebugLog(@"UIIMAGE IS NIL! %@",file_name); else container.image =img; } else { DebugLog(@"IMG DOWNLOAD FAILED! %@",file_name); } } //+(NSData*)fake_json:(NSString*) url //{ // NSString* jsonfile = nil; // if([url isEqualToString:URL_UPDATE_AUTH]) // { // jsonfile=@"login"; // // } // else if([url isEqualToString:URL_REQUEST_CATMENU]) // { // jsonfile=@"categorymenu"; // } // else if([url isEqualToString:URL_LOAD_HOME]) // { // jsonfile=@"homepage"; // } // else if([url isEqualToString:URL_SEARCH]) // { // jsonfile=@"search"; // } // else if([url isEqualToString:URL_CATEGORY_LOADMORE]) // { // jsonfile=@"category_more"; // }else if([url isEqualToString:URL_ITEM_DETAIL]) // { // jsonfile=@"detail"; // }else if([url isEqualToString:URL_CART]) // { // jsonfile=@"cart"; // }else if([url isEqualToString:URL_ORDER_LIST]) // { // jsonfile=@"orderlist"; // } //// else if([url isEqualToString:URL_ORDER_INFO]) //// { //// jsonfile=@"orderinfo"; //// } //// else if([url isEqualToString:URL_ORDER_INFO]) //// { //// jsonfile=@"orderinfo2label"; //// } // // // // NSData* json =[NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:jsonfile ofType:@"json" ]]; // NSMutableString *result = [[NSMutableString alloc] initWithData:json encoding:NSUTF8StringEncoding]; // // DebugLog(@"result: \n%@",result); // return json; //} +(NSData*)get_json : (NSString*) url parameters:(NSMutableDictionary *) params //delegate:(id < NSURLConnectionDelegate >)delegate { int retry = 0; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; if(appDelegate.ipad_perm!=nil) [params setValue:appDelegate.ipad_perm forKey:@"ipad_perm"]; [params setValue:appDelegate.build forKey:@"app_ver"]; UIDevice * dev = [UIDevice currentDevice]; NSUUID* uuid =dev.identifierForVendor; [params setValue:uuid.UUIDString forKey:@"idfv"]; repeat:{ // return [self fake_json:url]; // AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; //分界线的标识符 NSString *TWITTERFON_FORM_BOUNDARY = @"AaB03x"; //根据url初始化request NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:JSON_TIMEOUT]; //分界线 --AaB03x NSString *MPboundary=[[NSString alloc]initWithFormat:@"--%@",TWITTERFON_FORM_BOUNDARY]; //结束符 AaB03x-- NSString *endMPboundary=[[NSString alloc]initWithFormat:@"%@--",MPboundary]; //要上传的图片 // UIImage *image=[params objectForKey:@"pic"]; //得到图片的data // NSData* data = UIImagePNGRepresentation(image); //http body的字符串 NSMutableString *body=[[NSMutableString alloc]init]; // NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; // [params setValue:@"handset_login" forKey:@"action"]; // [headers setValue:[NSString stringWithFormat:@"%d",dataLength] forKey:@"Content-Length"]; // [params setValue:appDelegate.sessionid forKey:@"sessionid"]; // [params setValue:password forKey:@"password"]; // [params setValue:[NSString stringWithFormat:@"%d",ver] forKey:@"auth_ver"]; // [headers setValue:headQuerlString forKey:@"param"]; //参数的集合的所有key的集合 NSArray *keys= [params allKeys]; DebugLog(@"================parms=================="); //遍历keys for(int i=0;i<[keys count];i++) { //得到当前key NSString *key=[keys objectAtIndex:i]; //如果key不是pic,说明value是字符类型,比如name:Boris if(![key isEqualToString:@"pic"]) { //添加分界线,换行 [body appendFormat:@"%@\r\n",MPboundary]; //添加字段名称,换2行 [body appendFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n",key]; //添加字段的值 [body appendFormat:@"%@\r\n",[params objectForKey:key]]; DebugLog(@"parameter: key=%@ value=%@",key,[params objectForKey:key]); } } DebugLog(@"================parms=================="); ////添加分界线,换行 [body appendFormat:@"%@\r\n",MPboundary]; //声明pic字段,文件名为boris.png [body appendFormat:@"Content-Disposition: form-data; name=\"pic\"; filename=\"boris.png\"\r\n"]; //声明上传文件的格式 [body appendFormat:@"Content-Type: image/png\r\n\r\n"]; //声明结束符:--AaB03x-- NSString *end=[[NSString alloc]initWithFormat:@"\r\n%@",endMPboundary]; //声明myRequestData,用来放入http body NSMutableData *myRequestData=[NSMutableData data]; //将body字符串转化为UTF8格式的二进制 [myRequestData appendData:[body dataUsingEncoding:NSUTF8StringEncoding]]; //将image的data加入 // [myRequestData appendData:data]; //加入结束符--AaB03x-- [myRequestData appendData:[end dataUsingEncoding:NSUTF8StringEncoding]]; //设置HTTPHeader中Content-Type的值 NSString *content=[[NSString alloc]initWithFormat:@"multipart/form-data; boundary=%@",TWITTERFON_FORM_BOUNDARY]; //设置HTTPHeader [request setValue:content forHTTPHeaderField:@"Content-Type"]; // 关闭keep alive [request setValue:@"close" forHTTPHeaderField:@"Connection"]; //设置Content-Length [request setValue:[NSString stringWithFormat:@"%lu", (unsigned long)[myRequestData length]] forHTTPHeaderField:@"Content-Length"]; //设置http body [request setHTTPBody:myRequestData]; //http method [request setHTTPMethod:@"POST"]; NSHTTPURLResponse* urlResponse = nil; NSError *error = [[NSError alloc] init]; NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&error]; DebugLog(@"url: %@",url); DebugLog(@"response: %@",[NSHTTPURLResponse localizedStringForStatusCode:urlResponse.statusCode]); if (responseData==nil) { DebugLog(@"response error:%@", [error localizedDescription]); NSMutableDictionary* ret = [[NSMutableDictionary alloc] init]; //#define RESULT_FALSE 0 //#define RESULT_TRUE 2 //#define RESULT_NET_ERROR -3 //#define RESULT_NET_NOTAVAILABLE -4 //#define RESULT_ERROR -5 //#define RESULT_LOCALFILE_ERROR -7 //#define RESULT_USERAUTH_ERROR -9 //#define RESULT_UPDATE_USERAUTH_ERROR -11 //#define RESULT_SESSION_EXPIRED -13 //#define RESULT_VER_LOW // NSString * moreinfo = error.description ; NSString* err_msg = [error localizedDescription]; //-----------------retry 3 times for error code -1005------------------------ if(error.code==-1005&&retry<3) { retry++; goto repeat; } //-----------------end retry 3 times for error code -1005------------------------ NSDictionary* error_json = [RAUtils error_dict:error]; [ret setObject:error_json forKey:@"err_obj"]; NSString* resp_msg= nil; if(err_msg.length==0) { err_msg =[NSHTTPURLResponse localizedStringForStatusCode:urlResponse.statusCode]; resp_msg = err_msg; } [ret setValue:[NSString stringWithFormat:@"%d",RESULT_NET_ERROR] forKey:@"result"]; [ret setValue:err_msg forKey:@"err_msg"]; [ret setValue:resp_msg forKey:@"resp_msg"]; [ret setValue:[NSString stringWithFormat:@"%ld",(long)urlResponse.statusCode] forKey:@"resp_code"]; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:ret options:0 error:nil]; if(![url isEqualToString:URL_ERR_LOG]) { [iSalesNetwork err_log:[RAUtils base64en:[RAUtils dict2string:params]] result:[RAUtils base64en:[RAUtils dict2string:ret]] module:url]; } return jsonData; } else { NSMutableString *str = [[NSMutableString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; DebugLog(@"data string: %@",str); NSError *error1 = [[NSError alloc] init]; NSMutableDictionary* jsobj = [[NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableContainers error:&error1] mutableCopy]; if(jsobj==nil)// 服务器返回不是json { jsobj=[[NSMutableDictionary alloc] init]; [jsobj setValue:@"1" forKey:@"result"]; } int result=[[jsobj valueForKey:@"result"] intValue]; UIApplication * app = [UIApplication sharedApplication]; AppDelegate *appDelegate = (AppDelegate *)[app delegate]; NSString* mode =[jsobj valueForKey:@"mode"]; [appDelegate SetMode:mode]; switch (result) { case 0: [jsobj setValue:MSG_USERAUTH_ERROR forKey:@"err_msg"]; break; case 1: [jsobj setValue:MSG_ERROR forKey:@"err_msg"]; break; case 2: [jsobj setValue:MSG_SUCCESS forKey:@"err_msg"]; break; case 8: [jsobj setValue:[jsobj valueForKey:@"msg"] forKey:@"err_msg"]; break; case 9: [jsobj setValue:[jsobj valueForKey:@"msg"] forKey:@"err_msg"]; break; default: [jsobj setValue:MSG_ERROR forKey:@"err_msg"]; break; } if([appDelegate.build intValue]< [[jsobj valueForKey:@"min_ver"]intValue]) { [jsobj setValue:@"9" forKey:@"result"]; [jsobj setValue:MSG_VER_LOW forKey:@"err_msg"]; } if(![url isEqualToString:URL_ERR_LOG]&&result!=2) { [iSalesNetwork err_log:[RAUtils base64en:[RAUtils dict2string:params]] result:[RAUtils base64en:str] module:url]; } NSData *jsonData = [NSJSONSerialization dataWithJSONObject:jsobj options:0 error:nil]; return jsonData; } return responseData; } } +(NSString*)DataTOjsonString:(id)object { NSString *jsonString = nil; NSError *error; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:object options:NSJSONWritingPrettyPrinted // Pass 0 if you don't care about the readability of the generated string error:&error]; if (! jsonData) { NSLog(@"Got an error: %@", error); } else { jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding]; } return jsonString; } //+(NSDictionary*)request_Editor:(NSString*) sourceid editor:(NSString*)editor //{ // //} +(NSDictionary*) portfolio_remove:(NSString* ) item_ids { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:item_ids forKey:@"portfolioId"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_PORTFOLIO_REMOVE parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; int result = [[jsobj valueForKey:@"result"] intValue]; if (result==2) { appDelegate.port_count =[[jsobj valueForKey:@"portfolio_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*) watchlist_remove:(NSString* ) item_ids { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:item_ids forKey:@"collectId"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_WATCHLIST_REMOVE parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; int result = [[jsobj valueForKey:@"result"] intValue]; if (result==2) { //appDelegate.cart_count = [[jsobj valueForKey:@"cart_count"] intValue]; appDelegate.wish_count =[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =[[jsobj valueForKey:@"portfolio_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*) move_cart2wish:(NSString* ) item_ids { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; if(appDelegate.order_code!=nil) [params setValue:appDelegate.order_code forKey:@"orderCode"]; [params setValue:item_ids forKey:@"cartItemId"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_CART2WISH parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; int result = [[jsobj valueForKey:@"result"] intValue]; if (result==2) { //appDelegate.cart_count = [[jsobj valueForKey:@"cart_count"] intValue]; appDelegate.wish_count =[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =[[jsobj valueForKey:@"portfolio_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*) move_wish2cart:(NSString* ) item_ids { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; if(appDelegate.order_code!=nil) [params setValue:appDelegate.order_code forKey:@"orderCode"]; [params setValue:item_ids forKey:@"collectId"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_WISH2CART parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; int result = [[jsobj valueForKey:@"result"] intValue]; if (result==2) { //appDelegate.cart_count = [[jsobj valueForKey:@"cart_count"] intValue]; appDelegate.wish_count =[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =[[jsobj valueForKey:@"portfolio_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*) cart_remove:(NSString* ) item_ids { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; if(appDelegate.order_code!=nil) [params setValue:appDelegate.order_code forKey:@"orderCode"]; [params setValue:item_ids forKey:@"cartItemId"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_CART_REMOVE parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; int result = [[jsobj valueForKey:@"result"] intValue]; if (result==2) { appDelegate.cart_count = [[jsobj valueForKey:@"cart_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*) cart_check:(NSString* ) item_ids { return nil; if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:item_ids forKey:@"cartItemId"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_CART_CHECK parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)create_Address:(NSMutableDictionary*)params { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; // NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_ADDRESS_SAVE parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)copy_Order:(NSString*) order_code { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; // NSString* ssaved = @"false"; // if(saved) // ssaved=@"true"; // [params setValue:@"true" forKey:@"saved"]; [params setValue:order_code forKey:@"code"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_COPY_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)sign_Order:(NSString*) order_code path:(NSString*)path { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; // NSString* ssaved = @"false"; // if(saved) // ssaved=@"true"; // [params setValue:@"true" forKey:@"saved"]; [params setValue:order_code forKey:@"orderCode"]; [params setValue:path forKey:@"picpath"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_SIGN_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)commit_Order:(NSString*) order_code //saved:(bool) saved { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; // NSString* ssaved = @"false"; // if(saved) // ssaved=@"true"; [params setValue:@"true" forKey:@"saved"]; [params setValue:order_code forKey:@"orderCode"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_COMMIT_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)open_Order:(NSString*) order_code { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; // if(appDelegate.contact_id!=nil) // [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:order_code forKey:@"orderCode"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_OPEN_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; int result = [[jsobj valueForKey:@"result"] intValue]; if (result==2) { appDelegate.cart_count = [[jsobj valueForKey:@"cart_count"] intValue]; //appDelegate.wish_count =[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =[[jsobj valueForKey:@"portfolio_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*)delete_Order:(NSString*) order_id { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; // if(appDelegate.contact_id!=nil) // [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:order_id forKey:@"orderId"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_DELETE_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)cancel_Order:(NSString*) order_id { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; // if(appDelegate.contact_id!=nil) // [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:order_id forKey:@"orderId"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_CANCEL_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)release_Order:(NSString*) order_code { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; // if(appDelegate.contact_id!=nil) // [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; [params setValue:order_code forKey:@"orderCode"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_RELEASE_ORDER parameters:params]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; if([[jsobj valueForKey:@"result"]intValue]==2) { [appDelegate SetSo:nil]; appDelegate.cart_count = [[jsobj valueForKey:@"cart_count"] intValue]; //appDelegate.wish_count =[[jsobj valueForKey:@"wish_count"] intValue]; // appDelegate.port_count =[[jsobj valueForKey:@"portfolio_count"] intValue]; [appDelegate update_count_mark]; } return jsobj; } else return nil; } +(NSDictionary*)update_OrderCustomer:(NSString*) order_code customerinfo:(NSMutableDictionary*)info { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; // NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [info setValue:appDelegate.user forKey:@"user"]; // if(appDelegate.contact_id!=nil) // [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [info setValue:appDelegate.password forKey:@"password"]; [info setValue:order_code forKey:@"orderCode"]; // [params setValue:sourceid forKey:@"sourceid"]; // [params setValue:editor forKey:@"editor"]; NSData* json=[self get_json:URL_UPDATE_ORDERCUSTOMER parameters:info]; if(json!=nil) { NSError *error=nil; NSDictionary *jsobj = [NSJSONSerialization JSONObjectWithData:json options:NSJSONReadingMutableLeaves error:&error]; return jsobj; } else return nil; } +(NSDictionary*)saveandcommit_Order:(NSMutableDictionary*)params { if(![self IsNetworkAvailable]) return [RAUtils error_json:RESULT_NET_NOTAVAILABLE err_msg:nil]; // NSMutableDictionary* params = [[NSMutableDictionary alloc] init]; AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate]; if(appDelegate.user!=nil) [params setValue:appDelegate.user forKey:@"user"]; if(appDelegate.contact_id!=nil) [params setValue:appDelegate.contact_id forKey:@"contactId"]; if(appDelegate.password!=nil) [params setValue:appDelegate.password forKey:@"password"]; if(appDelegate.order_code!=nil) [params setValue:appDelegate.order_code forKey:@"orderCode"]; // NSDictionary* customerinfo= appDelegate.customerInfo; // // NSArray* keys=[customerinfo allKeys]; // for(int i=0;i" intoString:&text] ; // // replace the found tag with a space // //(you can filter multi-spaces out later if you wish) // html = [html stringByReplacingOccurrencesOfString: // [ NSString stringWithFormat:@"%@>", text] // withString:@""]; // } // // return trim ? [html stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] : html; //} // //+(NSString *)flattenURL:(NSString *)url trimWhiteSpace:(BOOL)trim //{ // NSScanner *theScanner = [NSScanner scannerWithString:url]; // NSString *text = nil; // // while ([theScanner isAtEnd] == NO) { // // find start of tag // [theScanner scanUpToString:@"/" intoString:NULL] ; // // find end of tag // [theScanner scanUpToString:@"/" intoString:&text] ; // // replace the found tag with a space // //(you can filter multi-spaces out later if you wish) // url = [url stringByReplacingOccurrencesOfString: // [ NSString stringWithFormat:@"%@", text] // withString:@""]; // } // // return trim ? [url stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] : url; //} @end