wei
2020-12-07 86db3175d109ab7d5abfb65058228a496f2492ec
20201207

更新状态读取
10个文件已修改
391 ■■■■ 已修改文件
.vs/HDL_APP_Project/xs/UserPrefs.xml 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/DriverLayer/Control.cs 67 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/Mqtt/MqttClient.cs 162 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/Entity/DB_ResidenceData.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/Entity/Function/Function.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/Entity/FunctionList.cs 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/1-HomePage/HomePage.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/UserPage.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,24 +1,25 @@
<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/UI/UI1-Login/LoginPage.cs">
  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/DriverLayer/Control.cs">
    <Files>
      <File FileName="HDL_ON/UI/MainPage.cs" Line="203" Column="62" />
      <File FileName="HDL_ON/Entity/FunctionList.cs" />
      <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberManagementPage.cs" />
      <File FileName="HDL_ON/Entity/Function/Function.cs" />
      <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="239" Column="3" />
      <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="621" Column="21" />
      <File FileName="HDL_ON/Entity/DB_ResidenceData.cs" />
      <File FileName="HDL_ON/DAL/Server/NewApiRes.cs" />
      <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="26" Column="33" />
      <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="468" Column="28" />
      <File FileName="HDL_ON/DAL/DriverLayer/Packet.cs" Line="491" Column="5" />
      <File FileName="HDL_ON/Entity/FunctionList.cs" Line="541" Column="64" />
      <File FileName="HDL_ON/Entity/DB_ResidenceData.cs" Line="290" Column="69" />
      <File FileName="HDL_ON/UI/UI2/UserPage.cs" Line="132" Column="25" />
      <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="322" Column="54" />
      <File FileName="HDL_ON/DAL/DriverLayer/Control_Udp.cs" Line="538" Column="21" />
    </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="DAL" expanded="True">
                <Node name="DriverLayer" expanded="True" />
                <Node name="DriverLayer" expanded="True">
                  <Node name="Control.cs" selected="True" />
                </Node>
                <Node name="Mqtt" expanded="True" />
                <Node name="Server" expanded="True" />
              </Node>
@@ -26,9 +27,7 @@
                <Node name="Function" expanded="True" />
              </Node>
              <Node name="UI" expanded="True">
                <Node name="UI1-Login" expanded="True">
                  <Node name="LoginPage.cs" selected="True" />
                </Node>
                <Node name="UI1-Login" expanded="True" />
                <Node name="UI2" expanded="True">
                  <Node name="1-HomePage" expanded="True" />
                  <Node name="3-Intelligence" expanded="True">
@@ -58,7 +57,7 @@
  <MonoDevelop.Ide.DebuggingService.Breakpoints>
    <BreakpointStore>
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/FloorsManagementPage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/FloorsManagementPage.cs" line="176" column="1" />
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="631" column="1" />
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Entity/FunctionList.cs" relfile="HDL_ON/Entity/FunctionList.cs" line="534" column="1" />
    </BreakpointStore>
  </MonoDevelop.Ide.DebuggingService.Breakpoints>
  <MultiItemStartupConfigurations />
HDL_ON/DAL/DriverLayer/A_Protocol_Common.cs
@@ -75,7 +75,9 @@
        /// </summary>
        public const string BusPcGetAppSids = "/user/onpro/custom/function/list/get";
        /// <summary>
        /// 本地控制功能状态主题
        /// </summary>
        public string ControlFunctionTopic
        {
            get
@@ -83,5 +85,15 @@
                return $"/base/{Control.Ins.GatewayId}/thing/property/down";
            }
        }
        /// <summary>
        /// 读取功能状态
        /// </summary>
        public string ReadStatus
        {
            get
            {
                return $"/base/{Control.Ins.GatewayId}/thing/property/read";
            }
        }
    }
}
HDL_ON/DAL/DriverLayer/Control.cs
@@ -70,6 +70,7 @@
                _gatewayOnline = value;
                //修改主页连接状态
                UI.HomePage.LoadEvent_CheckLinkStatus();
                FunctionList.List.ReadAllFunctionStatus();
            }
        }
        /// <summary>
