| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284 |
- //
- // DeliveryReceiptSearchCell.m
- // IBOSS
- //
- // Created by guan hong hou on 2017/8/28.
- // Copyright © 2017年 elongtian. All rights reserved.
- //
- // 功能描述:配送回执搜索单元格
- #import "DeliveryReceiptSearchCell.h"
- #import "DateFormat.h"
- #import "UIColor+hexColor.h"
- #import "SideSlipConfig.h"
- #import "StatusInfo.h"
- #import "StatusInfoTextVC.h"
- @implementation DeliveryReceiptSearchCell
- #pragma 公有函数
- /**
- 加载xib文件
- */
- - (void)awakeFromNib {
- [super awakeFromNib];
- }
- /**
- 初始化回执类型
- */
- - (NSMutableArray *)getMutableArray{
- NSMutableArray *arrayStatus = [[NSMutableArray alloc]init];
- StatusInfo* s=[[StatusInfo alloc]init];
- s.statusId=@"1";
- s.name=@"完成";
- [arrayStatus addObject:s];
- s=[[StatusInfo alloc]init];
- s.statusId=@"2";
- s.name=@"推迟送货";
- [arrayStatus addObject:s];
- s=[[StatusInfo alloc]init];
- s.statusId=@"";
- s.name=@"全部";
- [arrayStatus addObject:s];
- return arrayStatus;
- }
- #pragma 委托函数
- /**
- 单元格高度
- @return <#return value description#>
- */
- - (CGFloat)cellHeight {
- return 600.5f;
- }
- /**
- 重置按钮 事件
- */
- - (void)resetData {
-
- [_txtDeliveryNo setText:@""];
- [_btnStartDate setTitle:@"请选择回执开始日期" forState:UIControlStateNormal];
- [_btnEndDate setTitle:@"请选择回执结束日期" forState:UIControlStateNormal];
- [_btnReceiptType setTitle:@"请选择回执类型" forState:UIControlStateNormal];
- _searchModel.deliveryNo= @"";
- _searchModel.customerName=@"";
- _searchModel.customerAddress=@"";
- _searchModel.customerTelephone=@"";
- _searchModel.startDate =@"";
- _searchModel.endDate=@"";
- _searchModel.receiptType=@"";
- [_mutDict setValue:_searchModel forKey:SEARCH_RANGE_MODEL];
- _slideModel.customDict = _mutDict;
- }
- /**
- 状态回调函数
-
- @param s <#s description#>
- */
- - (void)showStatusValue:(StatusInfo*)s{
- [_btnReceiptType setTitle:s.name forState:UIControlStateNormal];
- _receiptType = s.statusId;
- [_searchModel setReceiptType:_receiptType];
- [_mutDict setValue:_searchModel forKey:SEARCH_RANGE_MODEL];
- _slideModel.customDict = _mutDict;
- }
- /**
- 加载tableviewcell
- @param indexPath <#indexPath description#>
- @return <#return value description#>
- */
- + (instancetype)createCellWithIndexPath:(NSIndexPath *)indexPath {
- DeliveryReceiptSearchCell *cell = [[NSBundle mainBundle] loadNibNamed:@"DeliveryReceiptSearchCell" owner:nil options:nil][0];
-
- cell.txtDeliveryNo.delegate=cell;
- cell.txtCustomerName.delegate=cell;
- cell.txtCustomerAddress.delegate=cell;
- cell.txtCustomerTelephone.delegate=cell;
- [cell configureKeyboard];
- return cell;
- }
- /**
- 文本框编辑
- @param textField <#textField description#>
- */
- - (void)textFieldDidEndEditing:(UITextField *)textField {
-
- _searchModel.deliveryNo = [_txtDeliveryNo.text stringByReplacingOccurrencesOfString:@" " withString:@""];
- _searchModel.customerName=[_txtCustomerName.text stringByReplacingOccurrencesOfString:@" " withString:@""];
- _searchModel.customerAddress=[_txtCustomerAddress.text stringByReplacingOccurrencesOfString:@" " withString:@""];
- _searchModel.customerTelephone=[_txtCustomerTelephone.text stringByReplacingOccurrencesOfString:@" " withString:@""];
- [_mutDict setValue:_searchModel forKey:SEARCH_RANGE_MODEL];
- _slideModel.customDict = _mutDict;
- }
- /**
- 初始化cell数据
- @param model <#model description#>
- @param indexPath <#indexPath description#>
- */
- - (void)updateCellWithModel:(SideSlipModel *__autoreleasing *)model
- indexPath:(NSIndexPath *)indexPath {
- _slideModel = *model;
- _searchModel = [DeliveryReceiptSearchModel new];
- [_mutDict setValue:_searchModel forKey:SEARCH_RANGE_MODEL];
- _slideModel.customDict = _mutDict;
- _mutDict = [NSMutableDictionary dictionaryWithDictionary:_slideModel.customDict];
-
- }
- /**
- 返回tableviewcell标识
-
- @return <#return value description#>
- */
- + (NSString *)cellReuseIdentifier {
- return @"SearchTableViewCell";
- }
- /**
- 校验文本
-
- @param textField <#textField description#>
- @param range <#range description#>
- @param string <#string description#>
- @return <#return value description#>
- */
- - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
-
- return YES;
- }
- /**
- 触摸事件
-
- @param touches <#touches description#>
- @param event <#event description#>
- */
- - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
- [self hideKey];
- [_txtDeliveryNo resignFirstResponder];
- [_txtCustomerName resignFirstResponder];
- [_txtCustomerAddress resignFirstResponder];
- [_txtCustomerTelephone resignFirstResponder];
- }
- #pragma 私有函数
- /**
- 取消文本
- */
- - (void)accessoryButtonBack {
- [self hideKey];}
- /**
- 确定文本
- */
- - (void)accessoryButtonDone {
- [_txtDeliveryNo resignFirstResponder];
- [_txtCustomerName resignFirstResponder];
- [_txtCustomerAddress resignFirstResponder];
- [_txtCustomerTelephone resignFirstResponder];
- [self hideKey];
- }
- /**
- 键盘配置
- */
- - (void)configureKeyboard {
- UIView *keyBoardAccessoryView = [self createKeyBoardAccessoryView];
- _txtDeliveryNo.inputAccessoryView=keyBoardAccessoryView;
- _txtCustomerName.inputAccessoryView=keyBoardAccessoryView;
- _txtCustomerAddress.inputAccessoryView=keyBoardAccessoryView;
- _txtCustomerTelephone.inputAccessoryView=keyBoardAccessoryView;
- }
- - (IBAction)startDateAction:(id)sender {
- _brdatePicker = [BRDatePickerView PickerAlertWithTitle:@""];
- [_brdatePicker configureSelectionBlock:^(NSString *date){
- _startDate=date;
-
- } andCompletionBlock:^(void){
- [_searchModel setStartDate:_startDate];
- [_mutDict setValue:_searchModel forKey:SEARCH_RANGE_MODEL];
-
- _slideModel.customDict =_mutDict;
- [_btnStartDate setTitle:_startDate forState:UIControlStateNormal];
- } andCancelBlock:^(void){
- _startDate=_btnStartDate.titleLabel.text;
-
- }];
- [_brdatePicker show];
- }
- - (IBAction)endDateAction:(id)sender {
- _brdatePicker = [BRDatePickerView PickerAlertWithTitle:@""];
- [_brdatePicker configureSelectionBlock:^(NSString *date){
- _endDate=date;
-
- } andCompletionBlock:^(void){
- [_searchModel setEndDate:_endDate];
- [_mutDict setValue:_searchModel forKey:SEARCH_RANGE_MODEL];
- _slideModel.customDict = _mutDict;
- [_btnEndDate setTitle:_endDate forState:UIControlStateNormal];
- } andCancelBlock:^(void){
- _endDate=_btnEndDate.titleLabel.text;
-
- }];
- [_brdatePicker show];
- }
- - (IBAction)receiptTypeAction:(id)sender {
- StatusInfoTextVC *tc = [[StatusInfoTextVC alloc] init];
- tc.sdelegate = self;
- tc.isPresentViewFlag = YES;
- [tc.arrFilter addObjectsFromArray: [self getMutableArray]];
- if ([self.delegate respondsToSelector:@selector(sideSlipTableViewCellNeedsDismissViewController:animated:)]) {
- [self.delegate sideSlipTableViewCellNeedsDismissViewController:tc animated:YES];
- }
-
- }
- /**
- 文本编辑时候 弹出取消完成按钮
- @return <#return value description#>
- */
- - (UIView *)createKeyBoardAccessoryView {
- UIView *keyBoardAccessoryView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, Screen_Width, ACCESSORY_VIEW_HEIGHT)];
- [keyBoardAccessoryView setBackgroundColor:[UIColor hexColor:@"e1e1e1"]];
- UIButton *backButton = [[UIButton alloc] initWithFrame:CGRectMake(ACCESSORY_BUTTON_LEADING_TRAILING, 0, ACCESSORY_BUTTON_WIDTH, ACCESSORY_VIEW_HEIGHT)];
- [backButton setTitle:@"取消" forState:UIControlStateNormal];
- [backButton setTitleColor:[UIColor grayColor] forState:UIControlStateNormal];
- [backButton.titleLabel setFont:[UIFont systemFontOfSize:14.f]];
- [backButton addTarget:self action:@selector(accessoryButtonBack) forControlEvents:UIControlEventTouchUpInside];
- UIButton *doneButton = [[UIButton alloc] initWithFrame:CGRectMake(Screen_Width - ACCESSORY_BUTTON_LEADING_TRAILING - ACCESSORY_BUTTON_WIDTH, 0, ACCESSORY_BUTTON_WIDTH, ACCESSORY_VIEW_HEIGHT)];
- [doneButton setTitle:@"完成" forState:UIControlStateNormal];
- [doneButton setTitleColor:[UIColor hexColor:FILTER_RED_STRING] forState:UIControlStateNormal];
- [doneButton.titleLabel setFont:[UIFont systemFontOfSize:14.f]];
- [doneButton addTarget:self action:@selector(accessoryButtonDone) forControlEvents:UIControlEventTouchUpInside];
- [keyBoardAccessoryView addSubview:backButton];
- [keyBoardAccessoryView addSubview:doneButton];
- return keyBoardAccessoryView;
- }
- /**
- * 隐藏键盘
- */
- - (void)hideKey
- {
- [self.contentView endEditing:YES];
- }
- @end
|