| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326 |
- //
- // SalesManVC.m
- // IBOSSmini
- //
- // Created by guan hong hou on 2018/1/31.
- // Copyright © 2018年 elongtian. All rights reserved.
- //
- #import "SalesManVC.h"
- @interface SalesManVC ()
- @end
- @implementation SalesManVC
- - (void)viewDidLoad {
- [super viewDidLoad];
- [self loadNavStyle];
- [self initUI];
- }
- -(void)loadNavStyle
- {
- //右边
- UIButton *btnAdd = [UIButton buttonWithType:UIButtonTypeCustom];
- [btnAdd addTarget:self action:@selector(submitData)
- forControlEvents:UIControlEventTouchUpInside];
- btnAdd.frame = CGRectMake(0, 0,60,14);
- [btnAdd setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
- btnAdd.titleLabel.font=[UIFont systemFontOfSize:16];
- [btnAdd setTitle:@"确定" forState:UIControlStateNormal];
-
- UIBarButtonItem *menubtnAdd = [[UIBarButtonItem alloc] initWithCustomView:btnAdd];
- self.navigationItem.title=@"请选择";
- self.navigationItem.rightBarButtonItem = menubtnAdd;
-
-
- //返回
- UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
- [button setBackgroundImage:[UIImage imageNamed:@"icon_back"]
- forState:UIControlStateNormal];
- [button addTarget:self action:@selector(goBack)
- forControlEvents:UIControlEventTouchUpInside];
- button.frame = CGRectMake(0, 0, 15, 18);
-
- UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithCustomView:button];
- self.navigationItem.leftBarButtonItem = menuButton;
- }
- -(void)initUI{
- _vTableView = [[UITableView alloc]
- initWithFrame:CGRectMake(0,
- 0,
- self.view.frame.size.width,
- self.view.frame.size.height)];
-
- _vTableView.separatorStyle = UITableViewCellSeparatorStyleNone;
- _vTableView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
- _vTableView.backgroundColor = [UIColor whiteColor];
- _vTableView.delegate = self;
- _vTableView.dataSource=self;
- [self.view addSubview:_vTableView];
- if(_salesmanList!=nil&&_salesmanList.count>0){
- [_vTableView reloadData];
- }
-
- }
- -(void)submitData{
- _salesmanCheckedList=[[NSMutableArray alloc]init];
- for( SalesManFrame *frame in _salesmanList){
- if(frame.salesmanModel.isCheckedStatus){
- [_salesmanCheckedList addObject:frame];
- }
- }
-
- if(_salesmanCheckedList!=nil&&_salesmanCheckedList.count==0){
- [self showAlertViewText:@"请选择业务员"];
- return;
- }
- Boolean mainSalesManFlag=[self isMainSalesMan:_salesmanCheckedList];
- if(!mainSalesManFlag){
- [self showAlertViewText:@"请选择主业务员"];
- return;
- }
- SalesManModel *mainSalesMan=[self getMainSalesMan:_salesmanCheckedList];
- NSMutableArray *secondarySalesmanList=[self getSecondarySalesManList:_salesmanCheckedList];
- if(_editFlag){
- if(mainSalesMan.staffId==_originalMainSalesManModel.staffId){
- mainSalesMan.commission=_originalMainSalesManModel.commission;
- }
- else{
- mainSalesMan.commission=@"100";
- }
-
- if(secondarySalesmanList!=nil&&secondarySalesmanList.count>0){
- for(SalesManFrame *salesmanFrame in secondarySalesmanList){
- SalesManModel *salesmanModel=salesmanFrame.salesmanModel;
- if(_originalSecondarySalesmanList!=nil&&_originalSecondarySalesmanList.count>0){
- for(SalesManFrame *orginalSalesmanFrame in _originalSecondarySalesmanList){
- if(salesmanModel.staffId==orginalSalesmanFrame.salesmanModel.staffId){
- salesmanModel.commission=orginalSalesmanFrame.salesmanModel.commission;
- }
- }
-
- Boolean isExistsSalsman=[self isExistsSalsman:salesmanModel salesmanList:_originalSecondarySalesmanList];
- if(!isExistsSalsman){
- salesmanModel.commission=@"100";
- }
- }
- else{
- salesmanModel.commission=@"100";
- }
- }
- }
- }
-
- if(secondarySalesmanList!=nil&&secondarySalesmanList.count>0){
- Boolean isHasSamePosition= [self isHasSamePosition:mainSalesMan secondarySalesMan:secondarySalesmanList];
- if(isHasSamePosition){
- [self showAlertViewText:@"主业务员和从业务员不能有同样的职务"];
- return;
- }
-
-
- }
- if([self.salesmanDelegate respondsToSelector:@selector(showSaleManInfo:secondarySalesMan:salesmanSelectedList:)])
- {
- [self.salesmanDelegate showSaleManInfo:mainSalesMan secondarySalesMan:secondarySalesmanList salesmanSelectedList:_salesmanCheckedList];
-
- }
- [self.navigationController popViewControllerAnimated:YES];
-
- }
- -(Boolean) isExistsSalsman:(SalesManModel*)salesmanModel salesmanList:(NSMutableArray*)salesmanList{
- Boolean flag=NO;
- for(SalesManFrame *salesmanFrame in salesmanList){
- if(salesmanModel.staffId==salesmanFrame.salesmanModel.staffId){
- flag=YES;
- break;
- }
- }
- return flag;
-
- }
- -(Boolean) isMainSalesMan:(NSMutableArray*) salesmanList{
- Boolean mainSalesManFlag=NO;
- for(SalesManFrame *frame in _salesmanList){
- if(frame.salesmanModel.isMainSalesManStatus){
- mainSalesManFlag=YES;
- break;
- }
- }
- return mainSalesManFlag;
- }
- -(Boolean)isHasSamePosition:(SalesManModel*)mainSalesMan secondarySalesMan:(NSMutableArray*)secondarySalesManList{
- Boolean isHasSameDuties=NO;
- for(SalesManFrame *frame in secondarySalesManList){
- if([frame.salesmanModel.positionName isEqualToString:mainSalesMan.positionName]){
- isHasSameDuties=YES;
- break;
- }
- }
- return isHasSameDuties;
- }
- -(SalesManModel*)getMainSalesMan:(NSMutableArray*)salesmanList{
- SalesManModel *mainSalesmanModel;
- for(SalesManFrame *frame in salesmanList){
- if(frame.salesmanModel.isMainSalesManStatus){
- mainSalesmanModel=frame.salesmanModel;
- break;
- }
- }
- return mainSalesmanModel;
- }
- -(NSMutableArray*)getSecondarySalesManList:(NSMutableArray*)salesmanList{
- NSMutableArray *secondarySalesmanList=[[NSMutableArray alloc]init];
- for(SalesManFrame *frame in salesmanList){
- if(!frame.salesmanModel.isMainSalesManStatus){
- [secondarySalesmanList addObject:frame];
- }
- }
- return secondarySalesmanList;
- }
- -(void)btnSaleManCheckPressed:(SalesManCell*)cell{
- SalesManFrame *salesmanFrame= _salesmanList[cell.cellIndex];
-
- _salemanModel =salesmanFrame.salesmanModel;
- BOOL checked=!_salemanModel.isCheckedStatus;
-
- int total=0;
- for(SalesManFrame *frame in _salesmanList){
- if(frame.salesmanModel.isCheckedStatus){
- ++total;
- }
- }
-
- if(total==0){
- _salemanModel.isMainSalesManStatus=YES;
- _salemanModel.isCheckedStatus=checked;
- [_vTableView reloadData];
- return;
- }
- _salemanModel.isCheckedStatus=checked;
- if( !_salemanModel.isCheckedStatus&&_salemanModel.isMainSalesManStatus){
- _salemanModel.isMainSalesManStatus=NO;
-
- }
- [_vTableView reloadData];
- }
- -(void)btnMainSalesManPressed:(SalesManCell*)cell{
- SalesManFrame *salesmanFrame= _salesmanList[cell.cellIndex];
- _salemanModel= salesmanFrame.salesmanModel;
- if(_salemanModel.isCheckedStatus){
- if(!_salemanModel.isMainSalesManStatus){
- _salemanModel.isMainSalesManStatus=YES;
- for(SalesManFrame *frame1 in _salesmanList){
- if(frame1.salesmanModel.staffId!=_salemanModel.staffId){
- frame1.salesmanModel.isMainSalesManStatus=NO;
- }
- }
-
- }
- else{
- _salemanModel.isMainSalesManStatus=NO;
- for(SalesManFrame *frame1 in _salesmanList){
- if(frame1.salesmanModel.staffId!=_salemanModel.staffId){
- frame1.salesmanModel.isMainSalesManStatus=NO;
- }
- }
- }
- }
- else{
- _salemanModel.isMainSalesManStatus=NO;
- }
-
- [_vTableView reloadData];
- }
- #pragma mark - tableView回调
- /**
- 单元格cell个数
-
- @param tableView <#tableView description#>
- @param section <#section description#>
- @return <#return value description#>
- */
- -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
- {
- return [_salesmanList count];
- }
- /**
- <#Description#>
-
- @param tableView <#tableView description#>
- @return <#return value description#>
- */
- -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
- return 1;
- }
- /**
- 高度
-
- @param tableView <#tableView description#>
- @param indexPath <#indexPath description#>
- @return <#return value description#>
- */
- - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
- SalesManFrame *frame= [_salesmanList objectAtIndex:indexPath.row];
- return frame.cellHeight ;
- }
- /**
- 每个单元格cell
-
- @param tableView <#tableView description#>
- @param indexPath <#indexPath description#>
- @return <#return value description#>
- */
- -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
- {
- static NSString *cellIdentifier = @"SalesManCell";
- SalesManCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier ];
- cell=[[SalesManCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier];
- cell.selectionStyle=UITableViewCellSelectionStyleNone;
- SalesManFrame *salesmanFrame = [_salesmanList objectAtIndex:indexPath.row];
- cell.delegate = self;
- [cell parseStaffInfo:salesmanFrame];
- cell.cellIndex=indexPath.row;
- BOOL checked = salesmanFrame.salesmanModel.isCheckedStatus;
- BOOL mainSalesmanChecked= salesmanFrame.salesmanModel.isMainSalesManStatus;
- [cell setCheckBackground:checked];
- [cell setMainSalesManCheckBackground:mainSalesmanChecked];
- return cell;
- }
- - (void)goBack
- {
- if([self.salesmanDelegate respondsToSelector:@selector(recoveryData)])
- {
- [self.salesmanDelegate recoveryData];
-
- }
- [self.navigationController popViewControllerAnimated:YES];
- }
- - (void)didReceiveMemoryWarning {
- [super didReceiveMemoryWarning];
- }
- @end
|