From f46be160caed45c67e8980173d29ed48d525a4d3 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期二, 28 三月 2023 14:49:52 +0800 Subject: [PATCH] 2023年03月28日14:49:50 --- HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs | 127 +++++++++++++++++++++++++++++++++++------- 1 files changed, 105 insertions(+), 22 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs index e17db27..6e55a2f 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs @@ -11,7 +11,7 @@ /// <summary> /// 瀹氫箟涓�涓潤鎬佸璞� /// </summary> - private static LogicMethod s_Current = null; + private static LogicMethod s_Current = null; /// <summary> /// 鑾峰彇闈欐�佸璞� /// </summary> @@ -147,9 +147,9 @@ /// <returns></returns> public List<HDL_ON.Entity.Room> GetGatewayRoomList() { - return HDL_ON.Entity.SpatialInfo.CurrentSpatial.RoomList; + return HDL_ON.Entity.SpatialInfo.CurrentSpatial.RoomList; - + } /// <summary> /// 鑾峰彇缃戝叧鎴块棿鍒楄〃 @@ -197,15 +197,17 @@ public List<HDL_ON.Entity.Function> GetVideoDeviceList() { var functionList = new List<Function>(); - foreach (var videoDevice in FunctionList.List.videoIntercom) { + foreach (var videoDevice in FunctionList.List.videoIntercom) + { Function function = new Function(); function.spk = videoDevice.spk; function.name = videoDevice.deviceName; function.deviceId = videoDevice.deviceId; - function.online = videoDevice.status== "online"; + function.online = videoDevice.status == "online"; function.sid = videoDevice.sid; var video = functionList.Find((o) => o.deviceId == function.deviceId); - if (video == null) { + if (video == null) + { functionList.Add(function); } @@ -341,17 +343,52 @@ return roomName.TrimEnd(','); } - #region 鍔ㄤ竴鏀瑰洓 + /// <summary> /// 鑾峰彇璁惧绫诲瀷鍥炬爣 /// </summary> + /// <param name="device">璁惧</param> + /// <returns></returns> + public string GetDeviceIconPath(Function device) + { + if (SPK.MusicStandard == device.spk + || SPK.AvMusic == device.spk) + { + return "MusicIcon/localMusic.png"; + } + else if (SPK.SensorPm10 == device.spk) + { + return "LogicIcon/sensor.png"; + } + else if (SPK.DoorLock == device.spk + || SPK.VideoDoorLock == device.spk) + { + return "FunctionIcon/DoorLock/DoorLock.png"; + } + //LogicIcon/heatlogic.png" + return $"FunctionIcon/Icon/{device.IconName}.png"; + + } + /// <summary> + /// 鑾峰彇璁惧绫诲瀷鍥炬爣(宸插純鐢� 2022骞�11鏈�25鏃�14:07:30) + /// </summary> /// <param name="functionType">璁惧绫诲瀷</param> /// <returns></returns> - public string GetIconPath(string functionType) + public string GetIconPath(string spk) { string strPath = ""; - switch (functionType) + switch (spk) { + case SPK.IpCam_Imou: + { + strPath = $"FunctionIcon/Icon/{SPK.IpCam_Imou.Replace(".", "")}.png"; + } + break; + case SPK.MechanicalArm: + { + strPath = "LogicIcon/lightloguc.png"; + } + break; case SPK.doorgate: { strPath = "VideoIcon/keshiduijiang.png"; @@ -416,6 +453,7 @@ case SPK.SensorPir: case SPK.SensorDoorWindow: case SPK.SensorUtrasonic: + case SPK.SensorMmvPose: case SPK.SenesorMegahealth: case SPK.SenesorMegahealth2: case SPK.SensorEnvironment: @@ -443,10 +481,10 @@ strPath = "MusicIcon/localMusic.png"; } break; - } return strPath; } + #region 鍔ㄤ竴鏀逛笁 /// <summary> /// 璁惧绫诲瀷鐨勫垪琛�(鐏厜绫伙紝绐楀笜绫汇�傘�傘��) /// </summary> @@ -456,6 +494,7 @@ { List<string> deviceStrTypeList = new List<string>(); deviceStrTypeList.Clear(); + ///鐏厜绫� var lightjosn = deviceList.Find((device) => device.spk == SPK.LightSwitch @@ -508,6 +547,7 @@ || device.spk == SPK.SensorPir || device.spk == SPK.SensorDoorWindow || device.spk == SPK.SensorUtrasonic + || device.spk == SPK.SensorMmvPose || device.spk == SPK.SenesorMegahealth || device.spk == SPK.SenesorMegahealth2 || device.spk == SPK.SensorEnvironment @@ -520,6 +560,7 @@ || device.spk == SPK.SensorTVOC || device.spk == SPK.SensorHcho || device.spk == SPK.SensorHelp + || device.spk == SPK.SensorPm10 ); if (sensor != null) { @@ -536,7 +577,8 @@ deviceStrTypeList.Add(Language.StringByID(StringId.Electric)); } ///闂ㄩ攣绫� - var doorlock = deviceList.Find((device) => device.spk == SPK.DoorLock); + var doorlock = deviceList.Find((device) => device.spk == SPK.DoorLock + || device.spk == SPK.VideoDoorLock); if (doorlock != null) { deviceStrTypeList.Add(Language.StringByID(StringId.DoorLock)); @@ -553,6 +595,20 @@ { deviceStrTypeList.Add(Language.StringByID(StringId.VideoIntercom)); } + ///鏈烘鎵嬬被 + var MechanicalArm = deviceList.Find((device) => + device.spk == SPK.MechanicalArm); + if (MechanicalArm != null) + { + deviceStrTypeList.Add(Language.StringByID(StringId.jixieshou)); + } + ///鎽勫儚澶寸被 + var camera = deviceList.Find((device) => + device.spk == SPK.IpCam_Imou); + if (camera != null) + { + deviceStrTypeList.Add(Language.StringByID(StringId.shexiangtou)); + } return deviceStrTypeList; } @@ -564,6 +620,7 @@ public List<string> GetDeviceTypeFunctionList(string deviceType) { List<string> functionTypeList = new List<string>(); + ///鐏厜绫� if (deviceType == Language.StringByID(StringId.Lights)) { @@ -613,6 +670,7 @@ functionTypeList.Add(SPK.SensorPir); functionTypeList.Add(SPK.SensorDoorWindow); functionTypeList.Add(SPK.SensorUtrasonic); + functionTypeList.Add(SPK.SensorMmvPose); functionTypeList.Add(SPK.SenesorMegahealth); functionTypeList.Add(SPK.SenesorMegahealth2); functionTypeList.Add(SPK.SensorEnvironment); @@ -625,6 +683,7 @@ functionTypeList.Add(SPK.SensorTVOC); functionTypeList.Add(SPK.SensorHcho); functionTypeList.Add(SPK.SensorHelp); + functionTypeList.Add(SPK.SensorPm10); } @@ -639,6 +698,7 @@ else if (deviceType == Language.StringByID(StringId.DoorLock)) { functionTypeList.Add(SPK.DoorLock); + functionTypeList.Add(SPK.VideoDoorLock); } ///闊充箰绫� else if (deviceType == Language.StringByID(StringId.Music)) @@ -650,6 +710,16 @@ else if (deviceType == Language.StringByID(StringId.VideoIntercom)) { functionTypeList.Add(SPK.doorgate); + } + ///鏈烘鎵嬬被 + else if (deviceType == Language.StringByID(StringId.jixieshou)) + { + functionTypeList.Add(SPK.MechanicalArm); + } + ///鎽勫儚澶寸被 + else if (deviceType == Language.StringByID(StringId.shexiangtou)) + { + functionTypeList.Add(SPK.IpCam_Imou); } else { @@ -681,6 +751,7 @@ functionTypeList.Add(SPK.SensorPir); functionTypeList.Add(SPK.SensorDoorWindow); functionTypeList.Add(SPK.SensorUtrasonic); + functionTypeList.Add(SPK.SensorMmvPose); functionTypeList.Add(SPK.SenesorMegahealth); functionTypeList.Add(SPK.SenesorMegahealth2); functionTypeList.Add(SPK.SensorEnvironment); @@ -702,6 +773,10 @@ functionTypeList.Add(SPK.MusicStandard); functionTypeList.Add(SPK.AvMusic); functionTypeList.Add(SPK.doorgate); + functionTypeList.Add(SPK.MechanicalArm); + functionTypeList.Add(SPK.IpCam_Imou); + functionTypeList.Add(SPK.SensorPm10); + functionTypeList.Add(SPK.VideoDoorLock); } @@ -740,6 +815,7 @@ deviceTypeList.Add(SPK.SensorPir); deviceTypeList.Add(SPK.SensorDoorWindow); deviceTypeList.Add(SPK.SensorUtrasonic); + deviceTypeList.Add(SPK.SensorMmvPose); deviceTypeList.Add(SPK.SenesorMegahealth); deviceTypeList.Add(SPK.SenesorMegahealth2); deviceTypeList.Add(SPK.SensorEnvironment); @@ -757,7 +833,10 @@ deviceTypeList.Add(SPK.HvacCac); deviceTypeList.Add(SPK.SensorHelp); deviceTypeList.Add(SPK.DoorLock); - deviceTypeList.Add(SPK.doorgate); + deviceTypeList.Add(SPK.doorgate); + deviceTypeList.Add(SPK.IpCam_Imou); + deviceTypeList.Add(SPK.SensorPm10); + deviceTypeList.Add(SPK.VideoDoorLock); } break; @@ -780,6 +859,7 @@ deviceTypeList.Add(SPK.CurtainDream); deviceTypeList.Add(SPK.MusicStandard); deviceTypeList.Add(SPK.AvMusic); + deviceTypeList.Add(SPK.MechanicalArm); } break; } @@ -816,15 +896,15 @@ /// <returns></returns> public List<Entity.Function> GetFunctionDeviceList(Entity.Room room, string str) { - List<string> functionTypeList = GetSupportEquipment(str); + List<string> functionTypeList = this.GetSupportEquipment(str); //杩斿洖鎴块棿璁惧鍒楄〃 - var roomDeviceList = GetRoomDevice(room); + var roomDeviceList = this.GetRoomDevice(room); //杩斿洖鏈�缁堟敮鎸佹樉绀哄嚭鏉ョ殑璁惧鍒楄〃 - var list = GetShowDeviceList(functionTypeList, roomDeviceList); + var list =this.GetShowDeviceList(functionTypeList, roomDeviceList); return list; } /// <summary> - /// 缃戝叧ID(鑾峰彇鍢変箰缃戝叧ID) + /// 缃戝叧ID(鑾峰彇缃戝叧ID) /// </summary> public string GatewayId { @@ -1044,7 +1124,7 @@ //瀹氫箟涓�涓眬閮ㄥ彉閲� string direction = string.Empty; //涓ょ偣璺濈灏忎簬閰嶇疆璺濈<鏃㈣嚜鍔ㄥ寲閰嶇疆杈撳叆鏉′欢鍦扮悊鍥存爮鍗婂緞>,璇存槑杩涘叆鍖哄煙 - if (r*1000< radius) + if (r * 1000 < radius) { //鍒拌揪鏌愬湴 direction = "arrive"; @@ -1098,11 +1178,14 @@ //new Entity.Function { sid = "1234567890", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic }, // new Entity.Function { sid = "1234567891", name = "娓╁害浼犳劅鍣�", spk = Entity.SPK.SensorTemperature }, // new Entity.Function { sid = "1234567892", name = "婀垮害浼犳劅鍣�", spk = Entity.SPK.SensorHumidity }, - // new Entity.Function { sid = "1234567893", name = "绾㈠瀵瑰皠浼犳劅鍣�", spk = Entity.SPK.SensorDuiShe }, - // new Entity.Function { sid = "1234567895", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic }, - new Entity.Function { sid = "1234567896", name = "姣背娉紶鎰熷櫒", spk = Entity.SPK.SenesorMegahealth }, - new Entity.Function { sid = "1234567897", name = "姣背娉紶鎰熷櫒1", spk = Entity.SPK.SenesorMegahealth2 }, - new Entity.Function { sid = "1234567899", name = "闂ㄧ浼犳劅鍣�", spk = Entity.SPK.SensorDoorWindow }, + new Entity.Function { sid = "12345678933456", name = "闂ㄩ攣", spk = Entity.SPK.DoorLock }, + new Entity.Function { sid = "1234567895444", name = "瑙嗛闂ㄩ攣", spk = Entity.SPK.VideoDoorLock }, + //new Entity.Function { sid = "12345678968888", name = "pm10", spk = Entity.SPK.SensorPm10 }, + // new Entity.Function { sid = "1234567897", name = "姣背娉紶鎰熷櫒1", spk = Entity.SPK.SenesorMegahealth2 }, + // new Entity.Function { sid = "1234567899", name = "闂ㄧ浼犳劅鍣�", spk = Entity.SPK.SensorDoorWindow }, + // new Entity.Function { sid = "12345678991234", name = "HDL鏈烘鎵�", spk = Entity.SPK.MechanicalArm }, + // new Entity.Function { sid = "123456789912345", name = "娴锋浖鏈烘鎵�", spk = Entity.SPK.MechanicalArm }, + // new Entity.Function { sid = "12345678991234566", name = "娴锋浖鏈烘鎵�", spk = Entity.SPK.MechanicalArm }, }; foreach (var function in functions) { -- Gitblit v1.8.0