| | |
| | | #import "EZDeviceResultViewController.h" |
| | | #import "UIImage+GIF.h" |
| | | |
| | | #import "EZProbeDeviceInfo.h" |
| | | #import <EZOpenSDKFramework/EZProbeDeviceInfo.h> |
| | | #import "DDKit.h" |
| | | #import "EZWifiConfigViewController.h" |
| | | #import "EZWifiTipsViewController.h" |
| | | #import "MBProgressHUD.h" |
| | | |
| | | #import "EZSDK.h" |
| | | |
| | | |
| | | @interface EZDeviceResultViewController ()<UIAlertViewDelegate> |
| | |
| | | @property (nonatomic,assign) BOOL supportApMode; |
| | | @property (nonatomic,assign) BOOL supportSmartMode; |
| | | @property (nonatomic,assign) BOOL supportSoundMode; |
| | | |
| | | @property (nonatomic,strong) UIView *tipView ;//配网提示view |
| | | |
| | | @property (nonatomic,strong) UIImageView *step1TipImgV ;//步骤1提示图view |
| | | @property (nonatomic,strong) UIImageView *step1ImgV ;//步骤1图view |
| | | @property (nonatomic,strong) UILabel *step1DescribeL ;//步骤1描述lable |
| | | |
| | | @property (nonatomic,strong) UIImageView *step2TipImgV ;//步骤2提示图view |
| | | @property (nonatomic,strong) UIImageView *step2ImgV ;//步骤2图view |
| | | @property (nonatomic,strong) UILabel *step2DescribeL ;//步骤2描述lable |
| | | |
| | | |
| | | @property (nonatomic,strong) UIView *btnBackView ;//按钮背景view |
| | | @property (nonatomic,strong) UIButton *connectedBtn;//已连接按钮 |
| | | |
| | | @end |
| | | |
| | | @implementation EZDeviceResultViewController |
| | |
| | | self.actionButton.hidden = YES; |
| | | |
| | | [self doSearchDevice]; |
| | | |
| | | //隐藏状态图 |
| | | self.resultImageView.hidden=YES; |
| | | } |
| | | |
| | | - (void)didReceiveMemoryWarning { |
| | |
| | | [GlobalKit shareKit].deviceVerifyCode = [alertView textFieldAtIndex:0].text; |
| | | __weak MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; |
| | | hud.labelText = NSLocalizedString(@"ad_adding_msg", @"正在添加,请稍候..."); |
| | | [EZOPENSDK addDevice:[GlobalKit shareKit].deviceSerialNo |
| | | verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | completion:^(NSError *error) { |
| | | [hud hide:YES]; |
| | | [self handleTheError:error]; |
| | | }]; |
| | | |
| | | // [EZOPENSDK addDevice:[GlobalKit shareKit].deviceSerialNo |
| | | // verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | // completion:^(NSError *error) { |
| | | // [hud hide:YES]; |
| | | // [self handleTheError:error]; |
| | | // }]; |
| | | |
| | | [EZHttpUtil.sharedManager addDeviceByHDL:[GlobalKit shareKit].deviceSerialNo |
| | | verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | completion:^(ResponseData *responseData) { |
| | | [hud hide:YES]; |
| | | [self handleTheError:responseData]; |
| | | }]; |
| | | |
| | | } |
| | | else if (alertView.tag == 0xbb && buttonIndex == 1) |
| | | { |
| | |
| | | { |
| | | __weak MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; |
| | | hud.labelText = NSLocalizedString(@"ad_adding_msg", @"正在添加,请稍候..."); |
| | | [EZOPENSDK addDevice:[GlobalKit shareKit].deviceSerialNo |
| | | verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | completion:^(NSError *error) { |
| | | [hud hide:YES]; |
| | | [self handleTheError:error]; |
| | | }]; |
| | | // [EZOPENSDK addDevice:[GlobalKit shareKit].deviceSerialNo |
| | | // verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | // completion:^(NSError *error) { |
| | | // [hud hide:YES]; |
| | | // [self handleTheError:error]; |
| | | // }]; |
| | | if ([GlobalKit shareKit].deviceType==HDLEZDeviceType_Door) {//为门禁设备(需要验证门锁) |
| | | [EZHttpUtil.sharedManager verifyLocalLockByHDL:[GlobalKit shareKit].deviceSerialNo completion:^(ResponseData * _Nonnull responseData) { |
| | | [hud hide:YES]; |
| | | if (responseData.success) { |
| | | self.resultLabel.numberOfLines=2; |
| | | self.resultLabel.adjustsFontSizeToFitWidth=YES; |
| | | self.resultLabel.text = NSLocalizedString(@"ad_result_verify_local_lock",@"请在2分钟之内校验已添加的主用户指纹、密钥或感应卡,校验完成请点击已校验按钮"); |
| | | |
| | | [self.actionButton setTitle:NSLocalizedString(@"ad_verified", @"已校验") forState:UIControlStateNormal]; |
| | | }else{ |
| | | [self handleTheError:responseData]; |
| | | } |
| | | |
| | | NSLog(@"调用验证接口返回:%@",responseData.data); |
| | | }]; |
| | | }else{ |
| | | [EZHttpUtil.sharedManager addDeviceByHDL:[GlobalKit shareKit].deviceSerialNo |
| | | verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | completion:^(ResponseData *responseData) { |
| | | [hud hide:YES]; |
| | | [self handleTheError:responseData]; |
| | | }]; |
| | | } |
| | | |
| | | } |
| | | else |
| | | { |
| | |
| | | alertView.tag = 0xaa; |
| | | [alertView show]; |
| | | } |
| | | } |
| | | else if([self.actionButton.titleLabel.text isEqualToString:NSLocalizedString(@"ad_verified",@"已校验")]) |
| | | { |
| | | __weak MBProgressHUD *hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; |
| | | hud.labelText = NSLocalizedString(@"ad_adding_msg", @"正在添加,请稍候..."); |
| | | [EZHttpUtil.sharedManager addDeviceByHDL:[GlobalKit shareKit].deviceSerialNo |
| | | verifyCode:[GlobalKit shareKit].deviceVerifyCode |
| | | completion:^(ResponseData *responseData) { |
| | | [hud hide:YES]; |
| | | if (!responseData.success){ |
| | | [self.view makeToast:NSLocalizedString(@"wifi_add_fail", @"添加失败") duration:2.0 position:@"center"]; |
| | | }else{ |
| | | [self handleTheError:responseData]; |
| | | } |
| | | |
| | | }]; |
| | | } |
| | | else |
| | | { |
| | |
| | | deviceType:[GlobalKit shareKit].deviceModel |
| | | completion:^(EZProbeDeviceInfo *deviceInfo, NSError *error) { |
| | | NSLog(@"deviceInfo = %@, error = %@", deviceInfo, error); |
| | | self.resultBackgroudImageView.hidden = NO; |
| | | // self.resultBackgroudImageView.hidden = NO; |
| | | self.resultImageView.image = [UIImage imageNamed:@"device_default"]; |
| | | self.resultLabel.text = [GlobalKit shareKit].deviceSerialNo; |
| | | |
| | |
| | | if (error.code == EZ_HTTPS_DEVICE_ADDED_MYSELF || error.code == EZ_HTTPS_DEVICE_ONLINE_ADDED) |
| | | { |
| | | self.statusLabel.textColor = [UIColor blackColor]; |
| | | self.statusLabel.text = NSLocalizedString(@"ad_already_added",@"您已添加过此设备"); |
| | | self.statusLabel.text = NSLocalizedString(@"ad_already_added",@"此设备已被添加"); |
| | | self.statusLabel.hidden = NO; |
| | | } |
| | | else if (error.code == EZ_HTTPS_DEVICE_ONLINE_IS_ADDED || error.code == EZ_HTTPS_DEVICE_OFFLINE_IS_ADDED) |
| | |
| | | error.code == EZ_HTTPS_DEVICE_NOT_EXISTS || |
| | | error.code == EZ_HTTPS_DEVICE_OFFLINE_IS_ADDED_MYSELF) |
| | | { |
| | | if ([[EZSDK sharedInstance].connectTipModels containsObject:deviceInfo.model]||[self checkIfShouldTipWithDeviceModel:deviceInfo.model]) {//为需要提示配网的类型 |
| | | [self showConnectWifiTipView]; |
| | | return; |
| | | } |
| | | self.statusLabel.hidden = NO; |
| | | self.actionButton.hidden = NO; |
| | | if (deviceInfo) |
| | |
| | | self.supportSmartMode = YES; |
| | | self.supportSoundMode = YES; |
| | | } |
| | | |
| | | self.statusLabel.text =HDLEZLocallizedString(@"wifi_config_not_connected"); |
| | | |
| | | [self.actionButton setTitle:NSLocalizedString(@"ad_connect_net", @"连接网络") forState:UIControlStateNormal]; |
| | | } |
| | | else |
| | |
| | | |
| | | } |
| | | |
| | | - (void)handleTheError:(NSError *)error |
| | | /*检测model是否包含需要提示的类型 |
| | | */ |
| | | -(BOOL)checkIfShouldTipWithDeviceModel:(NSString*)deviceModel{ |
| | | for (NSString *model in [EZSDK sharedInstance].connectTipModels) { |
| | | if ([deviceModel containsString:[NSString stringWithFormat:@"-%@-",model]]) { |
| | | return YES; |
| | | break; |
| | | } |
| | | } |
| | | return NO; |
| | | } |
| | | |
| | | /*提示view |
| | | */ |
| | | -(UIView*)tipView{ |
| | | if (!_tipView) { |
| | | //提示view |
| | | _tipView=[[UIView alloc] init]; |
| | | [self.view addSubview:_tipView]; |
| | | [_tipView mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(self.view).offset(HDLEZ_APP_TOP_BAR_HEIGHT); |
| | | make.left.bottom.right.equalTo(self.view); |
| | | }]; |
| | | _tipView.backgroundColor=HDLEZ_COLOR_VIEW_BACKGROUND; |
| | | |
| | | //步骤1指示图 |
| | | _step1TipImgV=[[UIImageView alloc] init]; |
| | | [_tipView addSubview:_step1TipImgV]; |
| | | [_step1TipImgV mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(_tipView).offset(33); |
| | | make.left.equalTo(_tipView).offset(HDLEZGetRealWidth(33)); |
| | | make.width.mas_equalTo(130); |
| | | make.height.mas_equalTo(120); |
| | | }]; |
| | | _step1TipImgV.image=[UIImage imageNamed:@"hdl_ez_wifi_connect_step1"]; |
| | | |
| | | //步骤1图 |
| | | _step1ImgV=[[UIImageView alloc] init]; |
| | | [_tipView addSubview:_step1ImgV]; |
| | | [_step1ImgV mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(_step1TipImgV.mas_bottom).offset(13); |
| | | make.left.equalTo(_step1TipImgV).offset(7); |
| | | make.width.mas_equalTo(19); |
| | | make.height.mas_equalTo(22); |
| | | }]; |
| | | _step1ImgV.image=[UIImage imageNamed:@"hdl_ez_wifi_connect_step_one"]; |
| | | |
| | | //步骤1描述lable |
| | | _step1DescribeL=[[UILabel alloc] init]; |
| | | [_tipView addSubview:_step1DescribeL]; |
| | | [_step1DescribeL mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(_step1ImgV.mas_bottom).offset(7); |
| | | make.left.equalTo(_step1ImgV); |
| | | make.right.equalTo(_step1TipImgV); |
| | | make.height.mas_equalTo(22); |
| | | }]; |
| | | _step1DescribeL.font=HDLEZ_Get_FontBoldWithSize(HDLEZ_FontSize_16); |
| | | _step1DescribeL.textColor=HDLEZ_COLOR_TEXT_TITLE_GRAY; |
| | | _step1DescribeL.numberOfLines=2; |
| | | _step1DescribeL.adjustsFontSizeToFitWidth=YES; |
| | | _step1DescribeL.text=HDLEZLocallizedString(@"wifi_config_select_set_param"); |
| | | |
| | | //步骤2指示图 |
| | | _step2TipImgV=[[UIImageView alloc] init]; |
| | | [_tipView addSubview:_step2TipImgV]; |
| | | [_step2TipImgV mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(_tipView).offset(33); |
| | | make.right.equalTo(_tipView).offset(HDLEZGetRealWidth(-33)); |
| | | make.width.mas_equalTo(130); |
| | | make.height.mas_equalTo(120); |
| | | }]; |
| | | _step2TipImgV.image=[UIImage imageNamed:@"hdl_ez_wifi_connect_step2"]; |
| | | |
| | | //步骤2图 |
| | | _step2ImgV=[[UIImageView alloc] init]; |
| | | [_tipView addSubview:_step2ImgV]; |
| | | [_step2ImgV mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(_step2TipImgV.mas_bottom).offset(13); |
| | | make.left.equalTo(_step2TipImgV).offset(7); |
| | | make.width.mas_equalTo(19); |
| | | make.height.mas_equalTo(22); |
| | | }]; |
| | | _step2ImgV.image=[UIImage imageNamed:@"hdl_ez_wifi_connect_step_two"]; |
| | | |
| | | //步骤2描述lable |
| | | _step2DescribeL=[[UILabel alloc] init]; |
| | | [_tipView addSubview:_step2DescribeL]; |
| | | [_step2DescribeL mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.top.equalTo(_step2ImgV.mas_bottom).offset(7); |
| | | make.left.equalTo(_step2ImgV); |
| | | make.right.equalTo(_step2TipImgV); |
| | | make.height.mas_equalTo(22); |
| | | }]; |
| | | _step2DescribeL.font=HDLEZ_Get_FontBoldWithSize(HDLEZ_FontSize_16); |
| | | _step2DescribeL.textColor=HDLEZ_COLOR_TEXT_TITLE_GRAY; |
| | | _step2DescribeL.numberOfLines=2; |
| | | _step2DescribeL.adjustsFontSizeToFitWidth=YES; |
| | | _step2DescribeL.text=HDLEZLocallizedString(@"wifi_config_select_wifi"); |
| | | |
| | | //已连接按钮背景view |
| | | _btnBackView=[[UIView alloc] init]; |
| | | [_tipView addSubview:_btnBackView]; |
| | | [_btnBackView mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.left.bottom.right.equalTo(_tipView); |
| | | make.height.mas_equalTo(76); |
| | | }]; |
| | | _btnBackView.backgroundColor=HDLEZ_COLOR_VIEW_FOREGROUND; |
| | | _btnBackView.layer.cornerRadius = 16; |
| | | _btnBackView.layer.maskedCorners = kCALayerMinXMinYCorner | kCALayerMaxXMinYCorner; |
| | | |
| | | |
| | | //已连接按钮 |
| | | _connectedBtn=[[UIButton alloc] init]; |
| | | [_btnBackView addSubview:_connectedBtn]; |
| | | [_connectedBtn mas_makeConstraints:^(MASConstraintMaker *make) { |
| | | make.left.equalTo(_tipView).offset(78); |
| | | make.right.equalTo(_tipView).offset(-78); |
| | | make.top.equalTo(_btnBackView).offset(12); |
| | | make.height.mas_equalTo(44); |
| | | }]; |
| | | _connectedBtn.layer.cornerRadius = 22; |
| | | [_connectedBtn setBackgroundColor:HDLEZ_COLOR_BACKGROUND_BUTTON]; |
| | | [_connectedBtn setTitle:HDLEZLocallizedString(@"wifi_config_connected") forState:UIControlStateNormal]; |
| | | _connectedBtn.titleLabel.font=HDLEZ_Get_FontBoldWithSize(HDLEZ_FontSize_16); |
| | | [_connectedBtn setTitleColor:HDLEZ_COLOR_TEXT_WHITE forState:UIControlStateNormal]; |
| | | [_connectedBtn addTarget:self action:@selector(Connected) forControlEvents:UIControlEventTouchUpInside]; |
| | | } |
| | | return _tipView; |
| | | } |
| | | |
| | | /*展示引导view(萤石部分设备不能通过该流程进行配网) |
| | | */ |
| | | -(void)showConnectWifiTipView{ |
| | | self.title = HDLEZLocallizedString(@"wifi_config_net_work"); |
| | | [self.tipView setHidden:NO]; |
| | | |
| | | } |
| | | |
| | | /*已连接 |
| | | */ |
| | | -(void)Connected{ |
| | | self.title = HDLEZLocallizedString(@"ad_result_title"); |
| | | |
| | | //隐藏指示view |
| | | [self.tipView setHidden:YES]; |
| | | |
| | | [self doSearchDevice]; |
| | | } |
| | | |
| | | - (void)handleTheError:(ResponseData *)responseData |
| | | { |
| | | if (!error) |
| | | if (responseData.success) |
| | | { |
| | | [self performSegueWithIdentifier:@"go2WifiResult" sender:nil]; |
| | | return; |
| | | } |
| | | if (error.code == 105002) |
| | | if ([responseData.code isEqual: @"20010"]) |
| | | { |
| | | UIAlertView *retryAlertView = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"device_verify_code_wrong", @"验证码错误") message:nil delegate:self cancelButtonTitle:NSLocalizedString(@"cancel", @"取消") otherButtonTitles:NSLocalizedString(@"retry", @"重试"), nil]; |
| | | retryAlertView.tag = 0xbb; |
| | | [retryAlertView show]; |
| | | } |
| | | else if (error.code == 105000) |
| | | else if ([responseData.code isEqual: @"20017"]) |
| | | { |
| | | [UIView dd_showMessage:NSLocalizedString(@"ad_already_added",@"您已添加过此设备")]; |
| | | } |
| | | else if (error.code == 105001) |
| | | else if ([responseData.code isEqual: @"20013"]) |
| | | { |
| | | [UIView dd_showMessage:NSLocalizedString(@"ad_added_by_others",@"此设备已被别人添加")]; |
| | | } |
| | | else |
| | | { |
| | | [UIView dd_showMessage:NSLocalizedString(@"wifi_add_fail",@"添加失败")]; |
| | | // [UIView dd_showMessage:NSLocalizedString(@"wifi_add_fail",@"添加失败")]; |
| | | [UIView dd_showMessage:responseData.message]; |
| | | } |
| | | } |
| | | |