Pārlūkot izejas kodu

1.文件上传相关

huangxiaodong 1 gadu atpakaļ
vecāks
revīzija
db9768a9ff

+ 3 - 0
创维盒子/双子星云手机/AppDelegate/Config/Notification.h

@@ -62,6 +62,9 @@
 #define uploadFileRefreshNotification                 @"uploadFileRefreshNot"
 /* 上传文件暂停通知*/
 #define uploadFileSuspendNotification                 @"uploadFileSuspendNot"
+/*上传文件删除通知*/
+#define uploadFileDeteleNotification                 @"uploadFileDeteleNot"
+
 
 #define PlayerViewControlBtnTouchBeganNotification        @"PlayerViewControlBtnTouchBeganNotification"        // 云手机推流界面 控制按钮开始点击
 #define PlayerViewControlBtnTouchEndNotification          @"PlayerViewControlBtnTouchEndNotification"        /// // 云手机推流界面 控制按钮结束点击

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

@@ -11,6 +11,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 @interface uploadFileRecordBodyView : UIView
+@property (nonatomic,strong) UIScrollView *bgScrollV;
 //点击
 @property (nonatomic,copy) void (^didScrollFun)(NSInteger index);
 @property(nonatomic,assign) NSInteger selectIndex;// 从1开始

+ 11 - 8
创维盒子/双子星云手机/Class/Set/uploadFile/photoView/uploadFileRecordBodyView.m

@@ -14,7 +14,7 @@
 #import "uploadFileManager.h"
 
 @interface uploadFileRecordBodyView ()<UITableViewDelegate,UITableViewDataSource,UIScrollViewDelegate,DZNEmptyDataSetSource, DZNEmptyDataSetDelegate>
-@property (nonatomic,strong) UIScrollView *bgScrollV;
+
 @property (nonatomic,strong) uploadFileRecordTableViewHeadView *leftHeadView;
 @property (nonatomic,strong) uploadFileRecordTableViewHeadView *midHeadView;
 @property (nonatomic,strong) uploadFileRecordTableViewHeadView *rightHeadView;
@@ -275,13 +275,16 @@
 #pragma mark 熟悉全部数据
 - (void)reloadAllDataFun
 {
-        NSArray *subViews = [self->_bgScrollV subviews];
-        
-        for (UITableView *tableView in subViews) {
-            if([tableView isKindOfClass:[UITableView class]]){
-                [tableView reloadData];
-            }
-        }
+//        NSArray *subViews = [self->_bgScrollV subviews];
+//        for (UITableView *tableView in subViews) {
+//            if([tableView isKindOfClass:[UITableView class]]){
+//                [tableView reloadData];
+//            }
+//        }
+    
+    if(_allDataArr.count == 3){
+        [self RefreshDataWithUploadingArr:_allDataArr[0] withDoneArr:_allDataArr[1] withfailArr:_allDataArr[2]];
+    }
 }
 
 - (void)RefreshDataWithUploadingArr:(NSMutableArray* _Nullable)uploadingArr withDoneArr:(NSMutableArray* _Nullable)doneArr withfailArr:(NSMutableArray* _Nullable)failArr

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

@@ -174,9 +174,21 @@
     
     if(isEditType){
         self.selectButton.hidden = NO;
+        
+        if(_curUploadFileDataModel.curUploadStateType == uploadStateWait
+           ||_curUploadFileDataModel.curUploadStateType == uploadStateUploading
+           ||_curUploadFileDataModel.curUploadStateType == uploadStateSuspend){
+            _upLoadStateButton.hidden = YES;
+        }
     }
     else{
         self.selectButton.hidden = YES;
+        
+        if(_curUploadFileDataModel.curUploadStateType == uploadStateWait
+           ||_curUploadFileDataModel.curUploadStateType == uploadStateUploading
+           ||_curUploadFileDataModel.curUploadStateType == uploadStateSuspend){
+            _upLoadStateButton.hidden = NO;
+        }
     }
 }
 
