ChooseProductViewController.m 5.49 KB
Newer Older
n22's avatar
n22 committed
1 2 3 4 5 6 7 8 9
//
//  ChooseProductViewController.m
//  XFFruit
//
//  Created by n22 on 15/8/7.
//  Copyright (c) 2015年 Xummer. All rights reserved.
//

#import "ChooseProductViewController.h"
陈俊俊's avatar
陈俊俊 committed
10 11
#define TopMargin 50
#define TableHeight 50
陈俊俊's avatar
陈俊俊 committed
12
@interface ChooseProductViewController ()
陈俊俊's avatar
陈俊俊 committed
13

陈俊俊's avatar
陈俊俊 committed
14

n22's avatar
n22 committed
15
@end
n22's avatar
n22 committed
16 17 18 19

@implementation ChooseProductViewController
- (void)viewDidLoad {
    [super viewDidLoad];
陈俊俊's avatar
陈俊俊 committed
20 21
    self.currentPage = 0;
    self.tableStr = GXF_BASECLASS_PRODUCT;
陈俊俊's avatar
陈俊俊 committed
22 23 24
    //记录更新时间
     self.tableView.header.lastUpdatedTimeKey = ChooseProductUpdateDate;
     self.title = @"选择商品";
陈俊俊's avatar
陈俊俊 committed
25
    [self fetchDataList:@"" tableStr:GXF_BASECLASS_PRODUCT];
陈俊俊's avatar
陈俊俊 committed
26
}
陈俊俊's avatar
陈俊俊 committed
27 28 29

-(void)getBaseDataFromServerWithStartDate:(NSString *)startDate
{
n22's avatar
n22 committed
30
    __weak typeof(self)weakSelf = self;
n22's avatar
n22 committed
31
    void(^succ)(id) = ^(id data) {
n22's avatar
n22 committed
32
        __strong __typeof(weakSelf)strongSelf = weakSelf;
陈俊俊's avatar
陈俊俊 committed
33 34 35
        //请求成功之后
        strongSelf.startDate = startDate;
        [strongSelf getLastDateFromServer:data];
n22's avatar
n22 committed
36 37 38 39
    };
    void(^fail)(id) = ^(id data) {
        [IBTLoadingView hideHUDWithText:nil];
        [IBTLoadingView showTips:data];
陈俊俊's avatar
陈俊俊 committed
40
        [self endRefreshing];
n22's avatar
n22 committed
41
    };
陈俊俊's avatar
陈俊俊 committed
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
    if (self.currentPage == 0) {
        [IBTLoadingView showProgressLabel:@"正在加载..."];
    }
    [[ICRHTTPController sharedController] getProductWithStartDate:startDate  Page_number:self.currentPage page_size:100 success:succ failure:fail];
}
- (void)getLastDateFromServer:(id)data
{
    if (data) {
        NSDictionary *pageDict = data[ @"data" ][ @"paging" ];
        NSInteger pageCount = [pageDict[@"pageCount"] integerValue];
        if (pageCount <= self.currentPage) {
            [self endRefreshing];
            [IBTLoadingView hideHUDWithText:nil];
            [self fetchDataList:@"" tableStr:GXF_BASECLASS_PRODUCT];
        }else{
            self.currentPage++;
            [self getBaseDataFromServerWithStartDate:self.startDate];
        }
陈俊俊's avatar
陈俊俊 committed
60 61 62
    }else{
        [IBTLoadingView hideHUDWithText:nil];
        [IBTLoadingView showTips:data];
陈俊俊's avatar
陈俊俊 committed
63 64
    }
    
n22's avatar
n22 committed
65
}
陈俊俊's avatar
陈俊俊 committed
66 67


