NewSurveyViewController.m 19.8 KB
Newer Older
陈俊俊's avatar
陈俊俊 committed
1 2 3 4 5 6 7 8 9 10 11 12
//
//  NewSurveyViewController.m
//  XFFurit
//
//  Created by 陈俊俊 on 15/8/1.
//  Copyright (c) 2015年 Xummer. All rights reserved.
//  新建行情调研



#import "NewSurveyViewController.h"
#import "SurveyCell.h"
n22's avatar
n22 committed
13
#import "SurveyViewController.h"
陈俊俊's avatar
陈俊俊 committed
14 15
#import "HPGrowingTextView.h"
#import "StartTimeView.h"
n22's avatar
n22 committed
16
#import "ChosePersonViewController.h"
n22's avatar
n22 committed
17
#import "ChooseProductViewController.h"
陈俊俊's avatar
陈俊俊 committed
18
#import "SurveyUser.h"
19
#import "Survey.h"
n22's avatar
n22 committed
20
#import "Product.h"
陈俊俊's avatar
陈俊俊 committed
21 22
#define LeftMargin 15
#define BtnHeight 44
陈俊俊's avatar
陈俊俊 committed
23
#define TableRowHeight 46
陈俊俊's avatar
陈俊俊 committed
24 25 26 27 28 29 30 31 32 33
#define CornerRadius 5
#define BtnSize 19
#define TotalHeight 432
#define KeyboardHeight 258
#define DateViewHeight 300
typedef enum : NSUInteger {
    SaveTag = 2000,
    CommitTag,
} BtnTag;

陈俊俊's avatar
陈俊俊 committed
34
@interface NewSurveyViewController ()<UITableViewDataSource,UITableViewDelegate,HPGrowingTextViewDelegate,UITextFieldDelegate,StartTimeViewDelegate,UIAlertViewDelegate>
陈俊俊's avatar
陈俊俊 committed
35 36 37 38 39 40 41 42 43 44 45 46
{
    UITableView *_tableView;
    NSMutableArray *_dataArr;
    UITextField *_titleField;
    UILabel *_productLabel;
    UILabel *_startDateLabel;
    UILabel *_endDateLabel;
    UILabel *_personLabel;
    HPGrowingTextView *_noteTextView;
    UIDatePicker *_timePicker;
    BOOL _isClickStart;
    StartTimeView *_startTimeView;
n22's avatar
n22 committed
47 48
    id uuidObject;
    id billNumberObject;
n22's avatar
n22 committed
49 50
    NSNumber *versionObject;
    NSString *_clickState;
陈俊俊's avatar
陈俊俊 committed
51
}
陈俊俊's avatar
陈俊俊 committed
52 53 54 55 56 57 58
@property (nonatomic,strong)NSString *titleStr;
@property (nonatomic,strong)NSString *productCodeStr;
@property (nonatomic,strong)NSString *productNameStr;
@property (nonatomic,strong)NSString *productUuidStr;
@property (nonatomic,strong)NSString *beginDateStr;
@property (nonatomic,strong)NSString *endDateStr;
@property (nonatomic,strong)NSString *remarkStr;
陈俊俊's avatar
陈俊俊 committed
59
@property (nonatomic,strong)NSMutableArray *users;
陈俊俊's avatar
陈俊俊 committed
60 61
@property (nonatomic,strong)NSMutableArray *selectUsers;
@property (nonatomic,strong)NSMutableArray *selectProducts;
陈俊俊's avatar
陈俊俊 committed
62

陈俊俊's avatar
陈俊俊 committed
63 64 65 66 67 68
@end

@implementation NewSurveyViewController