@@ -230,7 +242,7 @@
     
     CGFloat curProgress = curUploadFileDataModel.didUploadBytes/(totalSize*1.0);
     
-    HLog(@"hxdhxdddddddd %@ -- %f -- %ld",curUploadFileDataModel.bg_id,curProgress,curUploadFileDataModel.didUploadBytes );
+    //HLog(@"hxdhxdddddddd %@ -- %f -- %ld",curUploadFileDataModel.bg_id,curProgress,curUploadFileDataModel.didUploadBytes );
     
     if(curProgress > 1){
         curProgress = 1;

+ 58 - 1
创维盒子/双子星云手机/Class/Set/uploadFile/uploadFileRecordViewController.m

@@ -37,6 +37,8 @@
     
     [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(uploadFileRefreshFun:)  name:uploadFileRefreshNotification  object:nil];
     
+    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(uploadFileDeteleFun:)  name:uploadFileDeteleNotification  object:nil];
+    
     [self.view setBackgroundColor:[UIColor whiteColor]];
     
     self.titleLabel.text = NSLocalizedString(@"my_set_no_File_upload_record",nil) ;
@@ -248,6 +250,35 @@
     
 }
 
+- (void)uploadFileDeteleFun:(NSNotification*)not
+{
+    uploadFileDataModel *uploadFileDataMod = [not object];
+    HLog(@"%@",uploadFileDataMod);
+    
+    if(_allDataArr.count == 3 && [uploadFileDataMod isKindOfClass:[uploadFileDataModel class]] ){
+        
+        NSMutableArray *curArr = _allDataArr[0];
+        
+        NSInteger index = 0;
+        for (uploadFileDataModel*mod in curArr) {
+            HLog(@"bg_id:%@ ?=? %@",mod.bg_id,uploadFileDataMod.bg_id);
+            
+            if(mod.bg_id.integerValue == uploadFileDataMod.bg_id.integerValue){
+                [curArr removeObject:mod];
+                break;
+            }
+            
+            index++;
+        }
+        
+        //精准刷新
+        [self.uploadFileRecordBodyV RefreshDataWithUploadingArr:_allDataArr[0] withDoneArr:nil withfailArr:nil];
+    }
+    
+}
+
+
+
 #pragma mark 按钮点击
 - (void)didClickButFun:(UIButton*)but
 {
@@ -270,6 +301,7 @@
         _rightButton.hidden = NO;
         self.backBtn.hidden = YES;
         _uploadFileRecordEditBottomV.hidden = NO;
+        _uploadFileRecordheadV.userInteractionEnabled = NO;
         
         [_uploadFileRecordBodyV mas_remakeConstraints:^(MASConstraintMaker *make) {
             make.left.mas_equalTo(0);
@@ -277,6 +309,22 @@
             make.bottom.mas_equalTo(_uploadFileRecordEditBottomV.mas_top).offset(0.0);
             make.top.mas_equalTo(_uploadFileRecordheadV.mas_bottom).offset(0.0);
         }];
+        
+        //dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.15 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+//            UITableView *curTabview = [_uploadFileRecordBodyV.bgScrollV viewWithTag:(10+_uploadFileRecordBodyV.selectIndex -1)];
+//
+//            CGRect frame = curTabview.frame;
+//            frame.size.height = SCREEN_H - CGRectGetMaxY(_uploadFileRecordheadV.frame) - (60 + safeArea);
+//
+//            CGSize curSize = _uploadFileRecordBodyV.bgScrollV.contentSize;
+//            curSize.height = frame.size.height;
+//            _uploadFileRecordBodyV.bgScrollV.contentSize = curSize;
+        
+            //curTabview.frame = frame;
+
+           
+        //});
+        
     }
     else{
         _leftButton.hidden = YES;
@@ -284,13 +332,22 @@
         self.backBtn.hidden = NO;
         
         _uploadFileRecordEditBottomV.hidden = YES;
+        _uploadFileRecordheadV.userInteractionEnabled = YES;
         
         [_uploadFileRecordBodyV mas_remakeConstraints:^(MASConstraintMaker *make) {
             make.left.mas_equalTo(0);
             make.right.mas_equalTo(0);
-            make.bottom.mas_equalTo(_uploadFileRecordEditBottomV.mas_top).offset(0.0);
             make.top.mas_equalTo(_uploadFileRecordheadV.mas_bottom).offset(0.0);
+            make.bottom.mas_equalTo(0);
         }];
+        
+        
+//        UITableView *curTabview = [_uploadFileRecordBodyV.bgScrollV viewWithTag:(10+_uploadFileRecordBodyV.selectIndex -1)];
+//        
+//        CGRect frame = curTabview.frame;
+//        frame.size.height = SCREEN_W - CGRectGetHeight(_uploadFileRecordBodyV.frame);
+//        curTabview.frame = frame;
+        
     }
 }
 @end

