// // PasengerCell.m // XFFruit // // Created by 陈俊俊 on 15/11/8. // Copyright © 2015年 Xummer. All rights reserved. // #import "PasengerCell.h" #define Sale_Cell_Height 50 #define Left_Width 155 #define Left_margin 5 @interface PasengerCell () @property (nonatomic, strong) UIFont *textFont; @property (nonatomic, strong) UIFont *titleFont; @property (nonatomic, strong) NSIndexPath *indexPath; @end @implementation PasengerCell - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{ self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; if (self) { [self buildLayout]; } return self; } + (CGFloat)cellHeight { return Sale_Cell_Height; } #pragma mark - build view - (void)buildLayout { if(self.textFont == nil) { self.textFont = [UIFont systemFontOfSize:15]; } if(self.titleFont == nil) { self.titleFont = [UIFont systemFontOfSize:17]; } //页面布局 [self createView]; } //创建视图 - (void)createView { CGRect rect = CGRectMake(Left_margin,5, Left_Width, Sale_Cell_Height/2); self.nameLabel = [IBTCommon labelWithTitle:@"第一片区" frame:rect textFont:self.textFont]; [self.contentView addSubview:self.nameLabel]; rect = CGRectMake(Left_margin,self.nameLabel.bottom, Left_Width, Sale_Cell_Height/2-10); self.dqLabel = [IBTCommon labelWithTitle:@"0101" frame:rect textFont:self.textFont]; [self.contentView addSubview:self.dqLabel]; CGFloat width = (ScreenSize.width - self.dqLabel.right - 35)/2; rect = CGRectMake(self.dqLabel.right , 0, width, Sale_Cell_Height); self.saleLabel = [IBTCommon labelWithTitle:@"60.0" frame:rect textFont:self.textFont]; [self.contentView addSubview:self.saleLabel]; rect = CGRectMake(self.saleLabel.right, 0, width, Sale_Cell_Height); self.lastWeekLabel = [IBTCommon buttonWithTitle:@"" Image:nil frame:rect fontSize:15 fontColor:ReportContentColor]; self.lastWeekLabel.enabled = NO; self.lastWeekLabel.contentHorizontalAlignment=UIControlContentHorizontalAlignmentLeft ; [self.contentView addSubview:self.lastWeekLabel]; rect = CGRectMake(self.lastWeekLabel.right, 0, 35, Sale_Cell_Height); self.detailBtn = [IBTCommon buttonWithTitle:@"" Image:[UIImage imageNamed:@"more_detail"] frame:rect fontSize:20 fontColor:ReportBgColor]; self.detailBtn.titleLabel.font = [UIFont boldSystemFontOfSize:15]; [self.contentView addSubview:self.detailBtn]; self.lineLabel = [[UILabel alloc]initWithFrame:(CGRectMake(0, Sale_Cell_Height - 1, ScreenSize.width, 1))]; self.lineLabel.backgroundColor = GXF_LINE_COLOR; [self.contentView addSubview:self.lineLabel]; } #pragma mark - update view //客单价 - (void)updateCellWithPrice:(Compass *)sale index:(NSIndexPath *)indexPath { self.indexPath = indexPath; //组织name self.dqLabel.text = sale.orgCode; self.nameLabel.text = sale.orgName; //客单价 self.saleLabel.text = [sale.persales stringValue]; //客单价比变化率 if ([sale.persalesChainSign isEqualToString:ReportChainSignPlus]) { [self.lastWeekLabel setImage:[UIImage imageNamed:ReportChainPlusImage] forState:UIControlStateDisabled]; [self.lastWeekLabel setTitleColor:ReportContentColor forState:UIControlStateNormal]; self.saleLabel.textColor = ReportContentColor; }else{ [self.lastWeekLabel setImage:[UIImage imageNamed:ReportChainMinusImage] forState:UIControlStateDisabled]; [self.lastWeekLabel setTitleColor:GXF_NAVIGAYION_COLOR forState:UIControlStateNormal]; self.saleLabel.textColor = GXF_NAVIGAYION_COLOR; } NSString *salesYoStr = [NSString stringWithFormat:@"%@%%",sale.persalesChainRate]; [self.lastWeekLabel setTitle:salesYoStr forState:UIControlStateNormal]; [self setColorAndFont:sale.level]; } //客流量 - (void)updateCellWithFlow:(Compass *)sale index:(NSIndexPath *)indexPath { self.indexPath = indexPath; //组织name self.dqLabel.text = sale.orgCode; self.nameLabel.text = sale.orgName; //客流量 self.saleLabel.text = [sale.passenger stringValue]; //客流量比变化率 if ([sale.passengerChainSign isEqualToString:ReportChainSignPlus]) { [self.lastWeekLabel setImage:[UIImage imageNamed:ReportChainPlusImage] forState:UIControlStateDisabled]; [self.lastWeekLabel setTitleColor:ReportContentColor forState:UIControlStateNormal]; self.saleLabel.textColor = ReportContentColor; }else{ [self.lastWeekLabel setImage:[UIImage imageNamed:ReportChainMinusImage] forState:UIControlStateDisabled]; [self.lastWeekLabel setTitleColor:GXF_NAVIGAYION_COLOR forState:UIControlStateNormal]; self.saleLabel.textColor = GXF_NAVIGAYION_COLOR; } NSString *salesYoStr = [NSString stringWithFormat:@"%@%%",sale.passengerChainRate]; [self.lastWeekLabel setTitle:salesYoStr forState:UIControlStateNormal]; [self setColorAndFont:sale.level]; } //毛利率 - (void)updateCellWithGross:(Compass *)sale index:(NSIndexPath *)indexPath{ self.indexPath = indexPath; //组织name self.dqLabel.text = sale.orgCode; self.nameLabel.text = sale.orgName; //毛利率 self.saleLabel.text = [sale.grossprofit stringValue]; //毛利率比变化率 if ([sale.grossprofitChainSign isEqualToString:ReportChainSignPlus]) { [self.lastWeekLabel setImage:[UIImage imageNamed:ReportChainPlusImage] forState:UIControlStateDisabled]; [self.lastWeekLabel setTitleColor:ReportContentColor forState:UIControlStateNormal]; self.saleLabel.textColor = ReportContentColor; }else{ [self.lastWeekLabel setImage:[UIImage imageNamed:ReportChainMinusImage] forState:UIControlStateDisabled]; [self.lastWeekLabel setTitleColor:GXF_NAVIGAYION_COLOR forState:UIControlStateNormal]; self.saleLabel.textColor = GXF_NAVIGAYION_COLOR; } NSString *salesYoStr = [NSString stringWithFormat:@"%@%%",sale.grossprofitChainRate]; [self.lastWeekLabel setTitle:salesYoStr forState:UIControlStateNormal]; [self setColorAndFont:sale.level]; } - (void)setColorAndFont:(NSInteger)level{ if (level == 0) { self.dqLabel.textColor = GXF_CONTENT_COLOR; self.nameLabel.textColor = GXF_CONTENT_COLOR; self.lineLabel.hidden = NO; [self setFontLabel:17]; [self setWidthDQ:0]; self.contentView.backgroundColor = [UIColor whiteColor]; }else if (level == 1) { self.dqLabel.textColor = [UIColor blackColor]; self.nameLabel.textColor = [UIColor blackColor]; self.lineLabel.hidden = NO; [self setFontLabel:15]; [self setWidthDQ:0]; self.contentView.backgroundColor = [UIColor whiteColor]; }else if(level == 2){ self.lineLabel.hidden = NO; self.dqLabel.textColor = GXF_LEFTSIX_COLOR; self.nameLabel.textColor = GXF_LEFTSIX_COLOR; [self setWidthDQ:5]; [self setFontLabel:13]; self.contentView.backgroundColor = [UIColor whiteColor]; }else { self.lineLabel.hidden = YES; self.dqLabel.textColor = GXF_LEFTSIX_COLOR; self.nameLabel.textColor = GXF_LEFTSIX_COLOR; [self setFontLabel:12]; [self setWidthDQ:0]; self.contentView.backgroundColor = XXFBgColor; } } - (void)setFontLabel:(NSInteger)fontSize{ self.dqLabel.font = FontSize(fontSize-1); self.nameLabel.font = FontSize(fontSize); self.saleLabel.font = FontSize(fontSize); self.lastWeekLabel.titleLabel.font = FontSize(fontSize); } - (void)setWidthDQ:(NSInteger)width{ self.lineLabel.left = width; self.lineLabel.width = ScreenSize.width - width; if (width > 0) { self.nameLabel.left = width + 5; self.nameLabel.width = ScreenSize.width - width - 5; self.dqLabel.left = width + 5; self.dqLabel.width = ScreenSize.width - width - 5; }else{ self.nameLabel.left = 5; self.nameLabel.width = ScreenSize.width - 5; self.dqLabel.left = 5; self.dqLabel.width = ScreenSize.width - 5; } } - (void)setSelected:(BOOL)selected animated:(BOOL)animated { [super setSelected:selected animated:animated]; // Configure the view for the selected state } @end