// // InventoryFrozenOrderViewController.m // IBOSS // // Created by 关宏厚 on 2020/4/28. // Copyright © 2020 elongtian. All rights reserved. // #import "InventoryFrozenOrderViewController.h" @interface InventoryFrozenOrderViewController () @end @implementation InventoryFrozenOrderViewController - (void)viewDidLoad { [super viewDidLoad]; [self initUI]; [self initSlideSlip]; _orderList=[[NSMutableArray alloc]init]; } -(void)initUI { self.view.backgroundColor = [UIColor whiteColor]; _searchView = [[UIView alloc] init]; _searchView.frame = CGRectMake(15,10,Screen_Width-30,35); _searchView.backgroundColor = LineBackgroundColor; _searchView.layer.cornerRadius = 10; _searchView.layer.masksToBounds = YES; UIButton *btnSearch = [UIButton buttonWithType:UIButtonTypeCustom]; btnSearch.frame = CGRectMake(20,0, Screen_Width-40, 35); btnSearch.layer.cornerRadius = 6.0f; [btnSearch setTitle:@"库存冻结订单查询" forState:UIControlStateNormal]; [btnSearch setTitleColor:NavBarUnEnbleItemColor forState:UIControlStateNormal]; btnSearch.titleLabel.textAlignment = NSTextAlignmentCenter; btnSearch.titleLabel.font = [UIFont systemFontOfSize:LabelAndTextFontOfSize]; [btnSearch addTarget:self action:@selector(dataSearch) forControlEvents:UIControlEventTouchUpInside]; [_searchView addSubview:btnSearch]; [self.view addSubview:_searchView]; _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, CGRectGetMaxY(_searchView.frame)+10,self.view.frame.size.width, self.view.frame.size.height-rectStatusHeight-rectNavHeight)]; _tableView.autoresizingMask = UIViewAutoresizingFlexibleHeight; _tableView.separatorStyle=UITableViewCellSeparatorStyleNone; _tableView.delegate = self; _tableView.dataSource=self; [self.view addSubview:_tableView]; } -(void)editData:(NSInteger)position { InventoryFreezeOrderListModel *orderListModel=[_orderList objectAtIndex:position]; NSString *freezeId=orderListModel.freezeId; self.cNav.visibleViewController.hidesBottomBarWhenPushed=YES; NewInventoryFreezeViewController *newVc = [[NewInventoryFreezeViewController alloc] init]; newVc.inventoryDelegate=self; newVc.freezeId=freezeId; newVc.editFlag=YES; [self.cNav pushViewController:newVc animated:YES]; } -(void)dataSearch { [_filterController showPagerView:self.cNav]; } /** 抽屉初始化 */ - (void)initSlideSlip{ // 抽屉对象 __weak typeof(self) weakself = self; self.filterController = [[SideSlipFilterController alloc] initWithSponsor:self resetBlock:^(NSArray *dataList) { for (SideSlipModel *model in dataList) { model.selectedItemList = nil; model.customDict = nil; } } commitBlock:^(NSArray *dataList) { // 查询条件 SideSlipModel *serviceRegionModel = dataList[0]; InventoryFreezeOrderSearchModel *searchModel = [serviceRegionModel.customDict objectForKey:INVENTORY_FREEZE_ORDER_SEARCH_MODEL]; self->_customerName=searchModel.customerName; self->_contacts=searchModel.contacts; self->_telephone=searchModel.telephone; self->_staffName=searchModel.staffName; self->_freezeReasonName=searchModel.freezeReasonName; self->_accountStartDate=searchModel.accountStartDate; self->_accountEndDate=searchModel.accountEndDate; self->_freezeStartDate=searchModel.freezeStartDate; self->_freezeEndDate=searchModel.freezeEndDate; [weakself.filterController dismiss]; if(self->_orderList!=nil&&self->_orderList.count>0) { [self->_orderList removeAllObjects]; [self->_tableView reloadData]; } [self startLoading]; [self loadData]; }]; _filterController.animationDuration = AnimationDuration; _filterController.hasHeadView = YES; _filterController.sideSlipLeading = UIScreenSideSlipLeading*[UIScreen mainScreen].bounds.size.width; _filterController.dataList = [self packageDataList]; } -(void)loadData { _downManager = [[ASIDownManager alloc] init]; _downManager.delegate = self; _downManager.onRequestSuccess = @selector(onDataLoadFinish:); _downManager.onRequestFail = @selector(onDataLoadFail:); NSString *urlStr = ServerURL; NSMutableDictionary *dict = [NSMutableDictionary dictionary]; [dict setObject:@"GetFreezeData" forKey:@"Action"]; [dict setObject:[NSString stringWithFormat:@"%@",kkAccountCode]forKey:@"AccountCode"]; [dict setObject:kkUserCode forKey:@"UserCode"]; [dict setObject:kkUserPwd forKey:@"UserPassword"]; [dict setObject:kkSessionKey forKey:@"SessionKey"]; [dict setObject:(_contacts==nil?@"":_contacts) forKey:@"Contacts"]; [dict setObject:(_telephone==nil?@"":_telephone) forKey:@"Telephone"]; [dict setObject:(_customerName==nil?@"":_customerName) forKey:@"CustomerName"]; [dict setObject:(_staffName==nil?@"":_staffName) forKey:@"SalesmanName"]; [dict setObject:(_freezeReasonName==nil?@"":_freezeReasonName) forKey:@"FreezeReason"]; [dict setObject:(_accountStartDate==nil?@"":_accountStartDate) forKey:@"AccountDateFrom"]; [dict setObject:(_accountEndDate==nil?@"":_accountEndDate) forKey:@"AccountDateEnd"]; [dict setObject:(_freezeStartDate==nil?@"":_freezeStartDate) forKey:@"FreezePeriodFrom"]; [dict setObject:(_freezeEndDate==nil?@"":_freezeEndDate) forKey:@"FreezePeriodTo"]; [_downManager postHttpRequest:urlStr dic:dict path:nil fileName:nil]; } -(void)onDataLoadFail:(ASIDownManager *)sender { [self cancel]; [self showAlertViewText:@"网络异常"]; } -(void)onDataLoadFinish:(ASIDownManager*)sender { [self cancel]; RequestResultModel *resultModel = [RequestResultModel dk_modelWithJSON:sender.mWebStr]; int iStatus = resultModel.status; // 服务器返回数据消息 NSString *message = resultModel.message; if(iStatus==0) { NSArray *resultArray=(NSArray*)resultModel.result; if(resultArray!=nil&&resultArray.count>0) { for(int i=0;i @param section <#section description#> @return <#return value description#> */ - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return [_orderList count]; } /** table view 分区数 @param tableView <#tableView description#> @return <#return value description#> */ - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ return 1; } /** cell 高度 @param tableView <#tableView description#> @param indexPath <#indexPath description#> @return <#return value description#> */ - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ return [self.heights[@(indexPath.row)] doubleValue];; } /** 点击单元格事件 @param tableView tableView description @param indexPath indexPath description */ - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { self.cNav.visibleViewController.hidesBottomBarWhenPushed=YES; InventoryFreezeGoodsDetailViewController *detailVc = [[InventoryFreezeGoodsDetailViewController alloc] init]; InventoryFreezeOrderListModel *orderModel = [_orderList objectAtIndex:indexPath.row]; detailVc.freezeId=orderModel.freezeId; [self.cNav pushViewController:detailVc animated:YES]; } /** 高度 @return <#return value description#> */ - (NSMutableDictionary *)heights{ if (_heights == nil){ _heights = [NSMutableDictionary dictionary]; } return _heights; } /** 预防高度 @param tableView <#tableView description#> @param indexPath <#indexPath description#> @return <#return value description#> */ -(CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath{ return 250; } /** 每个单元格cell @param tableView <#tableView description#> @param indexPath <#indexPath description#> @return <#return value description#> */ - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *cellIdentifier = @"InventoryFreezeOrderListCell"; InventoryFreezeOrderListCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier ]; cell = [[InventoryFreezeOrderListCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier]; cell.selectionStyle=UITableViewCellSelectionStyleNone; InventoryFreezeOrderListModel *orderModel= [_orderList objectAtIndex:indexPath.row]; cell.delegate = self; [cell setInventoryFreezeOrderListCell:orderModel]; cell.position = (int)indexPath.row; self.heights[@(indexPath.row)] = @(cell.height); return cell; } -(void)refreshData { if(_orderList!=nil&&_orderList.count>0) { [_orderList removeAllObjects]; [_tableView reloadData]; } [self startLoading]; [self loadData]; } /** 抽屉数据源 @return <#return value description#> */ - (NSArray *)packageDataList { NSMutableArray *dataArray = [NSMutableArray array]; SideSlipModel *model = [[SideSlipModel alloc] init]; model.containerCellClass = @"InventoryOrderSearchListCell"; model.regionTitle = @"查询条件"; [dataArray addObject:model]; return [dataArray mutableCopy]; } @end