+ 29 - 2
创维盒子/双子星云手机/CloudPlayer/PlayerViewController+otherDelegate.mm

@@ -77,15 +77,42 @@
                                 
                             }];
                             
+                            if([fileLengthNum integerValue] == [self.AllFileData length]){
+                                self.taskUid = nil;
+                                
+                                NSMutableArray *delArr = [NSMutableArray new];
+                                [delArr addObject:self.curUploadFileDataMod];
+                                [[uploadFileManager shareInstance] deleteUploadFileRecordBy:delArr complete:^(BOOL isSuccess) {
+                                    if (isSuccess) {
+                                        [[NSNotificationCenter defaultCenter] postNotificationName:uploadFileDeteleNotification object:self.curUploadFileDataMod];
+                                    }
+                                }];
+                                
+                                mainBlock(^{
+                                    [[iToast makeText:NSLocalizedString(@"File_upload_file_already_exists",nil)] show];
+                                });
+                                HLog(@"hxd already 上传任务异常终止")
+                                return;
+                            }
+                            
                             self.cutFileDataArr = [self fileCutPartsBy:self.AllFileData withDidUpLoadSize:[fileLengthNum integerValue]];
                             
-                            if(self.cutFileDataArr.count == 0){
+                            if(!self.cutFileDataArr){
                                 [[uploadFileManager shareInstance] changeUploadFileState:uploadStateFail withDidUploadBytes:[fileLengthNum integerValue] complete:^(BOOL isSuccess) {
 
                                 }];
+                                
+                                self.taskUid = nil;
+                                
+                                mainBlock(^{
+                                    [[iToast makeText:NSLocalizedString(@"File_upload_fail",nil)] show];
+                                });
+                                HLog(@"hxd fail 上传任务异常终止")
                                 return;
                             }
                             
+                            
+                            
                             //答复的taskUid 跟申请的一致 开发发送内容
                             [self upLoadFileFun];
                         }
@@ -234,7 +261,7 @@
     if(didLoadSize != 0){
         if (didLoadSize % subs != 0){
             //出错了
-            return [NSMutableArray new];
+            return nil;
         }
         else{
 //            index = didLoadSize/subs;

+ 1 - 1
创维盒子/双子星云手机/CloudPlayer/View/PlayerView.m

@@ -67,7 +67,7 @@ ShowImageViewDelegate>{
                   inRect:CGRectMake(0, 0, glkshowImageView.drawableWidth, glkshowImageView.drawableHeight)
                 fromRect:[ciImage extent]];
     
-    [self->glkshowImageView display];
+    //[self->glkshowImageView display];
 }
 
 - (void)showIMage

+ 3 - 0
创维盒子/双子星云手机/zh-Hans.lproj/Localizable.strings

@@ -268,3 +268,6 @@
 "File_upload_Record_clear_Tip_msg"   = "仅删除记录,不会删除文件中心的文件";
 "File_upload_Record_select_all"   = "全选";
 "File_upload_Record_delete"   = "删除";
+"File_upload_fail"   = "文件上传失败";
+"File_upload_success"   = "文件上传成功";
+"File_upload_file_already_exists"   = "文件已存在";