From e90209beae6a4e822cecb18e6889f8bda23f630e Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期一, 14 十二月 2020 11:16:06 +0800 Subject: [PATCH] 合并了晾衣架(非新云端) --- ZigbeeApp/Shared/Phone/TemplateData/TemplateCommonLogic.cs | 329 +++++++++++++++++++++++++----------------------------- 1 files changed, 150 insertions(+), 179 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/TemplateData/TemplateCommonLogic.cs b/ZigbeeApp/Shared/Phone/TemplateData/TemplateCommonLogic.cs index 7456753..b749d91 100755 --- a/ZigbeeApp/Shared/Phone/TemplateData/TemplateCommonLogic.cs +++ b/ZigbeeApp/Shared/Phone/TemplateData/TemplateCommonLogic.cs @@ -55,7 +55,7 @@ { this.modelData = new TemplateMemoryData(); //淇濆瓨鐨勮矾寰� - string saveFile = HdlFileNameResourse.LocalTemplateDirectory; + string saveFile = DirNameResourse.LocalTemplateDirectory; //濡傛灉褰撳墠浣忓畢鎷ユ湁閫夋嫨鐨勬ā鏉� if (Common.Config.Instance.Home.SelectTemplate != string.Empty) @@ -107,7 +107,7 @@ //鍙嶅簭鍒楀寲璁惧鐨勪繚瀛樻枃浠跺唴瀹� var tempData = this.DeserializeDeviceDataByDiv(saveDiv, deviceData); //灏嗚澶囨ā鏉挎暟鎹坊鍔犲叆缂撳瓨 - string mainKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(tempData.DeviceMac, tempData.DeviceEpoint); + string mainKey = Common.LocalDevice.Current.GetDeviceMainKeys(tempData.DeviceMac, tempData.DeviceEpoint); this.SetTemplateDeviceDataToMemmory(tempData, deviceData, mainKey, true); } //娓呯┖ @@ -122,7 +122,7 @@ //鍙嶅簭鍒楀寲璁惧鐨勪繚瀛樻枃浠跺唴瀹� var tempData = this.DeserializeDeviceDataByDiv(saveDiv, deviceData); //灏嗚澶囨ā鏉挎暟鎹坊鍔犲叆缂撳瓨 - string mainKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(tempData.DeviceMac, tempData.DeviceEpoint); + string mainKey = Common.LocalDevice.Current.GetDeviceMainKeys(tempData.DeviceMac, tempData.DeviceEpoint); this.SetTemplateDeviceDataToMemmory(tempData, deviceData, mainKey, true); } } @@ -152,13 +152,13 @@ this.modelData.dicDeviceTemplateSelect = new Dictionary<string, string>(); this.modelData.dicGatewayTemplateSelect = new Dictionary<string, string>(); - string fileData2 = HdlFileLogic.Current.ReadFileTextContent(HdlFileNameResourse.DeviceTemplateSelectFile); + string fileData2 = HdlFileLogic.Current.ReadFileTextContent(DirNameResourse.DeviceTemplateSelectFile); if (fileData2 != null) { //璁惧閫夋嫨鐨勬ā鏉垮璞�(keys:鏈湴璁惧鐨凪ac value:妯℃澘涓殑Mac) this.modelData.dicDeviceTemplateSelect = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(fileData2); } - fileData2 = HdlFileLogic.Current.ReadFileTextContent(HdlFileNameResourse.GatewayTemplateSelectFile); + fileData2 = HdlFileLogic.Current.ReadFileTextContent(DirNameResourse.GatewayTemplateSelectFile); if (fileData2 != null) { //缃戝叧瀵硅薄閫夋嫨鐨勬ā鏉垮璞�(keys:鏈湴缃戝叧ID, value:妯℃澘涓殑缃戝叧ID) @@ -205,11 +205,6 @@ foreach (var deviceKey in room.ListDevice) { this.modelData.dicDeviceTemplateRoom[deviceKey] = room.Id; - } - foreach (var strMac in room.ListDeviceMac) - { - //鐗╃悊璁惧鎵�鍦ㄧ殑鍖哄煙,鍦ㄨ繖涓嚱鏁板闈㈠凡缁忓垵濮嬪寲浜嗚繖涓彉閲� - this.modelData.dicDeviceTemplateRealRoom[strMac] = room.Id; } if (hadRoom == false) { @@ -266,8 +261,8 @@ this.strTempContentData = string.Empty; //鍒犳帀杩欎袱涓繚瀛橀�夋嫨妯℃澘鐨勬枃浠�(杩欎袱涓笢瑗垮彲鑳借繕瀛樺湪) - HdlFileLogic.Current.DeleteFile(HdlFileNameResourse.DeviceTemplateSelectFile); - HdlFileLogic.Current.DeleteFile(HdlFileNameResourse.GatewayTemplateSelectFile); + HdlFileLogic.Current.DeleteFile(DirNameResourse.DeviceTemplateSelectFile); + HdlFileLogic.Current.DeleteFile(DirNameResourse.GatewayTemplateSelectFile); //鍐嶆鍒濆鍖栨埧闂� HdlRoomLogic.Current.InitAllRoom(); @@ -276,9 +271,11 @@ if (Common.Config.Instance.Home.TemplateMode != 2) { //瀛樻斁鐨勮矾寰� - string fullFile = System.IO.Path.Combine(HdlFileNameResourse.LocalTemplateDirectory, TemplateFileName); + string fullFile = System.IO.Path.Combine(DirNameResourse.LocalTemplateDirectory, TemplateFileName); HdlFileLogic.Current.DeleteFile(fullFile); } + //瑕嗙洊鐗╃悊璁惧鎵�鍦ㄧ殑鎴块棿鏁版嵁 + HdlFileLogic.Current.SaveFileContent(DirNameResourse.DeviceRoomIdFile, this.modelData.dicDeviceTemplateRealRoom); } /// <summary> @@ -312,11 +309,6 @@ foreach (var deviceKey in room.ListDevice) { this.modelData.dicDeviceTemplateRoom[deviceKey] = room.Id; - } - foreach (var strMac in room.ListDeviceMac) - { - //鐗╃悊璁惧鎵�鍦ㄧ殑鍖哄煙,鍦ㄨ繖涓嚱鏁板闈㈠凡缁忓垵濮嬪寲浜嗚繖涓彉閲� - this.modelData.dicDeviceTemplateRealRoom[strMac] = room.Id; } this.strTempContentData = string.Empty; return true; @@ -365,7 +357,7 @@ //鍙嶅簭鍒楀寲璁惧鐨勪繚瀛樻枃浠跺唴瀹� var tempData = this.DeserializeDeviceDataByDiv(saveDiv, this.strTempContentData); //灏嗚澶囨ā鏉挎暟鎹坊鍔犲叆缂撳瓨(姝ゅ鐗规畩,涓嶉渶瑕佸姞鍏ヨ澶囨ā鏉跨紦瀛樹腑) - string mainKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(tempData.DeviceMac, tempData.DeviceEpoint); + string mainKey = Common.LocalDevice.Current.GetDeviceMainKeys(tempData.DeviceMac, tempData.DeviceEpoint); this.SetTemplateDeviceDataToMemmory(tempData, this.strTempContentData, mainKey, addToTemplate); this.strTempContentData = string.Empty; return; @@ -406,6 +398,13 @@ this.strTempContentData = string.Empty; return; } + //鐗╃悊璁惧鐨勬埧闂� + else if (strData == "#DeviceTemplateRealRoom END#") + { + this.modelData.dicDeviceTemplateRealRoom = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(this.strTempContentData); + this.strTempContentData = string.Empty; + return; + } //妯℃澘浣忓畢鐨勪俊鎭�(鐩墠鍦ㄨ繖閲屽熀鏈病鐢�) else if (strData == "#TemplateHomeInfo END#") { @@ -430,7 +429,7 @@ private void ReadTemplateFileMethord(Action<string, ModelDeviceSaveEnum, string> AdjustAction) { //淇濆瓨鐨勮矾寰� - string saveFile = HdlFileNameResourse.LocalTemplateDirectory; + string saveFile = DirNameResourse.LocalTemplateDirectory; saveFile = System.IO.Path.Combine(saveFile, TemplateFileName); string fileData = HdlFileLogic.Current.ReadFileTextContent(saveFile); @@ -629,7 +628,7 @@ //灏嗘ā鏉挎暟鎹繚瀛樺埌鍒版寚瀹氱殑鏂囦欢澶逛腑 var fileFullName = this.SaveTemplateDataToFile(fileName, backupName); //鑾峰彇鍗囩骇鍥轰欢鏂囦欢 - var result = HdlFirmwareUpdateLogic.Current.DownLoadTemplateDeviceFirmware(fileFullName, "姝e湪淇濆瓨鍗囩骇鍥轰欢鏁版嵁"); + var result = HdlFirmwareUpdateLogic.DownLoadTemplateDeviceFirmware(fileFullName, "姝e湪淇濆瓨鍗囩骇鍥轰欢鏁版嵁"); if (result == -1) { this.ShowMassage(ShowMsgType.Tip, "淇濆瓨鍗囩骇鍥轰欢鏁版嵁澶辫触"); @@ -669,17 +668,17 @@ } } } - var listDevice = HdlDeviceCommonLogic.Current.listAllDevice; + var listDevice = Common.LocalDevice.Current.listAllDevice; foreach (var device in listDevice) { if (listMac.Contains(device.DeviceAddr) == false) { listMac.Add(device.DeviceAddr); //閲嶆柊娣诲姞Mac鍚嶅瓧缂撳瓨 - TemplateDeviceDataLogic.Current.ReDeviceMacName(device, HdlDeviceCommonLogic.Current.GetDeviceMacName(device)); + TemplateDeviceDataLogic.Current.ReDeviceMacName(device, Common.LocalDevice.Current.GetDeviceMacName(device)); } //閲嶆柊娣诲姞绔偣鍚嶅瓧缂撳瓨 - TemplateDeviceDataLogic.Current.ReDeviceEpointName(device, HdlDeviceCommonLogic.Current.GetDeviceEpointName(device)); + TemplateDeviceDataLogic.Current.ReDeviceEpointName(device, Common.LocalDevice.Current.GetDeviceEpointName(device)); } } #endregion @@ -695,7 +694,7 @@ var dicData = new Dictionary<string, List<LocalModelBaseInfo>>(); var listTime = new List<string>(); - var strPath = HdlFileNameResourse.AllResidenceTemplateDirectory; + var strPath = DirNameResourse.AllResidenceTemplateDirectory; //鑾峰彇鍏ㄩ儴鏂囦欢 var arryFile = System.IO.Directory.GetFiles(strPath, "ModelData_*"); foreach (string modelFile in arryFile) @@ -743,31 +742,32 @@ /// <summary> /// 鑾峰彇浜戠鍏ㄩ儴鐨勬ā鏉垮垪琛ㄧ殑鍩烘湰淇℃伅 /// </summary> - /// <param name="mode">澶辫触鏃舵槸鍚︽樉绀簍ip娑堟伅</param> /// <returns></returns> - public List<CloundModelBaseInfo> GetCloundAllModelList(ShowNetCodeMode mode= ShowNetCodeMode.YES) + public List<CloundModelBaseInfo> GetCloundAllModelList() { - var result = HdlHttpLogic.Current.RequestResponseFromZigbeeHttps("api/HomebackupCluster/V1/template/info/findAll", RestSharp.Method.GET, null); - //妫�娴嬬姸鎬佺爜 - if (HdlCheckLogic.Current.CheckNetCode(result, mode) == false) + var pra = new { - return new List<CloundModelBaseInfo>(); - } + RequestVersion = Common.CommonPage.RequestVersion, + RequestSource = 5, + LoginAccessToken = Common.Config.Instance.Token + }; + var result = UserCenterLogic.GetResponseDataByRequestHttps("ProjectTemplate/GetProTemplateList", false, pra); + if (result == null) { return new List<CloundModelBaseInfo>(); } var dicData = new Dictionary<string, List<CloundModelBaseInfo>>(); var listTime = new List<string>(); - var listCloundData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<CloundModelBaseInfo>>(result.Data.ToString()); + var listCloundData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<CloundModelBaseInfo>>(result); foreach (var data in listCloundData) { //鍙樻洿鏃堕棿鏍煎紡 - data.CreateUtcTime = HdlCommonLogic.Current.ConvertUtcTimeToLocalTime(data.CreateUtcTime).ToString("yyyy.MM.dd HH:mm"); - if (dicData.ContainsKey(data.CreateUtcTime) == false) + data.CreatedOnUtc = UserCenterLogic.ConvertUtcTimeToLocalTime(data.CreatedOnUtc).ToString("yyyy.MM.dd HH:mm"); + if (dicData.ContainsKey(data.CreatedOnUtc) == false) { - dicData[data.CreateUtcTime] = new List<CloundModelBaseInfo>(); - listTime.Add(data.CreateUtcTime); + dicData[data.CreatedOnUtc] = new List<CloundModelBaseInfo>(); + listTime.Add(data.CreatedOnUtc); } - dicData[data.CreateUtcTime].Add(data); + dicData[data.CreatedOnUtc].Add(data); } //鎸夋椂闂存帓搴� @@ -808,8 +808,7 @@ /// </summary> /// <param name="i_localTemplate">鏈湴妯℃澘淇℃伅</param> /// <param name="i_saveName">澶囦唤鍚嶅瓧</param> - /// <param name="mode">澶辫触鏃舵槸鍚︽樉绀簍ip娑堟伅</param> - public void UpLoadTemplateData(LocalModelBaseInfo i_localTemplate, string i_saveName, ShowNetCodeMode mode = ShowNetCodeMode.YES) + public void UpLoadTemplateData(LocalModelBaseInfo i_localTemplate, string i_saveName) { HdlThreadLogic.Current.RunThread(() => { @@ -827,16 +826,8 @@ return; } } - //鍒涘缓鏂扮殑妯℃澘澶囦唤 - var templateId = this.CreatNewTemplateNameToDB(i_saveName, mode); - if (templateId == null) - { - ProgressBar.Close(); - return; - } - //杩欓噷淇敼鎺夋ā鏉挎枃浠堕噷闈㈣杞界殑妯℃澘鍚嶇О - string templateFile = System.IO.Path.Combine(HdlFileNameResourse.AllResidenceTemplateDirectory, i_localTemplate.FileName); + string templateFile = System.IO.Path.Combine(DirNameResourse.AllResidenceTemplateDirectory, i_localTemplate.FileName); string binFileData = HdlFileLogic.Current.ReadFileTextContent(templateFile); var arryBinFile = binFileData.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries); //鏇挎崲鐩爣 杩欓噷鏄ā鏉垮熀鏈俊鎭殑json鏁版嵁 @@ -848,47 +839,35 @@ string replaceDta = Newtonsoft.Json.JsonConvert.SerializeObject(templateBaseInfo); binFileData = binFileData.Replace(strFileData, replaceDta); - var dicQuery = new Dictionary<string, object>(); - dicQuery["templateId"] = templateId; - dicQuery["fileName"] = "ModelData_Cloud_" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".bin"; - - //涓婁紶鏂囦欢 - var result = HdlHttpLogic.Current.RequestResponseFromZigbeeHttps("api/HomebackupCluster/V1/template/file/add", RestSharp.Method.POST, - Encoding.UTF8.GetBytes(binFileData), dicQuery, null, CheckMode.A涓嶆娴�, true); + var pra = new + { + RequestVersion = Common.CommonPage.RequestVersion, + RequestSource = 5, + LoginAccessToken = Common.Config.Instance.Token, + ProTemplateName = i_saveName, + ProTemplateDetails = new List<TemplateDetailsInfo>() + }; + var detailsInfo = new TemplateDetailsInfo(); + detailsInfo.DetailName = "ModelData_Cloud_" + DateTime.Now.ToString("yyyyMMdd_HHmmss") + ".bin"; + detailsInfo.DetailContent = Encoding.UTF8.GetBytes(binFileData); + pra.ProTemplateDetails.Add(detailsInfo); //娓呮帀杩欎釜瀛楃涓茬紦瀛� binFileData = null; - //妫�娴嬬姸鎬佺爜 - if (HdlCheckLogic.Current.CheckNetCode(result, mode) == true) + var result = UserCenterLogic.GetResultStatuByRequestHttps("ProjectTemplate/AddProTemplate", false, pra); + if (result == true) { //涓婁紶妯℃澘鎴愬姛 this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.UploadTemplateSuccess)); } - + else + { + //涓婁紶妯℃澘澶辫触 + this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.UploadTemplateFail)); + } ProgressBar.Close(); }); - } - - /// <summary> - /// 鍦ㄤ簯绔垱寤烘柊鐨勬ā鏉垮悕绉� - /// </summary> - /// <param name="i_saveName">鏂板悕瀛�</param> - /// <param name="mode">澶辫触鏃舵槸鍚︽樉绀簍ip娑堟伅</param> - /// <returns></returns> - private string CreatNewTemplateNameToDB(string i_saveName, ShowNetCodeMode mode = ShowNetCodeMode.YES) - { - var dicQuery = new Dictionary<string, object>(); - dicQuery["templateName"] = i_saveName; - - var result = HdlHttpLogic.Current.RequestResponseFromZigbeeHttps("api/HomebackupCluster/V1/template/info/add", RestSharp.Method.POST, null, dicQuery); - //妫�娴嬬姸鎬佺爜 - if (HdlCheckLogic.Current.CheckNetCode(result, mode) == false) - { - return null; - } - var idData = Newtonsoft.Json.JsonConvert.DeserializeObject<IdInfoClass>(result.Data.ToString()); - return idData.Id; } /// <summary> @@ -915,8 +894,7 @@ /// </summary> /// <param name="i_templateId">鏁版嵁搴撲富閿�</param> /// <param name="i_SuccessAction">涓嬭浇瀹屽叏鎴愬姛涔嬪悗鐨勫洖璋冧簨浠�,鍙傛暟涓轰繚瀛樻ā鏉跨殑鍏ㄨ矾寰�(鍙傛暟null浠h〃澶辫触)</param> - /// <param name="mode">澶辫触鏃舵槸鍚︽樉绀簍ip娑堟伅</param> - public void DownLoadTemplate(string i_templateId, Action<string> i_SuccessAction = null,ShowNetCodeMode mode= ShowNetCodeMode.YES) + public void DownLoadTemplate(string i_templateId, Action<string> i_SuccessAction = null) { HdlThreadLogic.Current.RunThread(() => { @@ -924,13 +902,15 @@ ProgressFormBar.Current.SetMsg("姝e湪涓嬭浇妯℃澘鏁版嵁"); System.Threading.Thread.Sleep(1500); - var dicQuery = new Dictionary<string, object>(); - dicQuery["templateId"] = i_templateId; - - //鑾峰彇鎸囧畾妯℃澘鐨勫垪琛ㄦ枃浠� - var result = HdlHttpLogic.Current.RequestResponseFromZigbeeHttps("api/HomebackupCluster/V1/template/file/findAll", RestSharp.Method.GET, null, dicQuery); - //妫�娴嬬姸鎬佺爜 - if (HdlCheckLogic.Current.CheckNetCode(result, mode) == false) + var pra = new + { + RequestVersion = Common.CommonPage.RequestVersion, + RequestSource = 5, + LoginAccessToken = Common.Config.Instance.Token, + ProTemplateId = i_templateId + }; + var result = UserCenterLogic.GetResponseDataByRequestHttps("ProjectTemplate/GetProTemplateDetailList", false, pra); + if (result == null) { //涓嬭浇妯℃澘澶辫触 this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.DownloadTemplateFail)); @@ -938,8 +918,8 @@ i_SuccessAction?.Invoke(null); return; } - var listFileData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DownloadTemplateData>>(result.Data.ToString()); - if (listFileData.Count == 0) + var fileListData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DownloadTemplateData>>(result); + if (fileListData.Count == 0) { //涓嬭浇妯℃澘澶辫触 this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.DownloadTemplateFail)); @@ -947,28 +927,13 @@ i_SuccessAction?.Invoke(null); return; } - - //涓嬭浇妯℃澘鐨勫唴瀹� - var dicQuery2 = new Dictionary<string, object>(); - dicQuery2["templateId"] = i_templateId; - dicQuery2["templateFileId"] = listFileData[0].Id; - var byteContent = HdlHttpLogic.Current.RequestByteFromZigbeeHttps("api/HomebackupCluster/V1/template/file/downOne", RestSharp.Method.GET, null, dicQuery2, null, CheckMode.A涓嶆娴�, true, 10); - if (byteContent == null || byteContent.Length == 0) - { - //涓嬭浇妯℃澘澶辫触 - this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.DownloadTemplateFail)); - ProgressFormBar.Current.Close(); - i_SuccessAction?.Invoke(null); - return; - } - //瑙f瀽杩欎釜妯℃澘鐨勫悕瀛� - var strFileData = this.GetDataFromFileContent(Encoding.UTF8.GetString(byteContent), "#START#", "#TemplateData END#"); + var strFileData = this.GetDataFromFileContent(Encoding.UTF8.GetString(fileListData[0].DetailContent), "#START#", "#TemplateData END#"); var templateBaseInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<LocalModelBaseInfo>(strFileData); //妫�娴嬫湰鍦扮殑妯℃澘鏄惁鏈夊悓鍚嶇殑 var listLocal = this.GetLocalAllModelList(); - string fileName = listFileData[0].FileName; + string fileName = fileListData[0].DetailName; foreach (var localData in listLocal) { if (localData.ModelName == templateBaseInfo.ModelName) @@ -980,12 +945,11 @@ } //瀛樻垚鏂囦欢 - string fileFullName = System.IO.Path.Combine(HdlFileNameResourse.AllResidenceTemplateDirectory, fileName); - HdlFileLogic.Current.SaveByteToFile(fileFullName, byteContent); - byteContent = null; + string fileFullName = System.IO.Path.Combine(DirNameResourse.AllResidenceTemplateDirectory, fileName); + HdlFileLogic.Current.SaveByteToFile(fileFullName, fileListData[0].DetailContent); //鑾峰彇鍗囩骇鍥轰欢鏂囦欢 - var result2 = HdlFirmwareUpdateLogic.Current.DownLoadTemplateDeviceFirmware(fileFullName, "姝e湪鑾峰彇鍗囩骇鍥轰欢鏁版嵁"); + var result2 = HdlFirmwareUpdateLogic.DownLoadTemplateDeviceFirmware(fileFullName, "姝e湪鑾峰彇鍗囩骇鍥轰欢鏁版嵁"); if (result2 == -1) { this.ShowMassage(ShowMsgType.Tip, "鑾峰彇鍗囩骇鍥轰欢鏁版嵁澶辫触"); @@ -1004,17 +968,13 @@ private class DownloadTemplateData { /// <summary> - /// 鍒涘缓鏃堕棿 - /// </summary> - public string CreateUtcTime = string.Empty; - /// <summary> /// 妯℃澘鏂囦欢鍚嶅瓧 /// </summary> - public string FileName = string.Empty; + public string DetailName = string.Empty; /// <summary> - /// 涓婚敭 + /// 妯℃澘鏁版嵁 /// </summary> - public string Id = string.Empty; + public byte[] DetailContent = null; } #endregion @@ -1025,25 +985,18 @@ /// 鍒犻櫎浜戠妯℃澘澶囦唤 /// </summary> /// <param name="i_templateId">妯℃澘涓婚敭</param> - /// <param name="mode">澶辫触鏃舵槸鍚︽樉绀簍ip娑堟伅</param> /// <returns></returns> - public bool DeleteTemplateFromDb(string i_templateId, ShowNetCodeMode mode = ShowNetCodeMode.YES) + public bool DeleteTemplateFromDb(string i_templateId) { - var dicQuery = new Dictionary<string, object>(); - dicQuery["templateId"] = i_templateId; - - var result = HdlHttpLogic.Current.RequestResponseFromZigbeeHttps("api/HomebackupCluster/V1/template/info/delete", RestSharp.Method.DELETE, null, dicQuery); - if (result != null && result.Code == HttpMessageEnum.A10605) + var pra = new { - //妯℃澘瀵硅薄涓嶅瓨鍦�,褰撳仛鎴愬姛 - return true; - } - //妫�娴嬬姸鎬佺爜 - if (HdlCheckLogic.Current.CheckNetCode(result, mode) == false) - { - return false; - } - return true; + RequestVersion = Common.CommonPage.RequestVersion, + RequestSource = 5, + LoginAccessToken = Common.Config.Instance.Token, + ProTemplateId = i_templateId + }; + var result = UserCenterLogic.GetResultStatuByRequestHttps("ProjectTemplate/DeleteProTemplate", false, pra); + return result; } /// <summary> @@ -1053,7 +1006,7 @@ /// <returns></returns> public void DeleteLocalTemplate(LocalModelBaseInfo i_baseInfo) { - var fullFile = System.IO.Path.Combine(HdlFileNameResourse.AllResidenceTemplateDirectory, i_baseInfo.FileName); + var fullFile = System.IO.Path.Combine(DirNameResourse.AllResidenceTemplateDirectory, i_baseInfo.FileName); HdlFileLogic.Current.DeleteFile(fullFile); } @@ -1099,7 +1052,7 @@ this.CrearWriteDeviceSelectTemplateData(ref writeText); //鍐欏叆鍐呭 - string saveFile = HdlFileNameResourse.AllResidenceTemplateDirectory; + string saveFile = DirNameResourse.AllResidenceTemplateDirectory; saveFile = System.IO.Path.Combine(saveFile, fileName); HdlFileLogic.Current.SaveTextToFile(saveFile, writeText); @@ -1111,7 +1064,7 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愭ā鏉垮熀鏈暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CreatWriteTemplateBaseData(ref string writeText, string backUpName) + private void CreatWriteTemplateBaseData(ref string writeText, string backUpName) { var modelData = new LocalModelBaseInfo(); modelData.EditorTime = DateTime.Now.ToString("yyyy.MM.dd HH:mm"); @@ -1124,7 +1077,7 @@ { if (listData.Count > 0) { - var listDevice = HdlDeviceCommonLogic.Current.GetDevicesByMac(listData[0].DeviceMac, false); + var listDevice = Common.LocalDevice.Current.GetDevicesByMac(listData[0].DeviceMac, false); funcCount += listDevice.Count; } } @@ -1140,7 +1093,7 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愭ā鏉夸綇瀹呬俊鎭暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CreatWriteTemplateHomeData(ref string writeText) + private void CreatWriteTemplateHomeData(ref string writeText) { var homeData = new TemplateHomeInfo(); homeData.ResidenceAddressName = Common.Config.Instance.Home.ResidenceAddressName; @@ -1157,7 +1110,7 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愯澶囨ā鏉挎暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CreatWriteDeviceTemplateData(ref string writeText) + private void CreatWriteDeviceTemplateData(ref string writeText) { foreach (var list in this.modelData.dicDeviceTemplateData.Values) { @@ -1175,9 +1128,9 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愯澶囧璞℃暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CreatWriteCommonDeviceData(ref string writeText) + private void CreatWriteCommonDeviceData(ref string writeText) { - var listDevice = HdlDeviceCommonLogic.Current.listAllDevice; + var listDevice = Common.LocalDevice.Current.listAllDevice; var listCheck = new HashSet<string>(); foreach (var device in listDevice) { @@ -1191,7 +1144,7 @@ if (listCheck.Contains(device.DeviceAddr) == false) { listCheck.Add(device.DeviceAddr); - var otaDevice = HdlDeviceCommonLogic.Current.GetOTADevice(device.DeviceAddr); + var otaDevice = Common.LocalDevice.Current.GetOTADevice(device.DeviceAddr); if (otaDevice != null) { writeText += "#DeviceInfo START#" + (int)otaDevice.Type + "\r\n"; @@ -1207,7 +1160,7 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愮綉鍏冲璞℃暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CreatWriteGatewayData(ref string writeText) + private void CreatWriteGatewayData(ref string writeText) { var listGateway = HdlGatewayLogic.Current.GetAllLocalGateway(); foreach (var gateway in listGateway) @@ -1224,7 +1177,7 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愬満鏅暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CreatWriteSceneData(ref string writeText) + private void CreatWriteSceneData(ref string writeText) { //鍏ㄩ儴鐨勫満鏅� var listScene = HdlSceneLogic.Current.GetAllLocalScene(); @@ -1242,7 +1195,7 @@ /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愭埧闂存ā鏉挎暟鎹�� /// </summary> /// <param name="writeText"></param> - public void CrearWriteRoomTemplateData(ref string writeText) + private void CrearWriteRoomTemplateData(ref string writeText) { //妤煎眰鏁版嵁 writeText += "#START#\r\n"; @@ -1259,13 +1212,31 @@ writeText += dataInfo2 + "\r\n"; writeText += "#RoomInfo END#\r\n\r\n"; } + //鐗╃悊缃戝叧鎵�鍦ㄧ殑鎴块棿 + var dicRealRoom = new Dictionary<string, string>(); + var listGateway = HdlGatewayLogic.Current.GetAllLocalGateway(); + foreach (var gateway in listGateway) + { + dicRealRoom[gateway.GwId] = gateway.RoomId; + } + //鑾峰彇鍏ㄩ儴鐗╃悊璁惧鎵�灞炴埧闂寸殑璁板綍 + var dicDeviceRoom = HdlRoomLogic.Current.GetAllRealDeviceRoomData(); + foreach (var strMac in dicDeviceRoom.Keys) + { + dicRealRoom[strMac] = dicDeviceRoom[strMac]; + } + + writeText += "#START#\r\n"; + string dataInfo = Newtonsoft.Json.JsonConvert.SerializeObject(dicRealRoom); + writeText += dataInfo + "\r\n"; + writeText += "#DeviceTemplateRealRoom END#\r\n\r\n"; } /// <summary> /// 鐢熸垚鍐欏叆鏂囦欢鐨勩�愯澶囧拰缃戝叧閫夋嫨鐨勬ā鏉跨殑鏁版嵁銆� /// </summary> /// <param name="writeText"></param> - public void CrearWriteDeviceSelectTemplateData(ref string writeText) + private void CrearWriteDeviceSelectTemplateData(ref string writeText) { //璁惧閫夋嫨妯℃澘鐨勬暟鎹� writeText += "#START#\r\n"; @@ -1323,8 +1294,8 @@ public void AddDeviceTemplateSelect(string sourceMac, string targetMac) { //鑾峰彇鏈湴鎸囧畾鐨凪ac鐨勫叏閮ㄨ澶� - var listDevice = HdlDeviceCommonLogic.Current.GetDevicesByMac(sourceMac, false); - var otaDevice = HdlDeviceCommonLogic.Current.GetOTADevice(sourceMac); + var listDevice = Common.LocalDevice.Current.GetDevicesByMac(sourceMac, false); + var otaDevice = Common.LocalDevice.Current.GetOTADevice(sourceMac); if (otaDevice != null) { //杩欓噷ota璁惧涔熻鍔犺繘鍘�,閲嶄腑涔嬮噸 @@ -1334,8 +1305,8 @@ foreach (var device in listDevice) { //妯℃澘閫夋嫨鐨勬椂鍊�,浠栦滑鐨勭鐐规槸涓�鑷寸殑 - string localDeviceKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device); - string templateDeviceKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(targetMac, device.DeviceEpoint); + string localDeviceKey = Common.LocalDevice.Current.GetDeviceMainKeys(device); + string templateDeviceKey = Common.LocalDevice.Current.GetDeviceMainKeys(targetMac, device.DeviceEpoint); if (this.modelData.dicDeviceTemplateRoom.ContainsKey(templateDeviceKey) == true && (device is OTADevice) == false) @@ -1350,7 +1321,7 @@ if (this.modelData.dicDeviceTemplateData.ContainsKey(localDeviceKey) == true) { //鍒犻櫎杩欎釜璁惧鐨勬ā鏉夸繚瀛樻枃浠� - HdlFileLogic.Current.DeleteFile(System.IO.Path.Combine(HdlFileNameResourse.LocalTemplateDirectory, device.FilePath)); + HdlFileLogic.Current.DeleteFile(System.IO.Path.Combine(DirNameResourse.LocalTemplateDirectory, device.FilePath)); //绉婚櫎褰撳墠绔偣淇濆瓨鐨勬ā鏉挎暟鎹� this.modelData.dicDeviceTemplateData.Remove(localDeviceKey); } @@ -1366,11 +1337,11 @@ //淇敼绔偣缂撳瓨鍚嶅瓧 if (tempData.DataSaveDiv == ModelDeviceSaveEnum.A绔偣鍚嶇О) { - HdlDeviceCommonLogic.Current.SetEpointName(device, ((ModelDeviceEpointNameInfo)tempData).deviceEpointName); + Common.LocalDevice.Current.SetEpointName(device, ((ModelDeviceEpointNameInfo)tempData).deviceEpointName); } else if (tempData.DataSaveDiv == ModelDeviceSaveEnum.A璁惧鍚嶇О) { - HdlDeviceCommonLogic.Current.SetMacName(device, ((ModelDeviceMacNameInfo)tempData).deviceMacName); + Common.LocalDevice.Current.SetMacName(device, ((ModelDeviceMacNameInfo)tempData).deviceMacName); } } } @@ -1389,7 +1360,7 @@ this.modelData.dicDeviceTemplateSelect[sourceMac] = targetMac; //淇濆瓨鐨勮矾寰� string fileData = Newtonsoft.Json.JsonConvert.SerializeObject(this.modelData.dicDeviceTemplateSelect); - HdlFileLogic.Current.SaveTextToFile(HdlFileNameResourse.DeviceTemplateSelectFile, fileData); + HdlFileLogic.Current.SaveTextToFile(DirNameResourse.DeviceTemplateSelectFile, fileData); } /// <summary> @@ -1495,7 +1466,7 @@ public void RemoveDeviceTemplateSelect(string sourceMac) { ////鑾峰彇鏈湴鎸囧畾鐨凪ac鐨勫叏閮ㄨ澶� - //var listDevice = HdlDeviceCommonLogic.Current.GetDevicesByMac(sourceMac, false); + //var listDevice = Common.LocalDevice.Current.GetDevicesByMac(sourceMac, false); //foreach (var device in listDevice) //{ // //杩樺師鍦烘櫙鐨勬墽琛岀洰鏍� @@ -1506,7 +1477,7 @@ this.modelData.dicDeviceTemplateSelect.Remove(sourceMac); //淇濆瓨鐨勮矾寰� string fileData = Newtonsoft.Json.JsonConvert.SerializeObject(this.modelData.dicDeviceTemplateSelect); - HdlFileLogic.Current.SaveTextToFile(HdlFileNameResourse.DeviceTemplateSelectFile, fileData); + HdlFileLogic.Current.SaveTextToFile(DirNameResourse.DeviceTemplateSelectFile, fileData); } /// <summary> @@ -1520,7 +1491,7 @@ this.modelData.dicGatewayTemplateSelect[sourceGwid] = targetGwid; //淇濆瓨鐨勮矾寰� string fileData = Newtonsoft.Json.JsonConvert.SerializeObject(this.modelData.dicGatewayTemplateSelect); - HdlFileLogic.Current.SaveTextToFile(HdlFileNameResourse.GatewayTemplateSelectFile, fileData); + HdlFileLogic.Current.SaveTextToFile(DirNameResourse.GatewayTemplateSelectFile, fileData); //鍙樻洿缃戝叧鎴块棿 if (this.modelData.dicDeviceTemplateRealRoom.ContainsKey(targetGwid) == true) @@ -1547,7 +1518,7 @@ this.modelData.dicGatewayTemplateSelect.Remove(sourceGwid); //淇濆瓨鐨勮矾寰� string fileData = Newtonsoft.Json.JsonConvert.SerializeObject(this.modelData.dicGatewayTemplateSelect); - HdlFileLogic.Current.SaveTextToFile(HdlFileNameResourse.GatewayTemplateSelectFile, fileData); + HdlFileLogic.Current.SaveTextToFile(DirNameResourse.GatewayTemplateSelectFile, fileData); } /// <summary> @@ -1625,8 +1596,8 @@ this.modelData.dicDeviceTemplateSelect = new Dictionary<string, string>(); this.modelData.dicGatewayTemplateSelect = new Dictionary<string, string>(); //鍒犳帀杩欎袱涓繚瀛橀�夋嫨妯℃澘鐨勬枃浠� - HdlFileLogic.Current.DeleteFile(HdlFileNameResourse.DeviceTemplateSelectFile); - HdlFileLogic.Current.DeleteFile(HdlFileNameResourse.GatewayTemplateSelectFile); + HdlFileLogic.Current.DeleteFile(DirNameResourse.DeviceTemplateSelectFile); + HdlFileLogic.Current.DeleteFile(DirNameResourse.GatewayTemplateSelectFile); } #endregion @@ -1715,17 +1686,17 @@ public void DeleteDevice(CommonDevice device) { //鍒犻櫎淇濆瓨鏂囦欢 - string saveFile = HdlFileNameResourse.LocalTemplateDirectory; + string saveFile = DirNameResourse.LocalTemplateDirectory; saveFile = System.IO.Path.Combine(saveFile, device.FilePath); HdlFileLogic.Current.DeleteFile(saveFile); //绉婚櫎妯℃澘缂撳瓨 - this.modelData.dicDeviceTemplateData.Remove(HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device)); + this.modelData.dicDeviceTemplateData.Remove(Common.LocalDevice.Current.GetDeviceMainKeys(device)); //绉婚櫎璁惧閫夋嫨缂撳瓨 if (this.modelData.dicDeviceTemplateSelect.ContainsKey(device.DeviceAddr) == true) { this.modelData.dicDeviceTemplateSelect.Remove(device.DeviceAddr); - HdlFileLogic.Current.SaveFileContent(HdlFileNameResourse.DeviceTemplateSelectFile, this.modelData.dicDeviceTemplateSelect); + HdlFileLogic.Current.SaveFileContent(DirNameResourse.DeviceTemplateSelectFile, this.modelData.dicDeviceTemplateSelect); } } @@ -1740,14 +1711,14 @@ /// <param name="deviceEpoint">璁惧Epoint</param> public void SaveDeviceMemmoryData(string deviceMac, int deviceEpoint) { - string mainkey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(deviceMac, deviceEpoint); + string mainkey = Common.LocalDevice.Current.GetDeviceMainKeys(deviceMac, deviceEpoint); if (this.modelData.dicDeviceTemplateData.ContainsKey(mainkey) == false) { return; } //淇濆瓨璺緞 - string saveFile = HdlFileNameResourse.LocalTemplateDirectory; + string saveFile = DirNameResourse.LocalTemplateDirectory; saveFile = System.IO.Path.Combine(saveFile, "Device_" + mainkey); var listData = this.modelData.dicDeviceTemplateData[mainkey]; @@ -1790,7 +1761,7 @@ continue; } //鍙栨湰鍦癘ta璁惧瀵硅薄 - var localOta = HdlDeviceCommonLogic.Current.GetOTADevice(localMac); + var localOta = Common.LocalDevice.Current.GetOTADevice(localMac); if (localOta == null) { //搴旇涓嶄細杩涙潵,鍗充娇杩涙潵,鎴戜篃涓嶇煡閬撲负浠�涔� @@ -1803,7 +1774,7 @@ { //鍙涓よ�呯殑鍥轰欢鐗堟湰涓嶄竴鏍�,骞朵笖鏈湴鏈夎繖涓崌绾у浐浠�,鍒欓兘闇�瑕佸崌绾� if (localOta.ImgVersion != tempDevice.ImgVersion - && HdlFirmwareUpdateLogic.Current.IsEsixtDeviceFirmwareFile((OTADevice)tempDevice) == true) + && HdlFirmwareUpdateLogic.IsEsixtDeviceFirmwareFile((OTADevice)tempDevice) == true) { //鎸夌綉鍏冲垎缁� if (dicGatewayDevice.ContainsKey(localOta.CurrentGateWayId) == false) @@ -1811,7 +1782,7 @@ dicGatewayDevice[localOta.CurrentGateWayId] = new Dictionary<string, string>(); } var dicDevice = dicGatewayDevice[localOta.CurrentGateWayId]; - dicDevice[localMac] = HdlFirmwareUpdateLogic.Current.GetDeviceFirmwareFile((OTADevice)tempDevice); + dicDevice[localMac] = HdlFirmwareUpdateLogic.GetDeviceFirmwareFile((OTADevice)tempDevice); } break; } @@ -1853,7 +1824,7 @@ if (tempGateway.LinuxFirmwareVersion != localGateway.LinuxFirmwareVersion) { //Linux鍗囩骇鍥轰欢鏂囦欢鍏ㄨ矾寰� - string updateFile = HdlFirmwareUpdateLogic.Current.GetGatewayLinuxFirmwareFile(tempGateway); + string updateFile = HdlFirmwareUpdateLogic.GetGatewayLinuxFirmwareFile(tempGateway); if (System.IO.File.Exists(updateFile) == true) { //濡傛灉瀛樺湪鐨勮瘽 @@ -1868,7 +1839,7 @@ if (tempGateway.CoordinatorFirmwareVersion != localGateway.CoordinatorFirmwareVersion) { //鍗忚皟鍣ㄥ崌绾у浐浠舵枃浠跺叏璺緞 - string updateFile = HdlFirmwareUpdateLogic.Current.GetGatewayCoordinatorFirmwareFile(tempGateway); + string updateFile = HdlFirmwareUpdateLogic.GetGatewayCoordinatorFirmwareFile(tempGateway); if (System.IO.File.Exists(updateFile) == true) { //濡傛灉瀛樺湪鐨勮瘽 @@ -1880,7 +1851,7 @@ } } //铏氭嫙椹卞姩姣旇緝 - if (localGateway.LinuxImageType != 6) + if (HdlGatewayLogic.Current.CheckGatewayHadDriveCode(localGateway) == true) { foreach (var localCode in localGateway.DriveCodeList) { @@ -1890,7 +1861,7 @@ if (localCode.DriveCode == tempCode.DriveCode && localCode.DriveFwVersion != tempCode.DriveFwVersion) { //铏氭嫙椹卞姩鍗囩骇鍥轰欢鏂囦欢鍏ㄨ矾寰� - string updateFile = HdlFirmwareUpdateLogic.Current.GetGatewayDriveCodeFirmwareFile(tempCode); + string updateFile = HdlFirmwareUpdateLogic.GetGatewayDriveCodeFirmwareFile(tempCode); if (System.IO.File.Exists(updateFile) == true) { //濡傛灉瀛樺湪鐨勮瘽 @@ -2003,7 +1974,7 @@ /// <param name="templateFileName">妯℃澘鏂囦欢鐨勫悕瀛�(鍏ㄤ綇瀹呭瓨鏀剧殑妯℃澘)</param> public void CopyTemplateFileToLocalDirectory(string templateFileName) { - string sourceFile = System.IO.Path.Combine(HdlFileNameResourse.AllResidenceTemplateDirectory, templateFileName); + string sourceFile = System.IO.Path.Combine(DirNameResourse.AllResidenceTemplateDirectory, templateFileName); this.CopyTemplateFileToLocalDirectory2(sourceFile); } @@ -2020,7 +1991,7 @@ } //淇濆瓨鐨勮矾寰� - string targetFile = HdlFileNameResourse.LocalTemplateDirectory; + string targetFile = DirNameResourse.LocalTemplateDirectory; targetFile = System.IO.Path.Combine(targetFile, TemplateFileName); try { System.IO.File.Copy(fullTemplateName, targetFile, true); } @@ -2033,7 +2004,7 @@ public void DeleteAllLocalFile() { //鑾峰彇杩欎釜璺緞涓嬮潰鍏ㄩ儴鐨勬枃浠� - var listFile = HdlFileLogic.Current.GetFileFromDirectory(HdlFileNameResourse.LocalTemplateDirectory, false); ; + var listFile = HdlFileLogic.Current.GetFileFromDirectory(DirNameResourse.LocalTemplateDirectory, false); ; foreach (var file in listFile) { HdlFileLogic.Current.DeleteFile(file); @@ -2102,7 +2073,7 @@ /// <returns></returns> private string GetDeviceModelId(string deviceMac) { - var listDevice = HdlDeviceCommonLogic.Current.GetDevicesByMac(deviceMac); + var listDevice = Common.LocalDevice.Current.GetDevicesByMac(deviceMac); foreach (var device in listDevice) { if (device.ModelIdentifier != string.Empty) @@ -2121,7 +2092,7 @@ /// <returns></returns> public TemplateDeviceDataCommon GetDeviceModelDataClass(string deviceMac, int deviceEpoint, ModelDeviceSaveEnum saveEnum, TemplateDeviceDataCommon newClass) { - string mainkey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(deviceMac, deviceEpoint); + string mainkey = Common.LocalDevice.Current.GetDeviceMainKeys(deviceMac, deviceEpoint); //鍒涘缓瀛樺偍绌洪棿 if (this.modelData.dicDeviceTemplateData.ContainsKey(mainkey) == false) -- Gitblit v1.8.0