| | |
| | | /// </summary> |
| | | public void DownloadData() |
| | | { |
| | | if (MainPage.InternetStatus == 0) |
| | | if (MainPage.InternetStatus == 0 || MainPage.NoLoginMode) |
| | | return; |
| | | //线程开始时间 |
| | | var endTime = DateTime.Now.AddSeconds(5); |
| | |
| | | { |
| | | sceneList = new List<Scene>(); |
| | | } |
| | | for (int i = 0; i < FunctionList.List.scenes.Count;) |
| | | { |
| | | var localScene = FunctionList.List.scenes[i]; |
| | | if (localScene == null) |
| | | { |
| | | FunctionList.List.scenes.Remove(localScene); |
| | | continue; |
| | | } |
| | | var newScene = sceneList.Find((obj) => obj.userSceneId == localScene.userSceneId); |
| | | if (newScene == null)//如果云端最新数据没有该条数据,则本地需要删掉该数据记录 |
| | | { |
| | | FunctionList.List.DeleteScene(localScene, false); |
| | | } |
| | | else |
| | | { |
| | | i++; |
| | | if (localScene.modifyTime != newScene.modifyTime) |
| | | { |
| | | localScene.name = newScene.name; |
| | | localScene.collect = newScene.collect; |
| | | localScene.modifyTime = newScene.modifyTime; |
| | | localScene.roomIds = newScene.roomIds; |
| | | localScene.image = newScene.image; |
| | | localScene.SaveSceneFile(); |
| | | } |
| | | sceneList.Remove(newScene);//操作完的数据清理掉,剩下的就是新增的功能 |
| | | } |
| | | } |
| | | FunctionList.List.scenes.Clear(); |
| | | |
| | | //处理剩下的新增功能 |
| | | foreach (var tempScene in sceneList) |
| | | { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取安防列表 |
| | | /// </summary> |
| | | public void GetSecurityList() |
| | | { |
| | | var pack = Ins.HttpRequest.GetSecurityList(); |
| | | if (pack.Code == StateCode.SUCCESS) |
| | | { |
| | | var packList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SecurityAlarm>>(pack.Data.ToString()); |
| | | var sidList = new List<string>(); |
| | | foreach (var function in packList) |
| | | { |
| | | sidList.Add(function.sid); |
| | | } |
| | | var infoListPack = Ins.httpRequest.GetSecurityInfo(sidList, new List<string>()); |
| | | var infoList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SecurityAlarm>>(infoListPack.Data.ToString()); |
| | | foreach (var function in infoList) |
| | | { |
| | | function.SaveFile(); |
| | | FunctionList.List.IniFunctionList(function.savePath, true); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | MainPage.Log($"读取安防列表失败:Code:{pack.Code}; Msg:{pack.message}"); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |