wxr
2020-01-18 4cc04639fbadde3a7f3b9875353df0d90fc09043
HDL_ON/Entity/Function/Function.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using Newtonsoft.Json.Linq;
namespace HDL_ON.Entity
{
@@ -28,25 +29,29 @@
        /// </summary>
        public string funcClassification;
        /// <summary>
        /// 是否收藏
        /// </summary>
        public bool collection = false;
        /// <summary>
        /// 功能ID
        /// </summary>
        public string sid;
        /// <summary>
        /// 备注
        /// </summary>
        public string Name;
        public string name;
        /// <summary>
        /// 保存数据时的文件名
        /// </summary>
        public string SavePath = "";
        public string savePath = "";
        /// <summary>
        /// A协议数据格式
        /// </summary>
        public string A_Protocol;
        public string a_Protocol_Namespace = "HDL";
        /// <summary>
        /// bus协议数据格式
        /// </summary>
        public string Bus_Protocol;
        public string bus_Data;
        /// <summary>
        /// 房间ID列表
        /// 该功能添加到到房间列表
@@ -57,5 +62,73 @@
        /// </summary>
        public string lastState = "";
        /// <summary>
        /// 获取A协议控制字符串
        /// </summary>
        /// <param name="command">控制命令:write,read</param>
        /// <returns></returns>
        public virtual JObject GetSendJObject(string command)
        {
            var sendJob = new JObject { { "Namespace", a_Protocol_Namespace }, { "Command", command }, { "Type", "device" }, };
            var data = new JObject { { "sid", sid } };
            sendJob.Add("", data);
            return sendJob;
        }
        /// <summary>
        /// bus旧数据的子网ID
        /// </summary>
        public byte bus_SubnetId
        {
            get
            {
                var sss = JObject.Parse(bus_Data);
                var subnetId = Convert.ToByte(sss.GetValue("SubnetID").ToString());
                return subnetId;
            }
        }
        /// <summary>
        /// bus旧数据的设备ID
        /// </summary>
        public byte bus_DeviceId
        {
            get
            {
                var sss = JObject.Parse(bus_Data);
                var deviceId = Convert.ToByte(sss.GetValue("DeviceID").ToString());
                return deviceId;
            }
        }
        /// <summary>
        /// bus旧数据的回路ID
        /// </summary>
        public byte bus_LoopId
        {
            get
            {
                var sss = JObject.Parse(bus_Data);
                var loopId = Convert.ToByte(sss.GetValue("LoopID").ToString());
                return loopId;
            }
        }
        public string bus_DeviceType = "";
        public string GetBusId ()
        {
            string busId = "";
            if(!string.IsNullOrEmpty(bus_Data))
            {
                var sss = JObject.Parse(bus_Data);
                var subnetId = sss.GetValue("SubnetID").ToString();
                var deviceId = sss.GetValue("DeviceID").ToString();
                var loopId = sss.GetValue("LoopID").ToString();
                busId = subnetId + "_" + deviceId + "_" + loopId;
            }
            return busId;
        }
    }
}