Beispiel #1
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   = "新增任务失败";
            }
        }
Beispiel #2
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   = "新增任务失败";
            }
        }