- (void)viewDidLoad {
    [super viewDidLoad];
陈俊俊's avatar
陈俊俊 committed
69
    self.title = self.navTitle;
陈俊俊's avatar
陈俊俊 committed
70
    [self initData];
陈俊俊's avatar
陈俊俊 committed
71 72 73 74
    [self createTableView];
    if (self.survey) {
        [self getDataFromServer];
    }
陈俊俊's avatar
陈俊俊 committed
75
}
陈俊俊's avatar
陈俊俊 committed
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
- (void)getDataFromServer{
    __weak typeof(self)weakSelf = self;

    void(^succ)(id) = ^(id data) {
        [IBTLoadingView hideHUDWithText:nil];
        __strong __typeof(weakSelf)strongSelf = weakSelf;
        if (data) {
            NSInteger success = [data[@"success"] integerValue];
            NSString *message  = data[@"message"] ;
            if (success == 1) {
                NSDictionary *dictData = data[@"data"];
                Survey *survey = [[Survey alloc]init];
                [survey setValuesForKeysWithDictionary:dictData];
                 strongSelf.survey = survey;

                [strongSelf preferDataInPersonLabel];
            }else{
                [IBTLoadingView showTips:message];
            }
        }
    };
    void(^fail)(id) = ^(id data) {
        [IBTLoadingView hideHUDWithText:nil];
        [IBTLoadingView showTips:data];
    };
    [IBTLoadingView showProgressLabel:@"正在加载..."];
    [[ICRHTTPController sharedController] getResultWithSurveyUuid:self.survey.uuid success:succ failure:fail];
}


陈俊俊's avatar
陈俊俊 committed
106
- (void)initData{
n22's avatar
n22 committed
107

陈俊俊's avatar
陈俊俊 committed
108
    _dataArr = [NSMutableArray array];
陈俊俊's avatar
陈俊俊 committed
109
    self.users = [NSMutableArray array];
陈俊俊's avatar
陈俊俊 committed
110 111
    self.selectUsers = [NSMutableArray array];
    self.selectProducts = [NSMutableArray array];
陈俊俊's avatar
陈俊俊 committed
112 113 114 115 116 117
    [_dataArr addObject:@"标题"];
    [_dataArr addObject:@"商品"];
    [_dataArr addObject:@"开始日期"];
    [_dataArr addObject:@"结束日期"];
    [_dataArr addObject:@"调研人员"];
    [_dataArr addObject:@"备注"];
n22's avatar
n22 committed
118 119
    uuidObject = [NSNull null];
    billNumberObject  = [NSNull null];
n22's avatar
n22 committed
120
    versionObject = [NSNumber numberWithInt:0];
陈俊俊's avatar
陈俊俊 committed
121 122 123 124
}

- (void)createTableView
{
陈俊俊's avatar
陈俊俊 committed
125 126
    self.view.backgroundColor  = XXFBgColor;

陈俊俊's avatar
陈俊俊 committed
127 128 129 130 131 132 133 134
    _tableView = [[UITableView alloc]initWithFrame:(CGRectMake(0, LeftMargin,ScreenSize.width, ScreenSize.height - 64 - LeftMargin)) style:(UITableViewStylePlain)];
    _tableView.backgroundColor = [UIColor whiteColor];
    _tableView.bounces = NO;
    _tableView.delegate = self;
    _tableView.dataSource = self;
    
    UIView *footView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, ScreenSize.width, 50)];
    
陈俊俊's avatar
陈俊俊 committed
135
    UIButton *saveBtn =  [IBTCustomButtom creatButtonWithFrame:CGRectMake(LeftMargin, 10, (ScreenSize.width - LeftMargin*3)/2, BtnHeight) target:self sel:@selector(btnClick:) tag:SaveTag image:nil title:@"保存" titleColor: [UIColor whiteColor] isCorner:YES corner:CornerRadius bgColor:GXF_SAVE_COLOR];
陈俊俊's avatar
陈俊俊 committed
136 137
    [footView addSubview:saveBtn];
    
陈俊俊's avatar
陈俊俊 committed
138
    UIButton *commitBtn = [IBTCustomButtom creatButtonWithFrame:CGRectMake(saveBtn.frame.origin.x + saveBtn.frame.size.width + LeftMargin, 10, (ScreenSize.width - LeftMargin*3)/2, BtnHeight) target:self sel:@selector(btnClick:) tag:CommitTag image:nil title:@"提交" titleColor: [UIColor whiteColor] isCorner:YES corner:CornerRadius bgColor:GXF_COMMIT_COLOR];
陈俊俊's avatar
陈俊俊 committed
139 140 141 142 143 144 145 146 147 148 149
    [footView addSubview:commitBtn];
    
    _tableView.tableFooterView = footView;
    [self.view addSubview:_tableView];
}

