コード例 #1
0
        public List <TimingInfo> GetTimingInfo(string DianYuanID, byte LuHao)
        {
            TimingInfo[]       vResult             = new TimingInfo[0];
            PowerTimingEFModel vPowerTimingEFModel = new PowerTimingEFModel()
            {
                DianYuanID = DianYuanID,
                LuHao      = LuHao
            };

            PowerTimingEFModel[] vSelectResult = m_BasicDBClass.SelectRecordsEx(vPowerTimingEFModel);
            vResult = new TimingInfo[vSelectResult.Length];
            for (int i = 0; i < vResult.Length; i++)
            {
                vResult[i] = new TimingInfo()
                {
                    DianYuanID = DianYuanID,
                    LeiXing    = vSelectResult[i].LeiXing ?? 0,
                    RenWuLX    = vSelectResult[i].RenWuLX ?? 0,
                    YunXuKZ    = vSelectResult[i].YunXuKZ ?? 0,
                    ZhouQi     = vSelectResult[i].ZhouQi ?? 0,
                    ZhuHao     = vSelectResult[i].ZhuHao ?? 0,
                    LuHao      = vSelectResult[i].LuHao ?? 0,
                    TimeData   = vSelectResult[i].TimeData ?? 0
                };
            }
            return(vResult.ToList());
        }
コード例 #2
0
        public bool SendCMD_OnOffTiming(string DianYuanID, byte SheBieLX, byte LuHao, bool OnOff)
        {
            string             vSql = string.Format("DianYuanID='{0}' and LuHao={1}", DianYuanID, LuHao);
            PowerTimingEFModel vPowerTimingEFModel = new PowerTimingEFModel()
            {
                YunXuKZ = OnOff?(byte?)0x01:(byte?)0x00
            };

            return(m_BasicDBClassSelect.UpdateRecord <PowerTimingEFModel>(vPowerTimingEFModel, vSql));
        }
コード例 #3
0
        /// <summary>
        /// 定时控制
        /// </summary>
        /// <param name="DianYuanID">电源ID</param>
        /// <param name="SheBieLX">设备类型</param>
        /// <param name="LuHao">路号</param>
        /// <param name="ZhuHao">组号</param>
        /// <param name="RenWuLX">任务类型</param>
        /// <param name="ZhouQi">周期</param>
        /// <param name="YunXuKZ">允许控制</param>
        /// <param name="TimeData">时间数据</param>
        /// <returns></returns>
        public async Task <bool> SendCMD_Timing(string DianYuanID, byte SheBieLX, byte LuHao,
                                                byte ZhuHao, byte RenWuLX, byte ZhouQi, byte YunXuKZ, int TimeData)
        {
            PowerDataPack_Send_Timing vData = new PowerDataPack_Send_Timing()
            {
                LuHao   = LuHao,
                LeiXing = SheBieLX,
                RenWuLX = RenWuLX,
                YunXuKZ = YunXuKZ,
                ZhouQi  = ZhouQi,
                ZhuHao  = ZhuHao
            };

            switch (ZhouQi)
            {
            //单次
            case 0x00:
                vData.TimeData1 = (byte)(TimeData >> 24);
                vData.TimeData2 = (byte)(TimeData >> 16);
                vData.TimeData3 = (byte)(TimeData >> 8);
                vData.TimeData4 = (byte)(TimeData >> 0);
                break;

            //每天
            case 0x01:
                vData.TimeData1 = 0x00;
                vData.TimeData2 = 0x00;
                vData.TimeData3 = (byte)(TimeData >> 8);
                vData.TimeData4 = (byte)(TimeData >> 0);
                break;

            //每周
            case 0x02:
                vData.TimeData1 = 0x00;
                vData.TimeData2 = (byte)(TimeData >> 16);
                vData.TimeData3 = (byte)(TimeData >> 8);
                vData.TimeData4 = (byte)(TimeData >> 0);
                break;

            //每月
            case 0x03:
                vData.TimeData1 = 0x00;
                vData.TimeData2 = (byte)(TimeData >> 16);
                vData.TimeData3 = (byte)(TimeData >> 8);
                vData.TimeData4 = (byte)(TimeData >> 0);
                break;
            }

            bool vResult = await asyncSendCommandToDB(DianYuanID, PowerDataPack_Send_CommandEnum.Timing, vData);

            if (vResult)
            {
                PowerTimingEFModel vPowerTimingEFModel = new PowerTimingEFModel()
                {
                    DianYuanID = DianYuanID,
                    LeiXing    = SheBieLX,
                    LuHao      = LuHao,
                    RenWuLX    = RenWuLX,
                    TimeData   = TimeData,
                    YunXuKZ    = YunXuKZ,
                    ZhouQi     = ZhouQi,
                    ZhuHao     = ZhuHao
                };
                string vSql = string.Format("DianYuanID='{0}' and LuHao={1} and ZhuHao={2}", DianYuanID, LuHao, ZhuHao);
                m_BasicDBClass.DeleteRecordCustom <PowerTimingEFModel>(vSql);
                vResult = m_BasicDBClass.InsertRecord(vPowerTimingEFModel) > 0 ? true : false;
            }
            return(vResult);
        }