// // SettingResetViewController.m // Ifish // // Created by Minghao Xue on 2018/7/24. // Copyright © 2018年 lianlian. All rights reserved. // #import "SettingResetViewController.h" #import "IFishHotpotUDPHelper.h" #import "ConnectHotspotTipViewController.h" #import "DeviceCameraModel.h" #import "DeviceModel.h" @interface SettingResetViewController () @property (nonatomic, strong) DeviceModel *currentDevice; @end @implementation SettingResetViewController - (void)viewDidLoad { [super viewDidLoad]; self.title = @"恢复出厂设置"; } - (IBAction)reset:(id)sender { [IFishHotpotUDPHelper sharedInstance].delegate = self; [[IFishHotpotUDPHelper sharedInstance] broadCastRestCommand]; } - (IBAction)tipBtnClicked:(id)sender { ConnectHotspotTipViewController *vc = [[ConnectHotspotTipViewController alloc] initWithNibName:nil bundle:nil]; [self.navigationController pushViewController:vc animated:YES]; } #pragma mark - IFishHotpotUDPHelperDelegate - (void)udpHelperCommandExecutedSuccess:(IFishUDPHelperBackMsgModel *)backModel { [self.view makeToast:@"设备即将重置"]; NSArray*deviceArry=[[DataCenter defaultDtacenter]valueForKey:@"deviceInfo"]; [deviceArry enumerateObjectsUsingBlock:^(DeviceModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { if ([obj.macAddress isEqualToString:backModel.senderMacAddress]) { self.currentDevice = obj; [self deletDevice]; *stop = YES; } }]; } - (void)udpHelperMessage:(NSString *)msg { [self.view makeToast:msg]; } #pragma mark - 删除设备 -(void)deletDevice{ //先判断此设备是否有关联 摄像头 //DeviceModel*deviceModel=[_deviceArr objectAtIndex:indexpath.row]; //要删除的设设备id NSMutableArray *guanxiiArr= [[DataCenter defaultDtacenter] valueForKey:@"devicamerArr"]; for (DeviceCameraModel *model in guanxiiArr) { if (self.currentDevice.deviceId == model.deviceId ) { [guanxiiArr removeObject:model]; //保存新关系数组 [[DataCenter defaultDtacenter] setValue:guanxiiArr forKey:@"devicamerArr"]; } } [self deleteDeviceRequset]; } -(void)deleteDeviceRequset{ AFHTTPRequestOperationManager*mannager=[AFHTTPRequestOperationManager manager]; mannager.responseSerializer=[AFHTTPResponseSerializer serializer]; NSMutableDictionary * para = [NSMutableDictionary dictionary]; NSString *priId=self.currentDevice.deviceId; NSString*userId=self.currentDevice.userId; [para setValue:priId forKey:@"priId.deviceId"]; [para setValue:userId forKey:@"priId.userId"]; // __weak typeof (self)weakSelf=self; [mannager POST:kDeleteDeviceUser parameters:para success:^(AFHTTPRequestOperation *operation, id responseObject) { if (responseObject) { NSDictionary*resultDic=[NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil]; NSLog(@"result:%@",resultDic[@"result"]); if ([resultDic[@"result"] isEqualToString:@"100"]) { [self showTitle:@"" messsage:@"删除成功"]; //重置数据库 NSArray*deviceArry=[[DataCenter defaultDtacenter]valueForKey:@"deviceInfo"]; NSMutableArray *newArr = [NSMutableArray arrayWithArray:deviceArry]; for (DeviceModel *model in deviceArry) { if ([model.deviceId isEqual:self.currentDevice.deviceId]) { [newArr removeObject:model]; } } [[DataCenter defaultDtacenter] setValue: newArr forKey:@"deviceInfo"]; if ([newArr count]==0) { NSArray *cameraArr= [[DataCenter defaultDtacenter] valueForKey:@"cameraArr"]; if ([cameraArr count]!=0) { [[Socketsingleton sharedInstance] cutOffSocket]; }else{ //两种设备都 [[Socketsingleton sharedInstance] cutOffSocket]; } } }else if ([resultDic[@"result"] isEqualToString:@"101"]){ [self showTitle:@"" messsage:@"删除失败"]; }else if ([resultDic[@"result"] isEqualToString:@"301"]){ [self showTitle:@"" messsage:@"请求验证失败,请重新登陆"]; }else if ([resultDic[@"result"] isEqualToString:@"302"]){ [self showTitle:@"" messsage:@"请求被舍弃,未执行"]; } } } failure:^(AFHTTPRequestOperation *operation, NSError *error) { [self showTitle:@"" messsage:@"请求异常"]; }]; } @end