#pragma mark - 按钮点击事件
- (void)btnClick:(UIButton *)btn{
    switch (btn.tag) {
        case SaveTag:
        {
陈俊俊's avatar
陈俊俊 committed
150
            if ([self checkSurvey]) {
n22's avatar
n22 committed
151
                _clickState = @"initial";
n22's avatar
n22 committed
152
                [self saveSurvey:@"initial" message:@"正在保存..."];
陈俊俊's avatar
陈俊俊 committed
153
            }
陈俊俊's avatar
陈俊俊 committed
154 155 156 157
        }
            break;
        case CommitTag:
        {
n22's avatar
n22 committed
158
            if ([self checkSurvey]) {
陈俊俊's avatar
陈俊俊 committed
159 160 161
                UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"温馨提示" message:@"请确认提交" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确认", nil];
                alertView.delegate = self;
                [alertView show];
n22's avatar
n22 committed
162
            }
陈俊俊's avatar
陈俊俊 committed
163 164 165 166 167 168
        }
            break;
        default:
            break;
    }
}
陈俊俊's avatar
陈俊俊 committed
169
- (BOOL)checkSurvey{
陈俊俊's avatar
陈俊俊 committed
170 171
    self.titleStr = _titleField.text;
    self.remarkStr = _noteTextView.text;
陈俊俊's avatar
陈俊俊 committed
172 173 174 175 176 177 178 179 180 181 182 183 184 185
    if (self.titleStr.length == 0 ) {
        ShowMessage(@"调研标题不能为空");
        return NO;
    }
    if (self.productUuidStr.length == 0 || self.productNameStr.length == 0|| self.productCodeStr.length == 0 ) {
        ShowMessage(@"调研商品不能为空");
        return NO;
    }
    if (self.beginDateStr.length == 0) {
        ShowMessage(@"调研开始日期不能为空");
        return NO;
    }
    if (self.endDateStr.length == 0) {
        ShowMessage(@"调研结束日期不能为空");
陈俊俊's avatar
陈俊俊 committed
186 187
        return NO;
    }
陈俊俊's avatar
陈俊俊 committed
188 189 190 191 192 193 194 195 196
    if (self.users.count <=0) {
        ShowMessage(@"调研人员不能为空");
        return NO;
    }
    if ([IBTCommon compareDate:self.beginDateStr withDate:self.endDateStr] < 0) {
        ShowMessage(@"开始日期不能小于结束日期");
        return NO;
    }
    
陈俊俊's avatar
陈俊俊 committed
197 198
    return YES;
}
陈俊俊's avatar
陈俊俊 committed
199 200


