| | |
| | | List<CommonDevice> list = Common.LocalDevice.Current.GetDeviceByGatewayID(gatewayId);
|
| | | foreach (var device in list)
|
| | | {
|
| | | //删除设备,不删除房间信息
|
| | | Common.LocalDevice.Current.DeleteMemmoryDevice(device, false);
|
| | | //删除一般设备
|
| | | Common.LocalDevice.Current.DeleteMemmoryDevice(device, true);
|
| | | //删除Ota设备
|
| | | Common.LocalDevice.Current.DeleteMemmoryOtaDevice(device.DeviceAddr);
|
| | | }
|
| | | //删除网关文件
|
| | | this.DeleteGatewayFile(gatewayId);
|
| | |
| | | /// 重新绑定网关(1:正常 -1:异常 0:当前的网关绑定在了当前账号下的不同住宅里面) |
| | | /// </summary> |
| | | /// <param name="zbGateway">网关</param> |
| | | /// <param name="btnMsg">消息控件</param> |
| | | public async Task<int> ReBindNewGateway(ZbGateway zbGateway, NormalViewControl btnMsg = null) |
| | | {
|
| | | if (zbGateway == null)
|
| | |
| | | }
|
| | |
|
| | | //获取全部设备
|
| | | bool result = LocalDevice.Current.SetDeviceToMemmoryByGateway(realWay);
|
| | | int result = LocalDevice.Current.SetDeviceToMemmoryByGateway(realWay);
|
| | | //关闭进度条
|
| | | ProgressBar.Close();
|
| | | if (result == false)
|
| | | if (result == -1)
|
| | | {
|
| | | return false;
|
| | | }
|
| | |
| | | {
|
| | | //删除设备文件
|
| | | Common.LocalDevice.Current.DeleteMemmoryDevice(device, true);
|
| | | //删除Ota设备
|
| | | Common.LocalDevice.Current.DeleteMemmoryOtaDevice(device.DeviceAddr);
|
| | | }
|
| | | //如果是主网关
|
| | | if (this.IsMainGateway(zbGatewayID) == 1)
|
| | | {
|
| | | foreach (var room in Shared.Common.Room.Lists)
|
| | | var listAllRoom = UserCenter.HdlRoomLogic.Current.GetAllListRooms();
|
| | | foreach (var room in listAllRoom)
|
| | | {
|
| | | //删除场景文件
|
| | | foreach (var scene in room.SceneUIFilePathList)
|
| | | foreach (var sceneId in room.ListSceneId)
|
| | | {
|
| | | if (Global.IsExistsByHomeId(scene) == true)
|
| | | if (Global.IsExistsByHomeId($"Scene_{sceneId}.json") == true)
|
| | | {
|
| | | Global.DeleteFilebyHomeId(scene);
|
| | | Global.DeleteFilebyHomeId($"Scene_{sceneId}.json");
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | this.GetGwInfoAttribute(localWay, "ZbImageType").ToString(),
|
| | | Convert.ToInt32(this.GetGwInfoAttribute(localWay, "ZbFWVersion")));
|
| | |
|
| | | var list = new List<FirmwareVersionInfo>();
|
| | | list.Add(gatewayFirmware);
|
| | | list.Add(coordinatorFirmware);
|
| | |
|
| | | //这个网关需要有虚拟驱动这个东西才行
|
| | | FirmwareVersionInfo virtualFirmware = null;
|
| | | string linImage = this.GetGwInfoAttribute(localWay, "LinuxImageType").ToString();
|
| | | if (linImage != "6")
|
| | | {
|
| | |
| | | var listvVode = await HdlGatewayLogic.Current.GetListVDDriveCode(localWay);
|
| | | if (listvVode != null && listvVode.Count > 0)
|
| | | {
|
| | | //添加虚拟驱动的升级固件(成不成功都无所谓)
|
| | | flage = await HdlFirmwareUpdateLogic.AddFirmwareVersionInfo(FirmwareLevelType.VirtualDevice,
|
| | | listvVode[0].DriveHwVersion.ToString(),
|
| | | listvVode[0].DriveImageType.ToString());
|
| | |
|
| | | //虚拟驱动
|
| | | virtualFirmware = HdlFirmwareUpdateLogic.GetFirmwareMostVersionInfo(FirmwareLevelType.VirtualDevice,
|
| | | listvVode[0].DriveHwVersion.ToString(),
|
| | | listvVode[0].DriveImageType.ToString(),
|
| | | listvVode[0].DriveFwVersion);
|
| | |
|
| | | if (virtualFirmware != null)
|
| | | foreach (var data in listvVode)
|
| | | {
|
| | | virtualFirmware.VirtualCode = listvVode[0].DriveCode;
|
| | | //添加虚拟驱动的升级固件(成不成功都无所谓)
|
| | | flage = await HdlFirmwareUpdateLogic.AddFirmwareVersionInfo(FirmwareLevelType.VirtualDevice,
|
| | | data.DriveHwVersion.ToString(),
|
| | | data.DriveImageType.ToString());
|
| | |
|
| | | //虚拟驱动
|
| | | var virtualFirmware = HdlFirmwareUpdateLogic.GetFirmwareMostVersionInfo(FirmwareLevelType.VirtualDevice,
|
| | | data.DriveHwVersion.ToString(),
|
| | | data.DriveImageType.ToString(),
|
| | | data.DriveFwVersion);
|
| | |
|
| | | if (virtualFirmware != null)
|
| | | {
|
| | | virtualFirmware.VirtualCode = data.DriveCode;
|
| | | list.Add(virtualFirmware);
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | var list = new List<FirmwareVersionInfo>();
|
| | | list.Add(gatewayFirmware);
|
| | | list.Add(coordinatorFirmware);
|
| | | list.Add(virtualFirmware);
|
| | |
|
| | | if (list.Count == 2)
|
| | | {
|
| | | //虚拟驱动如果没有新版本的话,固定添加一个空的
|
| | | list.Add(null);
|
| | | }
|
| | | return list;
|
| | | }
|
| | |
|