예제 #1
0
        public void GetTaskModel(int devId, ref ESMonitor.Model.Tasks model)
        {
            model.CmdType = this.CmdType;
            model.CmdByte = this.CmdByte;
            model.DevId   = devId;

            model.Status = 0;
            model.Length = PacketLen;
            byte[] buffer    = new byte[PacketLen];
            int    bufferLen = 0;

            EncodeFrame(ref buffer, ref bufferLen);
            model.Data = buffer;

            model.SendTime = DateTime.Now;

            return;
        }
예제 #2
0
        protected void btnQueryMSContent_Click(object sender, EventArgs e)
        {
            ESMonitor.Model.Tasks model = new ESMonitor.Model.Tasks();
            DevCtrlCmd            cmd   = new DevCtrlCmd();

            cmd.NodeId = nodeId;
            cmd.EncodeSetOUT2Cmd(0x00);
            cmd.GetTaskModel(ref model);


            if (TBll.Add(model) > 0)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert(\"ok\");</script>");
            }
            else
            {
                ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert(\"error\");</script>");
            }
        }
예제 #3
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public ESMonitor.Model.Tasks GetModel(long TaskId)
        {
            SqlParameter[] parameters =
            {
                new SqlParameter("@TaskId", SqlDbType.BigInt)
            };
            parameters[0].Value = TaskId;

            ESMonitor.Model.Tasks model = new ESMonitor.Model.Tasks();
            DataSet ds = DbHelperSQL.RunProcedure("T_Tasks_GetModel", parameters, "ds");

            if (ds.Tables[0].Rows.Count > 0)
            {
                return(DataRowToModel(ds.Tables[0].Rows[0]));
            }
            else
            {
                return(null);
            }
        }
예제 #4
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public ESMonitor.Model.Tasks DataRowToModel(DataRow row)
 {
     ESMonitor.Model.Tasks model = new ESMonitor.Model.Tasks();
     if (row != null)
     {
         if (row["TaskId"] != null && row["TaskId"].ToString() != "")
         {
             model.TaskId = long.Parse(row["TaskId"].ToString());
         }
         if (row["Status"] != null && row["Status"].ToString() != "")
         {
             model.Status = int.Parse(row["Status"].ToString());
         }
         if (row["SendTime"] != null && row["SendTime"].ToString() != "")
         {
             model.SendTime = DateTime.Parse(row["SendTime"].ToString());
         }
         if (row["CmdType"] != null && row["CmdType"].ToString() != "")
         {
             model.CmdType = int.Parse(row["CmdType"].ToString());
         }
         if (row["CmdByte"] != null && row["CmdByte"].ToString() != "")
         {
             model.CmdByte = int.Parse(row["CmdByte"].ToString());
         }
         if (row["DevId"] != null && row["DevId"].ToString() != "")
         {
             model.DevId = int.Parse(row["DevId"].ToString());
         }
         if (row["Data"] != null && row["Data"].ToString() != "")
         {
             model.Data = (byte[])row["Data"];
         }
         if (row["Length"] != null && row["Length"].ToString() != "")
         {
             model.Length = int.Parse(row["Length"].ToString());
         }
     }
     return(model);
 }
예제 #5
0
        private void GpsInfoTask(int devId)
        {
            DevCtrlCmd cmd = new DevCtrlCmd();

            cmd.EncodeGpsInfoCmd();
            ESMonitor.Model.Tasks model = new ESMonitor.Model.Tasks();
            cmd.GetTaskModel(devId, ref model);
            long taksId = _bll.Add(model);

            if (taksId > 0)
            {
                _json.totalCount = 1;
                _json.success    = true;
                _json.AddItem("task", taksId.ToString());
                _json.ItemOk();
            }
            else
            {
                _json.success = false;
                _json.error   = "新增任务失败";
            }
        }