陈俊俊's avatar
陈俊俊 committed
201
#pragma mark - 保存
n22's avatar
n22 committed
202
- (void)saveSurvey:(NSString *)state message:(NSString *)msg
陈俊俊's avatar
陈俊俊 committed
203 204 205 206
{
    //保存
    void(^succ)(id) = ^(id data) {
        [IBTLoadingView hideHUDWithText:nil];
n22's avatar
n22 committed
207 208 209 210 211
        if (data) {
            NSInteger success = [data[@"success"] integerValue];
            NSString *message = data[@"message"];
            if (success == 1) {
                //成功
n22's avatar
n22 committed
212
                if ([state isEqualToString:@"initial"]) {//保存成功
n22's avatar
n22 committed
213 214 215 216 217 218
                    NSString *uuidS = data[@"data"][@"uuid"];
                    NSString *billNumberS = data[@"data"][@"billNumber"];
                    NSNumber *versionN = data[@"data"][@"version"];
                    uuidObject = uuidS;
                    billNumberObject = billNumberS;
                    versionObject = versionN;
陈俊俊's avatar
陈俊俊 committed
219
                    [IBTLoadingView showTips:[NSString stringWithFormat:@"当前单据%@已保存成功",billNumberS]];
n22's avatar
n22 committed
220 221 222
                }else{//提交成功
                    SurveyViewController *svc = [SurveyViewController new];
                    [self PushViewController:svc animated:YES];
陈俊俊's avatar
陈俊俊 committed
223
                }
n22's avatar
n22 committed
224 225 226 227
            }else{
                [IBTLoadingView showTips:message];
            }
        }
陈俊俊's avatar
陈俊俊 committed
228 229 230 231 232
    };
    void(^fail)(id) = ^(id data) {
        [IBTLoadingView hideHUDWithText:nil];
        [IBTLoadingView showTips:data];
    };
n22's avatar
n22 committed
233 234
    
    if(self.survey.uuid.length > 0 && uuidObject == [NSNull null]){
陈俊俊's avatar
陈俊俊 committed
235 236
        uuidObject = self.survey.uuid;
    }
n22's avatar
n22 committed
237
    if (self.survey.billNumber > 0 && billNumberObject == [NSNull null]) {
陈俊俊's avatar
陈俊俊 committed
238 239
        billNumberObject = self.survey.billNumber;
    }
n22's avatar
n22 committed
240 241
    if (self.survey && [versionObject integerValue] == 0) {
        versionObject = self.survey.version;
n22's avatar
n22 committed
242
    }
陈俊俊's avatar
陈俊俊 committed
243
    NSDictionary *dict = @{@"uuid":uuidObject,
n22's avatar
n22 committed
244
                           @"version":versionObject,
陈俊俊's avatar
陈俊俊 committed
245 246
                           @"billnumber":billNumberObject,
                           @"title":[IBTCommon checkString:self.titleStr],
n22's avatar
n22 committed
247
                           @"state":state,
陈俊俊's avatar
陈俊俊 committed
248 249 250 251 252 253
                           @"productUuid":[IBTCommon checkString:self.productUuidStr],
                           @"productCode":[IBTCommon checkString:self.productCodeStr],
                           @"productName":[IBTCommon checkString:self.productNameStr],
                           @"beginDate":[IBTCommon checkString:self.beginDateStr],
                           @"endDate":[IBTCommon checkString:self.endDateStr],
                           @"remark":[IBTCommon checkString:self.remarkStr],
n22's avatar
n22 committed
254
                           @"users":self.users};
255
    [IBTLoadingView showProgressLabel:msg];    
陈俊俊's avatar
陈俊俊 committed
256 257 258
    [[ICRHTTPController sharedController] saveSurveyWithAuthenticode:dict success:succ failure:fail];
}

陈俊俊's avatar
陈俊俊 committed
259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283
#pragma mark - 协议方法
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return _dataArr.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *cellID = @"cellID";
    SurveyCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
    if (cell == nil) {
        cell = [[SurveyCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellID];
        tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
        if (indexPath.row >0 && indexPath.row < _dataArr.count - 1) {
            cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
        }
        [self createViewInCell:cell indexPath:indexPath];
    }
    [cell setTitleStr:_dataArr[indexPath.row]];
    return cell;
}

