JLChen
2020-12-14 9c8baf7e7e1169ebdf7d5f7ed33ab29dd5fcbf18
HDL_ON/Entity/Function/Function.cs
@@ -31,7 +31,6 @@
        {
        }
        #region base info
        /// <summary>
        /// HDL统一协议格式:14bytes
@@ -253,7 +252,7 @@
            string roomNameList = "";
            foreach (var roomId in roomIds)
            {
                var findRoom = DB_ResidenceData.residenceData.Rooms.Find(obj => obj.uid == roomId);
                var findRoom = SpatialInfo.CurrentSpatial.RoomList.Find(obj => obj.roomId == roomId);
                if (findRoom == null)
                {
                    continue;
@@ -284,12 +283,29 @@
        /// <summary>
        /// 保存功能数据
        /// </summary>
        public void SaveFunctionData()
        public void SaveFunctionData(bool upSevser)
        {
            var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
            FileUtils.WriteFileByBytes(savePath, ssd);
            MainPage.Log($"Save FunctionData {this.functionType} : {this.sid}");
            if (upSevser)
            {
                var pm = new DAL.Server.HttpServerRequest();
                var pack = pm.UpdataDevcieInfo(this);
                if (pack.Code == DAL.Server.StateCode.SUCCESS)
                {
                    var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
                    Common.FileUtlis.Files.WriteFileByBytes(savePath, ssd);
                }
                else
                {
                    Utlis.ShowTip(Language.StringByID(StringId.EditFunctionInfoFail) + "\r\nCode:" + pack.Code);
                }
            }
            else
            {
                var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this));
                Common.FileUtlis.Files.WriteFileByBytes(savePath, ssd);
            }
        }
        /// <summary>
        /// 转换成场景功能对象
@@ -301,6 +317,7 @@
            foreach (var attr in attributes)
            {
                sFunc.status.Add(new SceneFunctionStatus() { key = attr.key, value = attr.curValue.ToString() });
                sFunc.sid = this.sid;
            }
            return sFunc;
        }
@@ -313,9 +330,9 @@
        /// <summary>
        /// 获取本地控制数据
        /// </summary>
        public GatewayAlinkControlObj GetGatewayAlinkControlData(Dictionary<string, string> commandDictionary)
        public AlinkFunctionStatusObj GetGatewayAlinkControlData(Dictionary<string, string> commandDictionary)
        {
            var sendDataObj = new GatewayAlinkControlObj();
            var sendDataObj = new AlinkFunctionStatusObj();
            sendDataObj.id = Control.Ins.msg_id.ToString();
            sendDataObj.time_stamp = Control.Ins.Get_TimeStamp();
@@ -377,10 +394,9 @@
    }
    /// <summary>
    /// 本地控制
    /// A协议控制数据的对象
    /// </summary>
    public class GatewayAlinkControlObj
    public class AlinkFunctionStatusObj
    {
        public List<AlinkControlData> objects = new List<AlinkControlData>();
@@ -391,7 +407,7 @@
    /// 本地状态读取
    /// A协议状态读取格式对象
    /// </summary>
    public class GatewayAlinkReadObj
    public class AlinkReadFunctionStatusObj
    {
        public string id = "0";
        public List<Dictionary<string, string>> objects = new List<Dictionary<string, string>>();
@@ -439,11 +455,11 @@
        /// <summary>
        /// 最大值
        /// </summary>
        public int max;
        public int max=100;
        /// <summary>
        /// 最小值
        /// </summary>
        public int min;
        public int min=0;
        /// <summary>
        /// 数据类型
        /// </summary>