예제 #6
0
        private void RequestCmd(int devId, Byte cmdByte, string cmdParams)
        {
            DevCtrlCmd cmd = new DevCtrlCmd();

            switch (cmdByte)
            {
            case 0x1F:     //读取CMP
                cmd.EncodeCMPReadCmd();
                break;

            case 0x2F:
                cmd.EncodeCMPCycleSetCmd(2000);
                break;

            case 0x3F:
                cmd.EncodeCMStopCmd();

                break;

            case 0x4F:
                cmd.EncodeBGTestStartCmd();
                break;

            case 0x5F:
                cmd.EncodeBGTestStopCmd();
                break;

            case 0x6F:
                cmd.EncodeBGTestResultCmd();
                break;

            case 0x7F:
                cmd.EncodeSPANTestStartCmd();
                break;

            case 0x8F:
                cmd.EncodeSPANTestStopCmd();
                break;

            case 0x9F:
                cmd.EncodeSPANTestResultCmd();
                break;

            case 0xAF:
            {
                byte state = Convert.ToByte(cmdParams);
                cmd.EncodeSetOUT1Cmd(state);
            }
            break;

            case 0xBF:
            {
                byte state = Convert.ToByte(cmdParams);
                cmd.EncodeSetOUT2Cmd(state);
            }
            break;

            case 0x1D:
                cmd.EncodeUpInstNoiseOpenCmd();
                break;

            case 0x2D:
                cmd.EncodeUpInstNoiseCloseCmd();
                break;

            case 0x3D:
                cmd.EncodeUpInstNoiseCmd();
                break;

            case 0x4D:
                cmd.EncodeUpOneSecNoiseOpenCmd();
                break;

            case 0x5D:
                cmd.EncodeUpOneSecNoiseCloseCmd();
                break;

            case 0x6D:
                cmd.EncodeUpOneSecNoiseCmd();
                break;

            case 0x7D:
                cmd.EncodeSetZWCmd();
                break;

            case 0x8D:
                cmd.EncodeSetCWCmd();
                break;

            case 0x9D:
                cmd.EncodeSetAWCmd();
                break;

            case 0xAD:
                cmd.EncodeSetFGCmd();
                break;

            case 0xBD:
                cmd.EncodeSetSGCmd();
                break;

            case 0xCD:
                cmd.EncodeSetIGCmd();
                break;

            case 0x1B:
            {
                byte addr = Convert.ToByte(cmdParams);
                cmd.EncodeWindDirWriteDevAddrCmd(addr);
            }
            break;

            case 0x2B:
            {
                byte addr = Convert.ToByte(cmdParams);
                cmd.EncodeReadWindDirCmd(addr);
            }
            break;

            case 0x1A:
            {
                byte addr = Convert.ToByte(cmdParams);
                cmd.EncodeWindSpeedWriteDevAddrCmd(addr);
            }
            break;

            case 0x2A:
            {
                byte addr = Convert.ToByte(cmdParams);
                cmd.EncodeReadWindSpeedCmd(addr);
            }
            break;

            case 0x19:
                cmd.EncodeReadESDataCmd();
                break;

            case 0x08:
                cmd.EncodeReadAllDataCmd();
                break;

            case 0x17:
                UInt16 cycleTime = Convert.ToUInt16(cmdParams);
                cmd.EncodeSwitchAutoReport(cycleTime);
                break;
            }

            if (cmd.CmdByte == 0xAF)
            {
                DataSet  ds = _bll.GetLast("175", devId);
                DateTime?dt = ds.Tables[0].Rows[0]["SendTime"] as DateTime?;
                if (dt != null && (DateTime.Now - dt) < new TimeSpan(0, 3, 0))
                {
                    _json.success = false;
                    _json.error   = "机械臂复位间隔为3分钟,请稍等!";
                    return;
                }
            }
            else if (cmd.CmdByte == 0xBF)
            {
                DataSet  ds = _bll.GetLast("191", devId);
                DateTime?dt = ds.Tables[0].Rows[0]["SendTime"] as DateTime?;
                if (dt != null && (DateTime.Now - dt) < new TimeSpan(0, 3, 0))
                {
                    _json.success = false;
                    _json.error   = "机械臂复位间隔为3分钟,请稍等!";
                    return;
                }
            }


            ESMonitor.Model.Tasks model = new ESMonitor.Model.Tasks();
            cmd.GetTaskModel(devId, ref model);
            long taksId = _bll.Add(model);

            if (taksId > 0)
            {
                _json.totalCount = 1;
                _json.success    = true;
                _json.AddItem("task", taksId.ToString());
                _json.ItemOk();
            }
            else
            {
                _json.success = false;
                _json.error   = "新增任务失败";
            }
        }