n22's avatar
n22 committed
68 69 70 71 72 73 74 75 76 77 78 79
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *cellID = @"MaskCell";
    MaskCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
    if (cell == nil) {
        cell = [[MaskCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID totalWidth:ScreenSize.width totalHeight:TableHeight];
        tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
        cell.Commitbtn.hidden = YES;
    }
    if (self.isMoreChose) {
        if ([self isHaveIndexPath:indexPath]) {
            cell.Commitbtn.hidden = NO;
陈俊俊's avatar
陈俊俊 committed
80 81
            cell.titleLabel.textColor = BASESELECT_COLOR;

n22's avatar
n22 committed
82 83
        }else{
            cell.Commitbtn.hidden = YES;
陈俊俊's avatar
陈俊俊 committed
84
            cell.titleLabel.textColor = [UIColor blackColor];
n22's avatar
n22 committed
85 86
        }
    }else{
陈俊俊's avatar
陈俊俊 committed
87 88
        if (self.currentIndexPath) {
            if (indexPath.row == self.currentIndexPath.row) {
n22's avatar
n22 committed
89
                cell.Commitbtn.hidden = NO;
陈俊俊's avatar
陈俊俊 committed
90
                cell.titleLabel.textColor = BASESELECT_COLOR;
n22's avatar
n22 committed
91 92
            }else{
                cell.Commitbtn.hidden = YES;
陈俊俊's avatar
陈俊俊 committed
93
                cell.titleLabel.textColor = [UIColor blackColor];
n22's avatar
n22 committed
94
            }
n22's avatar
n22 committed
95 96
        }else{
            cell.Commitbtn.hidden = YES;
陈俊俊's avatar
陈俊俊 committed
97
            cell.titleLabel.textColor = [UIColor blackColor];
n22's avatar
n22 committed
98 99
        }
    }
n22's avatar
n22 committed
100
    if (self.dataArr.count > 0) {
n22's avatar
n22 committed
101 102 103 104 105 106 107 108 109
        if (indexPath.row == 0) {
            NSString *dateStr = [self.dataArr[indexPath.row] httpParameterString];
            cell.titleLabel.textColor = GXF_CONTENT_COLOR;
            [cell setTitleStr:[NSString stringWithFormat:@"上次更新时间:%@",dateStr]];
        }else{
            Product *product = self.dataArr[indexPath.row];
            NSString *proStr = [NSString stringWithFormat:@"%@[%@]",product.name,product.code];
            [cell setTitleStr:proStr];
        }
n22's avatar
n22 committed
110
    }
n22's avatar
n22 committed
111 112
    return cell;
}
陈俊俊's avatar
陈俊俊 committed
113
- (void)boxValueChanged:(NSNotification *)fication{
陈俊俊's avatar
陈俊俊 committed
114
    NSString *tilkeStr = [IBTCommon trimmingCharacters:self.selectTextFiled.text];
陈俊俊's avatar
陈俊俊 committed
115
    [self fetchDataList:tilkeStr tableStr:GXF_BASECLASS_PRODUCT];
陈俊俊's avatar
陈俊俊 committed
116
}
陈俊俊's avatar
陈俊俊 committed
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
- (void)tableViewRefresh:(NSString *)titltstr{
    if (titltstr.length > 0) {
        [super tableViewRefresh:titltstr];
    }else{
        if (self.selectArr.count > 0) {
            if (self.isMoreChose) {
                for (NSInteger i = 1;i< self.dataArr.count; i++) {
                    Product *product = self.dataArr[i];
                    for (NSString *selectProduct in self.selectArr) {
                        if ([selectProduct isEqualToString:product.uuid]) {
                            NSIndexPath *indexPath = [NSIndexPath indexPathForRow:i inSection:0];
                            [self.indexArr addObject:indexPath];
                            break;
                        }
                    }
                }
            }else{
                for (NSInteger i = 1;i< self.dataArr.count; i++) {
                    Product *product = self.dataArr[i];
                    for (NSString *selectProduct in self.selectArr) {
                        if ([selectProduct isEqualToString:product.uuid]) {
                            NSIndexPath *indexPath = [NSIndexPath indexPathForRow:i inSection:0];
                            self.currentIndexPath = indexPath;
                            break;
                        }
                    }
                }
            }
            [self.tableView reloadData];
        }else{
            [super tableViewRefresh:titltstr];
        }
    }
}
陈俊俊's avatar
陈俊俊 committed
151 152


n22's avatar
n22 committed
153 154 155 156 157
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

@end