| | |
| | | <Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default"> |
| | | <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.6242be7109c740c6cb8999a8904b6e0ea8d45192" /> |
| | | <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/Common/R.cs"> |
| | | <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.00008030-000929D421E8802E" /> |
| | | <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs"> |
| | | <Files> |
| | | <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="150" Column="25" IsPinned="True" /> |
| | | <File FileName="HDL-ON_iOS/Resources/Language.ini" Line="1963" Column="8" /> |
| | | <File FileName="HDL-ON_Android/Assets/Language.ini" Line="1593" Column="1" /> |
| | | <File FileName="HDL-ON_iOS/Info.plist" /> |
| | | <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="193" Column="26" /> |
| | | <File FileName="HDL_ON/UI/UI1-Login/LoginPageBLL.cs" Line="175" Column="1" /> |
| | | <File FileName="HDL_ON/Entity/DB_ResidenceData.cs" Line="31" Column="30" /> |
| | | <File FileName="HDL_ON/Common/UserInfo.cs" Line="29" Column="34" /> |
| | | <File FileName="HDL_ON/UI/UI2/UserPage.cs" Line="569" Column="25" /> |
| | | <File FileName="HDL_ON/UI/MainPage.cs" Line="174" Column="34" /> |
| | | <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs" Line="1" Column="1" /> |
| | | <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" Line="203" Column="38" /> |
| | | <File FileName="HDL_ON/Common/R.cs" Line="8" Column="36" /> |
| | | <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="275" Column="53" /> |
| | | <File FileName="HDL-ON_iOS/Resources/Language.ini" Line="30" Column="10" /> |
| | | <File FileName="HDL-ON_Android/Assets/Language.ini" /> |
| | | <File FileName="HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs" Line="637" Column="53" /> |
| | | <File FileName="HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs" Line="402" Column="64" /> |
| | | <File FileName="HDL_ON/UI/MainPage.cs" Line="275" Column="45" /> |
| | | <File FileName="HDL_ON/UI/UI2/UserPageBLL.cs" Line="6" Column="26" /> |
| | | <File FileName="HDL_ON/UI/UI2/UserPage.cs" Line="571" Column="7" /> |
| | | <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" Line="101" Column="16" /> |
| | | <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="599" Column="27" /> |
| | | <File FileName="HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs" Line="249" Column="22" /> |
| | | <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs" Line="238" Column="25" /> |
| | | <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePageBLL.cs" Line="94" Column="26" /> |
| | | <File FileName="HDL_ON/Common/ApiUtlis.cs" Line="123" Column="1" /> |
| | | <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="16" Column="22" /> |
| | | <File FileName="HDL_ON/Entity/Room.cs" Line="111" Column="43" /> |
| | | <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs" Line="244" Column="1" /> |
| | | <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs" Line="186" Column="39" /> |
| | | </Files> |
| | | <Pads> |
| | | <Pad Id="ProjectPad"> |
| | | <State name="__root__"> |
| | | <Node name="HDL_APP_Project" expanded="True"> |
| | | <Node name="HDL_ON" expanded="True"> |
| | | <Node name="Common" expanded="True"> |
| | | <Node name="R.cs" selected="True" /> |
| | | </Node> |
| | | <Node name="Common" expanded="True" /> |
| | | <Node name="DAL" expanded="True"> |
| | | <Node name="DriverLayer" expanded="True" /> |
| | | <Node name="Server" expanded="True" /> |
| | | </Node> |
| | | <Node name="Entity" expanded="True"> |
| | | <Node name="Device" expanded="True" /> |
| | | <Node name="Function" expanded="True" /> |
| | | </Node> |
| | | <Node name="Entity" expanded="True" /> |
| | | <Node name="UI" expanded="True"> |
| | | <Node name="UI1-Login" expanded="True" /> |
| | | <Node name="UI2" expanded="True"> |
| | | <Node name="1-HomePage" expanded="True" /> |
| | | <Node name="2-Classification" expanded="True" /> |
| | | <Node name="3-Intelligence" expanded="True"> |
| | | <Node name="Automation" expanded="True" /> |
| | | </Node> |
| | | <Node name="4-PersonalCenter" expanded="True"> |
| | | <Node name="AddDevice" expanded="True"> |
| | | <Node name="SenesorMegahealth" expanded="True" /> |
| | | <Node name="Automation" expanded="True"> |
| | | <Node name="AddLogic.cs" selected="True" /> |
| | | </Node> |
| | | <Node name="AddFunction" expanded="True" /> |
| | | <Node name="RoomListManage" expanded="True"> |
| | | <Node name="AddRoom" expanded="True" /> |
| | | </Node> |
| | | </Node> |
| | | <Node name="FuntionControlView" expanded="True"> |
| | | <Node name="1ContorlPage" expanded="True" /> |
| | | <Node name="AC" expanded="True" /> |
| | | </Node> |
| | | </Node> |
| | | </Node> |
| | | </Node> |
| | | <Node name="HDL-ON_iOS" expanded="True"> |
| | | <Node name="Resources" expanded="True" /> |
| | | </Node> |
| | | </Node> |
| | | </State> |
| | |
| | | <MonoDevelop.Ide.DebuggingService.Breakpoints> |
| | | <BreakpointStore> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Method.cs" line="34" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs" line="313" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/BindingResidence/BindingResidencePage.cs" relfile="HDL_ON/UI/BindingResidence/BindingResidencePage.cs" line="121" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs" line="118" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/1-HomePage/HomePage.cs" relfile="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" line="198" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs" line="546" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Common/ApiUtlis.cs" relfile="HDL_ON/Common/ApiUtlis.cs" line="117" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs" relfile="HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs" line="255" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs" relfile="HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs" line="327" column="1" /> |
| | | <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs" relfile="HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs" line="191" column="1" /> |
| | | </BreakpointStore> |
| | | </MonoDevelop.Ide.DebuggingService.Breakpoints> |
| | | <MultiItemStartupConfigurations /> |
| | |
| | | 23=Incorrect verification code, please re-enter. |
| | | 24=Incorrect account number, please enter the correct email address. |
| | | 25=Email address |
| | | 26=Residentce |
| | | 26=Residence |
| | | 27=Member |
| | | 28=Disarm |
| | | 29=Arming |
| | |
| | | 470=Under protection |
| | | 471=Millimeter wave sensor |
| | | 472=Outdoor |
| | | 473=Swing |
| | | 474=Swing up and down |
| | | 475=Swing left and right |
| | | 476=Add residence |
| | | |
| | | 1000=Room Humidity |
| | | 1001=V-chip |
| | |
| | | 470=防护中 |
| | | 471=毫米波传感器 |
| | | 472=室外 |
| | | 473=扫风 |
| | | 474=上下扫风 |
| | | 475=左右扫风 |
| | | 476=添加住宅 |
| | | |
| | | |
| | | 1000=室内湿度 |
| | |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <AndroidAsset Include="Assets\Phone\Public\MsgIcon\TipSuccessIcon.png" /> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\SweepIconLR.png" /> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\SweepIconLROn.png" /> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\SweepIconNull.png" /> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\SweepIconNullOn.png" /> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\SweepIconUD.png" /> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\SweepIconUDOn.png" /> |
| | | <AndroidAsset Include="Assets\Phone\Public\ScanGrey.png" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\BindScene.png" /> |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202106083" android:versionName="1.2.202106083" package="com.hdl.onpro"> |
| | | <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202106171" android:versionName="1.2.202106171" package="com.hdl.onpro"> |
| | | <uses-sdk android:minSdkVersion="23" android:targetSdkVersion="29" /> |
| | | <!-- 可视对讲权限--> |
| | | <uses-permission android:name="android.permission.CAMERA" /> |
| | |
| | | <MtouchExtraArgs>-gcc_flags="-dead_strip -ObjC"</MtouchExtraArgs> |
| | | <MtouchEnableSGenConc>false</MtouchEnableSGenConc> |
| | | <CodesignEntitlements>Entitlements.plist</CodesignEntitlements> |
| | | <CodesignProvision>On+Dev-20210604-1</CodesignProvision> |
| | | <CodesignProvision>On+Dev-20210616-1</CodesignProvision> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' "> |
| | | <DebugType>none</DebugType> |
| | |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\ArmSensor\SomeoneFellBgIcon.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\ArmSensor\SomeoneInBgIcon.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\ArmSensor\UnderProtectionBgIcon.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\AC\SweepIconLR.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\AC\SweepIconLROn.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\AC\SweepIconNull.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\AC\SweepIconNullOn.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\AC\SweepIconUD.png" /> |
| | | <BundleResource Include="Resources\Phone\FunctionIcon\AC\SweepIconUDOn.png" /> |
| | | <BundleResource Include="Resources\Phone\Public\ScanGrey.png" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <ITunesArtwork Include="iTunesArtwork" /> |
| | |
| | | 23=Incorrect verification code, please re-enter. |
| | | 24=Incorrect account number, please enter the correct email address. |
| | | 25=Email address |
| | | 26=Residentce |
| | | 26=Residence |
| | | 27=Member |
| | | 28=Disarm |
| | | 29=Arming |
| | |
| | | 470=Under protection |
| | | 471=Millimeter wave sensor |
| | | 472=Outdoor |
| | | 473=Swing |
| | | 474=Swing up and down |
| | | 475=Swing left and right |
| | | 476=Add residence |
| | | |
| | | 1000=Room Humidity |
| | | 1001=V-chip |
| | |
| | | 470=防护中 |
| | | 471=毫米波传感器 |
| | | 472=室外 |
| | | 473=扫风 |
| | | 474=上下扫风 |
| | | 475=左右扫风 |
| | | 476=添加住宅 |
| | | |
| | | |
| | | 1000=室内湿度 |
| | |
| | | public static class StringId |
| | | { |
| | | /// <summary> |
| | | /// 添加住宅 |
| | | /// </summary> |
| | | public const int AddResidence = 476; |
| | | /// <summary> |
| | | /// 左右扫风 |
| | | /// </summary> |
| | | public const int Swing_Left_Right = 475; |
| | | /// <summary> |
| | | /// 上下扫风 |
| | | /// </summary> |
| | | public const int Swing_Up_Down = 474; |
| | | /// <summary> |
| | | /// 扫风 |
| | | /// </summary> |
| | | public const int Swing = 473; |
| | | /// <summary> |
| | | /// 室外 |
| | | /// </summary> |
| | | public const int Outdoor = 472; |
| | |
| | | { |
| | | m_Current = new UserInfo() |
| | | { |
| | | ID = "1234567890", |
| | | userName = "试用账号", |
| | | AccountString = "试用账号", |
| | | userMobileInfo = "试用账号", |
| | | userEmailInfo = "试用账号", |
| | | ID = "体验账号1234567890", |
| | | userName = "体验账号", |
| | | AccountString = "体验账号", |
| | | userMobileInfo = "体验账号", |
| | | userEmailInfo = "体验账号", |
| | | language = "Chinese", |
| | | areaCode = "86", |
| | | headImagePagePath = "LoginIcon/2.png", |
| | |
| | | headImagePagePath = "LoginIcon/2.png", |
| | | }; |
| | | } |
| | | return m_Current; |
| | | } |
| | | |
| | | try |
| | |
| | | /// </summary> |
| | | public void ControlScene(Scene scene) |
| | | { |
| | | //体验模式 |
| | | if(MainPage.NoLoginMode) |
| | | { |
| | | foreach(var sceneFunction in scene.functions) |
| | | { |
| | | var revString = ""; |
| | | var upDataObj = new AlinkFunctionStatusObj(); |
| | | upDataObj.id = "999"; |
| | | upDataObj.objects = new List<AlinkStatusData>(); |
| | | var asd = new AlinkStatusData() { deviceId = sceneFunction.localFunction.deviceId, sid = sceneFunction.sid }; |
| | | var status1 = new List<AttributesStatus>(); |
| | | foreach (var dic in sceneFunction.status) |
| | | { |
| | | status1.Add(new AttributesStatus() { key = dic.key, value = dic.value }); |
| | | } |
| | | asd.status = status1; |
| | | upDataObj.objects.Add(asd); |
| | | revString = Newtonsoft.Json.JsonConvert.SerializeObject(upDataObj); |
| | | UpdataFunctionStatus(revString, null, true); |
| | | } |
| | | return; |
| | | } |
| | | |
| | | //远程或者控制link网关场景 |
| | | if (!Ins.GatewayOnline_Local || DB_ResidenceData.Instance.GatewayType == 1) |
| | | { |
| | |
| | | } |
| | | } |
| | | |
| | | ///dome控制 |
| | | if (MainPage.NoLoginMode) |
| | | { |
| | | var revString = ""; |
| | | var upDataObj = new AlinkFunctionStatusObj(); |
| | | upDataObj.id = "999"; |
| | | upDataObj.objects = new List<AlinkStatusData>(); |
| | | var asd = new AlinkStatusData() { deviceId = function.deviceId, sid = function.sid }; |
| | | var status1 = new List<AttributesStatus>(); |
| | | foreach (var dic in commandDictionary) |
| | | { |
| | | status1.Add(new AttributesStatus() { key = dic.Key, value = dic.Value }); |
| | | } |
| | | asd.status = status1; |
| | | upDataObj.objects.Add(asd); |
| | | revString = Newtonsoft.Json.JsonConvert.SerializeObject(upDataObj); |
| | | UpdataFunctionStatus(revString, null, true); |
| | | return; |
| | | } |
| | | |
| | | |
| | | //MainPage.Log($"发送数据:{Newtonsoft.Json.JsonConvert.SerializeObject(commandDictionary)}"); |
| | | |
| | | ///第三方涂鸦设备统一使用远程控制 |
| | | switch(function.spk) |
| | | switch (function.spk) |
| | | { |
| | | case SPK.ElectricTuyaAirCleaner: |
| | | case SPK.ElectricTuyaFan: |
| | |
| | | /// </summary> |
| | | public void SwtichFunctions(bool open,List<Function> functions) |
| | | { |
| | | //dome模式控制 |
| | | if(MainPage.NoLoginMode) |
| | | { |
| | | new System.Threading.Thread(() => |
| | | { |
| | | foreach (var temp in functions) |
| | | { |
| | | Dictionary<string, string> d1 = new Dictionary<string, string>(); |
| | | d1.Add(FunctionAttributeKey.OnOff, open ? "on" : "off"); |
| | | SendWriteCommand(temp, d1); |
| | | System.Threading.Thread.Sleep(100); |
| | | } |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | return; |
| | | } |
| | | |
| | | var count = 0; |
| | | var logString = open ? "打开\r\n" : "关闭\r\n"; |
| | | List<ApiAlinkControlActionObj> actionObjs = new List<ApiAlinkControlActionObj>(); |
| | |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 转换通讯数据 |
| | | /// 转换发送数据 |
| | | /// </summary> |
| | | public byte[] ConvertSendBodyData(string topic, string bodyDataString) |
| | | { |
| | |
| | | /// <summary> |
| | | /// 获取住宅列表 |
| | | /// </summary> |
| | | public string GetHomePager(HomeTypeEnum homeType = HomeTypeEnum.ALL) |
| | | public string GetHomePager(HomeTypeEnum homeType = HomeTypeEnum.ALL,string homeId = "") |
| | | { |
| | | var requestJson = HttpUtil.GetSignRequestJson(new GetHomeListObj() { homeType = homeType.ToString() }); |
| | | var resultObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_Gethomepager, requestJson); |
| | |
| | | { |
| | | foreach (var home in homeList) |
| | | { |
| | | //var home = new RegionInfoRes() |
| | | //{ |
| | | // RegionID = mHome.Id, |
| | | // Name = mHome.homeName, |
| | | // IsOthreShare = mHome.IsOtherShare, |
| | | // accountType = mHome.accountType, |
| | | // isRemoteControl = mHome.isRemoteControl, |
| | | // isBindGateway = mHome.isBindGateway, |
| | | // longitude = mHome.longitude, |
| | | // latitude = mHome.latitude, |
| | | // deliverstatus = mHome.deliverstatus, |
| | | // homeType = mHome.homeType, |
| | | // regionUrl = mHome.regionUrl, |
| | | // emqUrl = mHome.emqUrl, |
| | | // homeRegionName = mHome.homeRegionName, |
| | | // homeRegionId = mHome.homeRegionId, |
| | | // Address = mHome.homeAddress, |
| | | // isAllowCreateScene = mHome.isAllowCreateScene, |
| | | //}; |
| | | if (home.isBindGateway) |
| | | { |
| | | UserInfo.Current.regionList.Add(home); |
| | | //新绑定的住宅,直接切换到新住宅 |
| | | if (!string.IsNullOrEmpty(homeId)) |
| | | { |
| | | if (homeId.Contains(home.id)) |
| | | { |
| | | DB_ResidenceData.Instance.CurrentRegion = home; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | if(UserInfo.Current.regionList.Count== 0) |
| | |
| | | Dictionary<string, object> d = new Dictionary<string, object>(); |
| | | d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id); |
| | | d.Add("debugPerm", debugPerm); |
| | | string jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(d); |
| | | return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_Post_Home_UpdateDebugPerm, jsonString); |
| | | var jsonString = HttpUtil.GetSignRequestJson(d,d); |
| | | var pack = HttpUtil.RequestHttpsPost(NewAPI.API_Post_Home_UpdateDebugPerm, jsonString); |
| | | return pack; |
| | | } |
| | | |
| | | |
| | |
| | | static ResponsePackNew RequestHttpsBase(Method method, string apiPath, string bodyParameterJson = null, Dictionary<string, object> queryDictionary = null, Dictionary<string, object> urlSegmentDictionary = null, string urlHead = "", string replaceToken = "", int mTimeout = 10) |
| | | { |
| | | //Dome模式登录 |
| | | |
| | | if(MainPage.NoLoginMode) |
| | | { |
| | | return new ResponsePackNew() { Code = "0" }; |
| | |
| | | /// 计算sign签名 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public static string GetSignRequestJson(object requestObj) |
| | | public static string GetSignRequestJson(object requestObj,Dictionary<string,object> paramDictionary = null) |
| | | { |
| | | try |
| | | { |
| | | //1. 将model实体转为Dictionary<string, object> |
| | | var paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(Newtonsoft.Json.JsonConvert.SerializeObject(requestObj)); |
| | | if (paramDictionary == null) |
| | | { |
| | | paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(Newtonsoft.Json.JsonConvert.SerializeObject(requestObj)); |
| | | } |
| | | //2. 计算sign |
| | | if (paramDictionary != null) |
| | | { |
| | |
| | | { |
| | | if (instance == null) |
| | | { |
| | | if(MainPage.NoLoginMode) |
| | | { |
| | | instance = new DB_ResidenceData(); |
| | | instance.functionTypeList.AddRange(new List<ShowFunction> { |
| | | 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.Sensor,ShowFunction.VideoIntercom, |
| | | ShowFunction.SecurityCenter |
| | | }); |
| | | instance.SaveResidenceData(); |
| | | instance.residenceImage = "Classification/Room/Roombg.png"; |
| | | instance.HomeGateway = new HomeGatewayInfo() |
| | | { |
| | | homeId = "1396717478877241345", |
| | | gatewayId = "1396997079658602498", |
| | | mac = "123457890123456", |
| | | }; |
| | | //初始化住宅功能数据 |
| | | SpatialInfo.CurrentSpatial.InitRoomListFunctions(); |
| | | return instance; |
| | | } |
| | | |
| | | try |
| | | { |
| | | var residenceDataBytes = ReadResidenceInfo(); |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 当前模式的icon路径 |
| | | /// </summary> |
| | | /// <param name="lightingIcon">获取的图标类型,默认是点亮</param> |
| | | /// <returns></returns> |
| | | public string GetSwingIconPath(string swingValue,bool lightingIcon = true) |
| | | { |
| | | var imagePath = "FunctionIcon/AC/SweepIconNullOn.png"; |
| | | if (lightingIcon) |
| | | { |
| | | switch (swingValue) |
| | | { |
| | | case "up_down": |
| | | imagePath = "FunctionIcon/AC/SweepIconUDOn.png"; |
| | | break; |
| | | case "left_right": |
| | | imagePath = "FunctionIcon/AC/SweepIconLROn.png"; |
| | | break; |
| | | case "stop": |
| | | imagePath = "FunctionIcon/AC/SweepIconNullOn.png"; |
| | | break; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | imagePath = "FunctionIcon/AC/SweepIconNull.png"; |
| | | switch (swingValue) |
| | | { |
| | | case "up_down": |
| | | imagePath = "FunctionIcon/AC/SweepIconUD.png"; |
| | | break; |
| | | case "left_right": |
| | | imagePath = "FunctionIcon/AC/SweepIconLR.png"; |
| | | break; |
| | | case "stop": |
| | | imagePath = "FunctionIcon/AC/SweepIconNull.png"; |
| | | break; |
| | | } |
| | | } |
| | | return imagePath; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 当前风速的icon路径 |
| | | /// </summary> |
| | | /// <param name="lightingIcon">获取的图标类型,默认是点亮</param> |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取扫风模式属性文本 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public string GetSwingAttrText(string value) |
| | | { |
| | | string text = ""; |
| | | switch (value) |
| | | { |
| | | #region 模式 |
| | | case "up_down": |
| | | text = Language.StringByID(StringId.Swing_Up_Down); |
| | | break; |
| | | case "left_right": |
| | | text = Language.StringByID(StringId.Swing_Left_Right); |
| | | break; |
| | | case "stop": |
| | | text = Language.StringByID(StringId.tingzhi); |
| | | break; |
| | | #endregion |
| | | } |
| | | return text; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 获取风速属性文本 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | |
| | | /// </summary> |
| | | public const string Mode = "mode"; |
| | | /// <summary> |
| | | /// 扫风 |
| | | /// </summary> |
| | | public const string Swing = "swing"; |
| | | /// <summary> |
| | | /// 工作模式 |
| | | /// 地热/地冷/功率地热/功率地冷 |
| | | /// </summary> |
| | |
| | | /// 获取rgb 控制字符串 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public string GetRGBcolorString(Function function ) |
| | | public string GetRGBcolorString(Function function) |
| | | { |
| | | var color = function.GetAttrState(FunctionAttributeKey.RGB).Split(","); |
| | | return color[0] + "," + color[1] + "," + color[2]; |
| | |
| | | parentId = DB_ResidenceData.Instance.CurrentRegion.id; |
| | | } |
| | | |
| | | public string homeId = ""; |
| | | public string roomId = ""; |
| | | public string roomName = ""; |
| | | //public string roomImage = ""; |
| | |
| | | public string roomType = ""; |
| | | public string parentId = ""; |
| | | public string uid = Guid.NewGuid().ToString(); |
| | | public string floorRoomName = ""; |
| | | public string createTime = ""; |
| | | public string modifyTime = ""; |
| | | ///// <summary> |
| | |
| | | { |
| | | get |
| | | { |
| | | if (MainPage.NoLoginMode) |
| | | { |
| | | if (floors == null) |
| | | { |
| | | floors = new List<SpatialInfo>(); |
| | | } |
| | | return floors; |
| | | } |
| | | |
| | | if (floors == null) |
| | | { |
| | | try |
| | |
| | | MainPage.Log(floorsDataString); |
| | | floors = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SpatialInfo>>(floorsDataString); |
| | | } |
| | | if (floors == null) |
| | | if(floors == null) |
| | | { |
| | | floors = new List<SpatialInfo>(); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | floors = new List<SpatialInfo>(); |
| | | MainPage.Log($"楼层数据初始化失败:{ex.Message}"); |
| | | } |
| | | } |
| | |
| | | { |
| | | get |
| | | { |
| | | if(MainPage.NoLoginMode ) |
| | | { |
| | | if (rooms == null) |
| | | { |
| | | rooms = new List<Room>(); |
| | | } |
| | | return rooms; |
| | | } |
| | | if (rooms == null) |
| | | { |
| | | try |
| | |
| | | /// <summary> |
| | | /// 执行绑定住宅 |
| | | /// </summary> |
| | | private void DoBindResidence(string scanString) |
| | | public void DoBindResidence(string scanString) |
| | | { |
| | | var pm = new DAL.Server.HttpServerRequest(); |
| | | var result = pm.BindingResidence(scanString); |
| | |
| | | if (result.Code == DAL.Server.StateCode.SUCCESS) |
| | | { |
| | | //调用On原来的方法,刷新住宅列表及其缓存 |
| | | pm.GetHomePager(); |
| | | pm.GetHomePager(HomeTypeEnum.ALL,scanString); |
| | | //跳转页面---- |
| | | MainPage.GoUserPage(true, false, () => |
| | | { |
| | |
| | | /// <summary> |
| | | /// 显示二维码已经过期的弹窗 |
| | | /// </summary> |
| | | private void ShowQrCodeTimeOutView() |
| | | public void ShowQrCodeTimeOutView() |
| | | { |
| | | //整个界面的灰色背景 |
| | | var frameBack = new Dialog(); |
| | |
| | | /// <summary> |
| | | /// 版本号 |
| | | /// </summary> |
| | | public static string VersionString = "1.2.0608"; |
| | | public static string VersionString = "1.2.0617"; |
| | | ///// <summary> |
| | | ///// 客户端类型 |
| | | ///// </summary> |
| | |
| | | #endregion |
| | | |
| | | |
| | | |
| | | //体验模式 |
| | | if (NoLoginMode) |
| | | { |
| | | //跳转页面---- |
| | |
| | | #if DEBUG |
| | | btnIcon_bg.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | MainPage.NoLoginMode = true; |
| | | //楼层房间列表 |
| | | var floor1 = new SpatialInfo("FLOOR") { roomName = "F1", parentId = DB_ResidenceData.Instance.CurrentRegion.id }; |
| | | floor1.SaveRoomFile(); |
| | | //处理房间列表 |
| | | var room1 = new Room() { |
| | | roomId = "r1", |
| | | roomName = "客厅", |
| | | parentId = "f1" |
| | | }; |
| | | room1.SaveRoomFile(); |
| | | //功能 |
| | | var light1 = new Function() |
| | | { |
| | | sid = "light1", |
| | | deviceId = "light1", |
| | | name = "RGB1", |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "rgb",value =new List<string>(){ "0","100" }, curValue="0,0,0",state = "0,0,0" }, |
| | | }, |
| | | }; |
| | | light1.SaveFunctionFile(); |
| | | //场景 |
| | | return; |
| | | |
| | | }; |
| | | |
| | | bool b = false; |
| | |
| | | } |
| | | else |
| | | { |
| | | etAccount.Text = "464027401@qq.com";// |
| | | //etAccount.Text = "15217626103";// |
| | | //etAccount.Text = "13682244600";//波哥 |
| | | //etAccount.Text = "BB01010101@evoyo.com";//可视对讲 |
| | | //etAccount.Text = "13168123446"; |
| | | //etAccount.Text = "13676202754";//巴林服务器 |
| | | //etAccount.Text = "13602944661";//kx |
| | | etAccount.Text = "551775569@qq.com";//wcf |
| | | //etAccount.Text = "551775569@qq.com";//wcf |
| | | //etAccount.Text = "18666455392";//13375012446//13602944661//tzy 18778381374 |
| | | //etAccount.Text = "15971583093";// gs//tzy 274116637@qq.com//Sumant.Bhatia@havells.com 国外服务器测试 |
| | | } |
| | |
| | | }; |
| | | bodyView.AddChidren(btnLogin); |
| | | |
| | | LoadEventList(); |
| | | Button btnDomeLogin = new Button() |
| | | { |
| | | Y = btnLogin.Bottom + Application.GetRealHeight(10), |
| | | Height = Application.GetRealWidth(44), |
| | | TextSize = CSS_FontSize.SubheadingFontSize, |
| | | IsBold = true, |
| | | TextColor = CSS_Color.MainColor, |
| | | TextAlignment = TextAlignment.Center, |
| | | Text = "体验模式" |
| | | }; |
| | | bodyView.AddChidren(btnDomeLogin); |
| | | btnDomeLogin.MouseUpEventHandler = (sender, e) => { |
| | | MainPage.NoLoginMode = true; |
| | | //楼层房间列表 |
| | | var floor1 = new SpatialInfo("FLOOR") { roomName = "F1", parentId = DB_ResidenceData.Instance.CurrentRegion.id }; |
| | | floor1.SaveRoomFile(); |
| | | #region 房间一 -- 客厅 |
| | | //处理房间列表 |
| | | |
| | | var room1 = new Room() |
| | | { |
| | | roomId = "1405771366041378818", |
| | | roomName = "洗手间", |
| | | roomImage = "Classification/Room/Roombg.png", |
| | | uid = "47c98953-6fd4-4379-88b9-4b748963504f", |
| | | roomType = "ROOM", |
| | | parentId = "2348be0f-eec2-43c4-b74d-9b6037a5ba55", |
| | | homeId = "1396717478877241345", |
| | | createTime = "1623996986290", |
| | | modifyTime = "1623996986290", |
| | | floorRoomName = "1F-洗手间" |
| | | }; |
| | | room1.SaveRoomFile(); |
| | | var room2 = new Room() |
| | | { |
| | | roomId = "1405771310345216001", |
| | | roomName = "主卧", |
| | | roomImage = "Classification/Room/Roombg.png", |
| | | uid = "168d27a1-9e53-42c0-95c9-f5cbf41ea167", |
| | | roomType = "ROOM", |
| | | parentId = "2348be0f-eec2-43c4-b74d-9b6037a5ba55", |
| | | homeId = "1396717478877241345", |
| | | createTime = "1623996973011", |
| | | modifyTime = "1623996973011", |
| | | floorRoomName = "1F-主卧" |
| | | }; |
| | | room2.SaveRoomFile(); |
| | | var room3 = new Room() |
| | | { |
| | | roomId = "1405771193802285057", |
| | | roomName = "餐厅", |
| | | roomImage = "Classification/Room/Roombg.png", |
| | | uid = "ed7fc784-aace-44b8-97a3-bc3e727e598b", |
| | | roomType = "ROOM", |
| | | parentId = "2348be0f-eec2-43c4-b74d-9b6037a5ba55", |
| | | homeId = "1396717478877241345", |
| | | createTime = "1623996945225", |
| | | modifyTime = "1623996945225", |
| | | floorRoomName = "1F-餐厅" |
| | | }; |
| | | room3.SaveRoomFile(); |
| | | var room4 = new Room() |
| | | { |
| | | roomId = "1405771024583090178", |
| | | roomName = "客厅", |
| | | roomImage = "Classification/Room/Roombg.png", |
| | | uid = "9191a3a2-026f-4667-a0b1-e3af699e7295", |
| | | roomType = "ROOM", |
| | | parentId = "2348be0f-eec2-43c4-b74d-9b6037a5ba55", |
| | | homeId = "1396717478877241345", |
| | | createTime = "1623996904880", |
| | | modifyTime = "1623996904880", |
| | | floorRoomName = "1F-客厅" |
| | | }; |
| | | room4.SaveRoomFile(); |
| | | var floor = new SpatialInfo() |
| | | { |
| | | roomId = "1405770943695937537", |
| | | roomName = "1F", |
| | | roomImage = "Classification/Room/Roombg.png", |
| | | uid = "2348be0f-eec2-43c4-b74d-9b6037a5ba55", |
| | | roomType = "FLOOR", |
| | | parentId = "1396717478877241345", |
| | | homeId = "1396717478877241345", |
| | | createTime = "1623996885595", |
| | | modifyTime = "1623996885595" |
| | | }; |
| | | floor.SaveRoomFile(); |
| | | |
| | | SpatialInfo.CurrentSpatial.FloorList.Add(floor); |
| | | SpatialInfo.CurrentSpatial.RoomList.Add(room1); |
| | | SpatialInfo.CurrentSpatial.RoomList.Add(room2); |
| | | SpatialInfo.CurrentSpatial.RoomList.Add(room3); |
| | | SpatialInfo.CurrentSpatial.RoomList.Add(room4); |
| | | |
| | | |
| | | #region 客厅 |
| | | #region 功能 |
| | | var lightRgb1 = new Function() |
| | | { |
| | | sid = "light1", |
| | | deviceId = "light1", |
| | | name = "RGB1", |
| | | spk = SPK.LightRGB, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | collect = true, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="100",state = "100" }, |
| | | new FunctionAttributes() { key = "rgb",value =new List<string>(){ "0","100" }, curValue="0,0,0",state = "0,0,0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "delay",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightRgb1.SaveFunctionFile(); |
| | | var lightRgb2 = new Function() |
| | | { |
| | | sid = "light2", |
| | | deviceId = "light2", |
| | | name = "RGB2", |
| | | spk = SPK.LightRGB, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "rgb",value =new List<string>(){ "0","100" }, curValue="0,0,0",state = "0,0,0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "delay",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightRgb2.SaveFunctionFile(); |
| | | var lightCct = new Function() |
| | | { |
| | | sid = "light3", |
| | | deviceId = "light3", |
| | | name = "CCT1", |
| | | spk = SPK.LightCCT, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "cct",value =new List<string>(){ "0","65535" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "delay",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightCct.SaveFunctionFile(); |
| | | var lightSwitch1 = new Function() |
| | | { |
| | | sid = "light4", |
| | | deviceId = "light4", |
| | | name = "开关灯1", |
| | | spk = SPK.LightSwitch, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightSwitch1.SaveFunctionFile(); |
| | | var lightSwitch2 = new Function() |
| | | { |
| | | sid = "light5", |
| | | deviceId = "light5", |
| | | name = "开关灯2", |
| | | spk = SPK.LightSwitch, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightSwitch2.SaveFunctionFile(); |
| | | var curtain1 = new Function() |
| | | { |
| | | sid = "curtain1", |
| | | deviceId = "curtain1", |
| | | name = "开合帘", |
| | | spk = SPK.CurtainTrietex, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "percent",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | curtain1.SaveFunctionFile(); |
| | | var curtain2 = new Function() |
| | | { |
| | | sid = "curtain2", |
| | | deviceId = "curtain2", |
| | | name = "卷帘", |
| | | spk = SPK.CurtainRoller, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "percent",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | curtain2.SaveFunctionFile(); |
| | | var fh = new Function() |
| | | { |
| | | sid = "floorheat1", |
| | | deviceId = "floorheat1", |
| | | name = "地暖", |
| | | spk = SPK.FloorHeatStandard, |
| | | roomIds = new List<string>() { "1405771024583090178"}, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "mode",value =new List<string>(){ "day", "night", "away", "normal", "timer" }, curValue="day",state = "day" }, |
| | | new FunctionAttributes() { key = "set_temp",value =new List<string>(){ "" }, curValue="26",state = "26" }, |
| | | new FunctionAttributes() { key = "room_temp",value =new List<string>(){ "" }, curValue="26",state = "26" }, |
| | | }, |
| | | }; |
| | | fh.SaveFunctionFile(); |
| | | #endregion |
| | | #region 场景 |
| | | var scene1 = new Scene() |
| | | { |
| | | sid = "scene1", |
| | | userSceneId = "scene1", |
| | | name = "明亮模式", |
| | | roomIds = new List<string>() { "1405771024583090178" }, |
| | | gatewayId = "1234567890123456", |
| | | collect = true, |
| | | functions = new List<SceneFunction>() |
| | | { |
| | | new SceneFunction() |
| | | { |
| | | sid = lightRgb1.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightRgb2.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightCct.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch1.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch2.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | |
| | | |
| | | }, |
| | | }; |
| | | scene1.SaveSceneFile(); |
| | | var scene2 = new Scene() |
| | | { |
| | | sid = "scene2", |
| | | userSceneId = "scene2", |
| | | name = "浪漫模式", |
| | | roomIds = new List<string>() { "1405771024583090178" }, |
| | | gatewayId = "1234567890123456", |
| | | collect = false, |
| | | functions = new List<SceneFunction>() |
| | | { |
| | | new SceneFunction() |
| | | { |
| | | sid = lightRgb1.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightRgb2.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightCct.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch1.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "off", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch2.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "off", |
| | | } |
| | | } |
| | | }, |
| | | |
| | | |
| | | }, |
| | | |
| | | }; |
| | | scene2.SaveSceneFile(); |
| | | #endregion |
| | | #endregion |
| | | #region 餐厅 |
| | | var lightSwitch3 = new Function() |
| | | { |
| | | sid = "light6", |
| | | deviceId = "light6", |
| | | name = "餐厅灯1", |
| | | spk = SPK.LightSwitch, |
| | | roomIds = new List<string>() { room3.roomId }, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightSwitch3.SaveFunctionFile(); |
| | | var lightSwitch4 = new Function() |
| | | { |
| | | sid = "light7", |
| | | deviceId = "light7", |
| | | name = "餐厅灯2", |
| | | spk = SPK.LightSwitch, |
| | | roomIds = new List<string>() { room3.roomId }, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightSwitch4.SaveFunctionFile(); |
| | | var scene3 = new Scene() |
| | | { |
| | | sid = "scene3", |
| | | userSceneId = "scene3", |
| | | name = "温馨模式", |
| | | roomIds = new List<string>() { room3.roomId }, |
| | | gatewayId = "1234567890123456", |
| | | collect = true, |
| | | functions = new List<SceneFunction>() |
| | | { |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch4.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "off", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch4.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "off", |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | }; |
| | | scene3.SaveSceneFile(); |
| | | var scene4 = new Scene() |
| | | { |
| | | sid = "scene4", |
| | | userSceneId = "scene4", |
| | | name = "西餐模式", |
| | | roomIds = new List<string>() { room3.roomId }, |
| | | gatewayId = "1234567890123456", |
| | | collect = false, |
| | | functions = new List<SceneFunction>() |
| | | { |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch4.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | new SceneFunction() |
| | | { |
| | | sid = lightSwitch4.sid, |
| | | status = new List<SceneFunctionStatus>() |
| | | { |
| | | new SceneFunctionStatus() |
| | | { |
| | | key = "on_off", |
| | | value = "on", |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | }; |
| | | scene4.SaveSceneFile(); |
| | | #endregion |
| | | #region 卧室 |
| | | var ac = new Function() |
| | | { |
| | | sid = "ac1", |
| | | deviceId = "ac1", |
| | | name = "卧室空调", |
| | | spk = SPK.AcStandard, |
| | | roomIds = new List<string>() { room3.roomId }, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off", value = new List<string>() { "on", "off" }, curValue = "on", state = "on" }, |
| | | new FunctionAttributes() { key = "mode", value = new List<string>() { "cool", "heat", "fan", "auto", "dry" }, curValue = "cool", state = "cool" }, |
| | | new FunctionAttributes() { key = "fan", value = new List<string>() { "high", "medium", "low", "auto" }, curValue = "auto", state = "auto" }, |
| | | new FunctionAttributes() { key = "set_temp", value = new List<string>() { "16", "30"}, curValue = "16", state = "16",max = 30,min = 16 }, |
| | | new FunctionAttributes() { key = "room_temp", value = new List<string>() { }, curValue = "20", state = "20" }, |
| | | new FunctionAttributes() { key = "swing", value = new List<string>() {"up_down", "left_right", "stop" }, curValue = "20", state = "20" }, |
| | | } |
| | | }; |
| | | ac.SaveFunctionFile(); |
| | | var scene5 = new Scene() |
| | | { |
| | | sid = "scene5", |
| | | userSceneId = "scene5", |
| | | name = "阅读", |
| | | roomIds = new List<string>() { room2.roomId }, |
| | | gatewayId = "1234567890123456", |
| | | collect = true, |
| | | }; |
| | | scene5.SaveSceneFile(); |
| | | var scene6 = new Scene() |
| | | { |
| | | sid = "scene6", |
| | | userSceneId = "scene6", |
| | | name = "起床", |
| | | roomIds = new List<string>() { room2.roomId }, |
| | | gatewayId = "1234567890123456", |
| | | collect = false, |
| | | }; |
| | | scene6.SaveSceneFile(); |
| | | #endregion |
| | | |
| | | |
| | | var lightSwitch6 = new Function() |
| | | { |
| | | sid = "lightSwitch6", |
| | | deviceId = "lightSwitch6", |
| | | name = "洗手间灯", |
| | | spk = SPK.LightSwitch, |
| | | roomIds = new List<string>() { room1.roomId }, |
| | | attributes = new List<FunctionAttributes>() |
| | | { |
| | | new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on" }, |
| | | new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0" }, |
| | | }, |
| | | }; |
| | | lightSwitch6.SaveFunctionFile(); |
| | | |
| | | #endregion |
| | | |
| | | var fileList = Common.FileUtlis.Files.ReadFiles(); |
| | | |
| | | foreach (var file in fileList) |
| | | { |
| | | FunctionList.List.IniFunctionList(file,true); |
| | | } |
| | | |
| | | Room.CurrentSpatial.InitRoomListFunctions(); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | MainPage.GoUserPage(false); |
| | | }; |
| | | |
| | | |
| | | |
| | | LoadEventList(); |
| | | account = etAccount.Text.Trim(); |
| | | |
| | | #if DEBUG1211 |
| | |
| | | topView.AddChidren(btnLinkStateTip); |
| | | //更新链接状态icon颜色 |
| | | CheckLinkStatus();//2020-12-22 |
| | | //LoadEvent_CheckLinkStatus(); |
| | | |
| | | |
| | | btnResidenceName = new Button() |
| | | { |
| | |
| | | if (tempSensorList.Count > 0 || humiSensorList.Count > 0) |
| | | { |
| | | btnEnvirValuesTitle.TextID = StringId.InOutdoor; |
| | | btnEnvirValuesTitle.Width = Application.GetRealWidth(8)+ btnEnvirValuesTitle.GetTextWidth(); |
| | | } |
| | | btnEnvirValuesTitle.Width = Application.GetRealWidth(8) + btnEnvirValuesTitle.GetTextWidth(); |
| | | environmentalView.AddChidren(btnEnvirValuesTitle); |
| | | |
| | | Button btnTempIcon = new Button() |
| | | { |
| | | X = btnEnvirValuesTitle.Right,//+ Application.GetRealWidth(4), |
| | | //X = Application.GetRealWidth(12), |
| | | X = btnEnvirValuesTitle.Right, |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(16), |
| | | Height = Application.GetMinRealAverage(16), |
| | |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = "/--°", |
| | | Text = "" |
| | | }; |
| | | if (tempSensorList.Count > 0) |
| | | { |
| | | btnIndoorTempValues.Text = "/--°"; |
| | | double tempTotalValues = 0; |
| | | foreach (var temp in tempSensorList) |
| | | { |
| | |
| | | { |
| | | btnIndoorTempValues.Text = "/" + tempTotalValues + "°"; |
| | | } |
| | | btnIndoorTempValues.Width = btnIndoorTempValues.GetTextWidth(); |
| | | } |
| | | btnIndoorTempValues.Width = btnIndoorTempValues.GetTextWidth(); |
| | | environmentalView.AddChidren(btnIndoorTempValues); |
| | | |
| | | Button btnHumidityIcon = new Button() |
| | |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = "/--%", |
| | | Text = "" |
| | | }; |
| | | if (tempSensorList.Count > 0) |
| | | { |
| | | btnIndoorHumiValues.Text = "/--%"; |
| | | double humiTotalValues = 0; |
| | | foreach (var humi in humiSensorList) |
| | | { |
| | |
| | | { |
| | | btnIndoorHumiValues.Text = "/" + humiTotalValues + "%"; |
| | | } |
| | | btnIndoorHumiValues.Width = btnIndoorHumiValues.GetTextWidth(); |
| | | } |
| | | btnIndoorHumiValues.Width = btnIndoorHumiValues.GetTextWidth(); |
| | | environmentalView.AddChidren(btnIndoorHumiValues); |
| | | |
| | | Button btnPm25Icon = new Button() |
| | |
| | | |
| | | |
| | | #if DEBUG |
| | | FunctionList.List.Functions.Add(new Function() { spk = SPK.PjtIr, name = "测试投影仪", |
| | | attributes = new List<FunctionAttributes>() { |
| | | new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, |
| | | new FunctionAttributes(){ key = "computer",value = new List<string>(){"电脑" } }, |
| | | new FunctionAttributes(){ key = "video",value = new List<string>(){"视频" } }, |
| | | new FunctionAttributes(){ key = "source",value = new List<string>(){"信号源" } }, |
| | | new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"变焦+" } }, |
| | | new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"变焦-" } }, |
| | | new FunctionAttributes(){ key = "page+",value = new List<string>(){"画面+" } }, |
| | | new FunctionAttributes(){ key = "page-",value = new List<string>(){"画面-" } }, |
| | | new FunctionAttributes(){ key = "menu",value = new List<string>(){"菜单" } }, |
| | | new FunctionAttributes(){ key = "ok",value = new List<string>(){"确认" } }, |
| | | new FunctionAttributes(){ key = "up",value = new List<string>(){"上" } }, |
| | | new FunctionAttributes(){ key = "left",value = new List<string>(){"左" } }, |
| | | new FunctionAttributes(){ key = "right",value = new List<string>(){"右" } }, |
| | | new FunctionAttributes(){ key = "down",value = new List<string>(){"下" } }, |
| | | new FunctionAttributes(){ key = "exit",value = new List<string>(){"退出" } }, |
| | | new FunctionAttributes(){ key = "volume+",value = new List<string>(){"音量+" } }, |
| | | new FunctionAttributes(){ key = "volume-",value = new List<string>(){"音量-" } }, |
| | | new FunctionAttributes(){ key = "mute",value = new List<string>(){"静音" } }, |
| | | new FunctionAttributes(){ key = "auto",value = new List<string>(){"自动" } }, |
| | | new FunctionAttributes(){ key = "pause",value = new List<string>(){"暂停" } }, |
| | | } |
| | | }); |
| | | //FunctionList.List.Functions.Add(new Function() { spk = SPK.PjtIr, name = "测试投影仪", |
| | | // attributes = new List<FunctionAttributes>() { |
| | | // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, |
| | | // new FunctionAttributes(){ key = "computer",value = new List<string>(){"电脑" } }, |
| | | // new FunctionAttributes(){ key = "video",value = new List<string>(){"视频" } }, |
| | | // new FunctionAttributes(){ key = "source",value = new List<string>(){"信号源" } }, |
| | | // new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"变焦+" } }, |
| | | // new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"变焦-" } }, |
| | | // new FunctionAttributes(){ key = "page+",value = new List<string>(){"画面+" } }, |
| | | // new FunctionAttributes(){ key = "page-",value = new List<string>(){"画面-" } }, |
| | | // new FunctionAttributes(){ key = "menu",value = new List<string>(){"菜单" } }, |
| | | // new FunctionAttributes(){ key = "ok",value = new List<string>(){"确认" } }, |
| | | // new FunctionAttributes(){ key = "up",value = new List<string>(){"上" } }, |
| | | // new FunctionAttributes(){ key = "left",value = new List<string>(){"左" } }, |
| | | // new FunctionAttributes(){ key = "right",value = new List<string>(){"右" } }, |
| | | // new FunctionAttributes(){ key = "down",value = new List<string>(){"下" } }, |
| | | // new FunctionAttributes(){ key = "exit",value = new List<string>(){"退出" } }, |
| | | // new FunctionAttributes(){ key = "volume+",value = new List<string>(){"音量+" } }, |
| | | // new FunctionAttributes(){ key = "volume-",value = new List<string>(){"音量-" } }, |
| | | // new FunctionAttributes(){ key = "mute",value = new List<string>(){"静音" } }, |
| | | // new FunctionAttributes(){ key = "auto",value = new List<string>(){"自动" } }, |
| | | // new FunctionAttributes(){ key = "pause",value = new List<string>(){"暂停" } }, |
| | | // } |
| | | //}); |
| | | |
| | | FunctionList.List.Functions.Add(new Function() |
| | | { |
| | | spk = SPK.StbIr, |
| | | name = "测试机顶盒", |
| | | attributes = new List<FunctionAttributes>() { |
| | | new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, |
| | | new FunctionAttributes(){ key = "computer",value = new List<string>(){"电脑" } }, |
| | | new FunctionAttributes(){ key = "video",value = new List<string>(){"视频" } }, |
| | | new FunctionAttributes(){ key = "source",value = new List<string>(){"信号源" } }, |
| | | new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"变焦+" } }, |
| | | new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"变焦-" } }, |
| | | new FunctionAttributes(){ key = "page+",value = new List<string>(){"画面+" } }, |
| | | new FunctionAttributes(){ key = "page-",value = new List<string>(){"画面-" } }, |
| | | new FunctionAttributes(){ key = "menu",value = new List<string>(){"菜单" } }, |
| | | new FunctionAttributes(){ key = "ok",value = new List<string>(){"确认" } }, |
| | | new FunctionAttributes(){ key = "up",value = new List<string>(){"上" } }, |
| | | new FunctionAttributes(){ key = "left",value = new List<string>(){"左" } }, |
| | | new FunctionAttributes(){ key = "right",value = new List<string>(){"右" } }, |
| | | new FunctionAttributes(){ key = "down",value = new List<string>(){"下" } }, |
| | | new FunctionAttributes(){ key = "exit",value = new List<string>(){"退出" } }, |
| | | new FunctionAttributes(){ key = "volume+",value = new List<string>(){"音量+" } }, |
| | | new FunctionAttributes(){ key = "volume-",value = new List<string>(){"音量-" } }, |
| | | new FunctionAttributes(){ key = "mute",value = new List<string>(){"静音" } }, |
| | | new FunctionAttributes(){ key = "auto",value = new List<string>(){"自动" } }, |
| | | new FunctionAttributes(){ key = "pause",value = new List<string>(){"暂停" } }, |
| | | } |
| | | }); |
| | | //FunctionList.List.Functions.Add(new Function() |
| | | //{ |
| | | // spk = SPK.StbIr, |
| | | // name = "测试机顶盒", |
| | | // attributes = new List<FunctionAttributes>() { |
| | | // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, |
| | | // new FunctionAttributes(){ key = "computer",value = new List<string>(){"电脑" } }, |
| | | // new FunctionAttributes(){ key = "video",value = new List<string>(){"视频" } }, |
| | | // new FunctionAttributes(){ key = "source",value = new List<string>(){"信号源" } }, |
| | | // new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"变焦+" } }, |
| | | // new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"变焦-" } }, |
| | | // new FunctionAttributes(){ key = "page+",value = new List<string>(){"画面+" } }, |
| | | // new FunctionAttributes(){ key = "page-",value = new List<string>(){"画面-" } }, |
| | | // new FunctionAttributes(){ key = "menu",value = new List<string>(){"菜单" } }, |
| | | // new FunctionAttributes(){ key = "ok",value = new List<string>(){"确认" } }, |
| | | // new FunctionAttributes(){ key = "up",value = new List<string>(){"上" } }, |
| | | // new FunctionAttributes(){ key = "left",value = new List<string>(){"左" } }, |
| | | // new FunctionAttributes(){ key = "right",value = new List<string>(){"右" } }, |
| | | // new FunctionAttributes(){ key = "down",value = new List<string>(){"下" } }, |
| | | // new FunctionAttributes(){ key = "exit",value = new List<string>(){"退出" } }, |
| | | // new FunctionAttributes(){ key = "volume+",value = new List<string>(){"音量+" } }, |
| | | // new FunctionAttributes(){ key = "volume-",value = new List<string>(){"音量-" } }, |
| | | // new FunctionAttributes(){ key = "mute",value = new List<string>(){"静音" } }, |
| | | // new FunctionAttributes(){ key = "auto",value = new List<string>(){"自动" } }, |
| | | // new FunctionAttributes(){ key = "pause",value = new List<string>(){"暂停" } }, |
| | | // } |
| | | //}); |
| | | |
| | | FunctionList.List.Functions.Add(new Function() |
| | | { |
| | | spk = SPK.TvIr, |
| | | name = "测试电视", |
| | | attributes = new List<FunctionAttributes>() { |
| | | new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, |
| | | new FunctionAttributes(){ key = "computer",value = new List<string>(){"电脑" } }, |
| | | new FunctionAttributes(){ key = "video",value = new List<string>(){"视频" } }, |
| | | new FunctionAttributes(){ key = "source",value = new List<string>(){"信号源" } }, |
| | | new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"变焦+" } }, |
| | | new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"变焦-" } }, |
| | | new FunctionAttributes(){ key = "page+",value = new List<string>(){"画面+" } }, |
| | | new FunctionAttributes(){ key = "page-",value = new List<string>(){"画面-" } }, |
| | | new FunctionAttributes(){ key = "menu",value = new List<string>(){"菜单" } }, |
| | | new FunctionAttributes(){ key = "ok",value = new List<string>(){"确认" } }, |
| | | new FunctionAttributes(){ key = "up",value = new List<string>(){"上" } }, |
| | | new FunctionAttributes(){ key = "left",value = new List<string>(){"左" } }, |
| | | new FunctionAttributes(){ key = "right",value = new List<string>(){"右" } }, |
| | | new FunctionAttributes(){ key = "down",value = new List<string>(){"下" } }, |
| | | new FunctionAttributes(){ key = "exit",value = new List<string>(){"退出" } }, |
| | | new FunctionAttributes(){ key = "volume+",value = new List<string>(){"音量+" } }, |
| | | new FunctionAttributes(){ key = "volume-",value = new List<string>(){"音量-" } }, |
| | | new FunctionAttributes(){ key = "mute",value = new List<string>(){"静音" } }, |
| | | new FunctionAttributes(){ key = "auto",value = new List<string>(){"自动" } }, |
| | | new FunctionAttributes(){ key = "pause",value = new List<string>(){"暂停" } }, |
| | | } |
| | | }); |
| | | //FunctionList.List.Functions.Add(new Function() |
| | | //{ |
| | | // spk = SPK.TvIr, |
| | | // name = "测试电视", |
| | | // attributes = new List<FunctionAttributes>() { |
| | | // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, |
| | | // new FunctionAttributes(){ key = "computer",value = new List<string>(){"电脑" } }, |
| | | // new FunctionAttributes(){ key = "video",value = new List<string>(){"视频" } }, |
| | | // new FunctionAttributes(){ key = "source",value = new List<string>(){"信号源" } }, |
| | | // new FunctionAttributes(){ key = "zoom+",value = new List<string>(){"变焦+" } }, |
| | | // new FunctionAttributes(){ key = "zoom-",value = new List<string>(){"变焦-" } }, |
| | | // new FunctionAttributes(){ key = "page+",value = new List<string>(){"画面+" } }, |
| | | // new FunctionAttributes(){ key = "page-",value = new List<string>(){"画面-" } }, |
| | | // new FunctionAttributes(){ key = "menu",value = new List<string>(){"菜单" } }, |
| | | // new FunctionAttributes(){ key = "ok",value = new List<string>(){"确认" } }, |
| | | // new FunctionAttributes(){ key = "up",value = new List<string>(){"上" } }, |
| | | // new FunctionAttributes(){ key = "left",value = new List<string>(){"左" } }, |
| | | // new FunctionAttributes(){ key = "right",value = new List<string>(){"右" } }, |
| | | // new FunctionAttributes(){ key = "down",value = new List<string>(){"下" } }, |
| | | // new FunctionAttributes(){ key = "exit",value = new List<string>(){"退出" } }, |
| | | // new FunctionAttributes(){ key = "volume+",value = new List<string>(){"音量+" } }, |
| | | // new FunctionAttributes(){ key = "volume-",value = new List<string>(){"音量-" } }, |
| | | // new FunctionAttributes(){ key = "mute",value = new List<string>(){"静音" } }, |
| | | // new FunctionAttributes(){ key = "auto",value = new List<string>(){"自动" } }, |
| | | // new FunctionAttributes(){ key = "pause",value = new List<string>(){"暂停" } }, |
| | | // } |
| | | //}); |
| | | #endif |
| | | |
| | | } |
| | |
| | | /// </summary> |
| | | void CheckLinkStatus() |
| | | { |
| | | //Dome模式 |
| | | if (MainPage.NoLoginMode) |
| | | { |
| | | bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.MainColor; |
| | | return; |
| | | } |
| | | |
| | | if (!Control.Ins.GatewayOnline_Local && !Control.Ins.GatewayOnline_Cloud) |
| | | { |
| | | bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipFail; |
| | |
| | | { |
| | | var conditionJOb = new JObject { }; |
| | | conditionJOb.Add("key", dic["key"]); |
| | | conditionJOb.Add("comparator", dic["comparator"]); |
| | | var c1 = ""; |
| | | dic.TryGetValue("comparator", out c1); |
| | | conditionJOb.TryAdd("comparator", c1); |
| | | conditionJOb.Add("data_type", dic["data_type"]); |
| | | conditionJOb.Add("value", dic["value"]); |
| | | conditionArray.Add(conditionJOb); |
| | |
| | | while (this.Parent != null) |
| | | { |
| | | System.Threading.Thread.Sleep(4000); |
| | | |
| | | if (this.Parent == null) |
| | | { |
| | | break; |
| | | } |
| | | //访问云端获取列表 |
| | | var resultObj = DAL.Server.HttpUtil.RequestHttpsPost(DAL.Server.NewAPI.API_POST_Gethomepager, requestJson); |
| | | if (resultObj.Code == DAL.Server.StateCode.SUCCESS) |
| | |
| | | pm.GetHomePager(); |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | if (this.Parent == null) |
| | | { |
| | | return ; |
| | | } |
| | | |
| | | //跳转页面---- |
| | | MainPage.GoUserPage(true, false, () => |
| | | { |
| | |
| | | |
| | | #endregion |
| | | |
| | | //体验模式 |
| | | if(MainPage.NoLoginMode) |
| | | { |
| | | |
| | | Button btnExit = new Button() |
| | | { |
| | | Y = Application.GetRealHeight(58) + personalInfoView.Bottom, |
| | | Height = Application.GetRealHeight(50), |
| | | TextAlignment = TextAlignment.Center, |
| | | SelectedTextColor = CSS_Color.MainColor, |
| | | TextColor = CSS_Color.BackgroundColor, |
| | | TextSize = CSS_FontSize.SubheadingFontSize, |
| | | TextID = StringId.NextStep, |
| | | BackgroundColor = CSS_Color.MainBackgroundColor, |
| | | SelectedBackgroundColor = CSS_Color.MainBackgroundColor, |
| | | }; |
| | | if(Language.CurrentLanguage =="Chinese") |
| | | { |
| | | btnExit.Text = "退出体验模式"; |
| | | } |
| | | else |
| | | { |
| | | btnExit.Text = "Exit dome"; |
| | | } |
| | | btnExit.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | HDLCommon.Current.Logout(); |
| | | }; |
| | | |
| | | return; |
| | | } |
| | | |
| | | contentView = new VerticalScrolViewLayout() |
| | | { |
| | | Y = Application.GetRealHeight(8) + personalInfoView.Bottom, |
| | |
| | | Button btnResetPasswordText; |
| | | Button btnResetPasswordRight; |
| | | #endregion |
| | | |
| | | |
| | | #region 个人选项-新增住宅 |
| | | /// <summary> |
| | | /// 个人选项-新增住宅区域 |
| | | /// </summary> |
| | | FrameLayout addResidenceView; |
| | | /// <summary> |
| | | /// 新增住宅提示文本 |
| | | /// </summary> |
| | | Button btnAddResidenceText; |
| | | Button btnAddResidenceScan; |
| | | #endregion |
| | | |
| | | #endregion |
| | | |
| | | #endregion |
| | |
| | | /// </summary> |
| | | optionListView = new VerticalScrolViewLayout() |
| | | { |
| | | //Y = headPortraitView.Bottom + Application.GetRealHeight(8), |
| | | Height = Application.GetRealHeight(51 * 5), |
| | | Height = Application.GetRealHeight(51 * 6), |
| | | BackgroundColor = CSS_Color.MainBackgroundColor, |
| | | ScrollEnabled = false, |
| | | }; |
| | |
| | | UnSelectedImagePath = "Public/Right.png", |
| | | }; |
| | | thirdPartyAuthorizationView.AddChidren(btnThirdPartyAuthorizationRight); |
| | | //optionListView.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor }); |
| | | #endregion |
| | | #region 个人选项-修改登录密码区域 |
| | | /// <summary> |
| | |
| | | UnSelectedImagePath = "Public/Right.png", |
| | | }; |
| | | resetPasswordView.AddChidren(btnResetPasswordRight); |
| | | //optionListView.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor }); |
| | | optionListView.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor }); |
| | | #endregion |
| | | |
| | | #region 个人选项-添加住宅 |
| | | addResidenceView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | }; |
| | | optionListView.AddChidren(addResidenceView); |
| | | btnAddResidenceScan = new Button() |
| | | { |
| | | X = Application.GetRealWidth(319), |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetMinRealAverage(30), |
| | | Height = Application.GetMinRealAverage(30), |
| | | UnSelectedImagePath = "Public/ScanGrey.png", |
| | | }; |
| | | addResidenceView.AddChidren(btnAddResidenceScan); |
| | | btnAddResidenceText = new Button() |
| | | { |
| | | X = Application.GetRealWidth(16), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | TextSize = CSS_FontSize.SubheadingFontSize, |
| | | TextID = StringId.AddResidence, |
| | | }; |
| | | addResidenceView.AddChidren(btnAddResidenceText); |
| | | |
| | | btnAddResidenceText.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | Scan.OpenScan((scanString) => |
| | | { |
| | | //执行绑定住宅 |
| | | new BindingResidencePage().DoBindResidence(scanString); |
| | | }); |
| | | }; |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #endregion |
| | | |
| | | #region 解锁设置区域 |
| | |
| | | interpretationSettingsView = new FrameLayout() |
| | | { |
| | | BackgroundColor = CSS_Color.MainBackgroundColor, |
| | | Height = Application.GetRealHeight(66), |
| | | Height = Application.GetRealHeight(70), |
| | | }; |
| | | bodyScrolView.AddChidren(interpretationSettingsView); |
| | | if(Language.CurrentLanguage != "Chinese") |
| | |
| | | X = Application.GetRealWidth(16), |
| | | Y = btnInterpretationSettingsTitle.Bottom, |
| | | Height = Application.GetRealHeight(32), |
| | | Width = Application.GetRealWidth(290), |
| | | Width = Application.GetRealWidth(310), |
| | | TextAlignment = TextAlignment.TopLeft, |
| | | TextColor = CSS_Color.PromptingColor1, |
| | | TextSize = CSS_FontSize.TextFontSize, |
| | |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | /// </summary> |
| | | Button btnMode; |
| | | /// <summary> |
| | | /// 扫风按钮 |
| | | /// </summary> |
| | | Button btnSwing; |
| | | /// <summary> |
| | | /// 风速按钮 |
| | | /// </summary> |
| | | Button btnWindSpeed; |
| | |
| | | UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode)), |
| | | }; |
| | | FrameWhiteCentet1.AddChidren(btnMode); |
| | | |
| | | |
| | | btnSwing = new Button() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = Application.GetRealHeight(330), |
| | | Width = Application.GetRealWidth(40), |
| | | Height = Application.GetRealWidth(40), |
| | | UnSelectedImagePath = "FunctionIcon/AC/SweepIconNullOn.png", |
| | | }; |
| | | FrameWhiteCentet1.AddChidren(btnSwing); |
| | | |
| | | |
| | | |
| | | btnWindSpeed = new Button() |
| | | { |
| | |
| | | }; |
| | | dialog.Show(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 加载修改扫风模式区域 |
| | | /// </summary> |
| | | void LoadDiv_ChangeSwingView() |
| | | { |
| | | Dialog dialog = new Dialog(); |
| | | |
| | | FrameLayout dialogView = new FrameLayout() |
| | | { |
| | | BackgroundColor = CSS_Color.DialogTransparentColor1, |
| | | }; |
| | | dialog.AddChidren(dialogView); |
| | | |
| | | FrameLayout modeChangeView; |
| | | modeChangeView = new FrameLayout() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = Application.GetRealHeight(128), |
| | | Width = Application.GetRealWidth(160), |
| | | Height = Application.GetRealHeight(287), |
| | | BackgroundImagePath = "FunctionIcon/AC/DivBg2.png", |
| | | }; |
| | | dialogView.AddChidren(modeChangeView); |
| | | |
| | | Button btnTitle; |
| | | btnTitle = new Button() |
| | | { |
| | | X = Application.GetRealWidth(8 + 16), |
| | | Y = Application.GetRealHeight(8), |
| | | Width = Application.GetRealWidth(112), |
| | | Height = Application.GetRealHeight(44), |
| | | TextID = StringId.Swing, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | TextSize = CSS_FontSize.EmphasisFontSize_Secondary, |
| | | }; |
| | | modeChangeView.AddChidren(btnTitle); |
| | | |
| | | Button btnLine = new Button() |
| | | { |
| | | X = btnTitle.X, |
| | | Y = btnTitle.Bottom, |
| | | Width = Application.GetRealWidth(112), |
| | | Height = Application.GetRealHeight(1), |
| | | BackgroundColor = CSS_Color.BackgroundColor, |
| | | }; |
| | | modeChangeView.AddChidren(btnLine); |
| | | |
| | | var modeList = device.GetAttribute(FunctionAttributeKey.Swing).value; |
| | | foreach (var m in modeList) |
| | | { |
| | | Button btnModeIcon = new Button() |
| | | { |
| | | X = btnTitle.X, |
| | | Y = Application.GetRealHeight(41 * (modeList.IndexOf(m) + 1) + 10 + 8), |
| | | Width = Application.GetRealWidth(30), |
| | | Height = Application.GetRealWidth(30), |
| | | IsSelected = device.GetAttrState(FunctionAttributeKey.Swing) == m, |
| | | }; |
| | | modeChangeView.AddChidren(btnModeIcon); |
| | | |
| | | Button btnModeText = new Button() |
| | | { |
| | | X = Application.GetRealWidth(12) + btnModeIcon.Right, |
| | | Y = Application.GetRealHeight(44 * (modeList.IndexOf(m) + 1) + 8), |
| | | Height = Application.GetRealHeight(44), |
| | | Width = Application.GetRealWidth(90), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = CSS_Color.FirstLevelTitleColor, |
| | | SelectedTextColor = CSS_Color.MainColor, |
| | | IsSelected = device.GetAttrState(FunctionAttributeKey.Swing) == m, |
| | | TextSize = CSS_FontSize.TextFontSize, |
| | | }; |
| | | modeChangeView.AddChidren(btnModeText); |
| | | |
| | | btnModeIcon.UnSelectedImagePath = acFunction.GetSwingIconPath(m, false); |
| | | btnModeIcon.SelectedImagePath = acFunction.GetSwingIconPath(m); |
| | | btnModeText.Text = acFunction.GetSwingAttrText(m); |
| | | |
| | | if (modeList.IndexOf(m) < modeList.Count - 1) |
| | | { |
| | | modeChangeView.AddChidren(new Button() |
| | | { |
| | | X = btnTitle.X, |
| | | Y = btnModeText.Bottom, |
| | | Width = Application.GetRealWidth(112), |
| | | Height = Application.GetRealHeight(1), |
| | | BackgroundColor = CSS_Color.BackgroundColor, |
| | | }); |
| | | } |
| | | EventHandler<MouseEventArgs> eventHandler = (sender, e) => |
| | | { |
| | | dialog.Close(); |
| | | }; |
| | | EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => |
| | | { |
| | | btnModeIcon.IsSelected = btnModeText.IsSelected = true; |
| | | device.SetAttrState(FunctionAttributeKey.Swing, m); |
| | | btnSwing.UnSelectedImagePath = acFunction.GetSwingIconPath(m); |
| | | Dictionary<string, string> d = new Dictionary<string, string>(); |
| | | d.Add(FunctionAttributeKey.Swing, m); |
| | | Control.Ins.SendWriteCommand(device, d); |
| | | dialog.Close(); |
| | | }; |
| | | btnModeIcon.MouseUpEventHandler = eventHandler1; |
| | | btnModeText.MouseUpEventHandler = eventHandler1; |
| | | dialogView.MouseUpEventHandler = eventHandler; |
| | | |
| | | } |
| | | |
| | | dialogView.MouseUpEventHandler = (sender, e) => { |
| | | dialog.Close(); |
| | | }; |
| | | dialog.Show(); |
| | | } |
| | | /// <summary> |
| | | /// 加载修改模式区域 |
| | | /// </summary> |
| | |
| | | var btnMore = new Button() |
| | | { |
| | | Gravity = Gravity.CenterHorizontal, |
| | | Y = Application.GetRealHeight(334), |
| | | Y = Application.GetRealHeight(334 + 80), |
| | | Width = Application.GetRealWidth(30), |
| | | Height = Application.GetRealWidth(30), |
| | | UnSelectedImagePath = "FunctionIcon/AC/More.png", |
| | |
| | | // MainPage.BasePageView.ScrollEnabled = true; |
| | | //}; |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 控制模式事件 |
| | | /// </summary> |
| | |
| | | return; |
| | | } |
| | | LoadDiv_ChangeModeView(); |
| | | }; |
| | | //扫风改变模式 |
| | | btnSwing.MouseUpEventHandler = (sender, e) => |
| | | { |
| | | if (device.trait_on_off.curValue.ToString() == "off") |
| | | { |
| | | return; |
| | | } |
| | | LoadDiv_ChangeSwingView(); |
| | | }; |
| | | btnWindSpeed.MouseUpEventHandler = (sender, e) => |
| | | { |
| | |
| | | btnTemp.Text = Convert.ToDouble( device.GetAttrState(FunctionAttributeKey.SetTemp)).ToString(); |
| | | btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.RoomTemp))) + "°C"; |
| | | btnMode.UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode)); |
| | | btnSwing.UnSelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing)); |
| | | btnWindSpeed.UnSelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed)); |
| | | arcBar.Progress = Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp))); |
| | | if (device.trait_on_off.curValue.ToString() == "on") |
| | |
| | | { |
| | | colorPicker.ColorImagePath = "FunctionIcon/Light/ColorWheelGray.png"; |
| | | } |
| | | colorPicker.MouseDownEventHandler = (sender, e) => { |
| | | MainPage.BasePageView.ScrollEnabled = false; |
| | | }; |
| | | colorPicker.MouseUpEventHandler = (sender, e) => { |
| | | MainPage.BasePageView.ScrollEnabled = true; |
| | | }; |
| | | //colorPicker.MouseDownEventHandler = (sender, e) => { |
| | | // MainPage.BasePageView.ScrollEnabled = false; |
| | | //}; |
| | | //colorPicker.MouseUpEventHandler = (sender, e) => { |
| | | // MainPage.BasePageView.ScrollEnabled = true; |
| | | //}; |
| | | |
| | | //白点控件 |
| | | this.btnWhiteRound = new Button(); |
| | |
| | | ContextView.AddChidren(homePage); |
| | | homePage.LoadPage(); |
| | | |
| | | //注册推送ID |
| | | RegisteredPush(); |
| | | if (!MainPage.NoLoginMode) |
| | | { |
| | | //注册推送ID |
| | | RegisteredPush(); |
| | | } |
| | | //2020-12-07 增加版本检测更新方法 |
| | | HDLCommon.Current.CheckIfNeedForceUpdate(); |
| | | |
| | |
| | | /// </summary> |
| | | public void ChoosePersonalCenter() |
| | | { |
| | | #if DEBUG |
| | | if(MainPage.NoLoginMode) |
| | | { |
| | | return; |
| | | } |
| | | #endif |
| | | if (MainPage.CurPageIndex == 3) |
| | | { |
| | | return; |