receiveView.m 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. //
  2. // receiveView.m
  3. // 双子星云手机
  4. //
  5. // Created by xd h on 2024/5/23.
  6. //
  7. #import "receiveView.h"
  8. #import "receiveHeadView.h"
  9. #import "receiveDownloadRecordTableView.h"
  10. #import "receiveSaveRecordTableView.h"
  11. #import "boxSaveFileManager.h"
  12. @interface receiveView ()
  13. {
  14. }
  15. @property(nonatomic,strong) receiveHeadView * curReceiveHeadView;
  16. @property(nonatomic,strong) receiveDownloadRecordTableView * downloadRecordTableView;
  17. @property(nonatomic,strong) receiveSaveRecordTableView * saveRecordTableView;
  18. @end
  19. @implementation receiveView
  20. - (id)initWithFrame:(CGRect)frame{
  21. self = [super initWithFrame:frame];
  22. [self setBackgroundColor:[UIColor whiteColor]];
  23. [self drawAnyView];
  24. return self;
  25. }
  26. - (void)drawAnyView{
  27. _curReceiveHeadView = [[receiveHeadView alloc] init];
  28. [self addSubview:_curReceiveHeadView];
  29. [_curReceiveHeadView mas_makeConstraints:^(MASConstraintMaker *make) {
  30. make.left.mas_equalTo(0);
  31. make.right.mas_equalTo(0);
  32. make.top.mas_equalTo(0);
  33. make.height.mas_equalTo(40);
  34. }];
  35. KWeakSelf
  36. #pragma mark 点击接收的下载或者保存
  37. _curReceiveHeadView.didClickbuttonFun = ^(NSInteger tag) {
  38. [weakSelf didClickHeadButtonFun:tag];
  39. };
  40. _downloadRecordTableView = [[receiveDownloadRecordTableView alloc] init];
  41. [self addSubview:_downloadRecordTableView];
  42. [_downloadRecordTableView mas_makeConstraints:^(MASConstraintMaker *make) {
  43. make.left.mas_equalTo(0);
  44. make.right.mas_equalTo(0);
  45. make.top.equalTo(_curReceiveHeadView.mas_bottom).offset(0);
  46. make.bottom.mas_equalTo(40);
  47. }];
  48. _saveRecordTableView = [[receiveSaveRecordTableView alloc] init];
  49. _saveRecordTableView.hidden = YES;
  50. [self addSubview:_saveRecordTableView];
  51. [_saveRecordTableView mas_makeConstraints:^(MASConstraintMaker *make) {
  52. make.left.mas_equalTo(0);
  53. make.right.mas_equalTo(0);
  54. make.top.equalTo(_curReceiveHeadView.mas_bottom).offset(0);
  55. make.bottom.mas_equalTo(40);
  56. }];
  57. _saveRecordTableView.didLongPressClick = ^{
  58. [weakSelf handleLongPressClickFun];
  59. };
  60. }
  61. #pragma mark 长按事件传出去
  62. - (void)handleLongPressClickFun
  63. {
  64. if(self->_didLongPressClick){
  65. self->_didLongPressClick();
  66. }
  67. }
  68. #pragma mark 点击下载和接收
  69. - (void)didClickHeadButtonFun:(NSInteger)tag
  70. {
  71. _isReceiveType = tag;
  72. if(tag == 1){
  73. _downloadRecordTableView.hidden = NO;
  74. _saveRecordTableView.hidden = YES;
  75. }
  76. else if(tag == 2){
  77. _downloadRecordTableView.hidden = YES;
  78. _saveRecordTableView.hidden = NO;
  79. }
  80. }
  81. - (void)setIsReceiveType:(NSInteger)isReceiveType
  82. {
  83. _isReceiveType = isReceiveType;
  84. if(isReceiveType == 2){
  85. [_curReceiveHeadView didClickButFun:_curReceiveHeadView.saveButton];
  86. }
  87. }
  88. - (void)setIsEditType:(BOOL)isEditType{
  89. _isEditType = isEditType;
  90. if(_isReceiveType == 1){
  91. _downloadRecordTableView.isEditType = isEditType;
  92. }
  93. else{
  94. _saveRecordTableView.isEditType = isEditType;
  95. }
  96. }
  97. #pragma mark 点击全选
  98. - (void)setIsSelectAllType:(BOOL)isSelectAllType
  99. {
  100. if(_isReceiveType == 1){
  101. _downloadRecordTableView.isSelectAllType = isSelectAllType;
  102. }
  103. else{
  104. _saveRecordTableView.isSelectAllType = isSelectAllType;
  105. }
  106. }
  107. #pragma mark 获取本地数据库数据
  108. - (void)getAllDataFun{
  109. [self getBoxSaveDataFun];
  110. }
  111. #pragma mark 读取保存到盒子的数据库
  112. - (void)getBoxSaveDataFun
  113. {
  114. KWeakSelf
  115. [[boxSaveFileManager shareInstance] getDataInDatabaseFun:NO complete:^(NSMutableArray * _Nonnull Arr) {
  116. [weakSelf AferGetBoxSaveDataBy:Arr];
  117. }];
  118. }
  119. - (void)AferGetBoxSaveDataBy:(NSMutableArray*)arr
  120. {
  121. _saveRecordTableView.outSideDataArr = arr;
  122. }
  123. - (NSMutableArray*)selectModelArr
  124. {
  125. if(_isReceiveType == 1){
  126. return _downloadRecordTableView.selectModelArr;
  127. }
  128. else{
  129. return _saveRecordTableView.selectModelArr;
  130. }
  131. return [NSMutableArray new];
  132. }
  133. #pragma mark 单个点击选中后删除
  134. - (void)deleteModelOneByOneFun{
  135. if(_isReceiveType == 1){
  136. [_downloadRecordTableView deleteModelOneByOneFun];
  137. }
  138. else{
  139. [_saveRecordTableView deleteModelOneByOneFun];
  140. }
  141. }
  142. @end