From 84fa7c9665d9bed9aef79237be9c5eb57c49f13d Mon Sep 17 00:00:00 2001 From: hxb <hxb@hdlchina.com.cn> Date: 星期五, 05 三月 2021 10:54:37 +0800 Subject: [PATCH] Merge branch 'CJL' into ez-test --- HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/air.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/delbuton.png | 0 HDL-ON_Android/Assets/Language.ini | 61 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png | 0 HDL-ON_iOS/HDL-ON_iOS.csproj | 54 HDL_ON/Common/ApiUtlis.cs | 50 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TopView.cs | 87 + HDL-ON_Android/Assets/Phone/PirIcon/search.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png | 0 HDL_ON/HDL_ON.projitems | 22 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png | 0 HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs | 64 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/projector.png | 0 HDL_ON/DAL/Server/NewApiRes.cs | 17 HDL-ON_iOS/Resources/Phone/PirIcon/adddevice.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/failed.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/search.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/SaveView.cs | 52 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/ReplicationView.cs | 69 HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs | 7 HDL_ON/Entity/DB_ResidenceData.cs | 6 HDL-ON_Android/Assets/Phone/PirIcon/icon2.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/offline.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/next.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/.DS_Store | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/dropdown.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/DeviceSet.cs | 244 +++ HDL_ON/UI/UI2/.DS_Store | 0 HDL-ON_Android/Assets/Phone/PirIcon/addlbuton.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/online.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/BrandListView.cs | 43 HDL-ON_iOS/Resources/Phone/PirIcon/custom.png | 0 HDL-ON_Android/libs/.DS_Store | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs | 101 + HDL-ON_iOS/Resources/Language.ini | 27 HDL_ON/UI/CSS/CSS.cs | 5 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png | 0 HDL_ON/DAL/DriverLayer/Control.cs | 19 HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs | 26 HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorDoorWinwsPage.cs | 34 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TipView.cs | 179 ++ HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/stb.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png | 0 HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotHistoryPage.cs | 2 HDL_ON/Entity/Enumerative/ClothsHangerEnum.cs | 9 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/Buttons.cs | 102 + HDL-ON_iOS/Resources/zh-Hans.lproj/Localizable.strings | 2 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs | 179 ++ HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControl.cs | 279 +++ HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png | 0 HDL-ON_iOS/Resources/EZ/Base.lproj/EZMain.storyboard | 5 HDL_ON/.DS_Store | 0 HDL_ON/DAL/Server/HttpServerRequest.cs | 13 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/.DS_Store | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/PatchView.cs | 96 + HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png | 0 HDL-ON_Android/Properties/AndroidManifest.xml | 2 HDL-ON_Android/Assets/Phone/.DS_Store | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs | 16 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png | 0 HDL_ON/DAL/Mqtt/MqttClient.cs | 18 HDL-ON_Android/HDL-ON_Android.csproj | 54 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png | 0 HDL-ON_iOS/Info.plist | 4 HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotPage.cs | 32 HDL_ON/Common/HDLCommon.cs | 92 + HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs | 41 HDL_ON/UI/UI1-Login/LoginPage.cs | 2 HDL-ON_Android/Assets/Phone/PirIcon/icon1.png | 0 HDL_ON/UI/.DS_Store | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/priequipment.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/del.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/projector.png | 0 HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs | 33 HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs | 31 HDL-ON_iOS/Resources/Phone/PirIcon/next.png | 0 HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard | 5 HDL-ON_iOS/Resources/Phone/PirIcon/addlbuton.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/succeed.png | 0 HDL_ON/Entity/Function/Function.cs | 273 ++- HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 229 ++- HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/dropdown.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/delbuton.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs | 339 ++++ HDL_ON/Entity/Function/DeviceFunction.cs | 15 HDL-ON_Android/Assets/Phone/PirIcon/del.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/BrandList.cs | 90 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/custom.png | 0 HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs | 4 HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 32 HDL-ON_iOS/Resources/Phone/PirIcon/tv.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/online.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png | 0 HDL_ON/UI/UI2/FuntionControlView/Electrical/ClothesHangerPage.cs | 464 ++++++ HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/tv.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/Infraredtreasure.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/Infraredtreasure.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/offline.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/fan.png | 0 HDL_ON/UI/MainPage.cs | 2 HDL-ON_Android/Application.cs | 2 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/STB.png | 0 HDL-ON_Android/Assets/Phone/PirIcon/dvd.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png | 0 HDL-ON_iOS/Resources/Phone/LogicIcon/changesinoutdoor.png | 0 HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorWaterImmersionPage.cs | 28 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png | 0 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Pir.cs | 48 DLL/IOS/EZSDK.IOS.dll | 0 HDL-ON_iOS/Resources/Phone/PirIcon/air.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png | 0 HDL_ON/Entity/FunctionList.cs | 77 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png | 0 HDL_ON/UI/UI2/FuntionControlView/Electrical/FanPageBLL.cs | 3 HDL-ON_iOS/Resources/Phone/PirIcon/dvd.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png | 0 HDL-ON_iOS/Resources/Phone/PirIcon/fan.png | 0 HDL_ON/DAL/Server/NewAPI.cs | 38 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs | 121 + HDL-ON_Android/Assets/Phone/PirIcon/priequipment.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store | 0 HDL-ON_Android/Assets/Phone/PirIcon/adddevice.png | 0 HDL_ON/Common/R.cs | 67 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs | 175 ++ HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/FailView.cs | 65 170 files changed, 3,782 insertions(+), 474 deletions(-) diff --git a/DLL/IOS/EZSDK.IOS.dll b/DLL/IOS/EZSDK.IOS.dll index 7e18fc2..fdc491c 100644 --- a/DLL/IOS/EZSDK.IOS.dll +++ b/DLL/IOS/EZSDK.IOS.dll Binary files differ diff --git a/HDL-ON_Android/Application.cs b/HDL-ON_Android/Application.cs index cf6dae2..bb26507 100644 --- a/HDL-ON_Android/Application.cs +++ b/HDL-ON_Android/Application.cs @@ -57,7 +57,7 @@ Manifest.Permission.Camera, Manifest.Permission.ProcessOutgoingCalls, Manifest.Permission.GetAccounts}; //绂佹灞忓箷闀夸寒 BaseActivity.KeepScreenON = false; - //闅愯棌杩嫓铏氭嫙鎸夐敭 + //闅愯棌铏氭嫙鎸夐敭 BaseActivity.IsHideVirualButtons = true; //瀹炵幇瀹夊崜杩斿洖鎸夐敭 BaseActivity.BackKeyAction = () => { diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini index 8849016..dae92a1 100644 --- a/HDL-ON_Android/Assets/Language.ini +++ b/HDL-ON_Android/Assets/Language.ini @@ -1164,6 +1164,67 @@ 5047=浣犳墜鏈烘殏鏈畨瑁�"QQ闊充箰"{\r\n}璇峰墠寰�鎵嬫満鍟嗗満瀹夎 + +6000=姝e父 +6001=璁惧鐘舵�� +6002=涓� +6003=褰撳墠绾㈠閬ユ帶璁惧 +6004=宸叉坊鍔犻仴鎺у櫒 +6005=绌鸿皟 +6006=鐢佃 +6007=椋庢墖 +6008=鏈洪《鐩� +6009=DVD/EVD/VCD +6010=鎶曞奖浠� +6011=鑷畾涔� +6012=绾㈠閬ユ帶 +6013=璁惧绠$悊 +6014=娣诲姞閬ユ帶鍣� +6015=鍦ㄧ嚎 +6016=绂荤嚎 +6017=鐗堟湰鍙� +6018=璇疯緭鍏ラ仴鎺у櫒鍚嶇О +6019=鎻愮ず锛氶仴鎺у櫒鍒涘缓鍚庡彲鍦ㄥ姛鑳�-鐢靛櫒鍒嗙被{\r\n}鏌ユ壘浣跨敤 +6020=鎺ㄨ崘鎸夐敭 +6021=璇疯緭鍏ユ寜閿悕绉� +6022=涓嬩竴姝� +6023=鐢垫簮 +6024=闊抽噺+ +6025=闊抽噺- +6026=棰戦亾+ +6027=棰戦亾- +6028=涓� +6029=涓� +6030=宸� +6031=鍙� +6032=闈欓煶 +6034=纭 +6035=鎾斁 +6037=閫�鍑� +6038=鑿滃崟 +6039=鏆傚仠 +6040=杩斿洖 +6041=鍋滄 +6042=涓婚〉 +6043=蹇繘 +6044=蹇�� +6045=瀹氭椂 +6046=澶嶅埗閬ユ帶鍔熻兘 +6047=瀵瑰噯閬ユ帶鍣ㄤ腑蹇冩寜涓嬬浉鍚屾寜閿� +6048=鏅鸿兘閬ユ帶鍣� +6049=娣诲姞鎸夐敭 +6050=*闀挎寜鍙繘琛岃嚜瀹氫箟鎺掑簭 +6051=瀹屾垚 +6052=娣诲姞鎴愬姛 +6053=鍙埌鍒嗙被-鍔熻兘-鐢靛櫒鎿嶄綔浣跨敤 +6054=鎵�灞炲垎绫� +6055=閬ユ帶鍣ㄥ悕绉� +6056=鎵�灞炲尯鍩� +6057=缁х画娣诲姞 +6058=鐢靛櫒 +6059=娣诲姞澶辫触 +6060=閲嶈瘯 + 7000=鏂板缓鑷姩鍖� 7001=缂栬緫鑷姩鍖� 7002=濡傛灉 diff --git a/HDL-ON_Android/Assets/Phone/.DS_Store b/HDL-ON_Android/Assets/Phone/.DS_Store new file mode 100644 index 0000000..48a1486 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/.DS_Store Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png new file mode 100644 index 0000000..a841cde --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png new file mode 100644 index 0000000..0b5383a --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png new file mode 100644 index 0000000..532cd7b --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png new file mode 100644 index 0000000..3703294 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png new file mode 100644 index 0000000..23a07fb --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png new file mode 100644 index 0000000..8556efe --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png new file mode 100644 index 0000000..5c5be51 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png new file mode 100644 index 0000000..7c0712b --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png new file mode 100644 index 0000000..ef32e24 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png new file mode 100644 index 0000000..c9229df --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png new file mode 100644 index 0000000..d3239be --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png new file mode 100644 index 0000000..5e5412c --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png new file mode 100644 index 0000000..0058757 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png new file mode 100644 index 0000000..ed43950 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png new file mode 100644 index 0000000..76bf0d7 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png new file mode 100644 index 0000000..7553f10 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png new file mode 100644 index 0000000..9504757 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png new file mode 100644 index 0000000..b40e615 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png new file mode 100644 index 0000000..ca4fa27 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png new file mode 100644 index 0000000..6135902 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png new file mode 100644 index 0000000..894b3df --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png new file mode 100644 index 0000000..1d697cd --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png new file mode 100644 index 0000000..0054ffe --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png new file mode 100644 index 0000000..10b8022 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png new file mode 100644 index 0000000..d230e80 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png new file mode 100644 index 0000000..0cd1b20 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png new file mode 100644 index 0000000..d907ca3 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png new file mode 100644 index 0000000..dd35a42 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png new file mode 100644 index 0000000..6649024 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png new file mode 100644 index 0000000..052a832 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/Infraredtreasure.png b/HDL-ON_Android/Assets/Phone/PirIcon/Infraredtreasure.png new file mode 100755 index 0000000..8304df6 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/Infraredtreasure.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/STB.png b/HDL-ON_Android/Assets/Phone/PirIcon/STB.png new file mode 100755 index 0000000..3cf8772 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/STB.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/adddevice.png b/HDL-ON_Android/Assets/Phone/PirIcon/adddevice.png new file mode 100755 index 0000000..445d743 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/adddevice.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/addlbuton.png b/HDL-ON_Android/Assets/Phone/PirIcon/addlbuton.png new file mode 100755 index 0000000..568abba --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/addlbuton.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/air.png b/HDL-ON_Android/Assets/Phone/PirIcon/air.png new file mode 100755 index 0000000..87bc5af --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/air.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/custom.png b/HDL-ON_Android/Assets/Phone/PirIcon/custom.png new file mode 100755 index 0000000..80001e0 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/custom.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/del.png b/HDL-ON_Android/Assets/Phone/PirIcon/del.png new file mode 100755 index 0000000..6a93cad --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/del.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/delbuton.png b/HDL-ON_Android/Assets/Phone/PirIcon/delbuton.png new file mode 100755 index 0000000..2421cd5 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/delbuton.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/dropdown.png b/HDL-ON_Android/Assets/Phone/PirIcon/dropdown.png new file mode 100755 index 0000000..ad0f3b1 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/dropdown.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/dvd.png b/HDL-ON_Android/Assets/Phone/PirIcon/dvd.png new file mode 100755 index 0000000..fea8fa9 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/dvd.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/failed.png b/HDL-ON_Android/Assets/Phone/PirIcon/failed.png new file mode 100755 index 0000000..76dcfbe --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/failed.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/fan.png b/HDL-ON_Android/Assets/Phone/PirIcon/fan.png new file mode 100755 index 0000000..a1d4ed6 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/fan.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/icon1.png b/HDL-ON_Android/Assets/Phone/PirIcon/icon1.png new file mode 100755 index 0000000..2430b09 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/icon1.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/icon2.png b/HDL-ON_Android/Assets/Phone/PirIcon/icon2.png new file mode 100755 index 0000000..a68738c --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/icon2.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/next.png b/HDL-ON_Android/Assets/Phone/PirIcon/next.png new file mode 100755 index 0000000..df1fd5e --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/next.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/offline.png b/HDL-ON_Android/Assets/Phone/PirIcon/offline.png new file mode 100755 index 0000000..e93d6e2 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/offline.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/online.png b/HDL-ON_Android/Assets/Phone/PirIcon/online.png new file mode 100755 index 0000000..1df20e6 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/online.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/priequipment.png b/HDL-ON_Android/Assets/Phone/PirIcon/priequipment.png new file mode 100755 index 0000000..b4dd756 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/priequipment.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/projector.png b/HDL-ON_Android/Assets/Phone/PirIcon/projector.png new file mode 100755 index 0000000..74ae608 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/projector.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/search.png b/HDL-ON_Android/Assets/Phone/PirIcon/search.png new file mode 100755 index 0000000..505b270 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/search.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/succeed.png b/HDL-ON_Android/Assets/Phone/PirIcon/succeed.png new file mode 100755 index 0000000..61c36c2 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/succeed.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/PirIcon/tv.png b/HDL-ON_Android/Assets/Phone/PirIcon/tv.png new file mode 100755 index 0000000..c4228d3 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/PirIcon/tv.png Binary files differ diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj index d7b61e5..d35a52a 100644 --- a/HDL-ON_Android/HDL-ON_Android.csproj +++ b/HDL-ON_Android/HDL-ON_Android.csproj @@ -205,6 +205,8 @@ <Folder Include="Other\" /> <Folder Include="Other\JPush\" /> <Folder Include="Assets\Phone\FunctionIcon\Electrical\WaterValve\" /> + <Folder Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\" /> + <Folder Include="Assets\Phone\PirIcon\" /> </ItemGroup> <ItemGroup> <PackageReference Include="Xamarin.Android.Support.Design" Version="28.0.0.3" /> @@ -753,6 +755,58 @@ <AndroidAsset Include="Assets\Phone\FunctionIcon\ArmSensor\ArmSensorDoorIcon.png" /> <AndroidAsset Include="Assets\Phone\FunctionIcon\ArmSensor\ArmSensorPirStateBgIconOn.png" /> <AndroidAsset Include="Assets\Phone\FunctionIcon\ArmSensor\ArmSensorWaterImmersionStateBgIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerAnionIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerAnionIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerBgIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerBgIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerBlueIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDisinfectIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDisinfectIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon1.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon1On.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon2.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon2On.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerGrayIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerHotDryIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerHotDryIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerLightIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerLightIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerStopIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerStopIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerTimeIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerTimeIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon1.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon1On.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon2.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon2On.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIconOn.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerWindDryIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerWindDryIconOn.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\air.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\custom.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\dvd.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\fan.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\Infraredtreasure.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\projector.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\search.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\tv.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\stb.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\offline.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\online.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\priequipment.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\addlbuton.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\del.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\delbuton.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\dropdown.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\adddevice.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\next.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\failed.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\icon1.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\icon2.png" /> + <AndroidAsset Include="Assets\Phone\PirIcon\succeed.png" /> </ItemGroup> <ItemGroup> <AndroidNativeLibrary Include="libs\armeabi-v7a\libelianjni.so" /> diff --git a/HDL-ON_Android/Properties/AndroidManifest.xml b/HDL-ON_Android/Properties/AndroidManifest.xml index 43c8919..e4ba9f9 100644 --- a/HDL-ON_Android/Properties/AndroidManifest.xml +++ b/HDL-ON_Android/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@ 锘�<?xml version="1.0" encoding="utf-8"?> -<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202102231" android:versionName="1.1.202102231" package="com.hdl.onpro"> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202102252" android:versionName="1.1.202102252" package="com.hdl.onpro"> <uses-sdk android:minSdkVersion="26" android:targetSdkVersion="26" /> <!-- 瀹氫綅鏉冮檺--> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> diff --git a/HDL-ON_Android/libs/.DS_Store b/HDL-ON_Android/libs/.DS_Store new file mode 100644 index 0000000..ae45fc3 --- /dev/null +++ b/HDL-ON_Android/libs/.DS_Store Binary files differ diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj index 248888f..defd46e 100644 --- a/HDL-ON_iOS/HDL-ON_iOS.csproj +++ b/HDL-ON_iOS/HDL-ON_iOS.csproj @@ -47,14 +47,14 @@ <ErrorReport>prompt</ErrorReport> <WarningLevel>4</WarningLevel> <MtouchArch>ARM64</MtouchArch> - <CodesignKey>iPhone Developer</CodesignKey> + <CodesignKey>Apple Development: xuebiao huang (4P32GXQWWK)</CodesignKey> <MtouchDebug>true</MtouchDebug> <MtouchI18n>cjk</MtouchI18n> <MtouchLink>SdkOnly</MtouchLink> <MtouchExtraArgs>-gcc_flags="-dead_strip -ObjC"</MtouchExtraArgs> <MtouchEnableSGenConc>false</MtouchEnableSGenConc> <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> - <CodesignProvision>ComHdlOnProDevelopment20210116-2</CodesignProvision> + <CodesignProvision>ComHdlOnProDevelopment20210225-1</CodesignProvision> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> <DebugType>none</DebugType> @@ -443,6 +443,7 @@ <Folder Include="Resources\zh-Hans.lproj\" /> <Folder Include="Resources\Phone\FunctionIcon\Electrical\WaterValve\" /> <Folder Include="Resources\Phone\FunctionIcon\ArmSensor\" /> + <Folder Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\" /> </ItemGroup> <ItemGroup> <InterfaceDefinition Include="LaunchScreen.storyboard" /> @@ -1007,6 +1008,55 @@ <BundleResource Include="Resources\Phone\FunctionIcon\ArmSensor\ArmSensorWaterImmersionStateBgIcon.png" /> <BundleResource Include="Resources\Phone\FunctionIcon\ArmSensor\ArmSensorWaterImmersionStateBgIconOn.png" /> <BundleResource Include="Resources\Phone\FunctionIcon\ArmSensor\PowerLowIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerAnionIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerAnionIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerBgIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerBgIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDisinfectIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDisinfectIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerHotDryIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerHotDryIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerLightIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerLightIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerStopIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerStopIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerTimeIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerTimeIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIconOn.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerWindDryIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerWindDryIconOn.png" /> + <BundleResource Include="Resources\Phone\LogicIcon\changesinoutdoor.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerBlueIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerGrayIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon1.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon1On.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon2.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerDownIcon2On.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon1.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon1On.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon2.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\ClothesHanger\ClothesHangerUpIcon2On.png" /> + <BundleResource Include="Resources\Phone\PirIcon\fan.png" /> + <BundleResource Include="Resources\Phone\PirIcon\dvd.png" /> + <BundleResource Include="Resources\Phone\PirIcon\stb.png" /> + <BundleResource Include="Resources\Phone\PirIcon\tv.png" /> + <BundleResource Include="Resources\Phone\PirIcon\projector.png" /> + <BundleResource Include="Resources\Phone\PirIcon\air.png" /> + <BundleResource Include="Resources\Phone\PirIcon\custom.png" /> + <BundleResource Include="Resources\Phone\PirIcon\priequipment.png" /> + <BundleResource Include="Resources\Phone\PirIcon\offline.png" /> + <BundleResource Include="Resources\Phone\PirIcon\search.png" /> + <BundleResource Include="Resources\Phone\PirIcon\del.png" /> + <BundleResource Include="Resources\Phone\PirIcon\dropdown.png" /> + <BundleResource Include="Resources\Phone\PirIcon\addlbuton.png" /> + <BundleResource Include="Resources\Phone\PirIcon\delbuton.png" /> + <BundleResource Include="Resources\Phone\PirIcon\Infraredtreasure.png" /> + <BundleResource Include="Resources\Phone\PirIcon\online.png" /> + <BundleResource Include="Resources\Phone\PirIcon\adddevice.png" /> + <BundleResource Include="Resources\Phone\PirIcon\next.png" /> </ItemGroup> <ItemGroup> <ITunesArtwork Include="iTunesArtwork" /> diff --git a/HDL-ON_iOS/Info.plist b/HDL-ON_iOS/Info.plist index a59d3e6..4e55362 100644 --- a/HDL-ON_iOS/Info.plist +++ b/HDL-ON_iOS/Info.plist @@ -102,9 +102,9 @@ <key>UIStatusBarStyle</key> <string>UIStatusBarStyleLightContent</string> <key>CFBundleShortVersionString</key> - <string>1.1.202102231</string> + <string>1.1.202102242</string> <key>CFBundleVersion</key> - <string>202102231</string> + <string>202102242</string> <key>NSLocationWhenInUseUsageDescription</key> <string>Use geographic location to provide services such as weather</string> <key>NSAppleMusicUsageDescription</key> diff --git a/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard b/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard index bf1eb84..284eeed 100644 --- a/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard +++ b/HDL-ON_iOS/Resources/EZ/Base.lproj/AddDevice.storyboard @@ -141,6 +141,7 @@ <constraints> <constraint firstAttribute="height" constant="40" id="vLh-9U-8RO"/> </constraints> + <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits" keyboardType="alphabet"/> <connections> @@ -165,6 +166,7 @@ <constraints> <constraint firstAttribute="height" constant="40" id="DjM-dg-5en"/> </constraints> + <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits" keyboardType="alphabet"/> <connections> @@ -450,6 +452,7 @@ <constraints> <constraint firstAttribute="height" constant="34" id="FPO-BB-N1L"/> </constraints> + <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits" secureTextEntry="YES"/> </textField> @@ -912,7 +915,7 @@ <inferredMetricsTieBreakers> <segue reference="9TP-S2-hhI"/> <segue reference="MFl-yy-ZsP"/> - <segue reference="VYk-37-nb6"/> + <segue reference="ikM-Zn-H8f"/> </inferredMetricsTieBreakers> <resources> <image name="addDevice_success" width="320" height="185"/> diff --git a/HDL-ON_iOS/Resources/EZ/Base.lproj/EZMain.storyboard b/HDL-ON_iOS/Resources/EZ/Base.lproj/EZMain.storyboard index 73d04bc..0db5c3a 100644 --- a/HDL-ON_iOS/Resources/EZ/Base.lproj/EZMain.storyboard +++ b/HDL-ON_iOS/Resources/EZ/Base.lproj/EZMain.storyboard @@ -2025,10 +2025,11 @@ <subviews> <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="璇疯緭鍏ヨ澶囧悕绉�" textAlignment="natural" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="r1W-d8-Rg7"> <rect key="frame" x="0.0" y="94" width="375" height="40"/> - <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <constraints> <constraint firstAttribute="height" constant="40" id="NLX-OK-XZ7"/> </constraints> + <color key="textColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> <fontDescription key="fontDescription" type="system" pointSize="14"/> <textInputTraits key="textInputTraits"/> </textField> @@ -2471,7 +2472,7 @@ <inferredMetricsTieBreakers> <segue reference="Qls-Y0-o2u"/> <segue reference="X3Q-o5-p8V"/> - <segue reference="q2I-Q5-CUY"/> + <segue reference="9Tu-UR-Cms"/> <segue reference="vdt-wN-aOY"/> </inferredMetricsTieBreakers> <color key="tintColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini index 8cf1a58..b39aa8e 100644 --- a/HDL-ON_iOS/Resources/Language.ini +++ b/HDL-ON_iOS/Resources/Language.ini @@ -402,6 +402,11 @@ 417=Water Leakage 418=In Alarm 419=Normal +420=Hot Dry +421=Air Dry +422=Disinfect +423=Lighting + 5000=Music 5001=Group @@ -1068,6 +1073,10 @@ 417=婕忔按 418=鎶ヨ 419=姝e父 +420=鐑樺共 +421=椋庡共 +422=娑堟瘨 +423=鐓ф槑 1000=瀹ゅ唴婀垮害 @@ -1171,6 +1180,24 @@ 5047=浣犳墜鏈烘殏鏈畨瑁�"QQ闊充箰"{\r\n}璇峰墠寰�鎵嬫満鍟嗗満瀹夎 +6000=姝e父 +6001=璁惧鐘舵�� +6002=涓� +6003=褰撳墠绾㈠閬ユ帶璁惧 +6004=宸叉坊鍔犻仴鎺у櫒 +6005=绌鸿皟 +6006=鐢佃 +6007=椋庢墖 +6008=鏈洪《鐩� +6009=DVD/EVD/VCD +6010=鎶曞奖浠� +6011=鑷畾涔� +6012=绾㈠閬ユ帶 +6013=璁惧绠$悊 +6014=娣诲姞閬ユ帶鍣� + + + 7000=鏂板缓鑷姩鍖� 7001=缂栬緫鑷姩鍖� 7002=濡傛灉 diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/.DS_Store b/HDL-ON_iOS/Resources/Phone/FunctionIcon/.DS_Store new file mode 100644 index 0000000..64aa0f2 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/.DS_Store Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/.DS_Store b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/.DS_Store new file mode 100644 index 0000000..c84c9d0 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/.DS_Store Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png new file mode 100644 index 0000000..a841cde --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png new file mode 100644 index 0000000..0b5383a --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerAnionIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png new file mode 100644 index 0000000..532cd7b --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png new file mode 100644 index 0000000..3703294 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png new file mode 100644 index 0000000..23a07fb --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png new file mode 100644 index 0000000..8556efe --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png new file mode 100644 index 0000000..5c5be51 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png new file mode 100644 index 0000000..7c0712b --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png new file mode 100644 index 0000000..ef32e24 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png new file mode 100644 index 0000000..c9229df --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png new file mode 100644 index 0000000..d3239be --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png new file mode 100644 index 0000000..5e5412c --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png new file mode 100644 index 0000000..0058757 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png new file mode 100644 index 0000000..ed43950 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png new file mode 100644 index 0000000..76bf0d7 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png new file mode 100644 index 0000000..7553f10 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png new file mode 100644 index 0000000..9504757 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png new file mode 100644 index 0000000..b40e615 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png new file mode 100644 index 0000000..ca4fa27 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png new file mode 100644 index 0000000..6135902 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png new file mode 100644 index 0000000..894b3df --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png new file mode 100644 index 0000000..1d697cd --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerTimeIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png new file mode 100644 index 0000000..0054ffe --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png new file mode 100644 index 0000000..10b8022 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png new file mode 100644 index 0000000..d230e80 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png new file mode 100644 index 0000000..0cd1b20 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png new file mode 100644 index 0000000..d907ca3 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png new file mode 100644 index 0000000..dd35a42 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png new file mode 100644 index 0000000..6649024 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png new file mode 100644 index 0000000..052a832 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/LogicIcon/changesinoutdoor.png b/HDL-ON_iOS/Resources/Phone/LogicIcon/changesinoutdoor.png new file mode 100644 index 0000000..32432d0 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/LogicIcon/changesinoutdoor.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/Infraredtreasure.png b/HDL-ON_iOS/Resources/Phone/PirIcon/Infraredtreasure.png new file mode 100755 index 0000000..8304df6 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/Infraredtreasure.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/adddevice.png b/HDL-ON_iOS/Resources/Phone/PirIcon/adddevice.png new file mode 100755 index 0000000..445d743 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/adddevice.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/addlbuton.png b/HDL-ON_iOS/Resources/Phone/PirIcon/addlbuton.png new file mode 100755 index 0000000..568abba --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/addlbuton.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/air.png b/HDL-ON_iOS/Resources/Phone/PirIcon/air.png new file mode 100755 index 0000000..87bc5af --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/air.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/custom.png b/HDL-ON_iOS/Resources/Phone/PirIcon/custom.png new file mode 100755 index 0000000..80001e0 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/custom.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/del.png b/HDL-ON_iOS/Resources/Phone/PirIcon/del.png new file mode 100755 index 0000000..6a93cad --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/del.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/delbuton.png b/HDL-ON_iOS/Resources/Phone/PirIcon/delbuton.png new file mode 100755 index 0000000..2421cd5 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/delbuton.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/dropdown.png b/HDL-ON_iOS/Resources/Phone/PirIcon/dropdown.png new file mode 100755 index 0000000..ad0f3b1 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/dropdown.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/dvd.png b/HDL-ON_iOS/Resources/Phone/PirIcon/dvd.png new file mode 100755 index 0000000..fea8fa9 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/dvd.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/fan.png b/HDL-ON_iOS/Resources/Phone/PirIcon/fan.png new file mode 100755 index 0000000..a1d4ed6 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/fan.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/next.png b/HDL-ON_iOS/Resources/Phone/PirIcon/next.png new file mode 100755 index 0000000..df1fd5e --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/next.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/offline.png b/HDL-ON_iOS/Resources/Phone/PirIcon/offline.png new file mode 100755 index 0000000..e93d6e2 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/offline.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/online.png b/HDL-ON_iOS/Resources/Phone/PirIcon/online.png new file mode 100755 index 0000000..1df20e6 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/online.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/priequipment.png b/HDL-ON_iOS/Resources/Phone/PirIcon/priequipment.png new file mode 100755 index 0000000..b4dd756 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/priequipment.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/projector.png b/HDL-ON_iOS/Resources/Phone/PirIcon/projector.png new file mode 100755 index 0000000..74ae608 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/projector.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/search.png b/HDL-ON_iOS/Resources/Phone/PirIcon/search.png new file mode 100755 index 0000000..505b270 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/search.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/stb.png b/HDL-ON_iOS/Resources/Phone/PirIcon/stb.png new file mode 100755 index 0000000..3cf8772 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/stb.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/PirIcon/tv.png b/HDL-ON_iOS/Resources/Phone/PirIcon/tv.png new file mode 100755 index 0000000..c4228d3 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/PirIcon/tv.png Binary files differ diff --git a/HDL-ON_iOS/Resources/zh-Hans.lproj/Localizable.strings b/HDL-ON_iOS/Resources/zh-Hans.lproj/Localizable.strings index c2c7209..941dd22 100644 --- a/HDL-ON_iOS/Resources/zh-Hans.lproj/Localizable.strings +++ b/HDL-ON_iOS/Resources/zh-Hans.lproj/Localizable.strings @@ -23,7 +23,7 @@ "ad_restart_tip"="闀挎寜璁惧涓婄殑reset閿�10绉掑悗鏉惧紑锛屽苟绛夊緟澶х害30绉掔洿鍒拌澶囧惎鍔ㄥ畬鎴�"; "ad_restart_done"="鎴戝凡閲嶅惎濂�"; "ad_get_device_info_msg"="姝e湪鏌ヨ璁惧淇℃伅锛岃绋嶅悗..."; -"ad_already_added"="鎮ㄥ凡娣诲姞杩囨璁惧"; +"ad_already_added"="姝よ澶囧凡琚坊鍔�"; "ad_added_by_others"="姝よ澶囧凡琚埆浜烘坊鍔�"; "get_info_fail"="鏌ヨ澶辫触锛岀綉缁滀笉缁欏姏"; "ad_input_manual"="鎵嬪姩杈撳叆"; diff --git a/HDL_ON/.DS_Store b/HDL_ON/.DS_Store new file mode 100644 index 0000000..369c06c --- /dev/null +++ b/HDL_ON/.DS_Store Binary files differ diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs index 605a3b4..3141f5d 100644 --- a/HDL_ON/Common/ApiUtlis.cs +++ b/HDL_ON/Common/ApiUtlis.cs @@ -159,6 +159,7 @@ { deviceList = new DevcieApiPack(); } + string delFile = ""; if (FunctionList.List.GetDeviceFunctionList().Count > 0) { @@ -171,34 +172,43 @@ continue; } var newFunction = deviceList.list.Find((obj) => obj.deviceId == localFunction.deviceId); - if (newFunction == null)//濡傛灉浜戠鏈�鏂版暟鎹病鏈夎鏉℃暟鎹紝鍒欐湰鍦伴渶瑕佸垹鎺夎鏁版嵁璁板綍 + //if (newFunction == null)//濡傛灉浜戠鏈�鏂版暟鎹病鏈夎鏉℃暟鎹紝鍒欐湰鍦伴渶瑕佸垹鎺夎鏁版嵁璁板綍 + //{ + // FunctionList.List.DeleteFunction(localFunction); + //} + //else + //{ + // MainPage.Log($"deviceType:{localFunction.spk} local:{localFunction.modifyTime} server:{newFunction.modifyTime}"); + // i++; + // //if (localFunction.modifyTime != newFunction.modifyTime) + // //{ + // // //鍙紭鍖� + // // localFunction.name = newFunction.name; + // // localFunction.collect = newFunction.collect; + // // localFunction.modifyTime = newFunction.modifyTime; + // // localFunction.roomIds = newFunction.roomIds; + // // localFunction.bus = newFunction.bus; + // // localFunction.SaveFunctionFile(); + // //} + // localFunction = newFunction; + // localFunction.SaveFunctionFile(); + // deviceList.list.Remove(newFunction);//鎿嶄綔瀹岀殑鏁版嵁娓呯悊鎺夛紝鍓╀笅鐨勫氨鏄柊澧炵殑鍔熻兘 + //} + + if (delFile == localFunction.savePath) { - FunctionList.List.DeleteFunction(localFunction); - } - else - { - MainPage.Log($"deviceType:{localFunction.spk} local:{localFunction.modifyTime} server:{newFunction.modifyTime}"); i++; - //if (localFunction.modifyTime != newFunction.modifyTime) - //{ - // //鍙紭鍖� - // localFunction.name = newFunction.name; - // localFunction.collect = newFunction.collect; - // localFunction.modifyTime = newFunction.modifyTime; - // localFunction.roomIds = newFunction.roomIds; - // localFunction.bus = newFunction.bus; - // localFunction.SaveFunctionFile(); - //} - localFunction = newFunction; - localFunction.SaveFunctionFile(); - deviceList.list.Remove(newFunction);//鎿嶄綔瀹岀殑鏁版嵁娓呯悊鎺夛紝鍓╀笅鐨勫氨鏄柊澧炵殑鍔熻兘 + continue; } + delFile = localFunction.savePath; + FunctionList.List.DeleteFunction(localFunction); + } } //澶勭悊鍓╀笅鐨勬柊澧炲姛鑳� - foreach (var newFunction in deviceList.list) + foreach (var newFunction in deviceList.list) { newFunction.SaveFunctionFile(); FunctionList.List.IniFunctionList(newFunction.savePath); diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs index 0480e9f..a19d240 100644 --- a/HDL_ON/Common/HDLCommon.cs +++ b/HDL_ON/Common/HDLCommon.cs @@ -278,7 +278,7 @@ ShowAlarmPushMessage(jpushMessageInfo); //new Alert(jpushMessageInfo.Title, jpushMessageInfo.Content, Language.StringByID(StringId.Close)).Show(); } - + }); return; } @@ -310,6 +310,7 @@ case "13375012446": case "13602944661": case "18778381374": + case "18316672920": return; } @@ -383,8 +384,9 @@ { //Dialog alarmPushConfirmDialog = null; - Action backAction = () => { - + Action backAction = () => + { + }; var skipPage = new MessageCenterPage(); MainPage.BasePageView.AddChidren(skipPage); @@ -479,7 +481,7 @@ { MainPage.InternetStatus = 1; Control.Ins.SearchLoaclGateway(); - + } else if (internetStatus == 2)//WiFi缃戠粶 { @@ -488,5 +490,87 @@ } } #endregion + + #region 璺宠浆鎵撳紑钀ょ煶浜戞柟娉� + + /// <summary> + /// 鑾峰彇瀛愯处鍙穞oken骞惰烦杞澶囧垪琛ㄩ〉闈� + /// </summary> + /// <param name="bodyView"></param> + public void Go2EZvizMonitor(FrameLayout bodyView) + { + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + new Thread(() => + { + try + { + //鍏堣幏鍙栬悿鐭充簯瀛愯处鍙穞oken + var result = new HttpServerRequest().EZGetChildToken(); + if (result.Code == StateCode.SUCCESS) + { + var ezChildAccessToken = Newtonsoft.Json.JsonConvert.DeserializeObject<EZChildAccessToken>(result.Data.ToString()); + Application.RunOnMainThread(() => + { + if (!string.IsNullOrEmpty(ezChildAccessToken.accessToken)) + { +#if __IOS__ + //iOS + + //1.璁剧疆鎵�闇�娌充笢鐨凙ccessToken鍜孯efreshToken銆佸煙鍚嶅湴鍧� + EZSDK.IOS.EZSDK.SetHDlAccessToken(UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken); + EZSDK.IOS.EZSDK.SetRequestHttpsHost(OnAppConfig.Instance.RequestHttpsHost); + //2.璁剧疆钀ょ煶瀛愯处鍙风殑AccessToken鍒癝DK + EZSDK.IOS.EZSDK.SetEZAccessToken(ezChildAccessToken.accessToken); + //3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈� + EZSDK.IOS.EZSDK.Go2EZvizMonitor(); + +#else + //Android + //1.璁剧疆鎵�闇�娌充笢鐨則oken銆佸煙鍚嶅湴鍧� + //2.璁剧疆钀ょ煶瀛愯处鍙风殑token + //3.鎵撳紑鎽勫儚澶磋澶囧垪琛ㄩ〉闈� + ((BaseActivity)Shared.Application.Activity).SetCamera(b => + { + if (b) + { + Android.Content.Intent intent = new Android.Content.Intent(); + intent.SetComponent(new Android.Content.ComponentName(Shared.Application.Activity, "com.videogo.MainActivity")); + Shared.Application.Activity.StartActivity(intent); + } + }); +#endif + + + } + + }); + } + else + { + IMessageCommon.Current.ShowErrorInfoAlter(result.Code); + } + } + catch (Exception ex) + { + } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); + } + + #endregion } } diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs index 13504f2..b756090 100644 --- a/HDL_ON/Common/R.cs +++ b/HDL_ON/Common/R.cs @@ -4,6 +4,10 @@ { public static class StringId { + public const int Lightint = 433; + public const int Disinfect = 422; + public const int WindDry = 421; + public const int HotDry = 420; public const int SensorNormalState = 419; public const int InAlarm = 418; public const int WaterLeakage = 417; @@ -665,6 +669,69 @@ public const int qqMsuicTip = 5047; + public const int zhengchang = 6000; + public const int shebeizhuangtai = 6001; + public const int ge = 6002; + public const int dangqianhongwaishebei = 6003; + public const int yitianjiayaokongqi = 6004; + public const int kongtiao = 6005; + public const int dianshi = 6006; + public const int fengshan = 6007; + public const int jidinghe = 6008; + public const int dvd = 6009; + public const int touyingyi = 6010; + public const int zidingyi = 6011; + public const int hongwaiyaokong = 6012; + public const int shebeigaunli = 6013; + public const int tianjiayaokongqi = 6014; + public const int zaixianhwb= 6015; + public const int lixian = 6016; + public const int banbenhao = 6017; + public const int shuruyaokongqimingcheng = 6018; + public const int fengleichazhao = 6019; + public const int tuijiananjian = 6020; + public const int anjianmingcheng = 6021; + public const int xiayibu= 6022; + public const int dianyuan = 6023; + public const int yinliangjia = 6024; + public const int yinliangjian = 6025; + public const int pindaojia = 6026; + public const int pindaojian = 6027; + public const int shang = 6028; + public const int xia = 6029; + public const int zuo = 6030; + public const int you = 6031; + public const int jingyin = 6032; + public const int queren = 6034; + public const int bofang = 6035; + public const int tuichu = 6037; + public const int caidan = 6038; + public const int zanting = 6039; + public const int fanhui = 6040; + public const int tingzhi = 6041; + public const int zhuye = 6042; + public const int kuaijin = 6043; + public const int kuaitui = 6044; + public const int dingshi = 6045; + public const int fuzhiyaokonggongnneg = 6046; + public const int duizhunanxiaanniu = 6047; + public const int zhinengyaokongqi = 6048; + public const int tianjiaanniu = 6049; + public const int paixu = 6050; + public const int wancheng = 6051; + public const int tianjiachenggong = 6052; + public const int kedaofenlei = 6053; + public const int suoshufenlei = 6054; + public const int yaokongqimingcheng = 6055; + public const int suoshuquyu = 6056; + public const int jixutianjia = 6057; + public const int dianqi = 6058; + public const int tianjiashibai = 6059; + public const int chongshii = 6060; + + + + public const int newAutomation = 7000; public const int editAutomation = 7001; public const int ifCondition = 7002; diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs index e8827a2..58821fd 100644 --- a/HDL_ON/DAL/DriverLayer/Control.cs +++ b/HDL_ON/DAL/DriverLayer/Control.cs @@ -141,7 +141,7 @@ { //淇敼涓婚〉杩炴帴鐘舵�� HomePage.LoadEvent_CheckLinkStatus(); - MainPage.Log($"缃戝叧鍦ㄧ嚎锛屽埛鏂拌澶囩姸鎬�"); + MainPage.Log($"缃戝叧灞�鍩熺綉鍦ㄧ嚎锛屽埛鏂拌澶囩姸鎬�"); new System.Threading.Thread(() => { System.Threading.Thread.Sleep(1000); @@ -195,7 +195,7 @@ } //淇敼涓婚〉杩炴帴鐘舵�� HomePage.LoadEvent_CheckLinkStatus(); - MainPage.Log($"缃戝叧鍦ㄧ嚎锛屽埛鏂拌澶囩姸鎬�"); + MainPage.Log($"缃戝叧浜戠鍦ㄧ嚎锛屽埛鏂拌澶囩姸鎬�"); new System.Threading.Thread(() => { System.Threading.Thread.Sleep(1000); @@ -682,7 +682,7 @@ } } - MainPage.Log($"time 1 :{receiveObj.Topic}"); + MainPage.Log($"灞�鍩熺綉淇℃伅: {receiveObj.Topic}"); //楠岃瘉鏈夋晥鏁版嵁闀垮害 @@ -749,14 +749,6 @@ var localFunction = allLocalFuntion.Find((obj) => obj.sid == updateTemp.sid); if (localFunction != null) { - //var updateInfoString = $"鏇存柊璁惧:{localFunction.name}"; - //foreach (var attr in updateTemp.status) - //{ - // updateInfoString += $" key:{attr.key};value:{attr.value}"; - //} - //MainPage.Log(updateInfoString); - - //鏇存柊鐣岄潰鐘舵�� Function localObj = null; switch (localFunction.spk) @@ -1029,6 +1021,11 @@ case SPK.ElectricTuyaFan: case SPK.ElectricTuyaWeepRobot: case SPK.ElectricTuyaWaterValve: + case SPK.SensorPir: + case SPK.SensorDoorWindow: + case SPK.SensorSmoke: + case SPK.SensorWater: + case SPK.ClothesHanger: //璁惧鐘舵�佹帹閫� var myDevice = Stan.HdlDeviceStatuPushLogic.Current.UpdateDeviceStatu(updateTemp.sid,updateTemp.status); if (myDevice != null) diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs index 9524d02..9cded85 100644 --- a/HDL_ON/DAL/Mqtt/MqttClient.cs +++ b/HDL_ON/DAL/Mqtt/MqttClient.cs @@ -323,6 +323,7 @@ RemoteMqttClient.UseConnectedHandler(async (e) => { IfNeedReadAllDeviceStatus = true; + Control.Ins.GatewayOnline_Cloud = true; Utlis.WriteLine($"============>Mqtt杩滅▼杩炴帴鎴愬姛"); SendPushSignOut(); }); @@ -531,6 +532,23 @@ static void ReceiveNotifySqueezeAsync(string mMes) { if (mMes == PushSignStr ) return;//鏄嚜宸辩殑鐧诲綍鎺ㄩ�佷笉澶勭悊//鎴栬�呭綋鍓嶄笉鏄繙绋嬮摼鎺ョ姸鎬� + //娴嬭瘯璐﹀彿锛屼笉鎸や笅绾� + switch (UserInfo.Current.AccountString) + { + case "13415629083": + case "18316120654": + case "15622703419": + case "18824864143": + case "464027401@qq.com": + case "2791308028@qq.com": + case "13697499568": + case "18666455392": + case "13375012446": + case "13602944661": + case "18778381374": + case "18316672920": + return; + } if (!UserInfo.Current.IsLogin) { diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs index 60aacf0..9776765 100644 --- a/HDL_ON/DAL/Server/HttpServerRequest.cs +++ b/HDL_ON/DAL/Server/HttpServerRequest.cs @@ -2146,5 +2146,18 @@ #endregion + #region 钀ょ煶浜慡DK鐩稿叧鎺ュ彛 + /// <summary> + /// 娌充笢鑾峰彇钀ょ煶浜戝瓙璐﹀彿token鐨勬帴鍙� + /// </summary> + public ResponsePackNew EZGetChildToken() + { + Dictionary<string, object> d = new Dictionary<string, object>(); + //d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.RegionID); + var requestJson = HttpUtil.GetSignRequestJson(d); + return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_EZ_GetChildToken, requestJson); + } + #endregion + } } \ No newline at end of file diff --git a/HDL_ON/DAL/Server/NewAPI.cs b/HDL_ON/DAL/Server/NewAPI.cs index 58ab186..3ff5853 100644 --- a/HDL_ON/DAL/Server/NewAPI.cs +++ b/HDL_ON/DAL/Server/NewAPI.cs @@ -469,6 +469,44 @@ /// </summary> public const string Api_Post_GetBrandList = "/home-wisdom/app/product/brand/list"; + #region 鈻� -- 绾㈠瀹濇帴鍙__________________________ + /// <summary> + /// 绾㈠瀹濊澶囧畾浣� + /// </summary> + public const string API_POST_Ir_DeviceFind = "/home-wisdom/app/device/ir/deviceFind"; + /// <summary> + /// 绾㈠瀹濅笅鐨勯仴鎺у櫒鍒楄〃 + /// </summary> + public const string API_POST_Ir_List = ":/home-wisdom/app/device/ir/list"; + /// <summary> + /// 閬ユ帶鍣ㄧ孩澶栫爜瀛︿範 + /// </summary> + public const string API_POST_Ir_CodeStudy = "/home-wisdom/app/device/ir/codeStudy"; + /// <summary> + ///绾㈠瀹濈孩澶栫爜搴撹瘯鐮� + /// </summary> + public const string API_POST_Ir_CodeTest = "/home-wisdom/app/device/ir/codeTest"; + /// <summary> + /// 绾㈠瀹濋仴鎺у櫒娣诲姞 + /// </summary> + public const string API_POST_Ir_Add = "/home-wisdom/app/device/ir/add"; + /// <summary> + /// 閬ユ帶鍣ㄨ嚜瀛︽寜閿垹闄� + /// </summary> + public const string API_POST_Ir_CodeRemove = "/home-wisdom/app/device/ir/codeRemove"; + + #endregion + + #endregion + + + #region 鈻� -- 钀ょ煶SDK鐩稿叧鎺ュ彛___________________________ + /// <summary> + /// 娌充笢鑾峰彇钀ょ煶浜戝瓙璐﹀彿token鐨勬帴鍙� + /// </summary> + public const string API_POST_EZ_GetChildToken = "/home-wisdom/platform/childToken"; + + #endregion #endregion diff --git a/HDL_ON/DAL/Server/NewApiRes.cs b/HDL_ON/DAL/Server/NewApiRes.cs index 91d22eb..e30c1fb 100644 --- a/HDL_ON/DAL/Server/NewApiRes.cs +++ b/HDL_ON/DAL/Server/NewApiRes.cs @@ -1466,6 +1466,23 @@ public string messageType; } + /// <summary> + /// 钀ょ煶浜戝瓙璐﹀彿token + /// </summary> + [System.Serializable] + public class EZChildAccessToken + { + /// <summary> + /// token + /// </summary> + public string accessToken; + /// <summary> + /// 杩囨湡鏃堕棿 + /// </summary> + public string expireTime; + } + + //#region 鏃ф帴鍙� ///// <summary> ///// diff --git a/HDL_ON/Entity/DB_ResidenceData.cs b/HDL_ON/Entity/DB_ResidenceData.cs index 7efc81b..8cbd2a2 100644 --- a/HDL_ON/Entity/DB_ResidenceData.cs +++ b/HDL_ON/Entity/DB_ResidenceData.cs @@ -91,9 +91,9 @@ ShowFunction.Light,ShowFunction.AC,ShowFunction.Curtain, ShowFunction.FloorHeating,ShowFunction.Music, ShowFunction.Electric,ShowFunction.Environmental, - //ShowFunction.EnergyMonitoring, - //ShowFunction.FreshAir,ShowFunction.DoorLock, - //ShowFunction.Panel,ShowFunction.SecurityMonitoring, + ShowFunction.EnergyMonitoring, + ShowFunction.FreshAir,ShowFunction.DoorLock, + ShowFunction.Panel,ShowFunction.SecurityMonitoring, ShowFunction.Sensor,ShowFunction.VideoIntercom }); instance.SaveResidenceData(); diff --git a/HDL_ON/Entity/Enumerative/ClothsHangerEnum.cs b/HDL_ON/Entity/Enumerative/ClothsHangerEnum.cs new file mode 100644 index 0000000..64f6198 --- /dev/null +++ b/HDL_ON/Entity/Enumerative/ClothsHangerEnum.cs @@ -0,0 +1,9 @@ +锘縰sing System; +namespace HDL_ON.Entity +{ + public enum ClothsHangerEnum + { + + + } +} diff --git a/HDL_ON/Entity/Function/DeviceFunction.cs b/HDL_ON/Entity/Function/DeviceFunction.cs new file mode 100644 index 0000000..7638ed0 --- /dev/null +++ b/HDL_ON/Entity/Function/DeviceFunction.cs @@ -0,0 +1,15 @@ +锘縰sing System; +namespace HDL_ON.Entity +{ + /// <summary> + /// 璁惧鍔熻兘 + /// </summary> + public class DeviceFunction : Function + { + public DeviceFunction() + { + } + + + } +} diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs index 59a077a..35e790f 100644 --- a/HDL_ON/Entity/Function/Function.cs +++ b/HDL_ON/Entity/Function/Function.cs @@ -23,6 +23,36 @@ public string pageSize = "0"; } + /// <summary> + /// 灞炴�х姸鎬� + /// </summary> + public class AttrState + { + /// <summary> + /// 灞炴�ч敭鍚� + /// </summary> + public string key; + /// <summary> + /// 灞炴�х殑鍊煎垪琛� + /// </summary> + public List<string> value = new List<string>(); + /// <summary> + /// 鏈�澶у�� + /// </summary> + public int max = 100; + /// <summary> + /// 鏈�灏忓�� + /// </summary> + public int min = 0; + /// <summary> + /// 鏁版嵁绫诲瀷 + /// </summary> + public string data_type = ""; + /// <summary> + /// 褰撳墠鍊� + /// </summary> + public string curValue = ""; + } /// <summary> /// 鍔熻兘绫昏兘婊¤冻鏁版嵁浣跨敤瑕佹眰锛屽瓙绫诲彧鏄负浜嗘柟渚夸娇鐢ㄥ睘鎬� @@ -32,6 +62,68 @@ public Function() { } + + #region 浼樺寲鍖哄煙 2021-02-25 + /// <summary> + /// 鑾峰彇灞炴�у垪琛� + /// </summary> + /// <returns></returns> + public List<string> GetAttributes() + { + var attrs = new List<string>(); + + foreach(var attr in attributes) + { + attrs.Add(attr.key); + } + return attrs; + } + /// <summary> + /// 鑾峰彇鍒跺畾灞炴�� + /// </summary> + /// <returns></returns> + public FunctionAttributes GetAttribute(string key) + { + var attr = attributes.Find((a) => a.key == key); + return attr; + } + + /// <summary> + /// 鑾峰彇灞炴�х姸鎬� + /// </summary> + /// <param name="key"></param> + /// <returns></returns> + public string GetAttrState(string key) + { + var attrState = status.Find((s) => s.key == key.ToString()); + if(attrState == null) + { + return ""; + } + return attrState.value; + } + /// <summary> + /// 璁剧疆灞炴�х姸鎬� + /// </summary> + /// <param name="key"></param> + /// <param name="value"></param> + /// <returns>淇敼缁撴灉</returns> + public bool SetAttrState(string key, string value) + { + var attrState = status.Find((s) => s.key == key.ToString()); + if (attrState == null) + { + return false; + } + else + { + attrState.value = value; + } + return true; + } + + #endregion + #region base info /// <summary> @@ -55,7 +147,7 @@ /// 09 瀹夐槻 /// 澶х被鍒� 1bytes 锛堥鐣欙級 /// 灏忕被鍒� 1byte 锛堥鐣欙級 - /// </summary> + /// </summary> 鈥�0001021599F98A04050300010000鈥� public string sid = "0301011234567801012301230123"; /// <summary> /// 澶囨敞 @@ -70,39 +162,6 @@ /// 璁惧spk /// </summary> public string spk = ""; - ///// <summary> - ///// 鍔熻兘绫诲埆 - ///// 濡傦細绌鸿皟绫汇�佺伅鍏夌被銆佺獥甯樼被 - ///// </summary> - //public FunctionCategory Spk_Prefix - //{ - // get - // { - // try - // { - // var _functionCategoryString = sid.Substring(16, 2); - // var _functionCategory = Convert.ToInt32(_functionCategoryString, 16); - // return (FunctionCategory)Enum.ToObject(typeof(FunctionCategory), _functionCategory); - // } - // catch (Exception ex) - // { - // MainPage.Log($"get FunctionCategory error : {ex.Message}"); - // return FunctionCategory.UnKown; - // } - // } - //} - - ///// <summary> - ///// 鍔熻兘绫诲瀷 - ///// </summary> - //public FunctionType spk - //{ - // get - // { - // var _functionTypeString = sid.Substring(16, 4); - // return (FunctionType)Enum.ToObject(typeof(FunctionType), Convert.ToInt32(_functionTypeString, 16)); - // } - //} string spk_Prefix; /// <summary> @@ -122,31 +181,6 @@ return spk_Prefix; } } - string spk_Suffix; - ///// <summary> - ///// spk鍚庣紑 - ///// 灏忕被 - ///// 鍔熻兘绫诲瀷 - ///// </summary> - //public string spk - //{ - // get - // { - // if (string.IsNullOrEmpty(spk_Suffix)) - // { - // try - // { - // spk_Suffix = spk.Split(".")[1]; - // } - // catch - // { - // spk_Suffix = ""; - // } - // } - // return spk_Suffix; - // } - //} - /// <summary> /// A鍗忚鍔熻兘鐨勭壒鎬� /// 濡傦細鏄疉C鍔熻兘锛氱壒鎬э細on_off,mode,fan,temperature @@ -198,12 +232,6 @@ /// 浜戠鏁版嵁淇敼鐨勬渶鍚庢椂闂� /// </summary> public string modifyTime = ""; - /// <summary> - /// 鍒犻櫎鏍囪 - /// 闇�瑕佸垹闄ゆ暟鎹椂锛屾爣璁颁负锛歵rue - /// 鐢变簯绔垹闄ゆ垚鍔熶箣鍚庯紝杩斿洖鏁版嵁鍐嶆竻闄ゆ湰鍦版暟鎹� - /// </summary> - public bool DeleteSign = false; #endregion /// <summary> @@ -441,36 +469,6 @@ }) { IsBackground = true }.Start(); } - /// <summary> - /// 淇濆瓨鍔熻兘鏁版嵁 - /// </summary> - //public void SaveFunctionData(bool upSevser) - //{ - // if (upSevser) - // { - // new System.Threading.Thread(() => - // { - // var pm = new HttpServerRequest(); - // var pack = pm.UpdataDevcieInfo(this); - // if (pack.Code == StateCode.SUCCESS) - // { - // var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this)); - // FileUtlis.Files.WriteFileByBytes(savePath, ssd); - // } - // else - // { - // IMessageCommon.Current.ShowErrorInfoAlter(pack.Code); - // } - // }) - // { IsBackground = true }.Start(); - // } - // else - // { - // var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this)); - // FileUtlis.Files.WriteFileByBytes(savePath, ssd); - // } - //} - /// <summary> /// 杞崲鎴愬満鏅姛鑳藉璞� @@ -666,19 +664,6 @@ /// 褰撳墠鍊� /// </summary> public object curValue = new object(); - ///// <summary> - ///// curValue鐨勭炕璇戝��,鏈�鍧忕殑缁撴灉涔熷彧浼氳繑鍥瀞tring.Empty - ///// </summary> - //public string realValue - //{ - // get - // { - // var myValue = curValue.ToString(); - // //娌欓洉瀹氫箟鐨刼bject绫诲瀷 - // if (myValue.Contains("{") == true) { return string.Empty; } - // return myValue; - // } - //} } /// <summary> /// 鍔熻兘灞炴�ч敭鍚嶅垪琛� @@ -738,6 +723,56 @@ /// 鐘舵��,浼犳劅鍣� /// </summary> public const string Status = "status"; + /// <summary> + /// 鐢甸噺鐘舵�� + /// </summary> + public const string BatteryState = "battery_state"; + /// <summary> + /// 鐑樺共 + /// </summary> + public const string HotDry = "hot_dry"; + /// <summary> + /// 椋庡共 + /// </summary> + public const string WindDry = "wind_dry"; + /// <summary> + /// 娑堟瘨 + /// </summary> + public const string Disinfect = "disinfect"; + /// <summary> + /// 涓婂崌涓嬮檷 + /// </summary> + public const string Position = "position"; + /// <summary> + /// 杩涘害 + /// </summary> + public const string PositionPercent = "position_percent"; + /// <summary> + /// 鐑樺共鏃堕棿 + /// </summary> + public const string HotDryTime = "hot_dry_time"; + /// <summary> + /// 鐑樺共鍓╀綑鏃堕棿 + /// </summary> + public const string HotDryTimeLeft = "hot_dry_time_surplus"; + /// <summary> + /// 椋庡共鏃堕棿 + /// </summary> + public const string WindDryTime = "wind_dry_time"; + /// <summary> + /// 椋庡共鍓╀綑鏃堕棿 + /// </summary> + public const string WindDryTimeLeft = "wind_dry_time_surplus"; + /// <summary> + /// 娑堟瘨鏃堕棿 + /// </summary> + public const string DisinfectTime = "disinfect_time"; + /// <summary> + /// 娑堟瘨鍓╀綑鏃堕棿 + /// </summary> + public const string DisinfectTimeLeft = "disinfect_time_surplus"; + + #region tuya /// <summary> @@ -745,6 +780,8 @@ /// </summary> public const string TuyaWaterTime = "countdown_1"; #endregion + + } /// <summary> /// 璁惧鍔熻兘oid @@ -855,14 +892,6 @@ /// </summary> public const string SensorTemperature = "sensor.temperature"; /// <summary> - /// (绾㈠绉诲姩浼犳劅鍣�) - /// </summary> - public const string SensorPir = "sensor.pir"; - /// <summary> - /// 锛堥棬绐椾紶鎰熷櫒锛� - /// </summary> - public const string SensorDoorWindow = "sensor.doorwindow"; - /// <summary> /// 锛圥M2.5浼犳劅鍣級 /// </summary> public const string SensorPm25 = "sensor.pm25"; @@ -879,6 +908,14 @@ /// </summary> public const string SensorHumidity = "sensor.humidity"; + /// <summary> + /// (绾㈠绉诲姩浼犳劅鍣�) + /// </summary> + public const string SensorPir = "sensor.pir"; + /// <summary> + /// 锛堥棬绐椾紶鎰熷櫒锛� + /// </summary> + public const string SensorDoorWindow = "sensor.doorwindow"; /// <summary> /// 鐑熼浘浼犳劅鍣� /// </summary> @@ -936,6 +973,10 @@ /// 瀹剁數銆佹秱楦︽按闃� /// </summary> public const string ElectricTuyaWaterValve = "electrical.koiGhMKwLf2ZP81g"; + /// <summary> + /// 鍑夐湼 + /// </summary> + public const string ClothesHanger = "electrical.racks"; /// <summary> diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs index e9376a3..0395d89 100644 --- a/HDL_ON/Entity/FunctionList.cs +++ b/HDL_ON/Entity/FunctionList.cs @@ -79,6 +79,10 @@ { waterValveList = new List<Function>(); } + if(clothesHangerList == null) + { + clothesHangerList = new List<Function>(); + } var list = new List<Function>(); list.AddRange(fans); list.AddRange(switchSockets); @@ -86,6 +90,7 @@ list.AddRange(airCleaners); list.AddRange(weepRobots); list.AddRange(waterValveList); + list.AddRange(clothesHangerList); return list; } } @@ -113,6 +118,10 @@ /// 姘撮榾鍒楄〃 /// </summary> public List<Function> waterValveList = new List<Function>(); + /// <summary> + /// 鍑夐湼鍒楄〃 + /// </summary> + public List<Function> clothesHangerList = new List<Function>(); #endregion /// <summary> @@ -157,14 +166,9 @@ var tempFunction = Newtonsoft.Json.JsonConvert.DeserializeObject<Function>(functionDataString); if (tempFunction == null) { - Common.FileUtlis.Files.DeleteFile(filePath); + FileUtlis.Files.DeleteFile(filePath); return; } - if (tempFunction.DeleteSign) - { - //todo 鍒犻櫎浜戠鏁版嵁 20201203--App涓嶈兘鍒犻櫎鍔熻兘鏁版嵁 - } - else { switch (tempFunction.spk) { @@ -247,6 +251,11 @@ List.sensorsArm.Add(ser); deviceFunctionList.Add(ser); break; + case SPK.ClothesHanger: + var ch = Newtonsoft.Json.JsonConvert.DeserializeObject<Function>(functionDataString); + List.clothesHangerList.Add(ch); + deviceFunctionList.Add(ch); + break; } } } @@ -328,12 +337,19 @@ List.lights = new List<Light>(); List.curtains = new List<Curtain>(); List.floorHeatings = new List<FloorHeating>(); - List.tVs = new List<TV>(); - List.switchSockets = new List<SwitchSocket>(); - List.fans = new List<Fan>(); List.sensorsEnvironmentalScience = new List<Sensor>(); + #region 瀹剁數 + List.fans = new List<Fan>(); + List.switchSockets = new List<SwitchSocket>(); + List.tVs = new List<TV>(); + List.airCleaners = new List<AirCleaner>(); + List.weepRobots = new List<WeepRobot>(); + List.waterValveList = new List<Function>(); + List.clothesHangerList = new List<Function>(); + #endregion + List.scenes = new List<Scene>(); - List.deviceFunctionList = null; + List.deviceFunctionList = new List<Function>(); _FunctionList = null; } @@ -554,7 +570,26 @@ List.tVs.Remove(List.tVs.Find((obj) => obj.deviceId == delTemp.deviceId)); break; case SPK.ElectricFan: + case SPK.ElectricTuyaFan: List.fans.Remove(List.fans.Find((obj) => obj.deviceId == delTemp.deviceId)); + break; + case SPK.ElectricTuyaAirCleaner: + List.airCleaners.Remove(List.airCleaners.Find((obj) => obj.deviceId == delTemp.deviceId)); + break; + case SPK.ElectricTuyaWaterValve: + List.waterValveList.Remove(List.waterValveList.Find((obj) => obj.deviceId == delTemp.deviceId)); + break; + case SPK.ElectricTuyaWeepRobot: + List.weepRobots.Remove(List.weepRobots.Find((obj) => obj.deviceId == delTemp.deviceId)); + break; + case SPK.ClothesHanger: + List.clothesHangerList.Remove(List.clothesHangerList.Find((obj) => obj.deviceId == delTemp.deviceId)); + break; + case SPK.SensorSmoke: + case SPK.SensorWater: + case SPK.SensorDoorWindow: + case SPK.SensorPir: + List.sensorsArm.Remove(List.sensorsArm.Find((obj)=>obj.deviceId == delTemp.deviceId)); break; } var removeTemp = deviceFunctionList.Find((obj) => obj.deviceId == delTemp.deviceId); @@ -622,14 +657,22 @@ { switch (function.Spk_Prefix) { - case FunctionCategory.Light: - case FunctionCategory.Electric: - case FunctionCategory.Curtain: - case FunctionCategory.AC: - case FunctionCategory.FloorHeat: - DriverLayer.Control.Ins.SendReadCommand(function); - break; + case FunctionCategory.Music: + case FunctionCategory.DryContact: + continue; } + DriverLayer.Control.Ins.SendReadCommand(function); + //switch (function.Spk_Prefix) + //{ + // case FunctionCategory.Light: + // case FunctionCategory.Electric: + // case FunctionCategory.Curtain: + // case FunctionCategory.AC: + // case FunctionCategory.FloorHeat: + // case FunctionCategory.Sensor: + // DriverLayer.Control.Ins.SendReadCommand(function); + // break; + //} } } else diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems index 2b18933..116127b 100644 --- a/HDL_ON/HDL_ON.projitems +++ b/HDL_ON/HDL_ON.projitems @@ -275,7 +275,6 @@ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\WeatherCondition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\1-test-\TestDialog.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\ThirdPartyBrandListPage.cs" /> - <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\EmptyClass.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\AddThirdPartyBrandListpage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Entity\Integratedbrand\IntegratedBrand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\AirCleaner.cs" /> @@ -337,6 +336,25 @@ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorWaterImmersionPage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorDoorWinwsPage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorSmokePage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\DeviceFunction.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\ClothsHangerEnum.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\PirMain.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\TopView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\BrandList.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\BrandListView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\DeviceSet.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\TipView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\AddButton.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\SaveView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\Buttons.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\AddControl.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\Pir.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\PirSend.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\AddControlComplete.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\PatchView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\Method.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\FailView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\ReplicationView.cs" /> </ItemGroup> <ItemGroup> <Folder Include="$(MSBuildThisFileDirectory)UI\" /> @@ -374,5 +392,7 @@ <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\" /> <Folder Include="$(MSBuildThisFileDirectory)Entity\Integratedbrand\" /> <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\" /> + <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\" /> + <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\" /> </ItemGroup> </Project> diff --git a/HDL_ON/UI/.DS_Store b/HDL_ON/UI/.DS_Store new file mode 100644 index 0000000..bdfddd3 --- /dev/null +++ b/HDL_ON/UI/.DS_Store Binary files differ diff --git a/HDL_ON/UI/CSS/CSS.cs b/HDL_ON/UI/CSS/CSS.cs index 665a74c..7ce6015 100644 --- a/HDL_ON/UI/CSS/CSS.cs +++ b/HDL_ON/UI/CSS/CSS.cs @@ -83,10 +83,9 @@ public const uint TipBgColor1 = 0xE6FFFFFF; /// <summary> /// 杩炴帴鐘舵�佹彁绀� - /// 杩滅▼鐘舵�� /// 0xFF67D569 /// </summary> - public const uint LinkTipRemote = 0xFF67D569; + public const uint LinkTipLocal = 0xFF67D569; /// <summary> /// 杩炴帴鐘舵�佹彁绀� /// 杩炴帴澶辫触 @@ -111,6 +110,8 @@ public const uint viewTrans60lucence = 0x60000000; public const uint viewTranslucence = 0x00000000; public const uint textTipColor = 0XFF798394; + public const uint text1Color = 0XFF4E586A; + #endregion #endregion diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs index 2d35284..dbd6cdf 100644 --- a/HDL_ON/UI/MainPage.cs +++ b/HDL_ON/UI/MainPage.cs @@ -26,7 +26,7 @@ /// <summary> /// 鐗堟湰鍙� /// </summary> - public static string VersionString = "1.1.0223"; + public static string VersionString = "1.1.0225"; ///// <summary> ///// 瀹㈡埛绔被鍨� ///// </summary> diff --git a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs index 5b11b49..5f12ec0 100644 --- a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs +++ b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs @@ -144,6 +144,10 @@ doorwindowPage.ShowColltionButton = false; doorwindowPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); break; + case SPK.ClothesHanger: + var clothesHangerpage = new ClothesHangerPage(); + clothesHangerpage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); + break; } }; return eventHandler; diff --git a/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs b/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs index 84feeb0..8dc9425 100644 --- a/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs +++ b/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs @@ -44,13 +44,25 @@ if (localDevice != null) { foreach (var attr in updateData) - { - var localAttr = localDevice.status.Find((obj) => obj.key == attr.key); - if (localAttr != null) - { - //鏇存敼灞炴�у�� - localAttr.value = attr.value; - } + { + var localAttr2 = localDevice.attributes.Find((obj) => obj.key == attr.key); + if (localAttr2 == null) + { + //鏈韩瀹冨氨娌℃湁杩欎釜灞炴��,鍒欎笉澶勭悊 + continue; + } + //鏇存敼灞炴�у�� + localAttr2.curValue = attr.value; + + var localAttr = localDevice.status.Find((obj) => obj.key == attr.key); + if (localAttr == null) + { + //status鏄綋鍓嶈澶囦笂鎶ヨ繃鐨勫睘鎬ф墠浼氬瓨鍦�,涔熷氨鏄畠鐨勪釜鏁版湁鍙兘鍜宎ttributes涓嶄竴鑷� + localAttr = new AttributesStatus() { key = attr.key, value = attr.value }; + localDevice.status.Add(localAttr); + } + //鏇存敼灞炴�у�� + localAttr.value = attr.value; } //鍏ㄩ儴鐣岄潰鎺ㄩ�� HdlFormLogic.Current.DeviceStatuPush(localDevice); diff --git a/HDL_ON/UI/UI1-Login/LoginPage.cs b/HDL_ON/UI/UI1-Login/LoginPage.cs index 232f107..3850ad8 100644 --- a/HDL_ON/UI/UI1-Login/LoginPage.cs +++ b/HDL_ON/UI/UI1-Login/LoginPage.cs @@ -192,7 +192,7 @@ //return; if (b) { - etAccount.Text = "13415629083";//tujie"18316120654";// "15622703419";// "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568 + etAccount.Text = "18316672920";//hzx;// "13415629083"//cf;//tujie"18316120654";// "15622703419";// "18824864143";//"464027401@qq.com"; //"2791308028@qq.com";//13697499568 } else { diff --git a/HDL_ON/UI/UI2/.DS_Store b/HDL_ON/UI/UI2/.DS_Store new file mode 100644 index 0000000..249ba1d --- /dev/null +++ b/HDL_ON/UI/UI2/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index a7fbccd..687bc60 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -831,6 +831,38 @@ }; } + else if (function.spk == SPK.ClothesHanger) + { + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerBlueIcon.png"; + btnIcon.SelectedImagePath = "FunctionIcon/Electrical/Curtain/ClothesHangerBlueIcon.png"; + Button btnUp; + btnUp = new Button() + { + X = Application.GetRealWidth(84+3), + Y = Application.GetRealWidth(89), + Width = Application.GetRealWidth(38), + Height = Application.GetRealWidth(38), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon2On.png", + }; + view.AddChidren(btnUp); + + Button btnDown; + btnDown = new Button() + { + X = btnUp.Right + Application.GetRealWidth(3), + Y = Application.GetRealWidth(89), + Width = Application.GetRealWidth(38), + Height = Application.GetRealWidth(38), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon2On.png", + }; + view.AddChidren(btnDown); + + + LoadEvent_ControlClothesHanger(function, btnUp, btnDown); + + } else { diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs index 54e8af9..2122e54 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs @@ -33,13 +33,13 @@ } else { - if (Control.Ins.GatewayOnline_Cloud) + if (Control.Ins.GatewayOnline_Local) { - bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.MainColor; + bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipLocal; } else { - bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipRemote; + bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.MainColor; } } } @@ -56,28 +56,6 @@ bodyView.CheckLinkStatus(); } }); - - //if (bodyView != null) - //{ - // Application.RunOnMainThread(() => - // { - // if (Control.Ins.GatewayOnline) - // { - // if (Control.Ins.IsRemote) - // { - // bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.MainColor; - // } - // else - // { - // bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipRemote; - // } - // } - // else - // { - // bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipFail; - // } - // }); - //} } /// <summary> @@ -356,7 +334,7 @@ btnClose.IsSelected = false; curtain.trait_on_off.curValue = "off"; curtain.percent = 0; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + Dictionary<string, string> d = new Dictionary<string, string>(); d.Add("on_off", curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; @@ -370,13 +348,45 @@ btnOpen.IsSelected = false; curtain.trait_on_off.curValue = "on"; curtain.percent = 100; - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + Dictionary<string, string> d = new Dictionary<string, string>(); d.Add("on_off", curtain.trait_on_off.curValue.ToString()); Control.Ins.SendWriteCommand(curtain, d); }; } /// <summary> + /// 鍔犺浇鏅捐。鏋舵帶鍒朵簨浠� + /// </summary> + void LoadEvent_ControlClothesHanger(Function function,Button btnUp,Button btnDown) + { + btnUp.MouseDownEventHandler = (sender, e) => + { + btnUp.IsSelected = true; + }; + btnUp.MouseUpEventHandler = (sender, e) => + { + btnUp.IsSelected = false; + function.SetAttrState(FunctionAttributeKey.Position, "up"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Position, "up"); + Control.Ins.SendWriteCommand(function, d); + }; + + btnDown.MouseDownEventHandler = (sender, e) => + { + btnDown.IsSelected = true; + }; + btnDown.MouseUpEventHandler = (sender, e) => + { + btnDown.IsSelected = false; + function.SetAttrState(FunctionAttributeKey.Position, "down"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Position, "down"); + Control.Ins.SendWriteCommand(function, d); + }; + } + + /// <summary> /// 鍔犺浇璺宠浆淇℃伅涓績椤甸潰 /// </summary> void LoadEvent_GotoMessageCenterPage() diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs index 02640b2..8c9a157 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs @@ -488,13 +488,12 @@ case ShowFunction.Panel: break; case ShowFunction.SecurityMonitoring: + functionCount = 1; break; case ShowFunction.Sensor: functionCount = FunctionList.List.sensorsArm.Count; - //functionOnCount = FunctionList.List.aCs.FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count; break; case ShowFunction.VideoIntercom: - functionCount = 1; break; } @@ -552,6 +551,7 @@ functionView.AddChidren(btnName); if (item != ShowFunction.Environmental && item != ShowFunction.Sensor && item != ShowFunction.VideoIntercom + && item != ShowFunction.SecurityMonitoring && functionCount != 0) { Button btnFunctionCount = new Button() @@ -765,6 +765,10 @@ break; case ShowFunction.SecurityMonitoring: btnName.TextID = StringId.SecurityMonitoring; + btnFunctionViewBg.MouseUpEventHandler = (sender, e) => + { + HDLCommon.Current.Go2EZvizMonitor(bodyView); + }; break; case ShowFunction.Sensor: btnName.TextID = StringId.Sensor; @@ -772,34 +776,11 @@ break; case ShowFunction.VideoIntercom: btnName.TextID = StringId.VideoIntercom; - btnFunctionViewBg.MouseUpEventHandler = (sender, e) => - { -#if __IOS__ - EZSDK.IOS.EZSDK.Go2EZvizMonitor(); -#else //瀹夊崜鎽勫儚澶� - ((BaseActivity)Shared.Application.Activity).SetCamera(b => - { - if (b) - { - Android.Content.Intent intent = new Android.Content.Intent(); - var bundle = new Android.OS.Bundle(); - //浼犻�抧ame鍙傛暟涓簍inyphp - //bundle.PutString("Token", ezChileAccessToken.accessToken); - bundle.PutString("Token", "ra.aamy8d1gabcnrz0jbbj4gjkpcpy55g0s-8z529x82uz-0jzly2o-g30muwagq"); - bundle.PutString("HdlToken", UserInfo.Current.LoginTokenString); - intent.PutExtras(bundle); - intent.SetComponent(new Android.Content.ComponentName(Shared.Application.Activity, "com.videogo.MainActivity")); - Shared.Application.Activity.StartActivity(intent); - } - }); - -#endif - }; break; } //鐣岄潰璺宠浆--闊充箰璺宠浆鑷繁鐨勭晫闈�--鐜璺宠浆鑷繁鐨勭晫闈� - if (item != ShowFunction.Music && item != ShowFunction.Environmental && item != ShowFunction.VideoIntercom) + if (item != ShowFunction.Music && item != ShowFunction.Environmental && item != ShowFunction.SecurityMonitoring) { btnFunctionViewBg.MouseUpEventHandler = (sender, e) => { diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs index 8464dfc..1a88c32 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs @@ -98,8 +98,28 @@ case SPK.SensorDoorWindow: btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorDoorIcon.png"; break; + default: + break; } + var powerLowTipAttr = function.status.Find((obj) => obj.key == FunctionAttributeKey.BatteryState); + if (powerLowTipAttr != null) + { + if (powerLowTipAttr.value.ToLower() == "low") + { + Button btnTipPowerLow = new Button() + { + X = Application.GetRealWidth(307), + Y = Application.GetRealHeight(25), + Width = Application.GetRealWidth(24), + Height = Application.GetRealWidth(24), + UnSelectedImagePath = "FunctionIcon/ArmSensor/PowerLowIcon.png", + SelectedImagePath = "FunctionIcon/ArmSensor/PowerLowIcon.png", + }; + this.AddChidren(btnTipPowerLow); + } + } + break; case FunctionCategory.Music: btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicThinIcon.png"; @@ -110,98 +130,107 @@ } else { - #region 鍔犺浇寮�鍏虫寜閽� - /// <summary> - /// 寮�鍏虫寜閽� - /// </summary> - Button btnSwitch; - if (function.spk == SPK.LightRGB || function.spk == SPK.LightDimming) + if (function.spk == SPK.ClothesHanger)//鏅捐。鏋� { - btnSwitch = new Button() - { - X = Application.GetRealWidth(303), - Y = Application.GetRealHeight(78), - Width = Application.GetMinRealAverage(32), - Height = Application.GetMinRealAverage(32), - UnSelectedImagePath = "Public/PowerClose.png", - SelectedImagePath = "Public/PowerOpen.png", - IsSelected = function.trait_on_off.curValue.ToString() == "on", - Tag = function.sid + "_Switch", - }; - bodyDiv.AddChidren(btnSwitch); - //鍔犺浇寮�鍏虫寜閽簨浠� - LoadEvent_SwitchFunction(btnSwitch, function.attributes.Find((obj) => obj.key == FunctionAttributeKey.FadeTime)); + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerGrayIcon.png"; + ClothesHangerFragment(); } else { - btnSwitch = new Button() - { - X = Application.GetRealWidth(303), - Y = Application.GetRealHeight(58), - Width = Application.GetMinRealAverage(32), - Height = Application.GetMinRealAverage(32), - UnSelectedImagePath = "Public/PowerClose.png", - SelectedImagePath = "Public/PowerOpen.png", - IsSelected = function.trait_on_off.curValue.ToString() == "on", - Tag = function.sid + "_Switch", - }; - bodyDiv.AddChidren(btnSwitch); - //鍔犺浇寮�鍏虫寜閽簨浠� - LoadEvent_SwitchFunction(btnSwitch); - } + #region 鍔犺浇寮�鍏虫寜閽� - switch (function.Spk_Prefix) - { - case FunctionCategory.AC: - switch (function.spk) + /// <summary> + /// 寮�鍏虫寜閽� + /// </summary> + Button btnSwitch; + if (function.spk == SPK.LightRGB || function.spk == SPK.LightDimming) + { + btnSwitch = new Button() { - case SPK.AcStandard: - btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcThinIcon1.png"; - LoadLastStatesButton(); - break; - } - break; - case FunctionCategory.FloorHeat: - switch (function.spk) + X = Application.GetRealWidth(303), + Y = Application.GetRealHeight(78), + Width = Application.GetMinRealAverage(32), + Height = Application.GetMinRealAverage(32), + UnSelectedImagePath = "Public/PowerClose.png", + SelectedImagePath = "Public/PowerOpen.png", + IsSelected = function.trait_on_off.curValue.ToString() == "on", + Tag = function.sid + "_Switch", + }; + bodyDiv.AddChidren(btnSwitch); + //鍔犺浇寮�鍏虫寜閽簨浠� + LoadEvent_SwitchFunction(btnSwitch, function.attributes.Find((obj) => obj.key == FunctionAttributeKey.FadeTime)); + } + else + { + btnSwitch = new Button() { - case SPK.FloorHeatStandard: - btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingThinIcon.png"; - LoadLastStatesButton(); - break; - } - break; - case FunctionCategory.Light: - btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightThinIcon.png"; - btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on"; - LoadLightControl(); - break; - case FunctionCategory.Electric: - switch (function.spk) - { - case SPK.ElectricSocket: - btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketThinIcon.png"; - break; - case SPK.ElectricFan: - case SPK.ElectricTuyaFan: - btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanThinIcon.png"; - break; - case SPK.ElectricTV: - btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVThinIcon.png"; - break; - case SPK.ElectricTuyaAirCleaner: - btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/AirCleanerThiinIcon.png"; - break; - case SPK.ElectricTuyaWeepRobot: - btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WeepRobotThinIcon.png"; - break; - case SPK.ElectricTuyaWaterValve: - btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WaterValve/WaterValveIcon.png"; - break; - } - btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on"; - break; + X = Application.GetRealWidth(303), + Y = Application.GetRealHeight(58), + Width = Application.GetMinRealAverage(32), + Height = Application.GetMinRealAverage(32), + UnSelectedImagePath = "Public/PowerClose.png", + SelectedImagePath = "Public/PowerOpen.png", + IsSelected = function.trait_on_off.curValue.ToString() == "on", + Tag = function.sid + "_Switch", + }; + bodyDiv.AddChidren(btnSwitch); + //鍔犺浇寮�鍏虫寜閽簨浠� + LoadEvent_SwitchFunction(btnSwitch); + } + + switch (function.Spk_Prefix) + { + case FunctionCategory.AC: + switch (function.spk) + { + case SPK.AcStandard: + btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcThinIcon1.png"; + LoadLastStatesButton(); + break; + } + break; + case FunctionCategory.FloorHeat: + switch (function.spk) + { + case SPK.FloorHeatStandard: + btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingThinIcon.png"; + LoadLastStatesButton(); + break; + } + break; + case FunctionCategory.Light: + btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightThinIcon.png"; + btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on"; + LoadLightControl(); + break; + case FunctionCategory.Electric: + switch (function.spk) + { + case SPK.ElectricSocket: + btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketThinIcon.png"; + break; + case SPK.ElectricFan: + case SPK.ElectricTuyaFan: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanThinIcon.png"; + break; + case SPK.ElectricTV: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVThinIcon.png"; + break; + case SPK.ElectricTuyaAirCleaner: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/AirCleanerThiinIcon.png"; + break; + case SPK.ElectricTuyaWeepRobot: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WeepRobotThinIcon.png"; + break; + case SPK.ElectricTuyaWaterValve: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WaterValve/WaterValveIcon.png"; + break; + } + btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on"; + break; + } + #endregion } - #endregion } LoadEvent_DivSkipEvent(); @@ -374,6 +403,38 @@ LoadEvent_ControlCurtain(btnCurtainStop, btnCurtainOpen, btnCurtainClose, function as Curtain); #endregion } + /// <summary> + /// 鍔犺浇鏅捐。鏋跺姛鑳芥帶鍒跺崱鐗� + /// </summary> + void ClothesHangerFragment() + { + #region ClothesHanger + var btnClothesHangerUp = new Button() + { + X = Application.GetRealWidth(233), + Y = Application.GetRealHeight(58), + Width = Application.GetMinRealAverage(32), + Height = Application.GetMinRealAverage(32), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon1On.png", + }; + bodyDiv.AddChidren(btnClothesHangerUp); + + var btnClothesHangerDown = new Button() + { + X = Application.GetRealWidth(303), + Y = Application.GetRealHeight(58), + Width = Application.GetMinRealAverage(32), + Height = Application.GetMinRealAverage(32), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon1On.png", + }; + bodyDiv.AddChidren(btnClothesHangerDown); + LoadEvent_ControlClothesHanger(function, btnClothesHangerDown, btnClothesHangerUp); + #endregion + + + } /// <summary> /// 鍔犺浇闊充箰鍔熻兘鎺у埗鍗$墖 diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs index 531d926..e6e56cb 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using System.Collections.Generic; using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.Music; @@ -196,12 +197,6 @@ Control.Ins.SendWriteCommand(curtain, d); }; - //btnStop.MouseDownEventHandler = (sender, e) => - //{ - // btnStop.IsSelected = true; - // btnClose.IsSelected = false; - // btnOpen.IsSelected = false; - //}; btnStop.MouseUpEventHandler = (sender, e) => { btnStop.IsSelected = true; @@ -227,6 +222,40 @@ } #endregion + + /// <summary> + /// 鍔犺浇鏅捐。鏋舵帶鍒朵簨浠� + /// </summary> + void LoadEvent_ControlClothesHanger(Function function, Button btnUp, Button btnDown) + { + btnUp.MouseDownEventHandler = (sender, e) => + { + btnUp.IsSelected = true; + }; + btnUp.MouseUpEventHandler = (sender, e) => + { + btnUp.IsSelected = false; + function.SetAttrState(FunctionAttributeKey.Position, "up"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Position, "up"); + Control.Ins.SendWriteCommand(function, d); + }; + + btnDown.MouseDownEventHandler = (sender, e) => + { + btnDown.IsSelected = true; + }; + btnDown.MouseUpEventHandler = (sender, e) => + { + btnDown.IsSelected = false; + function.SetAttrState(FunctionAttributeKey.Position, "down"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Position, "down"); + Control.Ins.SendWriteCommand(function, d); + }; + } + + #region 绌鸿皟浜嬩欢 #endregion diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store b/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store new file mode 100644 index 0000000..b2074c1 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs index df31fec..cd334f8 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs @@ -281,16 +281,22 @@ value = "off"; } break; - case StringId.youren: - case StringId.kaiqi: - { + case StringId.youren: { value = "true"; } break; - case StringId.wuren: + case StringId.wuren: { + value = "false"; + } + break; + case StringId.kaiqi: + { + value = "open"; + } + break; case StringId.bihe: { - value = "false"; + value = "close"; } break; case StringId.zaixian: { diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs index 7569dc4..99458f3 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPageBLL.cs @@ -260,9 +260,12 @@ { EventHandler<MouseEventArgs> eventHandler = (sender, e) => { - var page = new ThirdPartyBrandListPage(); + // var page = new ThirdPartyBrandListPage(); + // MainPage.BasePageView.AddChidren(page); + // page.LoadPage(); + var page = new UI2.PersonalCenter.PirDevice.PirMain(); MainPage.BasePageView.AddChidren(page); - page.LoadPage(); + page.Show(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; btnResidenceAddFunctionIcon.MouseUpEventHandler = eventHandler; diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs new file mode 100644 index 0000000..4f2aec5 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs @@ -0,0 +1,179 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class AddButton : FrameLayout + { + public AddButton() + { + Tag = "Pir"; + } + public void Show(Control control) + { + #region 鐣岄潰甯冨眬 + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.tianjiayaokongqi; + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); }; + + FrameLayout editfLayout = new FrameLayout + { + Y = topView.frameLayout.Bottom, + BackgroundColor = CSS.CSS_Color.textWhiteColor, + Height = Application.GetRealHeight(152), + Width = Application.GetRealWidth(375), + }; + this.AddChidren(editfLayout); + //绾� + Button lineBtn = new Button + { + Y = Application.GetRealHeight(43), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(375 - 16 * 2), + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + }; + editfLayout.AddChidren(lineBtn); + //璇疯緭鍏ユ寜閿悕绉� + EditText editText = new EditText() + { + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(375 - 16 * 2), + Height = Application.GetRealHeight(44), + PlaceholderText = Language.StringByID(StringId.anjianmingcheng), + PlaceholderTextColor = CSS.CSS_Color.textCancelColor, + TextColor = CSS.CSS_Color.textColor, + TextSize = TextSize.text14, + TextAlignment = TextAlignment.CenterLeft, + }; + editfLayout.AddChidren(editText); + //涓嬩竴姝� + Button saveBtn = new Button + { + Width = Application.GetRealWidth(220), + Height = Application.GetRealHeight(44), + Y = Application.GetRealHeight(92), + X = Application.GetRealWidth(78), + TextID = StringId.xiayibu, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textWhiteColor, + TextAlignment = TextAlignment.Center, + BackgroundColor = CSS.CSS_Color.btnSaveBackgroundColor, + Radius = (uint)Application.GetRealHeight(22), + }; + editfLayout.AddChidren(saveBtn); + + FrameLayout fLayout = new FrameLayout + { + Y = editfLayout.Bottom + Application.GetRealHeight(8), + Height = Application.GetRealHeight(667 - 64 - 152 - 8), + Width = Application.GetRealWidth(375), + BackgroundColor = CSS.CSS_Color.textWhiteColor, + }; + this.AddChidren(fLayout); + //鎺ㄨ崘鎸夐敭 + Button titleBtn = new Button + { + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(220), + Height = Application.GetRealHeight(20), + TextID = StringId.tuijiananjian, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.text1Color, + TextAlignment = TextAlignment.CenterLeft, + }; + fLayout.AddChidren(titleBtn); + //鍔ㄦ�佸姞杞紹utton鎸夐挳鐖舵帶浠� + FrameLayout buttonFLayout = new FrameLayout + { + Y = Application.GetRealHeight(32), + Height = Application.GetRealHeight(667 - 64 - 152 - 8 - 12 - 20), + Width = Application.GetRealWidth(375), + }; + fLayout.AddChidren(buttonFLayout); + #endregion + View.Buttons buttons = new View.Buttons(); + var buttonNameList = buttons.GetList("榛樿鎸夐挳"); + buttons.AddButton(buttonFLayout, buttonNameList, (s) => + { + editText.Text = s; +#if __Android__ + editText.SetSelectionEnd(); +#endif + }); + ///涓嬩竴姝ョ殑鐐瑰嚮浜嬩欢 + saveBtn.MouseUpEventHandler += (sender, e) => + { + var texts = editText.Text.Trim(); + if (string.IsNullOrEmpty(editText.Text)) + { + //鍚嶇О涓嶈兘涓虹┖ + return; + } + var butName = Pir.BuottonList.Find((c) => c.value == texts); + if (butName != null) + { + //鍚嶇О宸茬粡瀛樺湪 + return; + } + //new寮曞鐣岄潰 + View.ReplicationView replication = new View.ReplicationView(); + replication.Show(); + + //娣诲姞鏁版嵁瀵硅薄 + ButtonObj buttonObj = new ButtonObj(); + buttonObj.Key = "key" + Pir.BuottonList.Count.ToString(); + buttonObj.value = texts; + + PirSend.CodeStudy(buttonObj, (responsePackNew) => + { + ///杩欓噷锛氱洃鍚琈TTP鎺ㄩ�佷笅鏉ヤ富棰橈紝鎵嶇煡閬撴槸鍚︽坊鍔犳垚鍔� + /// + //浼戠湢鏄负鏄剧ず寮曞鐣岄潰 + System.Threading.Thread.Sleep(5000); + //绉婚櫎娣诲姞鎸夐挳寮曞鐣岄潰 + replication.RemView(); + //if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") + //{ + var buttonName = Pir.BuottonList.Find((c) => c.value == buttonObj.value); + if (buttonName == null) + { + //娣诲姞鏁版嵁 + Pir.BuottonList.Add(buttonObj); + } + //绉婚櫎娣诲姞鎸夐挳鐣岄潰 + this.RemoveFromParent(); + + for (int i = MainPage.BasePageView.ChildrenCount - 1; 0 <= i; i--) + { + var view = MainPage.BasePageView.GetChildren(i); + if (view.GetType() == typeof(AddControl)) + { + view.RemoveFromParent(); + } + + } + + //鍔犺浇鏁版嵁鐣岄潰 + AddControl addControl = new AddControl(); + MainPage.BasePageView.AddChidren(addControl); + addControl.Show(control); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + //} + //else + //{ + // PirSend.Error(responsePackNew); + //} + + }); + + + }; + + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControl.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControl.cs new file mode 100644 index 0000000..97af281 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControl.cs @@ -0,0 +1,279 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +using System.Collections.Generic; +using System.Text; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class AddControl : FrameLayout + { + public AddControl() + { + Tag = "Pir"; + } + public void Show(Control control) + { + + #region 鐣岄潰甯冨眬 + + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.zhinengyaokongqi; + topView.topIconBtn.Visible = true; + topView.topIconBtn.UnSelectedImagePath = "PirIcon/del.png"; + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => + { + + this.RemoveFromParent(); + + }; + + #region 娣诲姞鎸夐挳 + FrameLayout addLayout = new FrameLayout + { + Y = Application.GetRealHeight(64), + Height = Application.GetRealHeight(84), + Width = Application.GetRealWidth(TextSize.view375), + }; + this.AddChidren(addLayout); + + Button addBtn = new Button + { + Width = Application.GetRealWidth(344), + Height = Application.GetRealHeight(44), + Y = Application.GetRealHeight(24), + X = Application.GetRealWidth(16), + TextID = StringId.tianjiaanniu, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.btnSaveBackgroundColor, + BorderColor = CSS.CSS_Color.btnSaveBackgroundColor, + BorderWidth = 1, + Radius = (uint)Application.GetRealHeight(22), + }; + addLayout.AddChidren(addBtn); + #endregion + FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(64 + 84), + Height = Application.GetRealHeight(667 - 64 - 84), + Width = Application.GetRealWidth(TextSize.view375), + }; + this.AddChidren(frameLayout); + + #region 淇濆瓨 + FrameLayout saveLayout = new FrameLayout + { + Y = Application.GetRealHeight(667 - 104), + Height = Application.GetRealHeight(104), + Width = Application.GetRealWidth(TextSize.view375), + BackgroundColor = CSS.CSS_Color.viewLine, + }; + this.AddChidren(saveLayout); + saveLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + + Button paixuBtn = new Button + { + Width = Application.GetRealWidth(375 - 16 * 2), + Height = Application.GetRealHeight(20), + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(16), + TextID = StringId.paixu, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textTipColor, + }; + saveLayout.AddChidren(paixuBtn); + + Button saveBtn = new Button + { + Width = Application.GetRealWidth(220), + Height = Application.GetRealHeight(44), + Y = paixuBtn.Bottom + Application.GetRealHeight(12), + X = Application.GetRealWidth(78), + TextID = StringId.save, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textWhiteColor, + TextAlignment = TextAlignment.Center, + BackgroundColor = CSS.CSS_Color.btnSaveBackgroundColor, + Radius = (uint)Application.GetRealHeight(22), + + }; + saveLayout.AddChidren(saveBtn); + #endregion + + VerticalScrolViewLayout vv = new VerticalScrolViewLayout(); + frameLayout.AddChidren(vv); + RefreshView(vv, false); + #endregion + + #region 鐣岄潰鐐瑰嚮浜嬩欢 + //鍒犻櫎鐐瑰嚮浜嬩欢 + topView.clickSetBtn.MouseUpEventHandler += (sender, e) => + { + topView.clickSetBtn.IsSelected = !topView.clickSetBtn.IsSelected; + if (topView.clickSetBtn.IsSelected) + { + topView.topIconBtn.UnSelectedImagePath = ""; + topView.topIconBtn.Text = Language.StringByID(StringId.wancheng); + topView.topIconBtn.TextSize = TextSize.text14; + topView.topIconBtn.TextColor = CSS.CSS_Color.textColor; + RefreshView(vv, true); + } + else + { + topView.topIconBtn.UnSelectedImagePath = "PirIcon/del.png"; + topView.topIconBtn.Text = ""; + RefreshView(vv, false); + } + + + + }; + //娣诲姞鎸夐挳鐐瑰嚮浜嬩欢 + addBtn.MouseUpEventHandler += (sender, e) => + { + AddButton addButton = new AddButton(); + MainPage.BasePageView.AddChidren(addButton); + addButton.Show(control); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + //淇濆瓨鐐瑰嚮浜嬩欢 + saveBtn.MouseUpEventHandler += (sender, e) => + { + //绉婚櫎褰撳墠鐣岄潰 + this.RemoveFromParent(); + //鍙兘涔嬪墠宸茬粡瀛樺湪璇ョ晫闈� + for (int i = MainPage.BasePageView.ChildrenCount - 1; 0 <= i; i--) + { + var view = MainPage.BasePageView.GetChildren(i); + if (view.GetType() == typeof(AddControlComplete)) + { + view.RemoveFromParent(); + } + } + //MainPage.BasePageView.RemoveViewByTag("Pir"); + AddControlComplete addControlComplete = new AddControlComplete(); + MainPage.BasePageView.AddChidren(addControlComplete); + addControlComplete.Show(control); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + #endregion + } + /// <summary> + /// 鍔犺浇鎸夐挳鎺т欢View鐨勬柟娉� + /// </summary> + /// <param name="vv">涓婁笅婊戝姩鎺т欢</param> + /// <param name="if_bool">琛ㄧず鏄惁鏄剧ず鍒犻櫎鍥炬爣</param> + void RefreshView(VerticalScrolViewLayout vv, bool if_bool) + { + vv.RemoveAll(); + //瀹氫箟涓�涓彉閲忚褰曡鏁� + int sum = 0; + if (Pir.BuottonList.Count % 3 == 0) + { + sum = Pir.BuottonList.Count / 3; + } + else + { + sum = Pir.BuottonList.Count / 3 + 1; + } + //璁$畻鍔犺浇鍑烘潵鐨勬暟鎹渶瑕佺殑楂樺害 + int h = 16 + sum * (16 + 44) + 104 + 76; + int line = 0; + //鎸夐挳鐨勭埗鎺т欢 + var FLayout = new FrameLayout + { + Height = Application.GetRealWidth(h), + }; + vv.AddChidren(FLayout); + for (int i = 1, j = 0; i <= Pir.BuottonList.Count; i++, j++) + { + var nameObj = Pir.BuottonList[i - 1]; + //鎸夐挳 + var buttonNameBtn = new Button + { + + Y = Application.GetRealHeight(16 + line * (16 + 44)), + X = Application.GetRealWidth(16 + (16 + 104) * j), + Width = Application.GetRealWidth(104), + Height = Application.GetRealHeight(44), + Text = nameObj.value, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.Center, + Radius = (uint)Application.GetRealHeight(18), + BorderWidth = 1, + BorderColor = CSS.CSS_Color.textCancelColor, + }; + FLayout.AddChidren(buttonNameBtn); + //鍒犻櫎鍥炬爣 + var delIconBtn = new Button + { + UnSelectedImagePath = "PirIcon/delbuton.png", + Y = Application.GetRealHeight(12 + line * (16 + 44)), + X = Application.GetRealWidth((16 + 92) + (104 + 16) * j), + Width = Application.GetRealWidth(16), + Height = Application.GetRealWidth(16), + Tag = nameObj, + }; + if (if_bool) + { + FLayout.AddChidren(delIconBtn); + } + //鍒犻櫎鍥炬爣鐨勭偣鍑讳簨浠� + delIconBtn.MouseUpEventHandler += (sender, e) => + { + var obj = delIconBtn.Tag as ButtonObj; + //鍔犺浇log + Loading loading = new Loading(); + this.AddChidren(loading); + HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null; + loading.Start(); + new System.Threading.Thread(() => + { + try + { + //鍙戦�佹寜閿垹闄わ紱 + responsePackNew = PirSend.CodeRemove(obj); + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + loading.Hide(); + if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") + { + ///杩欓噷锛氱洃鍚琈TTP鎺ㄩ�佷笅鏉ヤ富棰橈紝鎵嶇煡閬撴槸鍚︽坊鍔犳垚鍔� + var buttonObj = Pir.BuottonList.Find((c) => c.value == obj.value); + if (buttonObj != null) + { + Pir.BuottonList.Remove(buttonObj); + } + RefreshView(vv, true); + } + else { + Method method = new Method(); + method.ErrorShow(responsePackNew); + } + + }); + } + + }) + { IsBackground = true }.Start(); + + + }; + if (i % 3 == 0) + { + //婊′竴琛岄噸缃甹=0鍊�; + j = -1; + line += 1; + } + + } + + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs new file mode 100644 index 0000000..5a50897 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs @@ -0,0 +1,121 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class AddControlComplete:FrameLayout + { + public AddControlComplete() + { + Tag = "Pir"; + } + public void Show(Control control) { + #region 鐣岄潰甯冨眬 + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.tianjiayaokongqi; + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); }; + + FrameLayout fLayout = new FrameLayout + { + Y =Application.GetRealHeight(64), + BackgroundColor = CSS.CSS_Color.textWhiteColor, + Height = Application.GetRealHeight(224), + Width = Application.GetRealWidth(375), + }; + this.AddChidren(fLayout); + // + Button iconBtn = new Button + { + Y = Application.GetRealHeight(28), + X = Application.GetRealWidth(137), + Width = Application.GetRealWidth(102), + Height = Application.GetRealWidth(102), + UnSelectedImagePath = "PirIcon/succeed.png", + }; + fLayout.AddChidren(iconBtn); + + //娣诲姞鎴愬姛 + Button text1Btn = new Button + { + Width = Application.GetRealWidth(375-32), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(158), + X = Application.GetRealWidth(16), + TextID = StringId.tianjiachenggong, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.btnSaveBackgroundColor, + TextAlignment = TextAlignment.Center, + }; + fLayout.AddChidren(text1Btn); + //鍙埌鍒嗙被-鍔熻兘-鐢靛櫒鎿嶄綔浣跨敤 + Button text2Btn = new Button + { + Width = Application.GetRealWidth(375 - 32), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(188), + X = Application.GetRealWidth(16), + TextID = StringId.kedaofenlei, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textTipColor, + TextAlignment = TextAlignment.Center, + }; + fLayout.AddChidren(text2Btn); + //鎵�灞炲垎绫� + View.PatchView fenlei = new View.PatchView(); + fenlei.frameLayout.Y = fLayout.Bottom+ Application.GetRealHeight(8); + this.AddChidren(fenlei.FLayoutView(false)); + fenlei.btnText1.TextID = StringId.suoshufenlei; + fenlei.btnText2.TextID = StringId.dianqi; + //閬ユ帶鍣ㄥ悕绉� + View.PatchView namePatchView = new View.PatchView(); + namePatchView.frameLayout.Y = fenlei.frameLayout.Bottom; + this.AddChidren(namePatchView.FLayoutView()); + namePatchView.btnText1.TextID = StringId.yaokongqimingcheng; + namePatchView.btnText2.Text = control.name; + //鎵�灞炲尯鍩� + View.PatchView quyuPatchView = new View.PatchView(); + quyuPatchView.frameLayout.Y = namePatchView.frameLayout.Bottom; + this.AddChidren(quyuPatchView.FLayoutView()); + quyuPatchView.btnText1.TextID = StringId.suoshuquyu; + quyuPatchView.btnText2.TextID = StringId.dianqi; + + //缁х画娣诲姞 + Button addBtn = new Button + { + Y = quyuPatchView.frameLayout.Bottom + Application.GetRealHeight(125), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(375-32), + Height = Application.GetRealHeight(20), + TextID = StringId.jixutianjia, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + TextAlignment = TextAlignment.Center, + }; + this.AddChidren(addBtn); + //瀹屾垚 + View.SaveView saveView = new View.SaveView(); + this.AddChidren(saveView.FLayoutView()); + saveView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + #endregion + #region 鐣岄潰鐐瑰嚮浜嬩欢 + //閬ユ帶鍣ㄥ悕绉扮偣鍑讳簨浠� + namePatchView.btnClick.MouseUpEventHandler += (sender,e) => { }; + //鎵�灞炲尯鍩熺偣鍑讳簨浠� + quyuPatchView.btnClick.MouseUpEventHandler += (sender, e) => { }; + //缁х画娣诲姞鐐瑰嚮浜嬩欢 + addBtn.MouseUpEventHandler += (sender, e) => { + Method method = new Method(); + method.AddControl(); + }; + //瀹屾垚鐐瑰嚮浜嬩欢 + saveView.btnClick.MouseUpEventHandler += (sender, e) => { + MainPage.BasePageView.RemoveViewByTag("AddControl"); + MainPage.BasePageView.RemoveViewByTag("Pir"); + }; + #endregion + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/BrandList.cs similarity index 83% copy from HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs copy to HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/BrandList.cs index 2293a25..06e00f9 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/BrandList.cs @@ -4,20 +4,21 @@ using System.Collections.Generic; using System.Text; -namespace HDL_ON.UI.UI2.Intelligence.Automation +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice { - public class EmptyClass : FrameLayout + public class BrandList : FrameLayout { + public BrandList() + { + Tag = "PirView"; + } /// <summary> /// /// </summary> /// <param name="list">琛ㄧず璇ュ垪琛ㄥ厓绱燗-Z瀛楁瘝绛涢�夋樉绀哄嚭鏉�</param> /// <param name="list6">琛ㄧず璇ュ垪琛ㄥ厓绱犳樉绀哄湪list鍓嶉潰(璇ュ垪琛ㄥ厓绱犱笉鍋欰-Z瀛楁瘝绛涢��),娌℃湁鍙互涓簂ist6=null</param> - /// <param name="action">杩斿洖閫変腑鏂囨湰</param> - public void Show(List<string> list, List<string> list6, Action<string> action) + public void Show(List<string> list, List<string> list6) { - - //string text = "30"; //byte[] bytes = new byte[text.Length / 2]; //for (int i = 0, j = 0; i < bytes.Length; j += 2, i++) @@ -27,8 +28,6 @@ //} ////鎶奲yte鏁扮粍杞崲鎴愭枃瀛� //string str = System.Text.Encoding.UTF8.GetString(bytes); - - var frameLayout = new FrameLayout { BackgroundColor = CSS.CSS_Color.viewTop, @@ -59,7 +58,14 @@ UnSelectedImagePath = "LogicIcon/back.png", }; frameLayout.AddChidren(backBtn); - backBtn.MouseUpEventHandler += (sen, e) => + var clickBackBtn = new Button + { + Width = Application.GetRealWidth(12+16+20), + Height = Application.GetRealWidth(20+20), + Y = Application.GetRealHeight(32), + }; + frameLayout.AddChidren(clickBackBtn); + clickBackBtn.MouseUpEventHandler += (sen, e) => { this.RemoveFromParent(); }; @@ -86,16 +92,7 @@ }; this.AddChidren(fram); - - //var list11 = new List<string> { - // "鐖变綘", "鍝庡懄","鍩冨強","鍝堝紬鎹㈠3鍝堝紬", "鐖卞痉鍗庡v","淇哄嚑涓柉浜�", - // "鎷滀簡", "宸村+", "鐧惧か", "鐧惧悎鍦扮悊璇句綘鎵撶畻", "涓嶅害鑰侀浼忔灔", "姣斿埌涔濈偣", - // "杞︾珯","娴嬭瘯","姝ゅ湴", "鎵嶇湅瑙佸ソ寰楀揩","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - // "绛夊緟鏈轰細鍚�","鐨勫鎴�", "澶氬枬鐐�", "鐧昏鍝︾劧鍚�", "鎵撶數璇�", - // "鎭╄偆闇滅湅灏辩湅浜�", "楗挎os","鎭堕瓟鍩�","鍎跨鑱斿姩", "鎭╁叚棰楀瓙寮规媺鎷夎¥娲楁尽浜�","鍙戝ぇ瀛︾敓鍙戝彂", - // "鐪熷帀瀹砳鍙戝灏�", "鐭ラ亾浣犱粯娆句簡鍙�", "灏厭鍥炲", "鏀硅繘鐨勮瘽", "澶╁ぉ閫熷害鍥炵瓟", "澶ソ浜嗗紑杞�", - // "鍑忚偉鐨勭湅杩�","妗″嚭鍙e閭�","濡傛灉瑙夊緱", "寰堣垝鏈嶇殑","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - // "榫欏嵎椋庝簭澶у彂","鍘诲ソ鐪�", "澶氬枬鐐�", "濂芥氮璐瑰ソ", "鎵撶數璇�"}; + if (list == null) { list = new List<string>(); @@ -105,10 +102,7 @@ list6 = new List<string>(); } var list1 = GetDateList(list); - list1.Add("1"); list1.InsertRange(0, list6); - - var vv = new VerticalScrolViewLayout(); fram.AddChidren(vv); @@ -125,10 +119,9 @@ listStr.Add(s); } } - RefreshLayout(vv, listStr, action); + RefreshLayout(vv, listStr); }; - #region A-Z @@ -140,7 +133,7 @@ Width = Application.GetRealWidth(10 + 6), }; fram.AddChidren(a_zFra); - var list2 = GetList(); + var list2 = GetList(); for (int i = 0; i < list2.Count; i++) { @@ -183,11 +176,7 @@ } #endregion - RefreshLayout(vv, list1,action); - - - - + RefreshLayout(vv, list1); } /// <summary> @@ -195,7 +184,7 @@ /// </summary> /// <param name="vv">鐖舵帶浠�</param> /// <param name="list">鏄剧ず鍒楄〃</param> - private void RefreshLayout(VerticalScrolViewLayout vv, List<string> list,Action<string> action) + private void RefreshLayout(VerticalScrolViewLayout vv, List<string> list) { vv.RemoveAll(); foreach (var str in list) @@ -235,10 +224,10 @@ vv.AddChidren(rowLayout); clickBtn.MouseUpEventHandler += (sen, e) => { - //鎵惧埌绱㈠紩鍊� - var index = list.IndexOf(clickBtn.Tag.ToString()); + ////鎵惧埌绱㈠紩鍊� + //var index = list.IndexOf(clickBtn.Tag.ToString()); - this.RemoveFromParent(); + //this.RemoveFromParent(); }; } @@ -261,7 +250,6 @@ return false; } } - /// <summary> /// 鑾峰彇鏄剧ず鍒楄〃 /// </summary> @@ -300,7 +288,6 @@ } return list; } - /// <summary> /// 鑾峰彇A-Z瀛楁瘝鍒楄〃 /// </summary> @@ -321,7 +308,6 @@ } return list; } - /// <summary> /// 鑾峰彇姹夊瓧棣栧瓧姣� /// </summary> @@ -346,34 +332,7 @@ iCnChar = i1 * 256 + i2; } - //expresstion - //table of the constant list - // 'A'; //45217..45252 - // 'B'; //45253..45760 - // 'C'; //45761..46317 - // 'D'; //46318..46825 - // 'E'; //46826..47009 - // 'F'; //47010..47296 - // 'G'; //47297..47613 - - // 'H'; //47614..48118 - // 'J'; //48119..49061 - // 'K'; //49062..49323 - // 'L'; //49324..49895 - // 'M'; //49896..50370 - // 'N'; //50371..50613 - // 'O'; //50614..50621 - // 'P'; //50622..50905 - // 'Q'; //50906..51386 - - // 'R'; //51387..51445 - // 'S'; //51446..52217 - // 'T'; //52218..52697 - //娌℃湁U,V - // 'W'; //52698..52979 - // 'X'; //52980..53640 - // 'Y'; //53689..54480 - // 'Z'; //54481..55289 + // iCnChar match the constant if ((iCnChar >= 45217) && (iCnChar <= 45252)) @@ -473,3 +432,4 @@ } } } + diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/DeviceSet.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/DeviceSet.cs new file mode 100644 index 0000000..8ba618f --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/DeviceSet.cs @@ -0,0 +1,244 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +using System.Collections.Generic; +using System.Text; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class DeviceSet : FrameLayout + { + public DeviceSet() + { + Tag = "PirView"; + } + public void Show() { + #region 鐣岄潰甯冨眬 + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.shebeigaunli; + topView.topIconBtn.Visible = true; + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); }; + VerticalScrolViewLayout vv = new VerticalScrolViewLayout(); + vv.Height = Application.GetRealHeight(667 - 64); + vv.Y = Application.GetRealHeight(64); + this.AddChidren(vv); + #endregion + int a = 3; + int b = 3; + for (int i = 0; i < b; i++) + { + #region 绾㈠瀹濆浘鏍� 鐗堟湰鍙� 鍚嶇О 鐘舵�� + FrameLayout fLayout = new FrameLayout + { + Width = Application.GetRealWidth(375), + Height = Application.GetRealHeight(12+92+(50* a)), + }; + vv.AddChidren(fLayout); + + //绾㈠瀹濇樉绀虹埗鎺т欢 + FrameLayout devfLayout = new FrameLayout + { + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(375-16*2), + Height = Application.GetRealHeight(92 + (50 * a)), + BackgroundColor = CSS.CSS_Color.view, + Radius = (uint)Application.GetRealHeight(12), + }; + fLayout.AddChidren(devfLayout); + //绾㈠瀹濆浘鏍� + Button priequipmentBtn = new Button + { + Y=Application.GetRealHeight(16), + X = Application.GetRealWidth(5), + Width = Application.GetRealWidth(60), + Height = Application.GetRealWidth(60), + UnSelectedImagePath = "PirIcon/priequipment.png", + TextAlignment = TextAlignment.Center, + }; + devfLayout.AddChidren(priequipmentBtn); + //绾㈠瀹濆悕绉� + Button deviceNameBtn = new Button + { + Y=Application.GetRealHeight(16), + X = priequipmentBtn.Right + Application.GetRealWidth(7), + Width = Application.GetRealWidth(120), + Height = Application.GetRealHeight(20), + Text = "绾㈠瀹滱"+i.ToString(), + TextAlignment = TextAlignment.CenterLeft, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + IsBold = true, + }; + devfLayout.AddChidren(deviceNameBtn); + //鐗堟湰鍙� + Button versionBtn = new Button + { + Y = deviceNameBtn.Bottom+ Application.GetRealHeight(4), + X = priequipmentBtn.Right + Application.GetRealWidth(7), + Width = Application.GetRealWidth(120), + Height = Application.GetRealHeight(17), + Text = "鐗堟湰鍙穠1.3.5", + TextAlignment = TextAlignment.CenterLeft, + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textCancelColor, + }; + devfLayout.AddChidren(versionBtn); + // 5/10 + Button geBtn = new Button + { + Y = versionBtn.Bottom + Application.GetRealHeight(2), + X = priequipmentBtn.Right + Application.GetRealWidth(7), + Width = Application.GetRealWidth(120), + Height = Application.GetRealHeight(17), + Text = "2", + TextAlignment = TextAlignment.CenterLeft, + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textConfirmColor, + }; + devfLayout.AddChidren(geBtn); + geBtn.Width = geBtn.GetTextWidth(); + // 5/10 + Button sumBtn = new Button + { + Y = versionBtn.Bottom + Application.GetRealHeight(2), + X = geBtn.Right, + Width = Application.GetRealWidth(20), + Height = Application.GetRealHeight(17), + Text ="/10", + TextAlignment = TextAlignment.CenterLeft, + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textCancelColor, + }; + devfLayout.AddChidren(sumBtn); + //鐘舵�佸浘鏍� + Button stateIconBtn = new Button + { + Y =Application.GetRealHeight(23), + X = Application.GetRealWidth(291), + Width = Application.GetRealWidth(8), + Height = Application.GetRealWidth(8), + UnSelectedImagePath = "PirIcon/online.png", + }; + devfLayout.AddChidren(stateIconBtn); + //绾㈠瀹濈姸鎬侊紙鍦ㄧ嚎-绂荤嚎锛� + Button stateTextBtn = new Button + { + Y = Application.GetRealHeight(18), + X = Application.GetRealWidth(303), + Width = Application.GetRealWidth(30), + Height = Application.GetRealHeight(17), + TextID=StringId.zaixianhwb, + TextAlignment = TextAlignment.CenterLeft, + TextSize = TextSize.text12, + TextColor = 0xFF67D569,// CSS.CSS_Color.textColor, + IsBold=true, + }; + devfLayout.AddChidren(stateTextBtn); + //绾� + Button lineBtn = new Button + { + Y = Application.GetRealHeight(92)-1, + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(343-16*2), + Height =1, + BackgroundColor = CSS.CSS_Color.viewLine, + }; + devfLayout.AddChidren(lineBtn); + + if (b - 1 == i) + { + //鏈�鍚庝竴涓悗闈㈠鍔犻棿闅旇儗鏅� + vv.AddChidren(new FrameLayout { Height = Application.GetRealHeight(20) }); + } + #endregion + + for (int j = 0; j < a; j++) { + RowLayout funControlRow = new RowLayout + { + Y = Application.GetRealHeight(92 + (50 * j)), + Width = Application.GetRealWidth(375 - 16 * 2), + Height = Application.GetRealHeight(50), + LineColor = CSS.CSS_Color.textWhiteColor, + SubViewWidth=Application.GetRealWidth(68), + }; + devfLayout.AddChidren(funControlRow); + //閬ユ帶鍣ㄥ悕绉� + Button nameBtn = new Button + { + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(150), + Height = Application.GetRealHeight(20), + Text =j.ToString(), + TextAlignment=TextAlignment.CenterLeft, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + Gravity=Gravity.CenterVertical, + }; + funControlRow.AddChidren(nameBtn); + //閬ユ帶鍣ㄥ尯鍩� + Button areaBtn = new Button + { + X=Application.GetRealWidth(311+16-(40+100)), + Width = Application.GetRealWidth(100), + Height = Application.GetRealHeight(17), + Text = j.ToString(), + TextAlignment = TextAlignment.CenterRight, + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textCancelColor, + Gravity =Gravity.CenterVertical, + }; + funControlRow.AddChidren(areaBtn); + //涓嬩竴绾у浘鏍� + Button nextIconBtn = new Button + { + X = Application.GetRealWidth(295+16), + Width = Application.GetRealWidth(16), + Height = Application.GetRealWidth(16), + UnSelectedImagePath = "PirIcon/next.png", + Gravity = Gravity.CenterVertical, + }; + funControlRow.AddChidren(nextIconBtn); + //鍒犻櫎 + Button delBtn = new Button + { + Width = Application.GetRealWidth(50), + Height = Application.GetRealHeight(22), + TextID = StringId.Del, + TextAlignment = TextAlignment.Center, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textWhiteColor, + IsBold=true, + BackgroundColor= CSS.CSS_Color.textRedColor, + }; + funControlRow.AddRightView(delBtn); + //绾� + Button line1Btn = new Button + { + Y = Application.GetRealHeight(50 - 2), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(311), + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + }; + funControlRow.AddChidren(line1Btn); + if (j == a - 1) + { + //鏈�鍚庢敼鍙樹竴涓嚎鐨勯鑹� + line1Btn.BackgroundColor = CSS.CSS_Color.viewTranslucence; + funControlRow.LineColor = CSS.CSS_Color.viewTranslucence; + } + delBtn.MouseUpEventHandler += (sender,e) => { + + + }; + } + + + + } + + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs new file mode 100644 index 0000000..0c7d14f --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs @@ -0,0 +1,101 @@ +锘縰sing System; +using HDL_ON.DAL.Server; +using Shared; + +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class Method + { + /// <summary> + /// 娣诲姞閬ユ帶鍣ㄧ殑鏂规硶 + /// </summary> + public void AddControl() + { + View.TipView tipView = new View.TipView(); + tipView.InputBox("", (s, dialog) => + { + ///娓呴櫎涔嬪墠鍒楄〃鏁版嵁 + Pir.BuottonList.Clear(); + if (!string.IsNullOrEmpty(s)) + { + Control control = new Control(); + control.name = s; + control.type = "learn"; + + ThreadAddControl(control,dialog); + + + + } + },false); + + } + /// <summary> + /// 鍙戦�侀仴鎺у櫒鍛戒护鏂规硶 + /// </summary> + /// <param name="control"></param> + /// <param name="dialog"></param> + public void ThreadAddControl(Control control, Dialog dialog) { + + DAL.Server.ResponsePackNew responsePackNew = null; + Loading loading = new Loading(); + dialog.AddChidren(loading); + loading.Start(); + new System.Threading.Thread(() => + { + try + { + responsePackNew = PirSend.Add(control); + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + loading.Hide(); + //if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") + //{ + ///杩欓噷锛氱洃鍚琈TTP鎺ㄩ�佷笅鏉ヤ富棰橈紝鎵嶇煡閬撴槸鍚︽坊鍔犳垚鍔� + dialog.Close();//娣诲姞鎴愬姛鍏抽棴寮圭獥 + AddButton addButton = new AddButton(); + MainPage.BasePageView.AddChidren(addButton); + addButton.Show(control); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + //鐩戝惉Mqtt鎺ㄩ�佷笅鏉ョ姸鎬佺爜鍋氭彁绀� + //View.FailView failView = new View.FailView(); + //failView.ShouError((view) => { + // view.Close(); + // ThreadAddControl(control, dialog); + //}); + //} + //else + //{ + // ErrorShow(responsePackNew); + //} + }); + } + }) + { IsBackground = true }.Start(); + + } + /// <summary> + /// 閿欒鐮佹彁绀� + /// </summary> + /// <param name="responsePackNew"></param> + public void ErrorShow(ResponsePackNew responsePackNew) + { + + if (responsePackNew != null && responsePackNew.Code == "14005") + { + new Intelligence.Automation.LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.gatewayNotOnline)); + + } + else + { + new Intelligence.Automation.LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.saveFail)); + + } + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Pir.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Pir.cs new file mode 100644 index 0000000..23d3c91 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Pir.cs @@ -0,0 +1,48 @@ +锘縰sing System; +using System.Collections.Generic; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class Pir + { + /// <summary> + /// 娣诲姞鎸夐敭鍒楄〃 + /// </summary> + public static List<ButtonObj> BuottonList = new List<ButtonObj>(); + + } + public class ButtonObj + { + public string Key = string.Empty; + /// <summary> + /// #app 鏄剧ず鐨勬枃瀛� + /// </summary> + public string value = string.Empty; + } + public class Control + { + /// <summary> + /// 绾㈠瀹濊澶嘔d + /// </summary> + public string deviceId = "0"; + /// <summary> + /// 绾㈠閬ユ帶鍣ㄥ悕绉� + /// </summary> + public string name = "0"; + /// <summary> + /// 绾㈠閬ユ帶鍣╯pk + /// </summary> + public string spk = "ir.module"; + /// <summary> + /// library=搴撶被鍨�, learn=涓嶉渶瑕侀澶栬拷鍔犲睘鎬� + /// </summary> + public string type = "learn"; + /// <summary> + /// 鐮佺粍鍙� + /// </summary> + public string group_id = "12"; + /// <summary> + /// 绾㈠鐮� + /// </summary> + public List<string> library = new List<string>(); + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs new file mode 100644 index 0000000..9da222a --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs @@ -0,0 +1,339 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + public class PirMain : FrameLayout + { + public PirMain() + { + Tag = "PirView"; + } + public void Show() + { + #region 鐣岄潰甯冨眬 + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.hongwaiyaokong; + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); }; + FrameLayout middFLayout = new FrameLayout(); + middFLayout.Y = Application.GetRealHeight(64); + middFLayout.Height = Application.GetRealHeight(667 - 64); + this.AddChidren(middFLayout); + + FrameLayout pirDeviceFLayout = new FrameLayout(); + pirDeviceFLayout.Y = Application.GetRealHeight(12); + pirDeviceFLayout.X = Application.GetRealWidth(16); + pirDeviceFLayout.Width = Application.GetRealWidth(343); + pirDeviceFLayout.Height = Application.GetRealHeight(187); + pirDeviceFLayout.BackgroundColor = CSS.CSS_Color.view; + pirDeviceFLayout.Radius = (uint)Application.GetRealHeight(12); + middFLayout.AddChidren(pirDeviceFLayout); + + //璁惧绠$悊 + Button text1Btn = new Button + { + Y = Application.GetRealHeight(11), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(120), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + TextAlignment = TextAlignment.CenterLeft, + TextID = StringId.shebeigaunli, + IsBold=true, + }; + pirDeviceFLayout.AddChidren(text1Btn); + + + Button pirIcon = new Button + { + Y = Application.GetRealHeight(47), + X = Application.GetRealWidth(28), + Width = Application.GetRealWidth(66), + Height = Application.GetRealWidth(66), + UnSelectedImagePath = "PirIcon/Infraredtreasure.png", + }; + pirDeviceFLayout.AddChidren(pirIcon); + + //mini鏅鸿兘閬ユ帶鍣� + Button text2Btn = new Button + { + Y = Application.GetRealHeight(70), + X = Application.GetRealWidth(112), + Width = Application.GetRealWidth(120), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textTipColor, + TextAlignment = TextAlignment.CenterLeft, + Text = "mini鏅鸿兘閬ユ帶鍣�", + }; + pirDeviceFLayout.AddChidren(text2Btn); + + // + Button numberDeviceBtn = new Button + { + Y = Application.GetRealHeight(137), + X = Application.GetRealWidth(32), + Width = Application.GetRealWidth(100), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.CenterLeft, + Text = "1" + Language.StringByID(StringId.ge), + IsBold = true, + }; + pirDeviceFLayout.AddChidren(numberDeviceBtn); + //褰撳墠绾㈠閬ユ帶璁惧 + Button numberDeviceTextBtn = new Button + { + Y = numberDeviceBtn.Bottom + Application.GetRealHeight(4), + X = Application.GetRealWidth(32), + Width = Application.GetRealWidth(100), + Height = Application.GetRealHeight(14), + TextSize = TextSize.text10, + TextColor = CSS.CSS_Color.textCancelColor, + TextAlignment = TextAlignment.CenterLeft, + TextID = StringId.dangqianhongwaishebei, + }; + pirDeviceFLayout.AddChidren(numberDeviceTextBtn); + // + Button currDeviceNumberControlBtn = new Button + { + Y = Application.GetRealHeight(137), + X = Application.GetRealWidth(198), + Width = Application.GetRealWidth(80), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.CenterLeft, + Text = "1" + Language.StringByID(StringId.ge), + IsBold = true, + }; + pirDeviceFLayout.AddChidren(currDeviceNumberControlBtn); + //宸叉坊鍔犻仴鎺у櫒 + Button currDeviceNumberControlTextBtn = new Button + { + Y = currDeviceNumberControlBtn.Bottom + Application.GetRealHeight(4), + X = Application.GetRealWidth(198), + Width = Application.GetRealWidth(80), + Height = Application.GetRealHeight(14), + TextSize = TextSize.text10, + TextColor = CSS.CSS_Color.textCancelColor, + TextAlignment = TextAlignment.CenterLeft, + TextID = StringId.yitianjiayaokongqi, + }; + pirDeviceFLayout.AddChidren(currDeviceNumberControlTextBtn); + ///绾㈠瀹濈偣鍑讳簨浠� + FrameLayout clickFLayout = new FrameLayout(); + pirDeviceFLayout.AddChidren(clickFLayout); + clickFLayout.MouseUpEventHandler += (sender,e) => { + + DeviceSet deviceSet = new DeviceSet(); + MainPage.BasePageView.AddChidren(deviceSet); + deviceSet.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + FrameLayout deviceListFLayout = new FrameLayout(); + deviceListFLayout.Y = pirDeviceFLayout.Bottom + Application.GetRealHeight(12); + deviceListFLayout.X = Application.GetRealWidth(16); + deviceListFLayout.Width = Application.GetRealWidth(343); + deviceListFLayout.Height = Application.GetRealHeight(328); + deviceListFLayout.BackgroundColor = CSS.CSS_Color.view; + deviceListFLayout.Radius = (uint)Application.GetRealHeight(12); + middFLayout.AddChidren(deviceListFLayout); + ///娣诲姞閬ユ帶鍣� + Button text3Btn = new Button + { + Y = Application.GetRealHeight(11), + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(100), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + TextAlignment = TextAlignment.CenterLeft, + TextID = StringId.tianjiayaokongqi, + IsBold = true, + }; + deviceListFLayout.AddChidren(text3Btn); + ///绾㈠瀹濆悕绉� + Button deviceNameBtn= new Button + { + Y = Application.GetRealHeight(13), + X = Application.GetRealWidth(161), + Width = Application.GetRealWidth(150), + Height = Application.GetRealHeight(17), + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.CenterRight, + Text = "mini鏅鸿兘閬ユ帶鍣�", + }; + deviceListFLayout.AddChidren(deviceNameBtn); + + //涓嬫媺鍥炬爣 + var dropdownIconBtn = new Button + { + Y = Application.GetRealHeight(13), + X = Application.GetRealWidth(343-8-16), + Width = Application.GetRealWidth(16), + Height = Application.GetRealWidth(16), + UnSelectedImagePath = "PirIcon/dropdown.png", + }; + deviceListFLayout.AddChidren(dropdownIconBtn); + + #endregion + int line = 0; + for (int i = 1, j = 0; i <= 7; i++, j++) + { + var currpirdeviceFLayout = new FrameLayout + { + Width = Application.GetRealWidth(80), + Height = Application.GetRealWidth(80), + X = Application.GetRealWidth(26 + (80 + 25) * j), + Y = Application.GetRealHeight(52 + (80 + 12) * line), + + }; + deviceListFLayout.AddChidren(currpirdeviceFLayout); + var deviceIconBtn = new Button + { + Y = Application.GetRealHeight(8), + X = Application.GetRealWidth(20), + Width = Application.GetRealWidth(40), + Height = Application.GetRealWidth(40), + UnSelectedImagePath = "PirIcon/Infraredtreasure.png", + }; + currpirdeviceFLayout.AddChidren(deviceIconBtn); + var iconNameBtn = new Button + { + Y = deviceIconBtn.Bottom+Application.GetRealHeight(8), + Width = Application.GetRealWidth(80), + Height = Application.GetRealHeight(17), + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.TextualColor, + TextAlignment = TextAlignment.Center, + }; + currpirdeviceFLayout.AddChidren(iconNameBtn); + var clickBtn = new Button { Tag = i }; + currpirdeviceFLayout.AddChidren(clickBtn); + if (i % 3 == 0) + { + //婊′竴琛岄噸缃甹=0鍊�; + j = -1; + line += 1; + } + GetIconAndText(i, deviceIconBtn, iconNameBtn); + clickBtn.MouseUpEventHandler += (sender, e) => + { + //1=绌鸿皟;2=鐢佃;3=椋庢墖;4=鏈洪《鐩�;5=DVD/EVD/VCD;6=鎶曞奖浠�;7=鑷畾涔�; + int if_value =int.Parse(clickBtn.Tag.ToString()); + var list11 = new List<string> { + "鐖变綘", "鍝庡懄","鍩冨強","鍝堝紬鎹㈠3鍝堝紬", "鐖卞痉鍗庡v","淇哄嚑涓柉浜�", + "鎷滀簡", "宸村+", "鐧惧か", "鐧惧悎鍦扮悊璇句綘鎵撶畻", "涓嶅害鑰侀浼忔灔", "姣斿埌涔濈偣", + "杞︾珯","娴嬭瘯","姝ゅ湴", "鎵嶇湅瑙佸ソ寰楀揩","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", + "绛夊緟鏈轰細鍚�","鐨勫鎴�", "澶氬枬鐐�", "鐧昏鍝︾劧鍚�", "鎵撶數璇�", + "鎭╄偆闇滅湅灏辩湅浜�", "楗挎os","鎭堕瓟鍩�","鍎跨鑱斿姩", "鎭╁叚棰楀瓙寮规媺鎷夎¥娲楁尽浜�","鍙戝ぇ瀛︾敓鍙戝彂", + "鐪熷帀瀹砳鍙戝灏�", "鐭ラ亾浣犱粯娆句簡鍙�", "灏厭鍥炲", "鏀硅繘鐨勮瘽", "澶╁ぉ閫熷害鍥炵瓟", "澶ソ浜嗗紑杞�", + "鍑忚偉鐨勭湅杩�","妗″嚭鍙e閭�","濡傛灉瑙夊緱", "寰堣垝鏈嶇殑","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", + "榫欏嵎椋庝簭澶у彂","鍘诲ソ鐪�", "澶氬枬鐐�", "濂芥氮璐瑰ソ", "鎵撶數璇�"}; + System.Threading.Tasks.Task.Run(() => + { + Application.RunOnMainThread(() => + { + switch (if_value) + { + case 1: + { + } + break; + case 2: + { + } + break; + case 3: + { + } + break; + case 4: + { + } + break; + case 5: + { + } + break; + case 6: + { + } + break; + case 7: + { + Method method = new Method(); + method.AddControl(); + + } + break; + + } + + + //BrandList brandList = new BrandList(); + //MainPage.BasePageView.AddChidren(brandList); + //brandList.Show(list11, null); + //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }); + }); + }; + + } + + } + /// <summary> + /// 璁剧疆鍥剧墖鍜屽娉� + /// </summary> + /// <param name="index">绱㈠紩鍊�</param> + /// <param name="deviceIconBtn">鍥炬爣Btn</param> + /// <param name="deviceNameBtn">璁惧澶囨敞Btn</param> + private void GetIconAndText(int index,Button deviceIconBtn, Button deviceNameBtn) { + string iconPath = ""; + int deviceNameIndex=0; + switch (index) + { + case 1: { + iconPath = "PirIcon/air.png"; + deviceNameIndex = StringId.kongtiao; + } break; + case 2: { + iconPath = "PirIcon/tv.png"; + deviceNameIndex = StringId.dianshi; + } break; + case 3: { + iconPath = "PirIcon/fan.png"; + deviceNameIndex = StringId.fengshan; + } break; + case 4: { + iconPath = "PirIcon/stb.png"; + deviceNameIndex = StringId.jidinghe; + } break; + case 5: { + iconPath = "PirIcon/dvd.png"; + deviceNameIndex = StringId.dvd; + } break; + case 6: { + iconPath = "PirIcon/projector.png"; + deviceNameIndex = StringId.touyingyi; + } break; + case 7: { + iconPath = "PirIcon/custom.png"; + deviceNameIndex = StringId.zidingyi; + } break; + + } + deviceIconBtn.UnSelectedImagePath = iconPath; + deviceNameBtn.TextID = deviceNameIndex; + } + + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs new file mode 100644 index 0000000..abb0874 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs @@ -0,0 +1,175 @@ +锘縰sing System; +using System.IO; +using System.Net; +using HDL_ON.DAL.Server; +using Newtonsoft.Json.Linq; +using System.Collections.Generic; +using Shared; + +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice +{ + + public class PirSend + { + /// <summary> + /// 浣忓畢ID + /// </summary> + public static string HomeId + { + get + { + return Entity.DB_ResidenceData.Instance.CurrentRegion.RegionID; + } + } + /// <summary> + /// 鏄惁涓哄叾浠栦富鐢ㄦ埛鍒嗕韩杩囨潵鐨勪綇瀹� + /// </summary> + public static bool IsOthreShare + { + get + { + return Entity.DB_ResidenceData.Instance.CurrentRegion.IsOthreShare; + } + } + /// <summary> + /// 閬ユ帶鍣ㄦ坊鍔� + /// </summary> + /// <returns></returns> + public static ResponsePackNew Add(Control control) + { + var jObject = new JObject { }; + jObject.Add("homeId", HomeId); + jObject.Add("deviceId", control.deviceId); + jObject.Add("name", control.name); + jObject.Add("spk", "ir.module"); + jObject.Add("type", control.type); + if (control.type == "library") + { + //jObject.Add("group_id", "123"); + var libraryjay = new JArray { }; + for (int i = 0; i < control.library.Count; i++) + { + libraryjay.Add(control.library[i]); + } + jObject.Add("library", libraryjay); + } + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_Add); + return responsePackNew; + } + /// <summary> + /// 绾㈠鐮佸涔� + /// </summary> + /// <returns></returns> + public static void CodeStudy(ButtonObj buttonObj, Action<ResponsePackNew> action) + { + //var whichDayJson = jay["whichDay"].ToString(); + //var whichDayAry = Newtonsoft.Json.Linq.JArray.Parse(whichDayJson); + //for (int b = 0; b < whichDayAry.Count; b++) + //{ + // var days = whichDayAry[b].ToString(); + // timer.whichDay.Add(int.Parse(days)); + //} + var job = new JObject { }; + job.Add("key", buttonObj.Key); + job.Add("data_type", "string"); + var valuejArray = new JArray { }; + valuejArray.Add(buttonObj.value); + job.Add("value", valuejArray); + var jArray = new JArray { }; + jArray.Add(job); + var jObject = new JObject { { "homeId", HomeId }, { "deviceId", "0" }, { "attributes", jArray } }; + ResponsePackNew responsePackNew = null; + new System.Threading.Thread(() => + { + + try + { + //鍙戦�佺孩澶栫爜瀛︿範鍛戒护 + responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_CodeStudy); + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + action(responsePackNew); + }); + } + + }) + { IsBackground = true }.Start(); + } + /// <summary> + /// 鑷鎸夐敭鍒犻櫎 + /// </summary> + /// <returns></returns> + public static ResponsePackNew CodeRemove(ButtonObj buttonObj) + { + var job = new JObject { }; + job.Add("key", buttonObj.Key); + job.Add("data_type", "string"); + var valuejArray = new JArray { }; + valuejArray.Add(buttonObj.value); + job.Add("value", valuejArray); + var jArray = new JArray { }; + jArray.Add(job); + var jObject = new JObject { { "homeId", HomeId }, { "deviceId", "0" }, { "attributes", jArray } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_CodeRemove); + return responsePackNew; + } + /// <summary> + /// 鑾峰彇閫昏緫 + /// </summary> + /// <param name="listIdList">閫昏緫ID鍒楄〃</param> + /// <returns></returns> + public static ResponsePackNew GetLogic(List<string> listIdList) + { + var jArray = new JArray { }; + for (int i = 0; i < listIdList.Count; i++) + { + jArray.Add(listIdList[i]); + } + var jObject = new JObject { { "userLogicIds", jArray } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Info); + //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken + if (responsePackNew.Code == StateCode.TOKEN_EXPIRED) + { + RefreshToken(); + GetLogic(listIdList); + } + return responsePackNew; + } + + + + /// <summary> + ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� + /// </summary> + /// <returns></returns> + public static ResponsePackNew RequestServerhomeId(object o, string api_Url, int mTimeout = 20) + { + var requestJson = HttpUtil.GetSignRequestJson(o); + return HttpUtil.RequestHttpsPostFroHome(api_Url, requestJson, mTimeout); + + } + /// <summary> + /// 璇锋眰鏈嶅姟鍣� + /// </summary> + /// <returns></returns> + public static ResponsePackNew RequestServer(object o, string api_Url) + { + var requestJson = HttpUtil.GetSignRequestJson(o); + return HttpUtil.RequestHttpsPost(api_Url, requestJson); + + } + /// <summary> + /// 鍒锋柊Token + /// </summary> + public static void RefreshToken() + { + IMessageCommon.Current.StartRefreshToken(); + } + + } + +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/BrandListView.cs similarity index 90% rename from HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs rename to HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/BrandListView.cs index 2293a25..1d0bfe1 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/BrandListView.cs @@ -4,9 +4,9 @@ using System.Collections.Generic; using System.Text; -namespace HDL_ON.UI.UI2.Intelligence.Automation +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View { - public class EmptyClass : FrameLayout + public class BrandListView : FrameLayout { /// <summary> /// @@ -14,10 +14,8 @@ /// <param name="list">琛ㄧず璇ュ垪琛ㄥ厓绱燗-Z瀛楁瘝绛涢�夋樉绀哄嚭鏉�</param> /// <param name="list6">琛ㄧず璇ュ垪琛ㄥ厓绱犳樉绀哄湪list鍓嶉潰(璇ュ垪琛ㄥ厓绱犱笉鍋欰-Z瀛楁瘝绛涢��),娌℃湁鍙互涓簂ist6=null</param> /// <param name="action">杩斿洖閫変腑鏂囨湰</param> - public void Show(List<string> list, List<string> list6, Action<string> action) + public void Show(List<string> list, List<string> list6, Action<string> action) { - - //string text = "30"; //byte[] bytes = new byte[text.Length / 2]; //for (int i = 0, j = 0; i < bytes.Length; j += 2, i++) @@ -27,8 +25,6 @@ //} ////鎶奲yte鏁扮粍杞崲鎴愭枃瀛� //string str = System.Text.Encoding.UTF8.GetString(bytes); - - var frameLayout = new FrameLayout { BackgroundColor = CSS.CSS_Color.viewTop, @@ -59,7 +55,14 @@ UnSelectedImagePath = "LogicIcon/back.png", }; frameLayout.AddChidren(backBtn); - backBtn.MouseUpEventHandler += (sen, e) => + var clickBackBtn = new Button + { + Width = Application.GetRealWidth(12 + 16 + 20), + Height = Application.GetRealWidth(20 + 20), + Y = Application.GetRealHeight(32), + }; + frameLayout.AddChidren(clickBackBtn); + clickBackBtn.MouseUpEventHandler += (sen, e) => { this.RemoveFromParent(); }; @@ -86,16 +89,6 @@ }; this.AddChidren(fram); - - //var list11 = new List<string> { - // "鐖变綘", "鍝庡懄","鍩冨強","鍝堝紬鎹㈠3鍝堝紬", "鐖卞痉鍗庡v","淇哄嚑涓柉浜�", - // "鎷滀簡", "宸村+", "鐧惧か", "鐧惧悎鍦扮悊璇句綘鎵撶畻", "涓嶅害鑰侀浼忔灔", "姣斿埌涔濈偣", - // "杞︾珯","娴嬭瘯","姝ゅ湴", "鎵嶇湅瑙佸ソ寰楀揩","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - // "绛夊緟鏈轰細鍚�","鐨勫鎴�", "澶氬枬鐐�", "鐧昏鍝︾劧鍚�", "鎵撶數璇�", - // "鎭╄偆闇滅湅灏辩湅浜�", "楗挎os","鎭堕瓟鍩�","鍎跨鑱斿姩", "鎭╁叚棰楀瓙寮规媺鎷夎¥娲楁尽浜�","鍙戝ぇ瀛︾敓鍙戝彂", - // "鐪熷帀瀹砳鍙戝灏�", "鐭ラ亾浣犱粯娆句簡鍙�", "灏厭鍥炲", "鏀硅繘鐨勮瘽", "澶╁ぉ閫熷害鍥炵瓟", "澶ソ浜嗗紑杞�", - // "鍑忚偉鐨勭湅杩�","妗″嚭鍙e閭�","濡傛灉瑙夊緱", "寰堣垝鏈嶇殑","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - // "榫欏嵎椋庝簭澶у彂","鍘诲ソ鐪�", "澶氬枬鐐�", "濂芥氮璐瑰ソ", "鎵撶數璇�"}; if (list == null) { list = new List<string>(); @@ -105,7 +98,6 @@ list6 = new List<string>(); } var list1 = GetDateList(list); - list1.Add("1"); list1.InsertRange(0, list6); @@ -140,7 +132,7 @@ Width = Application.GetRealWidth(10 + 6), }; fram.AddChidren(a_zFra); - var list2 = GetList(); + var list2 = GetList(); for (int i = 0; i < list2.Count; i++) { @@ -183,7 +175,7 @@ } #endregion - RefreshLayout(vv, list1,action); + RefreshLayout(vv, list1, action); @@ -195,7 +187,7 @@ /// </summary> /// <param name="vv">鐖舵帶浠�</param> /// <param name="list">鏄剧ず鍒楄〃</param> - private void RefreshLayout(VerticalScrolViewLayout vv, List<string> list,Action<string> action) + private void RefreshLayout(VerticalScrolViewLayout vv, List<string> list, Action<string> action) { vv.RemoveAll(); foreach (var str in list) @@ -236,8 +228,8 @@ clickBtn.MouseUpEventHandler += (sen, e) => { //鎵惧埌绱㈠紩鍊� - var index = list.IndexOf(clickBtn.Tag.ToString()); - + //var index = list.IndexOf(); + action(clickBtn.Tag.ToString()); this.RemoveFromParent(); }; @@ -261,7 +253,6 @@ return false; } } - /// <summary> /// 鑾峰彇鏄剧ず鍒楄〃 /// </summary> @@ -300,7 +291,6 @@ } return list; } - /// <summary> /// 鑾峰彇A-Z瀛楁瘝鍒楄〃 /// </summary> @@ -321,7 +311,6 @@ } return list; } - /// <summary> /// 鑾峰彇姹夊瓧棣栧瓧姣� /// </summary> diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/Buttons.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/Buttons.cs new file mode 100644 index 0000000..db38adc --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/Buttons.cs @@ -0,0 +1,102 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + public class Buttons + { + /// <summary> + /// 鍔ㄦ�佸姞杞芥寜閽垪琛� + /// </summary> + /// <param name="buttonFLayout">鐖舵帶浠�</param> + /// <param name="buttonList">鏁版嵁鍒楄〃</param> + /// <param name="action">鍥炶皟</param> + /// <param name="line">琛ㄧず澶氬皯琛�</param> + /// <param name="line">琛ㄧず涓�琛屽姞杞藉灏戜釜鎸夐挳</param> + public void AddButton(FrameLayout buttonFLayout, List<string> buttonList, Action<string> action, int line = 7, int sum = 3) + { + VerticalScrolViewLayout vv = new VerticalScrolViewLayout(); + buttonFLayout.AddChidren(vv); + for (int i = 0; i < line; i++) + { + var currFLayout = new FrameLayout { Height = Application.GetRealHeight(16 + 44) }; + vv.AddChidren(currFLayout); + for (int a = i * sum + 1, b = 0; a <= buttonList.Count; a++, b++) + { + var name = buttonList[a - 1]; + var nameBtn = new Button + { + Y = Application.GetRealHeight(16), + X = Application.GetRealWidth(24 + (98 + 16) * b), + // Gravity=Gravity.CenterVertical, + Width = Application.GetRealWidth(98), + Height = Application.GetRealHeight(44), + Text = name, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.Center, + Radius = (uint)Application.GetRealHeight(8), + BorderWidth = 1, + BorderColor = CSS.CSS_Color.textCancelColor, + }; + currFLayout.AddChidren(nameBtn); + nameBtn.MouseUpEventHandler += (sender, e) => + { + action(nameBtn.Text); + }; + if (a % sum == 0) + { + break; + } + } + if (i == line - 1) + { + //鏈�鍚庝竴涓厓绱犲悗闈㈠姞涓�涓�20楂樺害闂撮殧 + vv.AddChidren(new FrameLayout { Height = Application.GetRealHeight(20) }); + } + } + + } + /// <summary> + /// 鑾峰彇鍒楄〃 + /// </summary> + /// <param name="tag">鏍囪鍊�</param> + /// <returns></returns> + public List<string> GetList(string tag) + { + List<string> list = new List<string>(); + switch (tag) + { + case "榛樿鎸夐挳": + { + list.Add(Language.StringByID(StringId.dianyuan)); + list.Add(Language.StringByID(StringId.yinliangjia)); + list.Add(Language.StringByID(StringId.yinliangjian)); + list.Add(Language.StringByID(StringId.pindaojia)); + list.Add(Language.StringByID(StringId.pindaojian)); + list.Add(Language.StringByID(StringId.shang)); + list.Add(Language.StringByID(StringId.xia)); + list.Add(Language.StringByID(StringId.zuo)); + list.Add(Language.StringByID(StringId.you)); + list.Add(Language.StringByID(StringId.jingyin)); + list.Add(Language.StringByID(StringId.queren)); + list.Add(Language.StringByID(StringId.bofang)); + list.Add(Language.StringByID(StringId.xiayibu)); + list.Add(Language.StringByID(StringId.tuichu)); + list.Add(Language.StringByID(StringId.caidan)); + list.Add(Language.StringByID(StringId.zanting)); + list.Add(Language.StringByID(StringId.fanhui)); + list.Add(Language.StringByID(StringId.tingzhi)); + list.Add(Language.StringByID(StringId.zhuye)); + list.Add(Language.StringByID(StringId.kuaijin)); + list.Add(Language.StringByID(StringId.kuaitui)); + list.Add(Language.StringByID(StringId.dingshi)); + + } + break; + } + return list; + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/FailView.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/FailView.cs new file mode 100644 index 0000000..f224e9d --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/FailView.cs @@ -0,0 +1,65 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + public class FailView + { + public void ShouError(Action<Dialog> action) + { + Dialog dialog = new Dialog(); + #region 鐣岄潰甯冨眬 + dialog.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.tianjiayaokongqi; + dialog.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { dialog.Close(); }; + + FrameLayout fLayout = new FrameLayout + { + Y = Application.GetRealHeight(64), + BackgroundColor = CSS.CSS_Color.textWhiteColor, + Height = Application.GetRealHeight(667-64), + Width = Application.GetRealWidth(375), + }; + dialog.AddChidren(fLayout); + + //鍥炬爣 + Button iconBtn = new Button + { + Y = Application.GetRealHeight(106), + X = Application.GetRealWidth(98), + Width = Application.GetRealWidth(180), + Height = Application.GetRealWidth(180), + UnSelectedImagePath = "PirIcon/failed.png", + }; + fLayout.AddChidren(iconBtn); + + //娣诲姞澶辫触 + Button text1Btn = new Button + { + Width = Application.GetRealWidth(375 - 32), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(302), + X = Application.GetRealWidth(16), + TextID = StringId.tianjiashibai, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textRedColor, + TextAlignment = TextAlignment.Center, + }; + fLayout.AddChidren(text1Btn); + //閲嶈瘯 + View.SaveView saveView = new View.SaveView(); + dialog.AddChidren(saveView.FLayoutView()); + saveView.btnSave.TextID = StringId.chongshii; + saveView.frameLayout.BackgroundColor = CSS.CSS_Color.viewLine; + saveView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + dialog.Show(); + saveView.btnClick.MouseUpEventHandler += (sender,e) => { + action(dialog); + }; + #endregion + + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/PatchView.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/PatchView.cs new file mode 100644 index 0000000..48f3c25 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/PatchView.cs @@ -0,0 +1,96 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + + public class PatchView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(44), + BackgroundColor = CSS.CSS_Color.textWhiteColor, + }; + + /// <summary> + /// 鏂囨湰鎻忚堪1 + /// </summary> + public Button btnText1 = new Button + { + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(300), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textColor, + TextSize = TextSize.text14, + Gravity = Gravity.CenterVertical, + TextAlignment = TextAlignment.CenterLeft, + }; + + /// <summary> + /// 鏂囨湰鎻忚堪2 + /// </summary> + public Button btnText2 = new Button + { + X = Application.GetRealWidth(375 - 40 - 150), + Width = Application.GetRealWidth(150), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textTipColor, + TextSize = TextSize.text14, + Gravity = Gravity.CenterVertical, + TextAlignment = TextAlignment.CenterRight, + }; + /// <summary> + /// 鍥炬爣 + /// </summary> + public Button btnNextIcon = new Button + { + Width = Application.GetRealWidth(16), + Height = Application.GetRealWidth(16), + UnSelectedImagePath = "PirIcon/next.png", + X = Application.GetRealWidth(343), + Gravity = Gravity.CenterVertical, + }; + + /// <summary> + /// 绾� + /// </summary> + public Button btnLine = new Button + { + Width = Application.GetRealWidth(343), + X = Application.GetRealWidth(16), + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + + }; + + public Button btnClick = new Button + { + Height = Application.GetRealHeight(44), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView(bool if_bool = true) + { + frameLayout.AddChidren(btnText1); + frameLayout.AddChidren(btnText2); + if (if_bool) + { + btnText2.X = Application.GetRealWidth(375 - 40 - 150); + frameLayout.AddChidren(btnNextIcon); + } + else + { + btnText2.X = Application.GetRealWidth(375 - 16 - 150); + } + btnLine.Y = frameLayout.Height - 1; + frameLayout.AddChidren(btnLine); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/ReplicationView.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/ReplicationView.cs new file mode 100644 index 0000000..fbebc91 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/ReplicationView.cs @@ -0,0 +1,69 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +using System.Collections.Generic; +using System.Text; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + public class ReplicationView + { + Dialog dialog = new Dialog(); + /// <summary> + /// + /// </summary> + public void Show() + { + #region 鐣岄潰甯冨眬 + dialog.BackgroundColor = CSS.CSS_Color.viewMiddle; + PirDevice.View.TopView topView = new View.TopView(); + topView.topNameBtn.TextID = StringId.fuzhiyaokonggongnneg; + dialog.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { dialog.Close();}; + FrameLayout frameLayout = new FrameLayout(); + frameLayout.Height = Application.GetRealHeight(667 - 64); + frameLayout.Y = Application.GetRealHeight(64); + // frameLayout.BackgroundColor = CSS.CSS_Color.textWhiteColor; + dialog.AddChidren(frameLayout); + var textBtn = new Button + { + Y = Application.GetRealHeight(24), + X = Application.GetRealWidth(10), + Width = Application.GetRealWidth(375 - 20), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.Center, + TextID = StringId.duizhunanxiaanniu, + }; + frameLayout.AddChidren(textBtn); + + var icon1Btn = new Button + { + Y = Application.GetRealHeight(91), + X = Application.GetRealWidth((375 - 149) / 2), + Width = Application.GetRealWidth(149), + Height = Application.GetRealHeight(95), + UnSelectedImagePath = "PirIcon/icon1.png", + }; + frameLayout.AddChidren(icon1Btn); + var icon2Btn = new Button + { + Y = Application.GetRealHeight(289), + X = Application.GetRealWidth(122), + Width = Application.GetRealWidth(182), + Height = Application.GetRealHeight(314), + UnSelectedImagePath = "PirIcon/icon2.png", + }; + frameLayout.AddChidren(icon2Btn); + dialog.Show(); + #endregion + + } + /// <summary> + /// 绉婚櫎褰撳墠鐣岄潰 + /// </summary> + public void RemView() { + dialog.Close(); + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/SaveView.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/SaveView.cs new file mode 100644 index 0000000..37e24d9 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/SaveView.cs @@ -0,0 +1,52 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + public class SaveView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(TextSize.view667 - 76), + Height = Application.GetRealHeight(76), + Width = Application.GetRealWidth(TextSize.view375), + Gravity = Gravity.BottomCenter,//缃簳鐨勫睘鎬� + BackgroundColor = CSS.CSS_Color.view, + + }; + /// <summary> + /// 淇濆瓨 + /// </summary> + public Button btnSave = new Button + { + Width = Application.GetRealWidth(220), + Height = Application.GetRealHeight(44), + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(78), + TextID = StringId.save, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textWhiteColor, + TextAlignment = TextAlignment.Center, + BackgroundColor = CSS.CSS_Color.btnSaveBackgroundColor, + Radius = (uint)Application.GetRealHeight(22), + + }; + public Button btnClick = new Button + { + Height = Application.GetRealHeight(76), + }; + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(btnSave); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TipView.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TipView.cs new file mode 100644 index 0000000..5d70028 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TipView.cs @@ -0,0 +1,179 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.CSS; +using HDL_ON.UI.Music; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + public class TipView + { + /// <summary> + /// 澶ф鍦嗚鍊� + /// </summary> + public int RradiusFrameLayout = 15; + /// <summary> + /// 灏忔鍦嗚鍊� + /// </summary> + public int radiusEditFrameLayout = 4; + + /// <summary> + /// 杈撳叆妗� + /// </summary> + /// <param name="confirmAction">鍥炶皟鍑芥暟</param> + public void InputBox(string tnputEditTxet, Action<string, Dialog> confirmAction,bool if_bool=true) + { + Dialog dialog = new Dialog() + { + BackgroundColor = MusicColor.PopupBackgroundColor, + }; + + FrameLayout whiteView = new FrameLayout() + { + //Gravity = Gravity.Center, + X = Application.GetRealWidth(53), + Y = Application.GetRealHeight(264), + Width = Application.GetRealWidth(270), + Height = Application.GetRealHeight(201), + BackgroundColor = MusicColor.WhiteColor, + BorderColor = 0x00000000, + BorderWidth = 0, + Radius = (uint)Application.GetRealHeight(RradiusFrameLayout), + }; + dialog.AddChidren(whiteView); + + Button btnTitle = new Button() + { + Y = Application.GetRealHeight(20), + X = Application.GetRealWidth(35), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(200), + TextColor = MusicColor.SelectedColor, + TextSize = TextSize.Text16, + TextAlignment = TextAlignment.Center, + TextID = StringId.shuruyaokongqimingcheng, + + }; + whiteView.AddChidren(btnTitle); + + FrameLayout editBjView = new FrameLayout() + { + // Gravity = Gravity.CenterHorizontal, + Y = btnTitle.Bottom + Application.GetRealHeight(16), + X = Application.GetRealWidth(24), + Width = Application.GetRealWidth(222), + Height = Application.GetRealHeight(40), + BackgroundColor = MusicColor.ViewColor, + BorderColor = 0x00000000, + BorderWidth = 0, + Radius = (uint)Application.GetMinRealAverage(radiusEditFrameLayout), + }; + whiteView.AddChidren(editBjView); + + EditText editText = new EditText() + { + X = Application.GetRealWidth(12), + Y = Application.GetRealHeight(10), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(20), + Text = tnputEditTxet, + TextColor = MusicColor.TextColor, + TextSize = TextSize.Text14, + TextAlignment = TextAlignment.CenterLeft, + }; + editBjView.AddChidren(editText); + + Button clearIconBtn = new Button + { + X = Application.GetRealWidth(194), + Y = Application.GetRealHeight(8), + Width = Application.GetRealWidth(24), + Height = Application.GetRealWidth(24), + UnSelectedImagePath = "MusicIcon/clear.png", + }; + editBjView.AddChidren(clearIconBtn); + clearIconBtn.MouseUpEventHandler += (sender, e) => + { + editText.Text = ""; + }; + + + Button btnTipText = new Button + { + X = Application.GetRealWidth(24), + Y = editBjView.Bottom + Application.GetRealHeight(12), + Width = Application.GetRealWidth(211), + Height = Application.GetRealHeight(35), + Text = Language.StringByID(StringId.fengleichazhao).Replace("{\\r\\n}", "\r\n"), + IsMoreLines = true, + TextColor = MusicColor.MusicNoTxetColor, + TextSize = TextSize.Text12, + TextAlignment = TextAlignment.CenterLeft, + }; + whiteView.AddChidren(btnTipText); + + Button btnLine = new Button() + { + Y = whiteView.Height -Application.GetRealHeight(44 + 1), + Height = Application.GetRealHeight(1), + BackgroundColor = MusicColor.LineColor, + }; + whiteView.AddChidren(btnLine); + + Button btnCancel = new Button() + { + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = MusicColor.TextCancelColor, + TextSize = TextSize.Text16, + TextID = StringId.cancelMusic, + Gravity = Gravity.BottomLeft, + }; + whiteView.AddChidren(btnCancel); + btnCancel.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomLeft); + + Button btnConfirm = new Button() + { + X = btnCancel.Right, + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = MusicColor.WhiteColor, + IsBold = true, + TextSize = TextSize.Text16, + TextID = StringId.confirmMusic, + BackgroundColor = MusicColor.SelectedColor, + Gravity = Gravity.BottomRight, + }; + whiteView.AddChidren(btnConfirm); + btnConfirm.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomRight); + dialog.Show(); + btnCancel.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + }; + + + + btnConfirm.MouseUpEventHandler += (sender, e) => + { + if (string.IsNullOrEmpty(editText.Text.Trim())) + { + return; + } + confirmAction(editText.Text.Trim(), dialog); + if (if_bool) { + dialog.Close(); + } + }; + + } + + + + + + } +} diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TopView.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TopView.cs new file mode 100644 index 0000000..65015f8 --- /dev/null +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/View/TopView.cs @@ -0,0 +1,87 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View +{ + public class TopView + { + #region 鏈�涓婇潰閭e潡鎺т欢 + /// <summary> + /// 鏈�涓婇潰鍧梀iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTop, + Height = Application.GetRealHeight(64), + Width = Application.GetRealWidth(375), + }; + /// <summary> + /// 鏍囬Btn + /// </summary> + public Button topNameBtn = new Button + { + TextSize = TextSize.text18, + TextColor = CSS.CSS_Color.textColor, + Width = Application.GetRealWidth(TextSize.view375 - 60 - 60), + Height = Application.GetRealHeight(25), + Y = Application.GetRealHeight(30), + X = Application.GetRealWidth(60) + }; + /// <summary> + /// 鍚庨��Btn + /// </summary> + public Button backBtn = new Button + { + Width = Application.GetRealWidth(12), + Height = Application.GetRealWidth(20), + X = Application.GetRealWidth(TextSize.left16), + Y = Application.GetRealHeight(32), + UnSelectedImagePath = "LogicIcon/back.png", + + }; + /// <summary> + /// 鍥炬爣Btn + /// </summary> + public Button topIconBtn = new Button + { + Y = Application.GetRealHeight(29), + X = Application.GetRealWidth(337), + Width = Application.GetRealWidth(28), + Height = Application.GetRealWidth(28), + UnSelectedImagePath = "PirIcon/adddevice.png", + Visible = false, + }; + /// <summary> + /// 澧炲姞鐑敭澶у皬Btn + /// </summary> + public Button clickBackBtn = new Button + { + Width = Application.GetRealWidth(16 + 12 + 16), + Height = Application.GetRealHeight(64), + }; + /// <summary> + /// 璁剧疆鍥炬爣澧炲姞鐑敭澶у皬 + /// </summary> + public Button clickSetBtn = new Button + { + X = Application.GetRealWidth(337 - 37), + Width = Application.GetRealWidth(28 + 37), + Height = Application.GetRealWidth(28 + 7 + 29), + }; + /// <summary> + /// 鏈�涓婇潰鐨勯偅鍧楁柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(topNameBtn); + frameLayout.AddChidren(backBtn); + frameLayout.AddChidren(topIconBtn); + frameLayout.AddChidren(clickBackBtn); + frameLayout.AddChidren(clickSetBtn); + return frameLayout; + } + #endregion + } +} + diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorDoorWinwsPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorDoorWinwsPage.cs index e6ae4b0..65c7aa3 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorDoorWinwsPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorDoorWinwsPage.cs @@ -40,6 +40,12 @@ this.RefreshNowDeviceStatuMemory(this.device); //鍒锋柊鐣岄潰鐘舵�� this.RefreshFormStatu(); + //璇诲彇鐘舵�� + new System.Threading.Thread(() => + { + DriverLayer.Control.Ins.SendReadCommand(device); + }) + { IsBackground = true }.Start(); } /// <summary> @@ -111,7 +117,7 @@ var temp = device.status.Find((sta) => sta.key == FunctionAttributeKey.Status); if (temp != null) { - if (temp.value == "true") + if (temp.value == "open") { btnIcon.IsSelected = true; btnSuctionView.TextID = StringId.Open; @@ -136,11 +142,27 @@ /// </summary> private void RefreshNowDeviceStatuMemory(Function i_LocalDevice) { - foreach (var data in i_LocalDevice.status) - { - //寮�鍏� - //if (data.key == "on_off") { this.weepRobotData.Cleaning = data.value.ToLower() == "on"; } - } + //foreach (var data in i_LocalDevice.status) + //{ + // if (data.key == FunctionAttributeKey.Status) + // { + // Application.RunOnMainThread(() => + // { + // if (data.value.ToLower() == "open") + // { + // this.btnIcon.IsSelected = true; + // this.btnSuctionView.IsSelected = true; + // this.btnSuctionView.TextID = StringId.Open; + // } + // else + // { + // this.btnIcon.IsSelected = false; + // this.btnSuctionView.IsSelected = false; + // this.btnSuctionView.TextID = StringId.Close; + // } + // }); + // } + //} } #endregion diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs index b2906df..c1fbef7 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorSmokePage.cs @@ -40,6 +40,12 @@ this.RefreshNowDeviceStatuMemory(this.device); //鍒锋柊鐣岄潰鐘舵�� this.RefreshFormStatu(); + //璇诲彇鐘舵�� + new System.Threading.Thread(() => + { + DriverLayer.Control.Ins.SendReadCommand(device); + }) + { IsBackground = true }.Start(); } /// <summary> @@ -111,7 +117,7 @@ var temp = device.status.Find((sta) => sta.key == FunctionAttributeKey.Status); if (temp != null) { - if (temp.value == "true") + if (temp.value == "alarm") { btnIcon.IsSelected = true; btnSuctionView.TextID = StringId.InAlarm; @@ -136,11 +142,24 @@ /// </summary> private void RefreshNowDeviceStatuMemory(Function i_LocalDevice) { - foreach (var data in i_LocalDevice.status) - { - //寮�鍏� - //if (data.key == "on_off") { this.weepRobotData.Cleaning = data.value.ToLower() == "on"; } - } + //foreach (var data in i_LocalDevice.status) + //{ + // if (data.key == "status") + // { + // if (data.value.ToLower() == "alarm") + // { + // this.btnIcon.IsSelected = true; + // this.btnSuctionView.IsSelected = true; + // this.btnSuctionView.TextID = StringId.InAlarm; + // } + // else + // { + // this.btnIcon.IsSelected = false; + // this.btnSuctionView.IsSelected = false; + // this.btnSuctionView.TextID = StringId.SensorNormalState; + // } + // } + //} } #endregion diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorWaterImmersionPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorWaterImmersionPage.cs index 9fec246..6c1071e 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorWaterImmersionPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/ArmSensor/SensorWaterImmersionPage.cs @@ -40,6 +40,12 @@ this.RefreshNowDeviceStatuMemory(this.device); //鍒锋柊鐣岄潰鐘舵�� this.RefreshFormStatu(); + //璇诲彇鐘舵�� + new System.Threading.Thread(() => + { + DriverLayer.Control.Ins.SendReadCommand(device); + }) + { IsBackground = true }.Start(); } /// <summary> @@ -111,7 +117,7 @@ var temp = device.status.Find((sta) => sta.key == FunctionAttributeKey.Status); if (temp != null) { - if (temp.value == "true") + if (temp.value == "alarm") { btnIcon.IsSelected = true; btnSuctionView.TextID = StringId.WaterLeakage; @@ -136,11 +142,21 @@ /// </summary> private void RefreshNowDeviceStatuMemory(Function i_LocalDevice) { - foreach (var data in i_LocalDevice.status) - { - //寮�鍏� - //if (data.key == "on_off") { this.weepRobotData.Cleaning = data.value.ToLower() == "on"; } - } + //foreach (var data in i_LocalDevice.status) + //{ + // if (data.value.ToLower() == "alarm") + // { + // this.btnIcon.IsSelected = true; + // this.btnSuctionView.IsSelected = true; + // this.btnSuctionView.TextID = StringId.WaterLeakage; + // } + // else + // { + // this.btnIcon.IsSelected = false; + // this.btnSuctionView.IsSelected = false; + // this.btnSuctionView.TextID = StringId.SensorNormalState; + // } + //} } #endregion diff --git a/HDL_ON/UI/UI2/FuntionControlView/Electrical/ClothesHangerPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Electrical/ClothesHangerPage.cs index 96b2b0f..3e848e6 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Electrical/ClothesHangerPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Electrical/ClothesHangerPage.cs @@ -1,21 +1,475 @@ -锘縰sing System; -using Shared; +锘縰sing Shared; +using HDL_ON.Stan; using HDL_ON.UI.CSS; +using HDL_ON.Entity; +using System.Collections.Generic; +using System; +using HDL_ON.DriverLayer; namespace HDL_ON.UI { /// <summary> /// 鏅捐。鏋剁晫闈� /// </summary> - public class ClothesHangerPage : FrameLayout + public class ClothesHangerPage : DeviceFunctionCardCommonForm { - public ClothesHangerPage() + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 鍥炬爣 + /// </summary> + private Button btnIcon = null; + /// <summary> + /// 涓婂崌 + /// </summary> + Button btnUp; + /// <summary> + /// 鍋滄 + /// </summary> + Button btnStop; + /// <summary> + /// 涓嬮檷 + /// </summary> + Button btnDown; + /// <summary> + /// 鐑樺共鎺т欢 + /// </summary> + ClothesHangerControl hotDryView; + /// <summary> + /// 椋庡共鎺т欢 + /// </summary> + ClothesHangerControl windDryView; + /// <summary> + /// 娑堟瘨鎺т欢 + /// </summary> + ClothesHangerControl disinfectView; + /// <summary> + /// 鐓ф槑鎺т欢 + /// </summary> + ClothesHangerControl lightingView; + + + #endregion + + #region 鈻� 鍒濆鍖朹____________________________ + + /// <summary> + /// 鍒濆鍖栫櫧鑹插尯鍩熺殑鍐呭 + /// </summary> + public override void InitFrameWhiteContent() { + base.ShowColltionButton = false; + base.SetTitleText(Language.StringByID(StringId.Electric)); + + //鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹� + this.InitFrameWhiteContent1(); + + //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛� + this.RefreshNowDeviceStatuMemory(this.device); + //鍒锋柊鐣岄潰鐘舵�� + this.RefreshFormStatu(); + //璇诲彇鐘舵�� + new System.Threading.Thread(() => + { + Control.Ins.SendReadCommand(device); + }) + { IsBackground = true }.Start(); } - public void LoadPage() + /// <summary> + /// 鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹� + /// </summary> + private void InitFrameWhiteContent1() { + btnIcon = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(85), + Width = Application.GetRealWidth(195), + Height = Application.GetRealHeight(121), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIcon.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerBgIconOn.png", + }; + FrameWhiteCentet1.AddChidren(btnIcon); + #region 涓婂崌 鍋滄 涓嬮檷 + btnUp = new Button() + { + X = Application.GetRealWidth(42), + Y = Application.GetRealHeight(236), + Width = Application.GetRealWidth(28), + Height = Application.GetRealWidth(28), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIcon.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerUpIconOn.png", + }; + FrameWhiteCentet1.AddChidren(btnUp); + + btnStop = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(236), + Width = Application.GetRealWidth(28), + Height = Application.GetRealWidth(28), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIcon.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerStopIconOn.png", + }; + FrameWhiteCentet1.AddChidren(btnStop); + + btnDown = new Button() + { + X = Application.GetRealWidth(257), + Y = Application.GetRealHeight(236), + Width = Application.GetRealWidth(28), + Height = Application.GetRealWidth(28), + UnSelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIcon.png", + SelectedImagePath = "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDownIconOn.png", + }; + FrameWhiteCentet1.AddChidren(btnDown); + + #endregion + + #region 鑿滃崟 + var menu = new List<string>() { + FunctionAttributeKey.HotDry, + FunctionAttributeKey.WindDry, + FunctionAttributeKey.Disinfect, + FunctionAttributeKey.OnOff + }; + + int index = 0; + List<string> attrs = device.GetAttributes(); + + hotDryView = new ClothesHangerControl( + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIcon.png", + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerHotDryIconOn.png", + Language.StringByID(StringId.HotDry), + device.GetAttrState(FunctionAttributeKey.HotDryTimeLeft)); + hotDryView.X = 0; + hotDryView.Y = Application.GetRealHeight(304); + hotDryView.Width = Application.GetRealWidth(96); + hotDryView.Height = Application.GetRealHeight(74);//28 29 14 3 + if (attrs.Contains(menu[0])) + { + FrameWhiteCentet1.AddChidren(hotDryView); + + EventHandler<MouseEventArgs> eventHandler = (sender, e) => { + device.SetAttrState(FunctionAttributeKey.HotDry, "true"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.HotDry, "true"); + Control.Ins.SendWriteCommand(device, d); + }; + hotDryView.SetThouchEvent(eventHandler); + + index++; + } + + windDryView = new ClothesHangerControl( + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIcon.png", + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerWindDryIconOn.png", + Language.StringByID(StringId.WindDry), + device.GetAttrState(FunctionAttributeKey.WindDryTimeLeft)); + windDryView.Y = Application.GetRealHeight(304); + windDryView.Width = Application.GetRealWidth(96); + windDryView.Height = Application.GetRealHeight(74); + if (attrs.Contains(menu[1])) + { + if(index == 1) + { + windDryView.Gravity = Gravity.CenterHorizontal; + } + FrameWhiteCentet1.AddChidren(windDryView); + + EventHandler<MouseEventArgs> eventHandler = (sender, e) => { + device.SetAttrState(FunctionAttributeKey.WindDry, "true"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.WindDry, "true"); + Control.Ins.SendWriteCommand(device, d); + }; + windDryView.SetThouchEvent(eventHandler); + + index++; + } + + + + disinfectView = new ClothesHangerControl( + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIcon.png", + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerDisinfectIconOn.png", + Language.StringByID(StringId.Disinfect), + device.GetAttrState(FunctionAttributeKey.DisinfectTimeLeft)); + disinfectView.Y = Application.GetRealHeight(304); + disinfectView.Width = Application.GetRealWidth(96); + disinfectView.Height = Application.GetRealHeight(74); + if (attrs.Contains(menu[2])) + { + if(index == 1) + { + disinfectView.Gravity = Gravity.CenterHorizontal; + } + else if (index == 2) + { + disinfectView.X = Application.GetRealWidth(266 - 33); + } + FrameWhiteCentet1.AddChidren(disinfectView); + + EventHandler<MouseEventArgs> eventHandler = (sender, e) => { + device.SetAttrState(FunctionAttributeKey.Disinfect, "true"); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.Disinfect, "true"); + Control.Ins.SendWriteCommand(device, d); + }; + disinfectView.SetThouchEvent(eventHandler); + + index++; + } + + lightingView = new ClothesHangerControl( + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIcon.png", + "FunctionIcon/Electrical/ClothesHanger/ClothesHangerLightIconOn.png", + Language.StringByID(StringId.Lighting), + ""); + lightingView.Width = Application.GetRealWidth(96); + lightingView.Height = Application.GetRealHeight(74); + if (attrs.Contains(menu[3])) + { + if(index >2) + { + lightingView.Y = Application.GetRealHeight(409); + }else + { + lightingView.Y = Application.GetRealHeight(304); + if (index == 1) + { + lightingView.Gravity = Gravity.CenterHorizontal; + } + else if (index == 2) + { + lightingView.X = Application.GetRealWidth(266 - 33); + } + } + FrameWhiteCentet1.AddChidren(lightingView); + + EventHandler<MouseEventArgs> eventHandler = (sender, e) => { + string onoff = lightingView.Lighting ? "off" : "on"; + device.SetAttrState(FunctionAttributeKey.OnOff, onoff); + Dictionary<string, string> d = new Dictionary<string, string>(); + d.Add(FunctionAttributeKey.OnOff, onoff); + Control.Ins.SendWriteCommand(device, d); + }; + lightingView.SetThouchEvent(eventHandler); + + index++; + } + + #endregion } + #endregion + + #region 鈻� 璁惧鐘舵�佸弽棣坃______________________ + + /// <summary> + /// 璁惧鐘舵�佸弽棣� + /// </summary> + /// <param name="i_LocalDevice"></param> + public override void DeviceStatuPush(Function i_LocalDevice) + { + //涓嶆槸鍚屼竴涓笢瑗� + if (this.device.sid != i_LocalDevice.sid) { return; } + + //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛� + this.RefreshNowDeviceStatuMemory(i_LocalDevice); + //鍒锋柊鐣岄潰鐘舵�� + this.RefreshFormStatu(); + } + + #endregion + + #region 鈻� 鍙戦�佸悇绉嶅懡浠______________________ + + #endregion + + #region 鈻� 鍒锋柊鐣岄潰鐘舵�乢______________________ + + /// <summary> + /// 鍒锋柊鐣岄潰鐘舵�� + /// </summary> + private void RefreshFormStatu() + { + Application.RunOnMainThread(() => { + btnIcon.IsSelected = true; + #region 鐐逛寒鏂囨湰 + var hotDryTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.HotDry); + if (hotDryTemp != null) + { + hotDryView.SetViewStatus(hotDryTemp.value == "true"); + } + var windDryTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.WindDry); + if (windDryTemp != null) + { + windDryView.SetViewStatus(windDryTemp.value == "true"); + } + var disinfectTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.Disinfect); + if (disinfectTemp != null) + { + disinfectView.SetViewStatus(disinfectTemp.value == "true"); + } + var lightTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.OnOff); + if (lightTemp != null) + { + lightingView.SetViewStatus(lightTemp.value == "on"); + } + #endregion + + #region 淇敼鏃堕棿 + var hotDryTimeLeftTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.HotDryTimeLeft); + if (hotDryTimeLeftTemp != null) + { + hotDryView.ChangeTime(hotDryTimeLeftTemp.value); + } + var windDryTimeLeftTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.WindDryTimeLeft); + if (windDryTimeLeftTemp != null) + { + windDryView.ChangeTime(windDryTimeLeftTemp.value); + } + var disinfectTimeLeftTemp = device.status.Find((sta) => sta.key == FunctionAttributeKey.DisinfectTimeLeft); + if (disinfectTimeLeftTemp != null) + { + disinfectView.ChangeTime(disinfectTimeLeftTemp.value); + } + #endregion + + + }); + } + + #endregion + + #region 鈻� 涓�鑸柟娉昣__________________________ + + /// <summary> + /// 鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛� + /// </summary> + private void RefreshNowDeviceStatuMemory(Function i_LocalDevice) + { + foreach (var data in i_LocalDevice.status) + { + //寮�鍏� + //if (data.key == "on_off") { this.weepRobotData.Cleaning = data.value.ToLower() == "on"; } + } + } + + #endregion + } + + public class ClothesHangerControl : FrameLayout + { + private Button btnIcon; + private Button btnTitle; + private Button btnTime; + /// <summary> + /// 鎺т欢鏄惁鐐逛寒 + /// </summary> + public bool Lighting = false; + + public ClothesHangerControl(string iconPath1, string iconPath2,string title,string time) + { + btnIcon = new Button() + { + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(28), + Height = Application.GetRealWidth(28), + UnSelectedImagePath = iconPath1, + SelectedImagePath = iconPath2, + }; + this.AddChidren(btnIcon); + + btnTitle = new Button() + { + Gravity = Gravity.Center, + Text = title, + Height = Application.GetRealHeight(42), + TextColor = CSS_Color.TextualColor, + SelectedTextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + }; + this.AddChidren(btnTitle); + + btnTime = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = btnTitle.Bottom, + Height = Application.GetRealHeight(32), + Text = time, + TextColor = 0x00000000, + SelectedTextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, + }; + this.AddChidren(btnTime); + } + /// <summary> + /// 淇敼鏄剧ず鏃堕棿 + /// </summary> + /// <param name="newTime"></param> + public void ChangeTime (string newTime) + { + if(newTime == "0") + { + newTime = ""; + } + + int time = 0; + int.TryParse(newTime, out time); + time = time * 60; + + if (countdownThread == null) + { + countdownThread = new System.Threading.Thread(() => { + while(true) + { + if(time>1) + { + Application.RunOnMainThread(() => + { + btnTime.Text = new TimeSpan(0, 0, time).ToString(); + }); + System.Threading.Thread.Sleep(1000); + time--; + }else + { + Application.RunOnMainThread(() => + { + btnTime.Text = ""; + }); + } + } + }) { IsBackground = true }; + countdownThread.Start(); + } + } + + public void SetViewStatus(bool state) + { + btnIcon.IsSelected = btnTitle.IsSelected = btnTime.IsSelected = Lighting = state; + } + + public bool GetViewState() + { + return Lighting; + } + + /// <summary> + /// 璁剧疆鐐瑰嚮浜嬩欢 + /// </summary> + public void SetThouchEvent(EventHandler<MouseEventArgs> eventHandler) + { + btnIcon.MouseUpEventHandler = eventHandler; + btnTime.MouseUpEventHandler = eventHandler; + btnTitle.MouseUpEventHandler = eventHandler; + } + + /// <summary> + /// 鍊掕鏃剁嚎绋� + /// </summary> + System.Threading.Thread countdownThread; } } diff --git a/HDL_ON/UI/UI2/FuntionControlView/Electrical/FanPageBLL.cs b/HDL_ON/UI/UI2/FuntionControlView/Electrical/FanPageBLL.cs index 11f6b3b..f6bf791 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Electrical/FanPageBLL.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Electrical/FanPageBLL.cs @@ -70,6 +70,7 @@ //Control.Send(CommandType_A.write, this.fan); System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); d.Add("on_off", fan.trait_on_off.curValue.ToString()); + d.Add("fan_speed_percent", fan.openLevel.ToString()); Control.Ins.SendWriteCommand(fan, d); }) { IsBackground = true }.Start(); @@ -84,6 +85,7 @@ //Control.Send(CommandType_A.write, this.fan); System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); d.Add("on_off", fan.trait_on_off.curValue.ToString()); + d.Add("fan_speed_percent", fan.openLevel.ToString()); Control.Ins.SendWriteCommand(fan, d); }) { IsBackground = true }.Start(); @@ -97,6 +99,7 @@ //Control.Send(CommandType_A.write, this.fan); System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); d.Add("on_off", fan.trait_on_off.curValue.ToString()); + d.Add("fan_speed_percent", fan.openLevel.ToString()); Control.Ins.SendWriteCommand(fan, d); }) { IsBackground = true }.Start(); diff --git a/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotHistoryPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotHistoryPage.cs old mode 100755 new mode 100644 index 865a154..6c12477 --- a/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotHistoryPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotHistoryPage.cs @@ -42,7 +42,7 @@ frameBack.AddChidren(rowTime); btnCaption = rowTime.AddLeftCaption(Language.StringByID(StringId.TotalCleaningTime), 200); btnCaption.TextColor = CSS.CSS_Color.FirstLevelTitleColor; - rowTime.AddMostRightView((robotData.CleanTime / 60) + "min", 100); + rowTime.AddMostRightView((robotData.CleanTime) + "min", 100); } #endregion diff --git a/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotPage.cs index c08f7c4..6eb2862 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Electrical/TuyaWeepRobotPage.cs @@ -170,6 +170,7 @@ btnVoiceIcon.X = btnChargeIcon.Right + Application.GetRealWidth(50); btnVoiceIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WeepRobot/Voice.png"; btnVoiceIcon.SelectedImagePath = "FunctionIcon/Electrical/WeepRobot/VoiceSelect.png"; + btnVoiceIcon.IsSelected = true; FrameWhiteCentet1.AddChidren(btnVoiceIcon); btnVoiceIcon.ButtonClickEvent += (sender, e) => { @@ -280,7 +281,7 @@ //鍚稿姏1妗� var iconPath = this.weepRobotData.Suction == "quiet" ? "FunctionIcon/Electrical/WeepRobot/SuctionSelect.png" : "FunctionIcon/Electrical/WeepRobot/Suction.png"; - menuContr.AddRowMenu(Language.StringByID(StringId.SuctionOneGear), iconPath, this.weepRobotData.Suction == "strong", () => + menuContr.AddRowMenu(Language.StringByID(StringId.SuctionOneGear), iconPath, this.weepRobotData.Suction == "quiet", () => { frameBack.Close(); //鍙戦�佸惛鍔涘懡浠� @@ -298,7 +299,7 @@ //鍚稿姏3妗� iconPath = this.weepRobotData.Suction == "strong" ? "FunctionIcon/Electrical/WeepRobot/SuctionSelect.png" : "FunctionIcon/Electrical/WeepRobot/Suction.png"; - menuContr.AddRowMenu(Language.StringByID(StringId.SuctionThreeGear), iconPath, this.weepRobotData.Suction == "quiet", () => + menuContr.AddRowMenu(Language.StringByID(StringId.SuctionThreeGear), iconPath, this.weepRobotData.Suction == "strong", () => { frameBack.Close(); //鍙戦�佸惛鍔涘懡浠� @@ -476,12 +477,12 @@ //濡傛灉鏄竻鎵姸鎬� if (this.weepRobotData.Cleaning == true) { - //鍚稿姏璋冭妭涓嶅彲鐢� - this.btnSuctionIcon.IsSelected = false; - this.btnSuctionIcon.CanClick = false; + //鍚稿姏璋冭妭鍙敤 + this.btnSuctionIcon.IsSelected = true; + this.btnSuctionIcon.CanClick = true; //澹伴煶涓嶅彲鐢� - this.btnVoiceIcon.IsSelected = false; - this.btnVoiceIcon.CanClick = false; + //this.btnVoiceIcon.IsSelected = false; + //this.btnVoiceIcon.CanClick = false; //娓呮壂妯″紡涓嶅彲鐢� this.btnModeIcon.IsSelected = false; this.btnModeIcon.CanClick = false; @@ -494,12 +495,12 @@ } else { - //鍚稿姏璋冭妭鍙敤 - this.btnSuctionIcon.IsSelected = true; - this.btnSuctionIcon.CanClick = true; + //鍚稿姏璋冭妭涓嶅彲鐢� + this.btnSuctionIcon.IsSelected = false; + this.btnSuctionIcon.CanClick = false; //澹伴煶鍙敤 - this.btnVoiceIcon.IsSelected = true; - this.btnVoiceIcon.CanClick = true; + //this.btnVoiceIcon.IsSelected = true; + //this.btnVoiceIcon.CanClick = true; //娓呮壂妯″紡鍙敤 this.btnModeIcon.IsSelected = true; this.btnModeIcon.CanClick = true; @@ -560,8 +561,9 @@ /// </summary> private void RefreshNowDeviceStatuMemory(Function i_LocalDevice) { - foreach (var data in i_LocalDevice.status) + for (int i = 0; i < i_LocalDevice.status.Count; i++) { + var data = i_LocalDevice.status[i]; //寮�鍏� if (data.key == "on_off") { this.weepRobotData.Cleaning = data.value.ToLower() == "on"; } //瀵绘壘鏈哄櫒 @@ -651,7 +653,7 @@ /// <summary> /// 鏄惁澶勪簬娓呮壂涓� /// </summary> - public bool Cleaning = true; + public bool Cleaning = false; /// <summary> /// 瀵绘壘鏈哄櫒 /// </summary> @@ -705,7 +707,7 @@ /// </summary> public int Filter = 0; /// <summary> - /// 娓呮壂鏃堕棿(0-432000) + /// 娓呮壂鏃堕棿(0-432000) 鍗曚綅涓哄垎閽� /// </summary> public int CleanTime = 0; /// <summary> -- Gitblit v1.8.0