@@ -228,7 +229,7 @@
            function.refreshTime = DateTime.Now;
            DAL.Server.HttpServerRequest httpServer = new DAL.Server.HttpServerRequest();
            //远程通讯
            if (!Ins.IsRemote)
            if (Ins.IsRemote || true)
            {
                //ALink控制、Bus控制使用同一个接口控制,由云端负责解析
                var apiControlData = function.GetApiControlData(commandDictionary);
@@ -240,7 +241,7 @@
            //本地通讯
            else
            {
                //ALink控制
                //Bus控制
                if (DB_ResidenceData.residenceData.GatewayType == 0)
                {
                    try
@@ -255,7 +256,7 @@
                        MainPage.Log($"发送数据异常: {ex.Message}");
                    }
                }
                //Bus控制
                //ALink控制
                else
                {
                    if (myUdp != null)
@@ -264,7 +265,6 @@
                        var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(functionControlDataObj);
                        var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ControlFunctionTopic, functionControlDataJson);
                        myUdp.SendLocalHdlLinkData(sendBytes);
                        //MainPage.Log($"发送本地HDL-Link数据{functionControlDataJson}\r\n");
                    }
                }
            }
@@ -277,25 +277,58 @@
        public void SendReadCommand(Function function)
        {
            function.refreshTime = DateTime.Now;
            if (function.bus_Data != null)
            if (Ins.IsRemote)
            {
                try
                {
                    //ReadBusData(function);
                }
                catch (Exception ex)
                {
                    MainPage.Log($"发送数据异常: {ex.Message}");
                }
            }
            else
            {
                //var commandObj = function.GetSendJObject(CommandType_A.read);
                //var commandString = Newtonsoft.Json.JsonConvert.SerializeObject(commandObj);
                //var commandBytes = System.Text.Encoding.UTF8.GetBytes(commandString);
                //MqttCommon.MqttRemoteSend(commandBytes);
                if (function.bus_Data != null)
                {
                    try
                    {
                        Ins.myUdp.ReadBusData(function);
                    }
                    catch (Exception ex)
                    {
                        MainPage.Log($"发送数据异常: {ex.Message}");
                    }
                }
                else
                {
                    var readKey = new Dictionary<string, string>();
                    readKey.Add("sid", function.sid);
                    var readDataObj = new GatewayAlinkReadObj()
                    {
                        id = Ins.msg_id.ToString(),
                        objects = new List<Dictionary<string, string>>()
                        {
                            readKey
                        },
                         //time_stamp =
                    };
                    var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(readDataObj);
                    var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ReadStatus, functionControlDataJson);
                    Ins.myUdp.SendLocalHdlLinkData(sendBytes);
                }
            }
        }
        /// <summary>
        /// 发送A协议读取命令
        /// </summary>
        public void SendReadCommand(List<Dictionary<string, string>> keyValuePairs)
        {
            var readDataObj = new GatewayAlinkReadObj()
            {
                id = Ins.msg_id.ToString(),
                objects = keyValuePairs,
                //time_stamp =
            };
            var functionControlDataJson = Newtonsoft.Json.JsonConvert.SerializeObject(readDataObj);
            var sendBytes = Ins.ConvertSendBodyData(CommunicationTopic.ct.ReadStatus, functionControlDataJson);
            Ins.myUdp.SendLocalHdlLinkData(sendBytes);
        }
        /// <summary>
        /// 控制a协议场景
