萤石云 iOSSDK,移植跨平台相关工程
Davin
2024-12-18 b4e1288a9b63eb820e9c9489c56aac4bf6b31067
EZSDK/EZSDK/EZ/UIViewControllers/EZAPConfigResultViewController.m
@@ -8,11 +8,12 @@
#import "EZAPConfigResultViewController.h"
#import "GlobalKit.h"
#import "EZOpenSDK.h"
#import "EZProbeDeviceInfo.h"
#import <EZOpenSDKFramework/EZOpenSDK.h>
#import <EZOpenSDKFramework/EZProbeDeviceInfo.h>
#import "Toast+UIView.h"
#import "EZDeviceTableViewController.h"
#import "EZAddByQRCodeViewController.h"
#define MAX_COUNT (20)
@@ -24,6 +25,8 @@
@property (weak, nonatomic) IBOutlet UILabel *msgLabel;
@property (nonatomic,strong) NSTimer *timer;
@property (nonatomic,assign) NSInteger addCount;
@property (nonatomic,strong) UIButton *verifiedBtn;//已校验按钮
@end
@implementation EZAPConfigResultViewController
@@ -33,6 +36,9 @@
    [super viewDidLoad];
    
    self.title = NSLocalizedString(@"wifi_ap_add_device_title", @"添加设备");
    self.msgLabel.numberOfLines=2;
    self.msgLabel.adjustsFontSizeToFitWidth=YES;
    
    [self initSubviews];
    
@@ -52,6 +58,29 @@
- (void) initSubviews
{
    [self.loadingIndicator startAnimating];
    //添加已验证按钮
    CGFloat screenHeight = self.view.frame.size.height;
    CGFloat screenWidth = self.view.frame.size.width;
    self.verifiedBtn=[[UIButton alloc] initWithFrame:CGRectMake((screenWidth-120)/2, screenHeight-150, 120, 30)];
    self.verifiedBtn.titleLabel.textColor=[UIColor whiteColor];
    [self.verifiedBtn setBackgroundColor:[UIColor orangeColor]];
    [self.verifiedBtn setTitle:NSLocalizedString(@"ad_verified", @"已校验") forState:UIControlStateNormal];
    [self.verifiedBtn addTarget:self action:@selector(verified) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:self.verifiedBtn];
    [self.verifiedBtn setHidden:YES];
    //国际化语言
    [self.doneBtn setTitle:HDLEZLocallizedString(@"complete") forState:UIControlStateNormal];
    [self.retryBtn setTitle:HDLEZLocallizedString(@"retry") forState:UIControlStateNormal];
    self.msgLabel.text=HDLEZLocallizedString(@"ad_adding_msg");
    //重设成功图
    [self.successImageView mas_updateConstraints:^(MASConstraintMaker *make) {
        make.height.width.mas_equalTo(80);
    }];
    self.successImageView.image=[UIImage imageNamed:@"hdl_ez_add_device_success"];
}
#pragma mark - actions
@@ -67,6 +96,14 @@
            [self.navigationController popToViewController:vc animated:YES];
            break;
        }
        if ([vc isKindOfClass:[EZAddByQRCodeViewController class]])
        {//跳转到扫码页
//            ((EZAddByQRCodeViewController *)vc).shouldPop = YES;
            [self.navigationController popToViewController:((EZAddByQRCodeViewController *)vc).prevController animated:YES];
            break;
        }
    }
}
@@ -78,6 +115,28 @@
    self.retryBtn.hidden = YES;
    
    [self startTimer];
}
/*已校验
 */
-(void)verified{
    self.loadingIndicator.hidden = NO;
    [self.loadingIndicator startAnimating];
    [EZHttpUtil.sharedManager addDeviceByHDL:[GlobalKit shareKit].deviceSerialNo
                    verifyCode:[GlobalKit shareKit].deviceVerifyCode
                    completion:^(ResponseData *responseData) {
        if (!responseData.success){
//            [self.view makeToast:NSLocalizedString(@"wifi_add_fail", @"添加失败") duration:2.0 position:@"center"];
            [self.view makeToast:responseData.message duration:2.0 position:@"center"];
        }
        else
        {
            [self.verifiedBtn setHidden:YES];
            [self successProcess];
        }
    }];
}
#pragma mark - callback
@@ -136,6 +195,7 @@
        }
        else
        {
            [self stopTimer];
            //                            [EZOpenSDK addDevice:[GlobalKit shareKit].deviceSerialNo
            //                                      verifyCode:[GlobalKit shareKit].deviceVerifyCode
            //                                      completion:^(NSError *error) {
@@ -148,20 +208,35 @@
            //                                              [self successProcess];
            //                                          }
            //                                      }];
            [EZHttpUtil.sharedManager addDeviceByHDL:[GlobalKit shareKit].deviceSerialNo
                            verifyCode:[GlobalKit shareKit].deviceVerifyCode
                            completion:^(ResponseData *responseData) {
                if (!responseData.success)
                {
                    [self addErrorProcessWithError:responseData];
                }
                else
                {
                    [self successProcess];
                }
            }];
            if ([GlobalKit shareKit].deviceType==HDLEZDeviceType_Door) {//为门锁
                [EZHttpUtil.sharedManager verifyLocalLockByHDL:[GlobalKit shareKit].deviceSerialNo completion:^(ResponseData * _Nonnull responseData) {
                    if (responseData.success) {
                        self.loadingIndicator.hidden = YES;
                        [self.loadingIndicator stopAnimating];
                        self.msgLabel.text = NSLocalizedString(@"ad_result_verify_local_lock",@"请在2分钟之内校验已添加的主用户指纹、密钥或感应卡,校验完成请点击已校验按钮");
                        [self.verifiedBtn setHidden:NO];
                        [self stopTimer];
                    }else{
                        [self addErrorProcessWithError:responseData];
                    }
                }];
            }else{
                [EZHttpUtil.sharedManager addDeviceByHDL:[GlobalKit shareKit].deviceSerialNo
                                verifyCode:[GlobalKit shareKit].deviceVerifyCode
                                completion:^(ResponseData *responseData) {
                    if (!responseData.success)
                    {
                        [self addErrorProcessWithError:responseData];
                    }
                    else
                    {
                        [self successProcess];
                    }
                }];
            }
            
        }
    }];
@@ -262,6 +337,9 @@
    self.successImageView.hidden = NO;
    self.doneBtn.hidden = NO;
    self.msgLabel.hidden = YES;
    [self.verifiedBtn setHidden:YES];
}