MultipleFileUploads.m 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // MultipleFileUploads.m
  3. // BuguLive
  4. //
  5. // Created by 志刚杨 on 2020/6/20.
  6. // Copyright © 2020 xfg. All rights reserved.
  7. //
  8. #import "MultipleFileUploads.h"
  9. @implementation MultipleFileUploadsModel
  10. @end
  11. @implementation MultipleFileUploads
  12. -(void)uploadFile:(NSArray<MultipleFileUploadsModel *> *)fileArr done:(uploadsDone)block;
  13. {
  14. dispatch_group_t group = dispatch_group_create();
  15. NSMutableArray *urlArr = [NSMutableArray array];
  16. for (MultipleFileUploadsModel *model in fileArr) {
  17. dispatch_group_enter(group);
  18. dispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
  19. NSMutableDictionary *parmDict = [NSMutableDictionary dictionary];
  20. [parmDict setObject:@"upload_file" forKey:@"ctl"];
  21. [parmDict setObject:@"upload_video_file" forKey:@"act"];
  22. [[NetHttpsManager manager] POSTWithDict:parmDict andFileData:model.data AndFileName:model.fileName SuccessBlock:^(NSDictionary *responseJson) {
  23. dispatch_group_leave(group);
  24. NSLog(ASLocalizedString(@"id %@ 上传成功,信息 %@"),model.fileName,responseJson);
  25. if([responseJson toInt:@"status"] == 0)
  26. {
  27. }
  28. else
  29. {
  30. [urlArr addObject:responseJson[@"server_full_path"]];
  31. }
  32. } FailureBlock:^(NSError *error) {
  33. NSLog(ASLocalizedString(@"id %@ 上传失败,信息 %@"),model.fileName,error);
  34. dispatch_group_leave(group);
  35. }];
  36. });
  37. }
  38. dispatch_group_notify(group, dispatch_get_main_queue(), ^{
  39. //界面刷新
  40. NSLog(ASLocalizedString(@"任务均完成,刷新界面"));
  41. block(urlArr);
  42. });
  43. }
  44. @end