-  (void)createViewInCell:(SurveyCell *)cell indexPath:(NSIndexPath *)indexPath{
    if (indexPath.row == 0) {
陈俊俊's avatar
陈俊俊 committed
284
        _titleField = [[UITextField alloc] initWithFrame:CGRectMake(100+LeftMargin, 0, ScreenSize.width - 100 - LeftMargin*2-15, TableRowHeight)];
陈俊俊's avatar
陈俊俊 committed
285
        _titleField.textAlignment = NSTextAlignmentRight;
陈俊俊's avatar
陈俊俊 committed
286
        _titleField.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
287
        _titleField.placeholder = @"输入调研标题";
陈俊俊's avatar
陈俊俊 committed
288
        _titleField.font = GXF_FIFTEENTEN_SIZE;
陈俊俊's avatar
陈俊俊 committed
289
        _titleField.returnKeyType = UIReturnKeyDone;
陈俊俊's avatar
陈俊俊 committed
290 291 292
        _titleField.delegate = self;
        [cell.contentView addSubview:_titleField];
    }else if (indexPath.row == _dataArr.count -1){
陈俊俊's avatar
陈俊俊 committed
293
        _noteTextView = [[HPGrowingTextView alloc] initWithFrame:CGRectMake(100+LeftMargin, 0, ScreenSize.width - 100 - LeftMargin*2-15, TableRowHeight)];
陈俊俊's avatar
陈俊俊 committed
294 295 296
        _noteTextView.contentInset = UIEdgeInsetsMake(5, 5, 5, 0);
        _noteTextView.minNumberOfLines = 1;
        _noteTextView.maxNumberOfLines = 4;
陈俊俊's avatar
陈俊俊 committed
297
        _noteTextView.font = GXF_FIFTEENTEN_SIZE;
陈俊俊's avatar
陈俊俊 committed
298 299
        _noteTextView.textAlignment = NSTextAlignmentRight;
        _noteTextView.delegate = self;
陈俊俊's avatar
陈俊俊 committed
300
        _noteTextView.returnKeyType = UIReturnKeyDone;
陈俊俊's avatar
陈俊俊 committed
301 302
        _noteTextView.placeholder = @"输入备注内容";
        [cell.contentView addSubview:_noteTextView];
陈俊俊's avatar
陈俊俊 committed
303
       
陈俊俊's avatar
陈俊俊 committed
304
        CGRect lineFrame =  cell.lineLabel.frame;
陈俊俊's avatar
陈俊俊 committed
305
        lineFrame.origin.y = TableRowHeight*2-1;
陈俊俊's avatar
陈俊俊 committed
306 307
        cell.lineLabel.frame = lineFrame;
    }else{
陈俊俊's avatar
陈俊俊 committed
308
        UILabel *contentLabel = [[UILabel alloc]initWithFrame:(CGRectMake(100+LeftMargin, 0, ScreenSize.width - 100 - LeftMargin*2-15, TableRowHeight))];
陈俊俊's avatar
陈俊俊 committed
309
        contentLabel.textAlignment= NSTextAlignmentRight;
陈俊俊's avatar
陈俊俊 committed
310 311
        contentLabel.textColor = GXF_PLACEHOLDER_COLOR;
        contentLabel.font = GXF_FIFTEENTEN_SIZE;
陈俊俊's avatar
陈俊俊 committed
312 313 314 315 316 317 318 319 320 321 322 323 324
        [cell.contentView addSubview:contentLabel];
        if (indexPath.row == 1) {
            contentLabel.text = @"选择商品";
            _productLabel = contentLabel;
        }else if(indexPath.row == 2){
            contentLabel.text = @"选择日期";
            _startDateLabel = contentLabel;
        }else if(indexPath.row == 3){
            contentLabel.text = @"选择日期";
            _endDateLabel = contentLabel;
        }else if(indexPath.row == 4){
            contentLabel.text = @"选择调研人员";
            _personLabel = contentLabel;
陈俊俊's avatar
陈俊俊 committed
325 326 327 328
        }
    }
}
- (void)preferDataInPersonLabel{
陈俊俊's avatar
陈俊俊 committed
329 330 331 332 333 334 335 336 337 338 339 340
    if (self.survey) {
        _titleField.text = [IBTCommon checkString:self.survey.title];
        self.titleStr = [IBTCommon checkString:self.survey.title];
    }
    if (self.survey) {
        if (self.survey.endDate.length > 9) {
            _endDateLabel.text = [[IBTCommon checkString:self.survey.endDate]substringToIndex:10];
        }
        _endDateLabel.textColor = GXF_CONTENT_COLOR;
        self.endDateStr = [IBTCommon checkString:self.survey.endDate];
    }

陈俊俊's avatar
陈俊俊 committed
341 342 343
    if (self.survey) {
        if (self.survey.users.count > 0) {
            NSString *personStr = @"";
陈俊俊's avatar
陈俊俊 committed
344 345 346 347
            for (NSDictionary * userDict in self.survey.users) {
                
                SurveyUser *surveyUser = [[SurveyUser alloc]init];
                [surveyUser setValuesForKeysWithDictionary:userDict];
陈俊俊's avatar
陈俊俊 committed
348
                [self.selectUsers addObject:surveyUser.userUuid];
陈俊俊's avatar
陈俊俊 committed
349 350
                if (personStr.length == 0) {
                    personStr = [personStr stringByAppendingFormat:@"%@",surveyUser.userName];
陈俊俊's avatar
陈俊俊 committed
351
                }else{
陈俊俊's avatar
陈俊俊 committed
352 353 354 355
                    personStr = [personStr stringByAppendingFormat:@"、%@",surveyUser.userName];
                }
            }
            _personLabel.text = personStr;
陈俊俊's avatar
陈俊俊 committed
356
            _personLabel.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
357
        }
陈俊俊's avatar
陈俊俊 committed
358
        if (self.users) {
陈俊俊's avatar
陈俊俊 committed
359
            [self.users addObjectsFromArray:self.survey.users];
陈俊俊's avatar
陈俊俊 committed
360 361
        }
    }
陈俊俊's avatar
陈俊俊 committed
362 363 364 365 366 367 368 369
    if (self.survey) {
        if (self.survey.beginDate.length > 9) {
            _startDateLabel.text = [[IBTCommon checkString:self.survey.beginDate]substringToIndex:10];
        }
        _startDateLabel.textColor = GXF_CONTENT_COLOR;
        self.beginDateStr =[IBTCommon checkString:self.survey.beginDate];
        
    }
陈俊俊's avatar
陈俊俊 committed
370
    if (self.survey) {
n22's avatar
n22 committed
371
        _productLabel.text = [NSString stringWithFormat:@"%@[%@]",[IBTCommon checkString:self.survey.productName],[IBTCommon checkString:self.survey.productCode]];
陈俊俊's avatar
陈俊俊 committed
372
        _productLabel.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
373 374 375
        self.productCodeStr = [IBTCommon checkString:self.survey.productCode];
        self.productNameStr = [IBTCommon checkString:self.survey.productName];
        self.productUuidStr = [IBTCommon checkString:self.survey.productUuid];
陈俊俊's avatar
陈俊俊 committed
376
        [self.selectProducts addObject:self.productUuidStr];
陈俊俊's avatar
陈俊俊 committed
377
    }
陈俊俊's avatar
陈俊俊 committed
378 379 380 381 382

    if (self.survey) {
        _noteTextView.text =  [IBTCommon checkString:self.survey.remark];
        self.remarkStr = [IBTCommon checkString:self.survey.remark];
    }
陈俊俊's avatar
陈俊俊 committed
383 384
}