HDL_ON/DAL/Mqtt/MqttClient.cs
@@ -10,6 +10,7 @@
using System.Security.Cryptography;
using HDL_ON.DriverLayer;
using HDL_ON.Entity;
using HDL_ON.UI;
namespace HDL_ON.DAL.Mqtt
{
@@ -285,6 +286,161 @@
                                    else
                                    {
                                        //A协议数据处理
                                        var revString = System.Text.Encoding.UTF8.GetString(e.ApplicationMessage.Payload);
                                        var temp = Newtonsoft.Json.JsonConvert.DeserializeObject<GatewayAlinkControlObj>(revString);
                                        if (temp != null)
                                        {
                                            var allLocalFuntion = FunctionList.List.GetAllDeviceFunctionList();
                                            foreach (var updateTemp in temp.objects)
                                            {
                                                bool hadChange = false;//状态有变化再更新界面
                                                var updataObj = allLocalFuntion.Find((obj) => obj.sid == updateTemp.sid);
                                                if (updataObj != null)
                                                {
                                                    foreach (var attr in updateTemp.status)
                                                    {
                                                        foreach (var locatAttr in updataObj.attributes)
                                                        {
                                                            if (attr.key == locatAttr.key)
                                                            {
                                                                if (locatAttr.curValue.ToString() == attr.value)
                                                                {
                                                                    continue;
                                                                }
                                                                locatAttr.curValue = attr.value;
                                                                hadChange = true;
                                                            }
                                                        }
                                                    }
                                                    if(!hadChange)//状态有变化再更新界面
                                                    {
                                                        continue;
                                                    }
                                                    //更新界面状态
                                                    switch (updataObj.spk)
                                                    {
                                                        case SPK.LightSwitch:
                                                            RelayPage.UpdataState(updataObj as Light);
                                                            break;
                                                        case SPK.LightDimming:
                                                            var dimming = updataObj as Light;
                                                            dimming.lastState = Language.StringByID(StringId.Brightness) + " : " + dimming.brightness + "%";
                                                            DimmerPage.UpdataStates(dimming);
                                                            break;
                                                        case SPK.ElectricFan:
                                                            var fan = updataObj as Fan;
                                                            fan.lastState = Language.StringByID(StringId.Level) + " : " + fan.openLevel;
                                                            FanPage.UpdataState(fan);
                                                            break;
                                                        case SPK.LightRGB:
                                                            var rgb = updataObj as Light;
                                                            rgb.lastState = Language.StringByID(StringId.Brightness) + " : " + rgb.brightness + "%";
                                                            RGBPage.UpdataStates(rgb);
                                                            break;
                                                        case SPK.LightRGBW:
                                                        case SPK.LightCCT:
                                                            break;
                                                        case SPK.CurtainSwitch:
                                                            var curtain = updataObj as Curtain;
                                                            curtain.lastState = curtain.trait_on_off.curValue.ToString() == "on" ? Language.StringByID(StringId.Open) : Language.StringByID(StringId.Close);
                                                            CurtainModulePage.UpdataState(curtain);
                                                            break;
                                                        case SPK.CurtainTrietex:
                                                            var trietex = updataObj as Curtain;
                                                            trietex.lastState = Language.StringByID(StringId.Open) + trietex.percent + "%";
                                                            MotorCurtainPage.UpdataState(trietex);
                                                            break;
                                                        case SPK.CurtainRoller:
                                                            var roller = updataObj as Curtain;
                                                            roller.lastState = Language.StringByID(StringId.Open) + roller.percent + "%";
                                                            RollingShutterPage.UpdataState(roller);
                                                            break;
                                                        case SPK.CurtainShades:
                                                            break;
                                                        case SPK.AcStandard:
                                                            var ac = updataObj as AC;
                                                            ac.lastState = "";
                                                            switch (ac.trait_mode.curValue.ToString())
                                                            {
                                                                case "cool":
                                                                    ac.lastState = Language.StringByID(StringId.Cool);
                                                                    break;
                                                                case "heat":
                                                                    ac.lastState = Language.StringByID(StringId.Heat);
                                                                    break;
                                                                case "dry":
                                                                    ac.lastState = Language.StringByID(StringId.Dry);
                                                                    break;
                                                                case "auto":
                                                                    ac.lastState = Language.StringByID(StringId.Auto);
                                                                    break;
                                                                case "fan":
                                                                    ac.lastState = Language.StringByID(StringId.AirSupply);
                                                                    break;
                                                            }
                                                            switch (ac.trait_fan.curValue.ToString())
                                                            {
                                                                case "high":
                                                                    ac.lastState += " " + Language.StringByID(StringId.HighWindSpeed);
                                                                    break;
                                                                case "medium":
                                                                    ac.lastState += " " + Language.StringByID(StringId.MiddleWindSpeed);
                                                                    break;
                                                                case "low":
                                                                    ac.lastState += " " + Language.StringByID(StringId.LowWindSpeed);
                                                                    break;
                                                                case "auto":
                                                                    ac.lastState += " " + Language.StringByID(StringId.Auto);
                                                                    break;
                                                            }
                                                            ac.lastState += " " + ac.trait_temp.curValue + ac.tempUnitString;
                                                            ACPage.UpdataStates(ac);
                                                            break;
                                                        case SPK.FloorHeatStandard:
                                                            var fh = updataObj as FloorHeating;
                                                            switch (fh.trait_mode.curValue)
                                                            {
                                                                case "normal":
                                                                    fh.lastState = Language.StringByID(StringId.Normal);
                                                                    break;
                                                                case "day":
                                                                    fh.lastState = Language.StringByID(StringId.Day);
                                                                    break;
                                                                case "night":
                                                                    fh.lastState = Language.StringByID(StringId.Night);
                                                                    break;
                                                                case "timer":
                                                                    fh.lastState = Language.StringByID(StringId.Auto);
                                                                    break;
                                                                case "away":
                                                                    fh.lastState = Language.StringByID(StringId.Away);
                                                                    break;
                                                            }
                                                            fh.lastState += " " + fh.trait_temp.curValue + fh.tempUnitString;
                                                            FloorHeatingPage.UpdataStates(fh);
                                                            break;
                                                        case SPK.SensorPm25:
                                                        case SPK.SensorCO2:
                                                        case SPK.SensorTVOC:
                                                        case SPK.SensorTemperature:
                                                        case SPK.SensorHumidity:
                                                            var sensor = updataObj as Sensor;
                                                            EnvironmentalSciencePage.LoadEvent_UpdataStatus(sensor);
                                                            break;
                                                        case SPK.ElectricSocket:
                                                            break;
                                                        case SPK.ElectricTV:
                                                            break;
                                                        default:
                                                            break;
                                                    }
                                                    HomePage.UpdataFunctionStates(updataObj);
                                                    RoomPage.UpdataStates(updataObj);
                                                    FunctionPage.UpdataStates(updataObj);
                                                    ClassificationPage.UpdataInfo(updataObj);
                                                }
                                            }
                                        }
                                    }
                                }
                            }
