Explorar el Código

1.文件上传

huangxiaodong hace 1 año
padre
commit
72e0d96ffd

+ 1 - 0
创维盒子/双子星云手机/Class/Set/uploadFile/photoView/uploadFileRecordTableView.m

@@ -283,6 +283,7 @@
 #pragma mark 处理上传中的 状态点击事件
 - (void)handleUploadFailStateWith:(uploadFileDataModel*)model{
     NSMutableArray*arr = [NSMutableArray new];
+    model.curUploadStateType = uploadStateWait;
     [arr addObject:model];
     [[uploadFileManager shareInstance] reUploadFileFunBy:arr];
     

+ 1 - 0
创维盒子/双子星云手机/Class/Set/uploadFile/uploadFileManager/uploadFileManager.h

@@ -29,6 +29,7 @@ NS_ASSUME_NONNULL_BEGIN
 @property (nonatomic, strong) uploadFileDataModel *curUploadFileDataModel;//当前上传的文件
 @property (nonatomic, assign) BOOL  isSuspendType;
 @property (nonatomic, assign) BOOL  isUploadIngType;
+@property (nonatomic, assign) NSInteger  curUploadModelNumbers;
 
 #pragma mark 读取数据库数据
 - (void)getDataInDatabaseFun:(BOOL)isReGet complete:(custom_complete_Arr)complete;

+ 34 - 17
创维盒子/双子星云手机/Class/Set/uploadFile/uploadFileManager/uploadFileManager.m

@@ -90,7 +90,17 @@ static uploadFileManager * cur_uploadFileShareInstance = nil;
 //把TZAssetModel 转成 我们需要上传的model
 - (void)handlTZAssetModelToUploadFileDataFunBy:(NSMutableArray*)indexPathsForSelectedItems complete:(custom_complete_Arr)complete
 {
-    _fileModelDataArr = [NSMutableArray new];
+    
+    if(!indexPathsForSelectedItems && indexPathsForSelectedItems.count == 0){
+        return;
+    }
+    
+    if(!_fileModelDataArr){
+        _fileModelDataArr = [NSMutableArray new];
+    }
+    
+    self.curUploadModelNumbers = indexPathsForSelectedItems.count;
+    
     for (TZAssetModel * model in indexPathsForSelectedItems) {
         uploadFileDataModel * curModel = [uploadFileDataModel new];
         curModel.imageData = model.imageData;
@@ -117,7 +127,7 @@ static uploadFileManager * cur_uploadFileShareInstance = nil;
         }
         
         
-        [_fileModelDataArr addObject:curModel];
+        //[_fileModelDataArr addObject:curModel];
         
         //保存到数据库
         curModel.bg_tableName = upLoadFile_image_tableName;
@@ -131,7 +141,7 @@ static uploadFileManager * cur_uploadFileShareInstance = nil;
     }
     
     KWeakSelf
-    if(_fileModelDataArr.count > 0){
+    //if(_fileModelDataArr.count > 0){
         
         [self getDataInDatabaseFun:YES complete:^(NSMutableArray * _Nonnull Arr) {
             complete(Arr);
@@ -156,7 +166,7 @@ static uploadFileManager * cur_uploadFileShareInstance = nil;
 //            [weakSelf beginUploadFileFun];
 //        }];
         
-    }
+    //}
 }
 
 #pragma mark 处理当前的model 加上bg_id
@@ -168,23 +178,32 @@ static uploadFileManager * cur_uploadFileShareInstance = nil;
     
     NSMutableArray *curArr = totalArr[0];
     
-    for (int i=0; i<_fileModelDataArr.count; i++) {
-       uploadFileDataModel *bg_mod  = _fileModelDataArr[i];
-
-       for (uploadFileDataModel *data_mod in curArr) {
-           if([data_mod.filename isEqualToString:bg_mod.filename]){
-               bg_mod.bg_id = data_mod.bg_id;
-               //HLog(@"bg_id:%@",data_mod.bg_id);
-               break;
-           }
-       }
+    for (int i=0; i<_curUploadModelNumbers; i++) {
+       uploadFileDataModel *bg_mod  = curArr[i];
+        [_fileModelDataArr addObject:bg_mod];
    }
     
+//    for (int i=0; i<_fileModelDataArr.count; i++) {
+//       uploadFileDataModel *bg_mod  = _fileModelDataArr[i];
+//
+//       for (uploadFileDataModel *data_mod in curArr) {
+//           if([data_mod.filename isEqualToString:bg_mod.filename]){
+//               bg_mod.bg_id = data_mod.bg_id;
+//               //HLog(@"bg_id:%@",data_mod.bg_id);
+//               break;
+//           }
+//       }
+//   }
+    
     [self beginUploadFileFun];
 }
 
 - (void)beginUploadFileFun
 {
+    if(_isUploadIngType){
+        return;
+    }
+    
     _isSuspendType = NO;
     _isUploadIngType = YES;
     
@@ -307,12 +326,10 @@ static uploadFileManager * cur_uploadFileShareInstance = nil;
     [self changeUploadFileState:uploadStateDone withDidUploadBytes:totalSizeByte withModel:_curUploadFileDataModel complete:^(BOOL isSuccess) {
         [self->_fileModelDataArr removeObject:self->_curUploadFileDataModel];
          
+        self->_isUploadIngType = NO;
         if(self->_fileModelDataArr.count > 0){
             [self beginUploadFileFun];
         }
-        else{
-            self->_isUploadIngType = NO;
-        }
     }];
 }