陈俊俊's avatar
陈俊俊 committed
385

陈俊俊's avatar
陈俊俊 committed
386 387
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.row == 5){
陈俊俊's avatar
陈俊俊 committed
388
        return TableRowHeight*2;
陈俊俊's avatar
陈俊俊 committed
389
    }else{
陈俊俊's avatar
陈俊俊 committed
390
        return TableRowHeight;
陈俊俊's avatar
陈俊俊 committed
391 392 393 394
    }
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    if (indexPath.row == 2 || indexPath.row == 3) {
陈俊俊's avatar
陈俊俊 committed
395
        [self keyboardHidden];
陈俊俊's avatar
陈俊俊 committed
396 397 398 399 400 401
        if (indexPath.row == 2) {
            _isClickStart = YES;
        }else{
            _isClickStart = NO;
        }
        [self startDatePickView];
n22's avatar
n22 committed
402 403
    }else if(indexPath.row == 4){
        ChosePersonViewController *cvc = [ChosePersonViewController new];
陈俊俊's avatar
陈俊俊 committed
404 405 406
        if (self.selectUsers.count > 0) {
            cvc.selectArr = self.selectUsers;
        }
陈俊俊's avatar
陈俊俊 committed
407
        cvc.choseBaseInfo = ^(NSArray *users){
n22's avatar
n22 committed
408 409 410 411 412
            if(users.count > 0){
                NSString *textStr = @"";
                if (self.users.count > 0) {
                    [self.users removeAllObjects];
                }
陈俊俊's avatar
陈俊俊 committed
413 414 415
                if (self.selectUsers.count > 0) {
                    [self.selectUsers removeAllObjects];
                }
n22's avatar
n22 committed
416 417 418 419 420 421
                for (SurveyUser *user in users) {
                    if (textStr.length == 0) {
                        textStr = [textStr stringByAppendingFormat:@"%@",user.userName];
                    }else {
                        textStr = [textStr stringByAppendingFormat:@"、%@",user.userName];
                    }
陈俊俊's avatar
陈俊俊 committed
422
                    [self.selectUsers addObject:user.userUuid];
n22's avatar
n22 committed
423
                    [self.users addObject:[user dictForCommit]];
陈俊俊's avatar
陈俊俊 committed
424
                }
n22's avatar
n22 committed
425
                _personLabel.text = textStr;
陈俊俊's avatar
陈俊俊 committed
426
                _personLabel.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
427
            }
n22's avatar
n22 committed
428 429 430
        };
        cvc.isMoreChose = YES;
        [self PushViewController:cvc animated:YES];
n22's avatar
n22 committed
431 432
    }else  if(indexPath.row == 1){
        ChooseProductViewController *cvc = [ChooseProductViewController new];
陈俊俊's avatar
陈俊俊 committed
433 434 435
        if (self.selectProducts.count > 0) {
            cvc.selectArr =  self.selectProducts ;
        }
陈俊俊's avatar
陈俊俊 committed
436
        cvc.choseBaseInfo = ^(NSArray *products){
陈俊俊's avatar
陈俊俊 committed
437 438 439
            if (self.selectProducts.count > 0) {
                [self.selectProducts removeAllObjects];
            }
陈俊俊's avatar
陈俊俊 committed
440
            Product *product = products[0];
n22's avatar
n22 committed
441
            _productLabel.text = [NSString stringWithFormat:@"%@[%@]",product.name,product.code];
陈俊俊's avatar
陈俊俊 committed
442
            _productLabel.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
443 444 445
            self.productNameStr = product.name;
            self.productUuidStr = product.uuid;
            self.productCodeStr = product.code;
陈俊俊's avatar
陈俊俊 committed
446
            [self.selectProducts addObject:product.uuid];
n22's avatar
n22 committed
447 448 449
        };
        cvc.isMoreChose = NO;
        [self PushViewController:cvc animated:YES];
陈俊俊's avatar
陈俊俊 committed
450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474
    }
}