@@ -308,11 +464,7 @@
                            IfNeedReadAllDeviceStatus = true;
                            Utlis.WriteLine($"============>Mqtt远程连接成功");
                            SendPushSignOut();
                            //if (Control.Ins.IsRemote) {
                            //    //Utlis.ShowAppLinkStatus (AppLinkStatus.CloudLink);
                            //    MainPage.AddTip (Language.StringByID (SimpleControl.R.MyInternationalizationString.LinkSuccess));
                            //}
                            FunctionList.List.ReadAllFunctionStatus();
                        });
                    }
                    #endregion
HDL_ON/Entity/DB_ResidenceData.cs
@@ -289,42 +289,6 @@
        #region 功能数据
        public static FunctionList functionList = FunctionList.List;
        /// <summary>
        /// 刷新住宅里面的搜索设备状态
        /// </summary>
        public void RefreshResidenceFunctionStatus()
        {
            new Thread(() =>
            {
                try
                {
                    foreach (var function in functionList.GetAllDeviceFunctionList())
                    {
                        Thread.Sleep(100);
                        switch (function.functionCategory)
                        {
                            case FunctionCategory.Light:
                            case FunctionCategory.Electrical:
                            case FunctionCategory.SwitchDevice:
                            case FunctionCategory.Curtain:
                            case FunctionCategory.Thermostat:
                                if (DB_ResidenceData.residenceData.GatewayType == 0)
                                {
                                    DriverLayer.Control.Ins.SendReadCommand(function);
                                }
                                break;
                        }
                    }
                }
                catch (Exception ex)
                {
                    MainPage.Log($"Refresh Residence Function Status Error : {ex.Message}");
                }
            })
            { IsBackground = true }.Start();
        }
        #endregion
        #region oid列表 a协议转bus协议控制使用
HDL_ON/Entity/Function/Function.cs
@@ -30,7 +30,7 @@
        public Function()
        {
        }
        #region base info
        /// <summary>
@@ -43,10 +43,10 @@
        /// 产品时间戳:4bytes    以2020年1月1日算出的时间戳0.1s为单位 
        /// 产品类别:01    调光器、02 继电器、03    干接点模块、04    传感器、05 面板
        /// 物模型类型:
        ///     01    开关类:01 开关、02 插座、03
        ///     02    照明: 01 开关、02    调光、03    色温、04    LED
        ///     01    开关类:01 开关、02 插座、03
        ///     02    照明: 01 开关、02    调光、03    色温、04    LED
        ///     03    遮阳: 01    窗帘电机、02 百叶窗、03 开合帘、04 卷帘
        ///     04    恒温器:01 空调、02 地暖、03 毛细空调
        ///     04    恒温器:01 空调、02 地暖、03 毛细空调
        ///     05    新风        
        ///     06    影音        
        ///     07    音乐        
