示例#1
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            QHKS.TMJConnInfo   connInfo;
            QHKS.TMJMacInfo    macInfo    = new QHKS.TMJMacInfo();
            QHKS.TMJDoorStatus doorStatus = new QHKS.TMJDoorStatus();
            QHKS.TMJRecordInfo recInfo    = new QHKS.TMJRecordInfo();
            int RecordCount = 0;

            timer1.Enabled = false;
            for (int i = 0; i < connList.Count; i++)
            {
                Application.DoEvents();
                if (!isRealing)
                {
                    break;
                }
                connInfo = connList[i];
                DeviceObject.objMJ.Init(ref connInfo);
                if (watchIndex[i] == 0)
                {
                    if (!DeviceObject.objMJ.GetMacInfo(ref macInfo))
                    {
                        continue;
                    }
                    watchIndex[i] = macInfo.RecordCount + 1;
                }
                if (!DeviceObject.objMJ.GetMacRecordReal(watchIndex[i], ref RecordCount, ref doorStatus))
                {
                    continue;
                }
                for (int j = 0; j < RecordCount; j++)
                {
                    if (DeviceObject.objMJ.GetMacRecordValue(j, ref recInfo))
                    {
                        ShowRealData(recInfo, connInfo.MacSN);
                    }
                }
                watchIndex[i] += RecordCount;
                SetMacDoorState(connInfo.MacSN, doorStatus);
                Application.DoEvents();
            }
            if (isRealing)
            {
                timer1.Enabled = true;
            }
        }
示例#2
0
        protected override bool ExecMacCommand(byte flag, string MacSN, ref string MacMsg)
        {
            bool ret = base.ExecMacCommand(flag, MacSN, ref MacMsg);

            switch (flag)
            {
            case 0:
                ret = SyncTime();
                break;

            case 1:
                QHKS.TMJMacInfo macInfo = new QHKS.TMJMacInfo();
                ret = DeviceObject.objMJ.GetMacInfo(ref macInfo);
                if (ret)
                {
                    string StateInfo = "";
                    string DelayInfo = "";
                    for (int i = 1; i <= macInfo.MacType; i++)
                    {
                        StateInfo += i.ToString() + ":" +
                                     Pub.GetResText(formCode, "MJDoorState" + macInfo.DoorInfo[i - 1].State.ToString(), "") + ";";
                        DelayInfo += i.ToString() + ":" + macInfo.DoorInfo[i - 1].Delay.ToString() + "s;";
                    }
                    string msg = Pub.GetResText(formCode, "MacSN", "") + ": " + MacSN + "\r\n    " + Pub.GetResText(formCode, "MacInfo", "");
                    msg = string.Format(msg, macInfo.Time, macInfo.RecordCount, macInfo.PowerCount,
                                        "WG" + macInfo.CardWG, StateInfo, DelayInfo);
                    ShowMsg(msg + "\r\n");
                }
                break;

            case 2:
                QHKS.TMJUpDoorInfo upInfo;
                for (int i = 0; i < upDoorInfo.Count; i++)
                {
                    if (upDoorInfo[i].MacSN == MacSN)
                    {
                        for (int j = 0; j < upDoorInfo[i].DoorInfo.Count; j++)
                        {
                            upInfo = upDoorInfo[i].DoorInfo[j];
                            ret    = DeviceObject.objMJ.SetMacDoorInfo(ref upInfo);
                            if (!ret)
                            {
                                break;
                            }
                        }
                        break;
                    }
                }
                break;

            case 3:
                ret = DeviceObject.objMJ.ClearMacPower();
                break;

            case 4:
                ret = DeviceObject.objMJ.SetCardProtocol(SystemInfo.CardProtocol);
                break;

            case 5:
                ret = DeviceObject.objMJ.SetMacMessage(DownMessage);
                break;

            case 6:
                ret = DeviceObject.objMJ.SetMacRestart();
                break;

            case 7:
                ret = DeviceObject.objMJ.SetMacInit();
                break;
            }
            return(ret);
        }
示例#3
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            int          index = tabControl1.SelectedIndex;
            TMapDoorInfo door;
            TMJWatch     watch = new TMJWatch("", 0);

            QHKS.TMJConnInfo   connInfo;
            QHKS.TMJMacInfo    macInfo    = new QHKS.TMJMacInfo();
            QHKS.TMJDoorStatus doorStatus = new QHKS.TMJDoorStatus();
            QHKS.TMJRecordInfo recInfo    = new QHKS.TMJRecordInfo();
            int RecordCount = 0;

            timer1.Enabled = false;
            bool       findWatch;
            PictureBox btn;

            for (int i = 0; i < tabControl1.TabPages[index].Controls[0].Controls.Count; i++)
            {
                Application.DoEvents();
                if (!isRealing)
                {
                    break;
                }
                btn      = (PictureBox)tabControl1.TabPages[index].Controls[0].Controls[i];
                door     = (TMapDoorInfo)btn.Tag;
                connInfo = Pub.ValueToMJConnInfo(door.MacSN, door.MacConnType, door.MacIPAddress, door.MacPort, door.MacConnPWD);
                DeviceObject.objMJ.Init(ref connInfo);
                findWatch = false;
                for (int j = 0; j < watchIndex.Count; j++)
                {
                    if (watchIndex[j].MacSN == door.MacSN)
                    {
                        findWatch = true;
                        watch     = watchIndex[j];
                        break;
                    }
                }
                if (!findWatch)
                {
                    watch = new TMJWatch(door.MacSN, 0);
                    watchIndex.Add(watch);
                }
                if (watch.Index == 0)
                {
                    if (!DeviceObject.objMJ.GetMacInfo(ref macInfo))
                    {
                        continue;
                    }
                    watch.Index = macInfo.RecordCount + 1;
                }
                if (!DeviceObject.objMJ.GetMacRecordReal(watch.Index, ref RecordCount, ref doorStatus))
                {
                    continue;
                }
                for (int j = 0; j < RecordCount; j++)
                {
                    if (DeviceObject.objMJ.GetMacRecordValue(j, ref recInfo))
                    {
                        if (FindDoorID(recInfo.DoorID))
                        {
                            ShowRealData(recInfo, connInfo.MacSN);
                        }
                    }
                }
                watch.Index += RecordCount;
                if (doorStatus.Door[Convert.ToInt32(door.DoorID) - 1] == 0)
                {
                    btn.Image = Properties.Resources.doorclose;
                }
                else
                {
                    btn.Image = Properties.Resources.dooropen;
                }
                Application.DoEvents();
            }
            if (isRealing)
            {
                timer1.Enabled = true;
            }
        }