- (void)startDatePickView{
    if (!_startTimeView) {
        _startTimeView = [[StartTimeView alloc] initWithFrame:CGRectMake(0, ScreenSize.height, ScreenSize.width, ScreenSize.height - 64)];
        _startTimeView.delegate = self;
        _startTimeView.backgroundColor        = RGBA(0, 0, 0 ,0.5);
        [self.view addSubview:_startTimeView];
        
        [UIView animateWithDuration:0.15 animations:^{
            CGRect startFrame =  _startTimeView.frame;
            startFrame.origin.y =  0;
            _startTimeView.frame = startFrame;
        } completion:^(BOOL finished) {
            
        }];
    }
}

- (void)cancelTimeView{
    [self clearDatePickView];
}
- (void)okTimeView:(NSDate *)time{
    if (_isClickStart) {
陈俊俊's avatar
陈俊俊 committed
475
        _startDateLabel.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
476 477
        _startDateLabel.text = [IBTCommon stringFromDate:time];
        self.beginDateStr = [time httpParameterString];
陈俊俊's avatar
陈俊俊 committed
478
    }else{
陈俊俊's avatar
陈俊俊 committed
479
        _endDateLabel.textColor = GXF_CONTENT_COLOR;
陈俊俊's avatar
陈俊俊 committed
480 481
        _endDateLabel.text = [IBTCommon stringFromDate:time];
        self.endDateStr = [time httpParameterString];
陈俊俊's avatar
陈俊俊 committed
482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507
    }
    // 关闭选择器
    [self clearDatePickView];
}
#pragma mark - 取消
- (void)clearDatePickView{
    [UIView animateWithDuration:0.15 animations:^{
        CGRect startFrame =  _startTimeView.frame;
        startFrame.origin.y = ScreenSize.height;
        _startTimeView.frame = startFrame;
    } completion:^(BOOL finished) {
        [_startTimeView removeFromSuperview];
        _startTimeView = nil;
    }];
}
#pragma mark delegate
- (BOOL)growingTextViewShouldReturn:(HPGrowingTextView *)growingTextView{
    [_noteTextView resignFirstResponder];
    return YES;
}

- (void)keyboardHidden{
    [_titleField resignFirstResponder];
    [_noteTextView resignFirstResponder];
}

n22's avatar
n22 committed
508 509
- (void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
n22's avatar
n22 committed
510 511 512
    if(self.survey && [_clickState isEqualToString:@"initial"]){
        [ICRUserUtil sharedInstance].needFresh = YES;
    }
n22's avatar
n22 committed
513 514
}

陈俊俊's avatar
陈俊俊 committed
515 516 517 518 519 520 521
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    if (buttonIndex == 1) {
        _clickState = @"submitted";
        [self saveSurvey:@"submitted" message:@"正在提交..."];
    }
}

陈俊俊's avatar
陈俊俊 committed
522 523 524 525 526
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
@end