@@ -234,7 +234,7 @@
        /// </summary>
        public int fixedSerialNumber = int.MaxValue;
        public string GetBusId ()
        public string GetBusId()
        {
            string busId = "";
            if (bus_Data != null)
@@ -251,7 +251,7 @@
        public string GetRoomListName()
        {
            string roomNameList = "";
            foreach(var roomId in roomIds)
            foreach (var roomId in roomIds)
            {
                var findRoom = DB_ResidenceData.residenceData.Rooms.Find(obj => obj.uid == roomId);
                if (findRoom == null)
@@ -287,7 +287,7 @@
        public void SaveFunctionData()
        {
            var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
            FileUtils.WriteFileByBytes( savePath, ssd);
            FileUtils.WriteFileByBytes(savePath, ssd);
            MainPage.Log($"Save FunctionData {this.functionType} : {this.sid}");
        }
@@ -323,7 +323,7 @@
            var acd = new AlinkControlData();
            acd.sid = sid;
            var aca = new AlinkControlAttributes();
            foreach(var dic in commandDictionary)
            foreach (var dic in commandDictionary)
            {
                aca.key = dic.Key;
                aca.value = dic.Value;
@@ -338,7 +338,7 @@
        /// 获取Api控制数据
        /// </summary>
        /// <returns></returns>
        public ApiAlinkControlActionObj GetApiControlData(Dictionary<string,string> keyValues)
        public ApiAlinkControlActionObj GetApiControlData(Dictionary<string, string> keyValues)
        {
            ApiAlinkControlActionObj aaao = new ApiAlinkControlActionObj();
            aaao.deviceId = this.deviceId;
@@ -388,6 +388,16 @@
        public string id = "";
    }
    /// <summary>
    /// 本地状态读取
    /// A协议状态读取格式对象
    /// </summary>
    public class GatewayAlinkReadObj
    {
        public string id = "0";
        public List<Dictionary<string, string>> objects = new List<Dictionary<string, string>>();
        public string time_stamp = "";
    }
    /// <summary>
    /// A协议控制数据
    /// </summary>
    public class AlinkControlData
HDL_ON/Entity/FunctionList.cs
@@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using HDL_ON.DAL;
using HDL_ON.DAL.Server;
@@ -503,6 +504,53 @@
            FileUtils.DeleteFile(delTemp.savePath);
        }
        /// <summary>
        /// 读取全部功能的状态
        /// </summary>
        public void ReadAllFunctionStatus()
        {
            new Thread(() =>
            {
                try
                {
                    if (DB_ResidenceData.residenceData.GatewayType == 0)
                    {
                        foreach (var function in GetAllDeviceFunctionList())
                        {
                            switch (function.functionCategory)
                            {
                                case FunctionCategory.Light:
                                case FunctionCategory.Electrical:
                                case FunctionCategory.SwitchDevice:
                                case FunctionCategory.Curtain:
                                case FunctionCategory.Thermostat:
                                    DriverLayer.Control.Ins.SendReadCommand(function);
                                    break;
                            }
                        }
                    }
                    else
                    {
                        List<Dictionary<string, string>> keyValuePairs = new List<Dictionary<string, string>>();
                        foreach (var function in GetAllDeviceFunctionList())
                        {
                            var kv = new Dictionary<string, string>();
                            kv.Add("sid", function.sid);
                            keyValuePairs.Add(kv);
                        }
                        DriverLayer.Control.Ins.SendReadCommand(keyValuePairs);
                    }
                }
                catch (Exception ex)
                {
                    MainPage.Log($"Refresh Residence Function Status Error : {ex.Message}");
                }
            })
            { IsBackground = true }.Start();
        }
    }
}
HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -144,7 +144,8 @@
                    System.Threading.Tasks.Task.Run(() =>
                        {
                            //DriverLayer.Control.Ins.SearchLoaclGateway();
                            MainPage.InitializationData();
                            //MainPage.InitializationData();
                            DriverLayer.Control.Ins.IsRemote = true;
                        });
                };
#endif
HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPageBLL.cs
@@ -47,7 +47,6 @@
                try
                {
                    var backuplist = FileUtils.ReadFiles();
                    FileUtils.DeleteRegionFiles(oldRegionRootPath);
                    //移动文件
                    foreach (var fileName in backuplist)
                    {
@@ -58,6 +57,7 @@
                            MainPage.Log("move file : " + fileName);
                        }
                    }
                    FileUtils.DeleteRegionFiles(oldRegionRootPath);
                }
                catch (Exception ex)
                {
HDL_ON/UI/UI2/UserPage.cs
@@ -129,8 +129,6 @@
                ContextView.AddChidren(homePage);
                homePage.LoadPage();
                //刷新功能状态
                DB_ResidenceData.residenceData.RefreshResidenceFunctionStatus();
                //注册推送ID
                RegisteredPush();