// // GoodsReviewsCell.m // westkissMob // // Created by 王猛 on 2022/9/28. // #import "GoodsReviewsCell.h" #import "GoodsReviewsImgV.h" #import "ASGoodsDetailsVM.h" #import "HCSStarRatingView.h" @interface GoodsReviewsCell () @property (nonatomic, strong) UIImageView *headImg; @property (nonatomic, strong) UILabel *nicknameLab; @property (nonatomic, strong) UILabel *creatLab; @property (nonatomic, strong) UIButton *zanBtn; @property (nonatomic, strong) HCSStarRatingView *reviews_startV; @property (nonatomic, strong) UILabel *sizeTitleLab; @property (nonatomic, strong) UILabel *detailLab; @property(nonatomic, strong) GoodsReviewsImgV *reviewsImgV; @end @implementation GoodsReviewsCell - (void)awakeFromNib { [super awakeFromNib]; // Initialization code } - (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelected:selected animated:animated]; // Configure the view for the selected state } - (void)configData:(id)Data{ GoodsReviewsListM *model = (GoodsReviewsListM *)Data; self.reviewM = model; self.headImg.image = UIImageDefaultImg_SD; self.nicknameLab.text = model.nickname; self.creatLab.text = model.created_at; self.sizeTitleLab.text = model.title; self.detailLab.text = model.detail; ///wm_todo 点赞本地记录的表 // self.zanBtn.selected = [model.thumbsUp integerValue]; self.reviews_startV.value =[model.review_value floatValue] ; [self.zanBtn setTitle:model.zan forState:UIControlStateNormal]; if(!isValid(model.image_video) || model.image_video.count == 0 ){ [self.reviewsImgV mas_updateConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(10); }]; }else{ [self.reviewsImgV mas_updateConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(GoodsReviewsimgWidth + 20); }]; } [self.reviewsImgV tt_confignewdata:model.image_video]; } - (void)setupSubviewS{ [self.contentView addSubview:self.headImg]; [self.contentView addSubview:self.nicknameLab]; [self.contentView addSubview:self.creatLab]; [self.contentView addSubview:self.zanBtn]; [self.contentView addSubview:self.reviews_startV]; [self.contentView addSubview:self.sizeTitleLab]; [self.contentView addSubview:self.detailLab]; [self.contentView addSubview:self.reviewsImgV]; [self setupSubViewsFrame]; self.backgroundColor = [UIColor clearColor]; @weakify(self) self.reviewsImgV.ViewtapClose = ^(NSInteger num, id _Nonnull data) { // if(self.currencyparameterClose){ // self.currencyparameterClose(num, data); // } @strongify(self) if(self.currencyparameterClose){ self.currencyparameterClose(num, data); } }; } - (void)setupSubViewsFrame{ [self.headImg mas_makeConstraints:^(MASConstraintMaker *make) { make.left.top.mas_equalTo(20); make.width.mas_equalTo(40); make.height.mas_equalTo(40); }]; [self.nicknameLab mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.headImg.mas_right).offset(16); make.top.equalTo(self.headImg); make.height.mas_equalTo(20); make.right.equalTo(self.zanBtn.mas_left).offset(-10); }]; [self.creatLab mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.headImg.mas_right).offset(16); make.top.equalTo(self.nicknameLab.mas_bottom); make.height.mas_equalTo(20); make.right.equalTo(self.zanBtn.mas_left).offset(-10); }]; [self.zanBtn mas_makeConstraints:^(MASConstraintMaker *make) { make.right.mas_equalTo(-10); make.centerY.equalTo(self.headImg); make.height.mas_equalTo(20); make.width.mas_equalTo(60); }]; [self.reviews_startV mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(20); make.height.mas_equalTo(15); make.width.mas_equalTo(95); make.top.equalTo(self.headImg.mas_bottom).offset(10); }]; [self.sizeTitleLab mas_makeConstraints:^(MASConstraintMaker *make) { make.left.mas_equalTo(20); make.right.mas_equalTo(-20); make.top.equalTo(self.reviews_startV.mas_bottom).offset(10); }]; [self.detailLab mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.sizeTitleLab.mas_bottom).offset(20); make.left.mas_equalTo(20); make.right.mas_equalTo(-20); }]; [self.reviewsImgV mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.detailLab.mas_bottom).offset(10); make.left.mas_equalTo(10); make.width.mas_equalTo(KScreenWidth-20); make.height.mas_equalTo(GoodsReviewsimgWidth + 20); make.bottom.mas_equalTo(-20); }]; } #pragma mark - **************** handle **************** -(void)handle_addZanBtnEvent:(UIButton *)btn{ /* if (NIL(User_token)){ //判断登陆 [Fuction_Tool present_Loginpage]; return; } NSString *url = nil; if(btn.selected){ //取消赞 url = BaseRequestrUrl(GoodsDetails_productDelThumbsUp); }else{ url = BaseRequestrUrl(GoodsDetails_productAddThumbsUp); } UIViewController *topVC = topViewController(); [MBProgressHUD showHUDAddedTo:topVC.view animated:YES]; [PPNetworkHelper POST:url parameters:@{@"entity_id":self.reviewM.review_id} success:^(id responseObject) { [MBProgressHUD hideHUDForView:topVC.view animated:YES]; NSDictionary *tepDic = responseObject[@"data"]; if(RequestSuccess){ btn.selected = !btn.selected; self.zanBtn.selected = btn.selected; self.reviewM.thumbsUp = [NSString stringWithFormat:@"%d",![self.reviewM.thumbsUp boolValue]]; self.reviewM.zan = [NSString stringWithFormat:@"%@",tepDic[@"num"]]; [btn setTitle: self.reviewM.zan forState:UIControlStateNormal]; [self.zanBtn setTitle: self.reviewM.zan forState:UIControlStateNormal]; } [topVC.view makeToast:RequestErrorMsg duration:2 position:CSToastPositionCenter]; } failure:^(NSError *error) { [MBProgressHUD hideHUDForView:topVC.view animated:YES]; [topVC.view makeToast:ReqNetWorkFaild duration:2 position:CSToastPositionCenter]; }]; */ } -(void)tap_imgFull:(UITapGestureRecognizer *)tap{ } -(UIImageView *)headImg{ if(!_headImg){ _headImg = [[UIImageView alloc]init]; _headImg.image = UIImageDefaultImg_SD; } return _headImg; } -(UILabel *)nicknameLab{ if(!_nicknameLab){ _nicknameLab = [[UILabel alloc]init]; _nicknameLab.font = [UIFont fontWithName:Rob_Bold size:12]; } return _nicknameLab; } -(UILabel *)creatLab{ if(!_creatLab){ _creatLab = [[UILabel alloc]init]; _creatLab.font = [UIFont fontWithName:Rob_Regular size:12]; } return _creatLab; } -(UIButton *)zanBtn{ if(!_zanBtn){ _zanBtn = [UIButton buttonWithType:UIButtonTypeCustom]; [_zanBtn setImage:[UIImage imageNamed:@"goos_zan_normal"] forState:UIControlStateNormal]; [_zanBtn setImage:[UIImage imageNamed:@"goos_zan_select"] forState:UIControlStateSelected]; [_zanBtn setTitle:@"10" forState:UIControlStateNormal]; [_zanBtn setTitleColor:[UIColor colorWithHexString:@"#0B0B0B"] forState:UIControlStateNormal]; _zanBtn.titleLabel.font = [UIFont fontWithName:Rob_Regular size:12]; [_zanBtn addTarget:self action:@selector(handle_addZanBtnEvent:) forControlEvents:UIControlEventTouchUpInside]; [_zanBtn setTitleEdgeInsets:UIEdgeInsetsMake(0, 8, 0, -8)]; } return _zanBtn; } -(UILabel *)sizeTitleLab{ if(!_sizeTitleLab){ _sizeTitleLab = [[UILabel alloc]init]; _sizeTitleLab.font = [UIFont fontWithName:Rob_Regular size:12]; _sizeTitleLab.textColor = [UIColor colorWithHexString:@"#B2B2B2"]; _sizeTitleLab.numberOfLines = 0; _sizeTitleLab.preferredMaxLayoutWidth = KScreenWidth - 40; // _sizeTitleLab.adjustsFontSizeToFitWidth = KScreenWidth -40; } return _sizeTitleLab; } -(UILabel *)detailLab{ if(!_detailLab){ _detailLab = [UILabel new]; _detailLab.textColor = [UIColor colorWithHexString:@"#0B0B0B"]; _detailLab.font = [UIFont fontWithName:Rob_Regular size:12]; // _detailLab.adjustsFontSizeToFitWidth = KScreenWidth -40; _detailLab.numberOfLines = 0; _detailLab.preferredMaxLayoutWidth = KScreenWidth - 40; } return _detailLab; } -(GoodsReviewsImgV *)reviewsImgV{ if(!_reviewsImgV){ _reviewsImgV = [[GoodsReviewsImgV alloc]initWithFrame:CGRectMake(10, 0, KScreenWidth-20, GoodsReviewsimgWidth +20)]; } return _reviewsImgV; } -(HCSStarRatingView *)reviews_startV{ if(!_reviews_startV){ _reviews_startV = [[HCSStarRatingView alloc]initWithFrame:CGRectMake(10, 20,95, 15)]; _reviews_startV.value =5; _reviews_startV.userInteractionEnabled = NO; _reviews_startV.filledStarImage = IMAGE(@"reviews_full_star"); _reviews_startV.emptyStarImage = IMAGE(@"reviews_empty_star"); _reviews_startV.maximumValue = 5; _reviews_startV.backgroundColor = [UIColor clearColor]; } return _reviews_startV; } @end