// // ProductLibraryView.m // Lighting // // Created by mac on 16/5/11. // Copyright © 2016年 上海勾芒科技有限公司. All rights reserved. // #import "ProductLibraryView.h" @implementation ProductLibraryView /** * 初始化商品数据源数组 */ - (NSMutableArray *)datasArray { if (_datasArray == nil) { _datasArray = [NSMutableArray array]; } return _datasArray; } /** * 初始化筛选数据源 */ - (NSMutableArray *)arrayData { if (_arrayData == nil) { _arrayData = [NSMutableArray array]; } return _arrayData; } /** * 初始化复选模型 */ - (GoodsCondition *)condtionModel { if (!_condtionModel) { _condtionModel = [[GoodsCondition alloc]init]; } return _condtionModel; } - (void)viewDidLoad { [self initdata]; [self initSubView]; } -(void)initdata { self.arrayData=[[NSMutableArray alloc]init]; self.nameData=[[NSMutableArray alloc]initWithObjects:@"风格",@"类型",@"空间",@"材质",@"价格",nil]; self.cellArray=[[NSMutableArray alloc]init]; self.showSection=[[NSMutableArray alloc]init]; self.typeBtnArray=[[NSMutableArray alloc]init]; self.sectionBtnArray=[[NSMutableArray alloc]init]; self.cellBtnArray=[[NSMutableArray alloc]init]; self.indexPage = 1; self.selectedIndex=100; } - (void)uiConfigAction { //下拉刷新 MjRefreshHeaderCustom *headerRefresh = [MjRefreshHeaderCustom headerWithRefreshingBlock:^{ //分页数据 DataPage *Newpage = [[DataPage alloc]init]; Newpage.page = 1; Newpage.rows = KROWS; self.condtionModel.page = Newpage; self.indexPage = 1; //搜索 if (self.selectedCode) { switch (self.selectedIndex) { case 100://风格 { self.condtionModel.styleEquals = self.selectedCode; } break; case 101://类型 { self.condtionModel.categoryEquals = self.selectedCode; } break; case 102://空间 { self.condtionModel.spaceEquals = self.selectedCode; } break; case 103://材质 { self.condtionModel.materialEqueals = self.selectedCode; } break; case 104://价格 { //价格字符串切割 NSArray *spacrArray = [self.selectedCode componentsSeparatedByString:@"到"]; self.condtionModel.startprice = [NSNumber numberWithInteger:[[spacrArray objectAtIndex_opple:0] integerValue]]; self.condtionModel.endprice = [NSNumber numberWithInteger:[[spacrArray objectAtIndex_opple:1] integerValue]]; self.condtionModel.categoryEquals = self.selectedCode; } break; default: break; } } [self.collectionView.mj_footer resetNoMoreData]; [self getScreeningdatasisRemoveArray:YES]; [self getGoodsListDatasisRemove:YES Withobject:self.condtionModel]; }]; headerRefresh.stateLabel.hidden = YES; headerRefresh.lastUpdatedTimeLabel.hidden = YES; self.collectionView.mj_header = headerRefresh; [self.collectionView.mj_header beginRefreshing]; //上拉加载 self.collectionView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{ if (self.indexPage ++ > self.totalPages) { [self.collectionView.mj_footer endRefreshingWithNoMoreData]; }else { //分页数据 DataPage *Newpage = [[DataPage alloc]init]; Newpage.page = self.indexPage ++; Newpage.rows = KROWS; self.condtionModel.page = Newpage; //搜索 if (self.selectedCode) { self.condtionModel.categoryEquals = self.selectedCode; } [self getGoodsListDatasisRemove:NO Withobject:self.condtionModel]; } }]; } #pragma mark -获取商品列表数据 - (void)getGoodsListDatasisRemove:(BOOL)remove Withobject:(GoodsCondition *)conditon { [self getGoodsListdatas:conditon returnResponse:^(GoodsResponse *response) { if (response.goodsEntity.count == 0) { [self ErrorMBProgressView:@"暂无数据"]; }else { if (remove) { [self.datasArray removeAllObjects]; } for (TOGoodsEntity *model in response.goodsEntity) { [self.datasArray addObject:model]; } [self.collectionView reloadData]; [self.seceneTableView reloadData]; } }]; } #pragma mark -获取产品筛选数据 - (void)getScreeningdatasisRemoveArray:(BOOL)remove { [[NetworkRequestClassManager Manager] NetworkWithDictionaryRequestWithURL:[NSString stringWithFormat:@"%@%@",ServerAddress,@"/goods/getGoodsFilter"] WithRequestType:1 WithParameter:nil WithReturnValueBlock:^(id returnValue) { if ([returnValue[@"code"] isEqualToNumber:@0]) { if (remove) { [self.arrayData removeAllObjects]; } GoodsFilter *goodsStyle = [[GoodsFilter alloc]initWithDictionary:returnValue[@"data"] error:nil]; self.goodsFilter=goodsStyle; switch (self.selectedIndex) { case 100: // 风格 self.arrayData=[NSMutableArray arrayWithArray:self.goodsFilter.styles]; break; case 101: // 类型 self.arrayData=[NSMutableArray arrayWithArray:self.goodsFilter.categories]; break; case 102: // 空间 self.arrayData=[NSMutableArray arrayWithArray:self.goodsFilter.space]; break; case 103: // 材质 self.arrayData=[NSMutableArray arrayWithArray:self.goodsFilter.material]; break; case 104: // 价格 self.arrayData=[NSMutableArray arrayWithArray:self.goodsFilter.price]; break; default: break; } [self.seceneTableView reloadData]; } else { [self ErrorMBProgressView:returnValue[@"message"]]; } } WithErrorCodeBlock:^(id errorCodeValue) { } WithFailureBlock:^(id error) { NSLog(@"%@",error); }]; } #pragma mark -获取商品列表数据 - (void)getGoodsListdatas:(GoodsCondition *)conditon returnResponse:(void(^)(GoodsResponse *))finish { [self CreateMBProgressHUDLoding]; [[NetworkRequestClassManager Manager] NetworkRequestWithURL:[NSString stringWithFormat:@"%@%@",ServerAddress,@"/goods/query"] WithRequestType:0 WithParameter:conditon WithReturnValueBlock:^(id returnValue) { [self RemoveMBProgressHUDLoding]; [self endRefreshingForTableView:self.collectionView]; if ([returnValue[@"code"] isEqualToNumber:@0]) { GoodsResponse *sponse = [[GoodsResponse alloc]initWithDictionary:returnValue[@"data"] error:nil]; //返回结果 finish(sponse); } else { [self ErrorMBProgressView:@"暂无数据"]; } } WithErrorCodeBlock:^(id errorCodeValue) { } WithFailureBlock:^(id error) { [self endRefreshingForTableView:self.collectionView]; [self RemoveMBProgressHUDLoding]; }]; } -(void)initSubView { for (int i=0; iScreenWidth-150||point.y<50||point.y>ScreenHeight-150) { if (self) { if ([self.delegate respondsToSelector:@selector(restProductBtnImage)]) { [self.delegate restProductBtnImage]; } } } } /* // Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. - (void)drawRect:(CGRect)rect { // Drawing code } */ @end