Ver Fonte

修复底层网络底层接口导致后台报错的问题

Ray Zhang há 6 anos atrás
pai
commit
64601b8d2d

+ 7 - 2
Apex Mobile/Apex Mobile/RANetwork.m

@@ -2427,7 +2427,7 @@
     
     params[@"action"]=@"handset_search";
     
-    [self request_interface_d:URL_SEARCH_RESULT parameters:params err_record_url:nil completionHandler:^(NSMutableDictionary *resultjson) {
+    [self request_interface:URL_SEARCH_RESULT parameters:params err_record_url:nil completionHandler:^(NSMutableDictionary *resultjson) {
             NSMutableDictionary *resultDic = resultjson;
         
             // detail data in local database
@@ -2645,8 +2645,13 @@
 
 + (void)request_download:(NSMutableDictionary *)params url:(NSString *)url completionHandler:(resultHandler)result
 {
+    
+#ifdef test_server
+    url=URL_REQUEST_RECORDS;
+    params[@"prefix"]=URL_REQUEST_RECORDS;
+#endif
 //    params = [self prepare_addtional_params:params];
-    [NetworkUtils request_file:url parameters:params err_record_url:nil completionHandler:result];
+    [self request_file:url parameters:params err_record_url:nil completionHandler:result];
     
 }
 @end

+ 84 - 84
Apex Mobile/Apex Mobile/Result/Presenter/ApexResultPresenter.m

@@ -105,90 +105,90 @@ static const NSInteger detal = 20;
     
     __weak typeof(self) weakSelf = self;
     
-//    
-//    NSMutableDictionary *params = [self.params mutableCopy];
-//    [params setObject:[NSNumber numberWithInteger:offset] forKey:@"offset"];
-//    [params setObject:[NSNumber numberWithInteger:detal] forKey:@"limit"];
-//    [params setObject:displayFields forKey:@"columns"];
-//    
-//    
-//    [RANetwork request_result:params completionHandler:^(NSMutableDictionary *result) {
-//        
-//        NSMutableDictionary * json = result;
-//            __strong typeof(weakSelf) strongSelf = weakSelf;
-//            
-//            int resultcode = [[json objectForKey:@"result"] intValue];
-//            if (resultcode == RESULT_TRUE) {
-//                
-//                NSMutableArray *modelsArr = [NSMutableArray array];
-//                if (option == ApexResultFetchDataTypeLoadMore && strongSelf.dataArray != nil && strongSelf.dataArray.count > 0) {
-//                    [modelsArr addObjectsFromArray:strongSelf.dataArray];
-//                }
-//                
-//                NSArray *items = [json objectForKey:@"items"];
-//                for (NSDictionary *item in items) {
-//                    
-//                    NSInteger type = [[item objectForKey:@"type"] integerValue];
-//                    
-//                    switch (type) {
-//                        case ApexResultTypeBooking: {
-//                            ApexResultBookingModel *model = [ApexResultBookingModel new];
-//                            [model setValuesForKeysWithDictionary:item];
-//                            [modelsArr addObject:model];
-//                        }
-//                            break;
-//                        case ApexResultTypeBLInfo: {
-//                            ApexResultBLInfoModel *model = [ApexResultBLInfoModel new];
-//                            [model setValuesForKeysWithDictionary:item];
-//                            [modelsArr addObject:model];
-//                        }
-//                            break;
-//                        case ApexResultTypeContainer: {
-//                            ApexResultContainerModel *model = [ApexResultContainerModel new];
-//                            [model setValuesForKeysWithDictionary:item];
-//                            [modelsArr addObject:model];
-//                        }
-//                            break;
-//                        case ApexResultTypeDocument: {
-//                            ApexResultDocumentModel *model = [ApexResultDocumentModel new];
-//                            [model setValuesForKeysWithDictionary:item];
-//                            [modelsArr addObject:model];
-//                        }
-//                            break;
-//                        default:
-//                            break;
-//                    }
-//                    
-//                } // for
-//                strongSelf.offset = modelsArr.count;
-//                
-//                NSString *title = [json objectForKey:@"title"];
-//                strongSelf.rowActions = [json objectForKey:@"row_actions"];
-//                strongSelf.actions = [json objectForKey:@"actions"];
-//                
-//                // menu
-//                NSArray *menuArr = [json objectForKey:@"menu"];
-//                if (menuArr) {
-//                    NSMutableArray *tmpArr = [NSMutableArray array];
-//                    for (NSDictionary *item in menuArr) {
-//                        
-//                        ApexResultMenuItem *menuItem = [ApexResultMenuItem new];
-//                        [menuItem setValuesForKeysWithDictionary:item];
-//                        [tmpArr addObject:menuItem];
-//                    }
-//                    strongSelf.menuItems = [tmpArr copy];
-//                }
-//                
-//                // refresh UI
-//                [strongSelf loadDataSuccessWithTitle:title itemsArray:modelsArr itemCount:items.count];
-//                
-//            } else {
-//                [strongSelf loadDataFailed];
-//            }
-//        
-//    }];
-//    
-//    return;
+    
+    NSMutableDictionary *params = [self.params mutableCopy];
+    [params setObject:[NSNumber numberWithInteger:offset] forKey:@"offset"];
+    [params setObject:[NSNumber numberWithInteger:detal] forKey:@"limit"];
+    [params setObject:displayFields forKey:@"columns"];
+    
+    
+    [RANetwork request_result:params completionHandler:^(NSMutableDictionary *result) {
+        
+        NSMutableDictionary * json = result;
+            __strong typeof(weakSelf) strongSelf = weakSelf;
+            
+            int resultcode = [[json objectForKey:@"result"] intValue];
+            if (resultcode == RESULT_TRUE) {
+                
+                NSMutableArray *modelsArr = [NSMutableArray array];
+                if (option == ApexResultFetchDataTypeLoadMore && strongSelf.dataArray != nil && strongSelf.dataArray.count > 0) {
+                    [modelsArr addObjectsFromArray:strongSelf.dataArray];
+                }
+                
+                NSArray *items = [json objectForKey:@"items"];
+                for (NSDictionary *item in items) {
+                    
+                    NSInteger type = [[item objectForKey:@"type"] integerValue];
+                    
+                    switch (type) {
+                        case ApexResultTypeBooking: {
+                            ApexResultBookingModel *model = [ApexResultBookingModel new];
+                            [model setValuesForKeysWithDictionary:item];
+                            [modelsArr addObject:model];
+                        }
+                            break;
+                        case ApexResultTypeBLInfo: {
+                            ApexResultBLInfoModel *model = [ApexResultBLInfoModel new];
+                            [model setValuesForKeysWithDictionary:item];
+                            [modelsArr addObject:model];
+                        }
+                            break;
+                        case ApexResultTypeContainer: {
+                            ApexResultContainerModel *model = [ApexResultContainerModel new];
+                            [model setValuesForKeysWithDictionary:item];
+                            [modelsArr addObject:model];
+                        }
+                            break;
+                        case ApexResultTypeDocument: {
+                            ApexResultDocumentModel *model = [ApexResultDocumentModel new];
+                            [model setValuesForKeysWithDictionary:item];
+                            [modelsArr addObject:model];
+                        }
+                            break;
+                        default:
+                            break;
+                    }
+                    
+                } // for
+                strongSelf.offset = modelsArr.count;
+                
+                NSString *title = [json objectForKey:@"title"];
+                strongSelf.rowActions = [json objectForKey:@"row_actions"];
+                strongSelf.actions = [json objectForKey:@"actions"];
+                
+                // menu
+                NSArray *menuArr = [json objectForKey:@"menu"];
+                if (menuArr) {
+                    NSMutableArray *tmpArr = [NSMutableArray array];
+                    for (NSDictionary *item in menuArr) {
+                        
+                        ApexResultMenuItem *menuItem = [ApexResultMenuItem new];
+                        [menuItem setValuesForKeysWithDictionary:item];
+                        [tmpArr addObject:menuItem];
+                    }
+                    strongSelf.menuItems = [tmpArr copy];
+                }
+                
+                // refresh UI
+                [strongSelf loadDataSuccessWithTitle:title itemsArray:modelsArr itemCount:items.count];
+                
+            } else {
+                [strongSelf loadDataFailed];
+            }
+        
+    }];
+    
+    return;
     
     dispatch_async(dispatch_get_global_queue(0, 0), ^{
         

+ 34 - 32
Apex Mobile/Apex Mobile/config.h

@@ -21,48 +21,50 @@
 
 #ifdef test_server
 
-    #define URL_HOME                @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_HISTORY             @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_UPDATE_AUTH         @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_REQUEST_COUNT       @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_REQUEST_RECORDS     @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_RETRIEVE_PASS       @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_REQUEST_DETAIL      @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_ANNOUNCEMENTS       @"http://192.168.0.138:8899/mobile_news.php"
-    #define URL_NEWS                @"http://192.168.0.138:8899/mobile_news.php"
-    #define URL_LOCATIONS           @"http://192.168.0.138:8899/mobile_news26.php"
-    #define URL_PUSH                @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_KPI                 @"http://192.168.0.138:8899/main_new_26.php"
+    #define URL_HOME                @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_HISTORY             @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_UPDATE_AUTH         @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_REQUEST_COUNT       @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_REQUEST_RECORDS     @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_RETRIEVE_PASS       @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_REQUEST_DETAIL      @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_ANNOUNCEMENTS       @"http://192.168.50.15:8888/mobile_news.php"
+    #define URL_NEWS                @"http://192.168.50.15:8888/mobile_news.php"
+    #define URL_LOCATIONS           @"http://192.168.50.15:8888/mobile_news26.php"
+    #define URL_PUSH                @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_KPI                 @"http://192.168.50.15:8888/main_new_26.php"
     #define URL_ERR_LOG             @""
-    #define URL_SEND_COMM_EMAIL     @"http://192.168.0.138:8899/main_new_26.php"
+    #define URL_SEND_COMM_EMAIL     @"http://192.168.50.15:8888/main_new_26.php"
 
     // 2019.1.4
-    #define URL_UPLOAD_SQL     @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_SAVE_RESULT     @"http://192.168.0.138:8899/main_new_26.php"
-    #define URL_SEARCH_RESULT     @"http://192.168.0.138:8899/main_new_26.php"
+    #define URL_UPLOAD_SQL     @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_SAVE_RESULT     @"http://192.168.50.15:8888/main_new_26.php"
+    #define URL_SEARCH_RESULT     @"http://192.168.50.15:8888/main_new_26.php"
+    //2020.01.09
+    #define URL_PRIVACY    @"https://ra.apexshipping.com/t/privacyPolicy.html"
 
 #else
     #ifdef old_server
 
-        #define URL_HOME                @"http://192.168.0.138:8899/main_new.php"
-        #define URL_HISTORY             @"http://192.168.0.138:8899/main_new.php"
-        #define URL_UPDATE_AUTH         @"http://192.168.0.138:8899/main_new.php"
-        #define URL_REQUEST_COUNT       @"http://192.168.0.138:8899/main_new.php"
-        #define URL_REQUEST_RECORDS     @"http://192.168.0.138:8899/main_new.php"
-        #define URL_RETRIEVE_PASS       @"http://192.168.0.138:8899/main_new.php"
-        #define URL_REQUEST_DETAIL      @"http://192.168.0.138:8899/main_new.php"
-        #define URL_ANNOUNCEMENTS       @"http://192.168.0.138:8899/mobile_news.php"
-        #define URL_NEWS                @"http://192.168.0.138:8899/mobile_news.php"
-        #define URL_LOCATIONS           @"http://192.168.0.138:8899/mobile_news.php"
-        #define URL_PUSH                @"http://192.168.0.138:8899/main_new.php"
-        #define URL_KPI                 @"http://192.168.0.138:8899/main_new.php"
+        #define URL_HOME                @"http://192.168.50.15:8888/main_new.php"
+        #define URL_HISTORY             @"http://192.168.50.15:8888/main_new.php"
+        #define URL_UPDATE_AUTH         @"http://192.168.50.15:8888/main_new.php"
+        #define URL_REQUEST_COUNT       @"http://192.168.50.15:8888/main_new.php"
+        #define URL_REQUEST_RECORDS     @"http://192.168.50.15:8888/main_new.php"
+        #define URL_RETRIEVE_PASS       @"http://192.168.50.15:8888/main_new.php"
+        #define URL_REQUEST_DETAIL      @"http://192.168.50.15:8888/main_new.php"
+        #define URL_ANNOUNCEMENTS       @"http://192.168.50.15:8888/mobile_news.php"
+        #define URL_NEWS                @"http://192.168.50.15:8888/mobile_news.php"
+        #define URL_LOCATIONS           @"http://192.168.50.15:8888/mobile_news.php"
+        #define URL_PUSH                @"http://192.168.50.15:8888/main_new.php"
+        #define URL_KPI                 @"http://192.168.50.15:8888/main_new.php"
         #define URL_ERR_LOG             @""
-        #define URL_SEND_COMM_EMAIL     @"http://192.168.0.138:8899/main_new.php"
+        #define URL_SEND_COMM_EMAIL     @"http://192.168.50.15:8888/main_new.php"
 
         // 2019.1.4
-        #define URL_UPLOAD_SQL     @"http://192.168.0.138:8899/main_new.php"
-        #define URL_SAVE_RESULT     @"http://192.168.0.138:8899/main_new.php"
-        #define URL_SEARCH_RESULT     @"http://192.168.0.138:8899/main_new.php"
+        #define URL_UPLOAD_SQL     @"http://192.168.50.15:8888/main_new.php"
+        #define URL_SAVE_RESULT     @"http://192.168.50.15:8888/main_new.php"
+        #define URL_SEARCH_RESULT     @"http://192.168.50.15:8888/main_new.php"
     #else
 
         #define URL_HOME                @"https://ra.apexshipping.com/main_new_26.php"

+ 1 - 1
Redant Drivers/Apex And Drivers.xcodeproj/project.pbxproj

@@ -1397,6 +1397,7 @@
 		71EAA33020B9571B002F003C /* Apex And Drivers */ = {
 			isa = PBXGroup;
 			children = (
+				42529D2620C0E98A000C0F4D /* Config */,
 				42DCCC4821818CF90027A5BB /* DatePicker */,
 				42C6074921536E59003E5379 /* ExceptionHandler */,
 				42DFE267213F81F8000213C2 /* EmptyView */,
@@ -1406,7 +1407,6 @@
 				42810FF420E4D46F00315156 /* Refresh */,
 				4205FD4C20C0F50C00DB42B4 /* Alert */,
 				42529D2820C0E9CE000C0F4D /* Utils */,
-				42529D2620C0E98A000C0F4D /* Config */,
 				42529D2220C0E91E000C0F4D /* DataProvider */,
 				42529D1E20C0E8C4000C0F4D /* Network */,
 				4205FD5920C1313F00DB42B4 /* BaseViewController */,

+ 3 - 3
common/NetworkUtils.h

@@ -32,7 +32,7 @@ typedef void(^dataHandler)(NSData *data);
 
 // 2020 新增网络访问底层接口,取代get_json
 // 普通请求
-+(NSData*)request_interface : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result retry:(int) retry;
-+(NSData*)request_file : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result;
-+(NSData*)request_interface_d : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result retry:(int) retry;
++(void)request_interface : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result retry:(int) retry;
++(void)request_file : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result;
++(void)request_interface_d : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result retry:(int) retry;
 @end

+ 16 - 9
common/NetworkUtils.m

@@ -667,7 +667,7 @@ repeat:
         
         */
         //声明结束符:--AaB03x--
-        NSString *end=[[NSString alloc]initWithFormat:@"\r\n%@",endMPboundary];
+        NSString *end=[[NSString alloc]initWithFormat:@"%@",endMPboundary];
         //声明myRequestData,用来放入http body
         NSMutableData *myRequestData=[NSMutableData data];
         //将body字符串转化为UTF8格式的二进制
@@ -924,7 +924,7 @@ repeat:
 //        return responseData;
 //    }
 }
-+(NSData*)request_interface : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result retry:(int) retry
++(void)request_interface : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result retry:(int) retry
 {
 //    __block int retry = 0;
     
@@ -937,7 +937,7 @@ repeat:
                     result([[RAConvertor string2dict:[NSString stringWithFormat:@"{'result':%d}",RESULT_NET_NOTAVAILABLE]] mutableCopy]);
             });
     //        return detailContent;
-            return nil;
+            return ;
         }
 
     params = [self prepare_addtional_params:params];
@@ -1020,7 +1020,7 @@ repeat:
         
         */
         //声明结束符:--AaB03x--
-        NSString *end=[[NSString alloc]initWithFormat:@"\r\n%@",endMPboundary];
+        NSString *end=[[NSString alloc]initWithFormat:@"%@",endMPboundary];
         //声明myRequestData,用来放入http body
         NSMutableData *myRequestData=[NSMutableData data];
         //将body字符串转化为UTF8格式的二进制
@@ -1160,7 +1160,7 @@ repeat:
          
          [dataTask resume];
          
-         return nil;
+         return ;
          
          
          
@@ -1279,7 +1279,7 @@ repeat:
 
 
 
-+(NSData*)request_file : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result
++(void)request_file : (NSString*) url parameters:(NSMutableDictionary *) params  err_record_url:(NSString* )recorder_url completionHandler:(resultHandler)result
 /* dataHandler:(dataHandler)returndata*/
 {
 //    __block int retry = 0;
@@ -1293,7 +1293,7 @@ repeat:
                     result([[RAConvertor string2dict:[NSString stringWithFormat:@"{'result':%d}",RESULT_NET_NOTAVAILABLE]] mutableCopy]);
             });
     //        return detailContent;
-            return nil;
+            return ;
         }
 
     params = [self prepare_addtional_params:params];
@@ -1376,7 +1376,7 @@ repeat:
         
         */
         //声明结束符:--AaB03x--
-        NSString *end=[[NSString alloc]initWithFormat:@"\r\n%@",endMPboundary];
+        NSString *end=[[NSString alloc]initWithFormat:@"%@",endMPboundary];
         //声明myRequestData,用来放入http body
         NSMutableData *myRequestData=[NSMutableData data];
         //将body字符串转化为UTF8格式的二进制
@@ -1465,6 +1465,13 @@ repeat:
         }
         else
         {
+            
+                    NSString *cacheDir = NSTemporaryDirectory();
+            
+                    if (![[NSFileManager defaultManager] fileExistsAtPath:cacheDir]) {
+                        [[NSFileManager defaultManager] createDirectoryAtPath:cacheDir withIntermediateDirectories:NO attributes:nil error:nil];
+                    }
+            
             ret[@"result"]=@"2";
             ret[@"data"]=data;
             ret[@"path"]=[location absoluteString];
@@ -1481,7 +1488,7 @@ repeat:
     
     [downloadTask resume];
     
-    return nil;
+    return ;
 //
 //        NSURLSessionDataTask *dataTask =[urlSession dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
 //