shareRecordTableViewCell~.m 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250
  1. //
  2. // shareRecordTableViewCell.m
  3. // 双子星云手机
  4. //
  5. // Created by xd h on 2024/5/14.
  6. //
  7. #import "shareRecordTableViewCell.h"
  8. @interface shareRecordTableViewCell ()
  9. @property(nonatomic,strong)UIImageView *mImageView;
  10. @property(nonatomic,strong)UILabel *titleLabel;
  11. @property(nonatomic,strong)UILabel *titleLabel2;
  12. @property(nonatomic,strong)UIImageView *rightImage;
  13. @property (nonatomic, strong) UIButton *selectButton;
  14. @property(nonatomic,strong)UIImageView *lockImageView;
  15. @property(nonatomic,strong)UILabel *stateLabel;
  16. @property(nonatomic,strong)UILabel *remainingNumberLabel;//剩余分享次数
  17. @end
  18. @implementation shareRecordTableViewCell
  19. - (void)awakeFromNib {
  20. [super awakeFromNib];
  21. // Initialization code
  22. }
  23. - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
  24. {
  25. self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
  26. if (self)
  27. {
  28. [self drawView];
  29. }
  30. return self;
  31. }
  32. - (void)drawView
  33. {
  34. /*图片*/
  35. _mImageView = [[UIImageView alloc] init];
  36. [_mImageView setBackgroundColor:[UIColor clearColor]];
  37. _mImageView.image = [UIImage imageNamed:@"uploadFile_file_icon"];
  38. [self.contentView addSubview:_mImageView];
  39. [_mImageView setContentMode:(UIViewContentModeScaleAspectFit)];
  40. [_mImageView mas_makeConstraints:^(MASConstraintMaker *make) {
  41. make.left.mas_equalTo(15);
  42. make.width.mas_equalTo(36);
  43. make.height.mas_equalTo(36);
  44. make.centerY.equalTo(self.mas_centerY);
  45. }];
  46. /*右侧箭头*/
  47. _rightImage = [[UIImageView alloc] init];
  48. [_rightImage setBackgroundColor:[UIColor clearColor]];
  49. [_rightImage setImage:[UIImage imageNamed:@"cell_right_access"]];
  50. [self.contentView addSubview:_rightImage];
  51. [_rightImage mas_makeConstraints:^(MASConstraintMaker *make) {
  52. make.width.mas_equalTo(28);
  53. make.right.mas_equalTo(-15.f);
  54. make.height.mas_equalTo(28);
  55. make.centerY.equalTo(self.mas_centerY);
  56. }];
  57. UIButton *but = [[UIButton alloc] init];
  58. [but setImage:[UIImage imageNamed:@"common_un_check_24"] forState:UIControlStateNormal];
  59. [but setImage:[UIImage imageNamed:@"common_did_check_24"] forState:UIControlStateSelected];
  60. [self.contentView addSubview:but];
  61. [but addTarget:self action:@selector(didClickButFun:) forControlEvents:UIControlEventTouchUpInside];
  62. but.hidden = YES;
  63. [but mas_makeConstraints:^(MASConstraintMaker *make) {
  64. make.width.mas_equalTo(28);
  65. make.right.mas_equalTo(-15.f);
  66. make.height.mas_equalTo(28);
  67. make.centerY.equalTo(self.mas_centerY);
  68. }];
  69. self.selectButton = but;
  70. _remainingNumberLabel = [[UILabel alloc] init];
  71. [self.contentView addSubview:_remainingNumberLabel];
  72. _remainingNumberLabel.textAlignment = NSTextAlignmentRight;
  73. _remainingNumberLabel.font = [UIFont systemFontOfSize:12.f];
  74. [_remainingNumberLabel setTextColor:HW666666Color]; //#01B7EA
  75. [_remainingNumberLabel mas_makeConstraints:^(MASConstraintMaker *make) {
  76. make.width.mas_equalTo(95);
  77. make.right.equalTo(_rightImage.mas_left).offset(-5.f);
  78. //make.centerY.equalTo(self.mas_centerY);
  79. make.top.mas_equalTo(15.f);
  80. }];
  81. _stateLabel = [[UILabel alloc] init];
  82. [self.contentView addSubview:_stateLabel];
  83. _stateLabel.textAlignment = NSTextAlignmentRight;
  84. _stateLabel.font = [UIFont systemFontOfSize:12.f];
  85. [_stateLabel setTextColor:HW666666Color]; //#01B7EA
  86. [_stateLabel mas_makeConstraints:^(MASConstraintMaker *make) {
  87. make.width.mas_equalTo(95);
  88. make.right.equalTo(_rightImage.mas_left).offset(-5.f);
  89. //make.centerY.equalTo(self.mas_centerY);
  90. //make.top.mas_equalTo(15.f);
  91. make.top.equalTo(_remainingNumberLabel.mas_bottom).offset(7);
  92. }];
  93. /**标题*/
  94. _titleLabel = [[UILabel alloc] init];
  95. [self.contentView addSubview:_titleLabel];
  96. _titleLabel.font = [UIFont boldSystemFontOfSize:14.f];
  97. _titleLabel.numberOfLines = 1;
  98. _titleLabel.lineBreakMode = NSLineBreakByTruncatingMiddle;
  99. [_titleLabel setTextColor:HW0A132BColor];
  100. [_titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
  101. make.left.equalTo(_mImageView.mas_right).offset(5.f);
  102. make.right.equalTo(_stateLabel.mas_left).offset(-5.f);
  103. //make.centerY.equalTo(self.mas_centerY);
  104. make.top.mas_equalTo(15.f);
  105. }];
  106. _lockImageView = [[UIImageView alloc] init];
  107. [_lockImageView setImage:[UIImage imageNamed:@"share_lock_icon"]];
  108. [self.contentView addSubview:_lockImageView];
  109. [_lockImageView mas_makeConstraints:^(MASConstraintMaker *make) {
  110. make.width.mas_equalTo(16);
  111. make.height.mas_equalTo(16);
  112. make.left.equalTo(_titleLabel.mas_left);
  113. make.top.equalTo(_titleLabel.mas_bottom).offset(5);
  114. }];
  115. /**副标题*/
  116. _titleLabel2 = [[UILabel alloc] init];
  117. [self.contentView addSubview:_titleLabel2];
  118. _titleLabel2.font = [UIFont systemFontOfSize:12.f];
  119. //[titleLabel2 setTextAlignment:(NSTextAlignmentRight)];
  120. [_titleLabel2 setTextColor:HW666666Color];
  121. [_titleLabel2 mas_makeConstraints:^(MASConstraintMaker *make) {
  122. make.right.equalTo(_titleLabel.mas_right);
  123. make.left.equalTo(_lockImageView.mas_right);
  124. make.centerY.equalTo(_lockImageView.mas_centerY);
  125. make.height.mas_equalTo(16);
  126. }];
  127. }
  128. - (void)setIsEditType:(BOOL)isEditType
  129. {
  130. if(isEditType){
  131. _rightImage.hidden = YES;
  132. _selectButton.hidden = NO;
  133. }
  134. else{
  135. _rightImage.hidden = NO;
  136. _selectButton.hidden = YES;
  137. }
  138. }
  139. - (void)setDataModel:(ShareRecordListModel *)dataModel
  140. {
  141. _dataModel = dataModel;
  142. _selectButton.selected = _dataModel.isSelectType;
  143. //剩余次数
  144. _remainingNumberLabel.text = [[NSString alloc] initWithFormat:@"%@ %ld",NSLocalizedString(@"share_number_remainingNumber_tip",nil),_dataModel.remainingNumber];
  145. if(_dataModel.expirationStatus || _dataModel.reportStatus){
  146. _stateLabel.text = NSLocalizedString(@"copy_share_link_Invalid_tip",nil);
  147. [_stateLabel setTextColor:HW666666Color]; //#01B7EA
  148. if(_dataModel.reportStatus){
  149. _stateLabel.text = NSLocalizedString(@"share_report_tip2",nil);
  150. [_stateLabel setTextColor:[UIColor hwColor:@"#DD4E4E"]]; //#01B7EA
  151. }
  152. }
  153. else{
  154. if(_dataModel.expirationDay== 0)
  155. {
  156. NSString *expDateStr = NSLocalizedString(@"share_expiration_date_forever",nil);
  157. _stateLabel.text = expDateStr;
  158. }
  159. else{
  160. //计算失效时间
  161. NSString *expDateStr = [iTools getTimeStringToExpirationDate:_dataModel.expirationTime];
  162. //NSString *tipStr = NSLocalizedString(@"copy_share_link_Invalid_tip2",nil);
  163. //_stateLabel.text = [[NSString alloc] initWithFormat:@"%@%@",expDateStr,tipStr];
  164. _stateLabel.text = [[NSString alloc] initWithFormat:@"%@",expDateStr];
  165. }
  166. NSString *tipStr = NSLocalizedString(@"copy_share_link_Invalid_tip",nil);
  167. if([_stateLabel.text isEqualToString:tipStr]){
  168. [_stateLabel setTextColor:[UIColor hwColor:@"#666666"]];
  169. }
  170. else{
  171. [_stateLabel setTextColor:[UIColor hwColor:@"#01B7EA"]];
  172. }
  173. }
  174. ShareFileDataModel *fileModel = _dataModel.fileListVOS.firstObject;
  175. NSString *titleStr = [[NSString alloc] initWithFormat:@"%@%@%ld%@",fileModel.fileName,NSLocalizedString(@"share_file_more_tip",nil), _dataModel.fileListVOS.count,NSLocalizedString(@"share_file_Numbers_tip",nil)];
  176. if(_dataModel.fileListVOS.count == 1){
  177. titleStr = fileModel.fileName;
  178. }
  179. _titleLabel.text = titleStr;
  180. _titleLabel2.text = _dataModel.createTime;
  181. if(_dataModel.platformType == 4){
  182. _lockImageView.hidden = NO;
  183. /**副标题*/
  184. [_titleLabel2 mas_remakeConstraints:^(MASConstraintMaker *make) {
  185. make.right.equalTo(_titleLabel.mas_right);
  186. make.left.equalTo(_lockImageView.mas_right);
  187. make.centerY.equalTo(_lockImageView.mas_centerY);
  188. make.height.mas_equalTo(16);
  189. }];
  190. }
  191. else{
  192. _lockImageView.hidden = YES;
  193. [_titleLabel2 mas_remakeConstraints:^(MASConstraintMaker *make) {
  194. make.right.equalTo(_titleLabel.mas_right);
  195. make.left.equalTo(_lockImageView.mas_left);
  196. make.centerY.equalTo(_lockImageView.mas_centerY);
  197. make.height.mas_equalTo(16);
  198. }];
  199. }
  200. }
  201. - (void)didClickButFun:(UIButton*)but
  202. {
  203. but.selected = !but.selected;
  204. if(_didClickSwitch){
  205. _didClickSwitch(but.selected);
  206. }
  207. }
  208. @end