public frmOutstorage()
        {
            InitializeComponent();
            this.label1.Text = string.Empty;

            __timer          = new Timer();
            __timer.Interval = 1000;
            __timer.Tick    += new EventHandler(__timer_Tick);

            dataTransfer = new SerialPortDataTransfer();
            comport      = new SerialPort(sysConfig.comportName, 57600, Parity.None, 8, StopBits.One);
            ((SerialPortDataTransfer)dataTransfer).Comport = comport;
            operaterGetTag = new rfidOperateUnit2600InventoryTag(dataTransfer);
            operaterGetTag.registeCallback(new deleRfidOperateCallback(UpdateEpcList));

            this.Closing += new CancelEventHandler(frmOutstorage_Closing);
        }
Exemple #2
0
        void commandDispose(CommandProtocol _cmd)
        {
            if (_cmd == null)
            {
                return;
            }
            if (string.Compare(this.lastUpdateTimeStamp, _cmd.timeStamp, true) < 0)//如果命令的时间较晚
            {
                this.lastUpdateTimeStamp = _cmd.timeStamp;
            }
            switch (_cmd.command.ToLower().Trim())
            {
                #region 之前处理命令的代码

            case "open_rmu900":
                if (!this.flagList.Contains(_cmd.flag))
                {
                    this.flagList.Add(_cmd.flag);
                }
                this.lblStatus.Text = "接收到命令 " + _cmd.command + "  " + _cmd.timeStamp + "  flag = " + _cmd.flag;
                this.appendLog(this.lblStatus.Text);

                if (this.operaterGetTag == null)
                {
                    operaterGetTag = new rfidOperateUnitInventoryTag(dataTransfer);
                    operaterGetTag.registeCallback(new deleRfidOperateCallback(rfidCallback));
                }

                operaterGetTag.OperateStart();
                break;

            case "close_rmu900":
                if (this.flagList.Contains(_cmd.flag))
                {
                    this.flagList.Remove(_cmd.flag);
                }
                this.lblStatus.Text = "接收到命令 " + _cmd.command + "  " + _cmd.timeStamp + "  flag = " + _cmd.flag;
                this.appendLog(this.lblStatus.Text);

                if (null == this.operaterStopGetTag)
                {
                    operaterStopGetTag = new rfidOperateUnitStopInventoryTag(dataTransfer);
                }
                this.operaterStopGetTag.OperateStart();
                break;

            case "open_reader2300":
                if (!this.flagList.Contains(_cmd.flag))
                {
                    this.flagList.Add(_cmd.flag);
                }
                try
                {
                    this.lblStatus.Text = "接收到命令 " + _cmd.command + "  " + _cmd.timeStamp + "  flag = " + _cmd.flag;
                    this.appendLog(this.lblStatus.Text);
                    //UdpConfig udpconfig = new UdpConfig(this.Controls, "UDP参数设置", null);
                    //staticClass.iServePort = int.Parse(udpconfig.port);
                    //staticClass.strServerIP = udpconfig.ip;
                    //UDPServer.startUDPListening();

                    //清空之前的缓存
                    __udpServer.Manualstate.WaitOne();
                    __udpServer.Manualstate.Reset();
                    string str = __udpServer.sbuilder.ToString();
                    __udpServer.sbuilder.Remove(0, str.Length);
                    __2300helper.clearTags();
                    __udpServer.Manualstate.Set();


                    __reader2300Timer.Enabled = true;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "SGSServerUDP",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                break;

            case "close_reader2300":
                if (this.flagList.Contains(_cmd.flag))
                {
                    this.flagList.Remove(_cmd.flag);
                }
                try
                {
                    this.lblStatus.Text = "接收到命令 " + _cmd.command + "  " + _cmd.timeStamp + "  flag = " + _cmd.flag;
                    this.appendLog(this.lblStatus.Text);

                    __reader2300Timer.Enabled = false;
                    //UDPServer.stopUDPListening();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "SGSServerUDP",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                break;
                #endregion
            }
        }