private void setHisAdmissionList(List <AdmissionExit> admissionExits)
        {
            List <AdmissionExit> admissions = admissionExits.Where(a => a.Model.Equals(AdmissionExit.ADMISSION)).ToList();

            daTagListView.Items.Clear();
            int length = admissions.Count;

            for (int i = 0; i < length; i++)
            {
                ListViewItem item = new ListViewItem();
                item.Text = admissions[i].TagID;
                item.Name = admissions[i].TagID;
                item.SubItems.Add(admissions[i].Name);

                item.SubItems.Add(XwDataUtils.dataFromTimeStamp((Int32)admissions[i].Time)); //入场时间
                item.SubItems.Add("--");
                String workIDs = "";
                for (int j = 0; j < 16; j++)
                {
                    workIDs += admissions[i].WorkIDbyte[j].ToString("X2");
                }
                item.SubItems.Add(workIDs);
                daTagListView.Items.Add(item);
            }
        }
Beispiel #2
0
        public void getNODEWarnBt(ref List <byte[]> nodeBt)
        {
            if (cardUnanswerWranMsgs == null)
            {
                return;
            }
            Dictionary <string, DrivaceWarnMessage> nODEUnanswerWranMsgsCache = new Dictionary <string, DrivaceWarnMessage>(nODEUnanswerWranMsgs);

            foreach (var item in nODEUnanswerWranMsgsCache)
            {
                byte[] canKaoID = XWUtils.getByteID(item.Value.DrivaceID);
                byte[] warnTime = XwDataUtils.firstTimeByte(item.Value.WarnTime);
                byte[] dealTime = XwDataUtils.firstTimeByte(item.Value.DealWarnTime);
                if (canKaoID == null)
                {
                    canKaoID = new byte[2];
                }

                byte[] eleByte = new byte[16];
                eleByte[0] = 0xfd;
                eleByte[1] = 0x07;
                eleByte[2] = canKaoID[0];
                eleByte[3] = canKaoID[1];
                eleByte[4] = (byte)(item.Value.SleepTime / 0x100);
                eleByte[5] = (byte)(item.Value.SleepTime % 0x100);
                Array.Copy(warnTime, 0, eleByte, 6, 4);
                Array.Copy(dealTime, 0, eleByte, 10, 4);
                eleByte[15] = 0xfb;
                nodeBt.Add(eleByte);
            }
        }
Beispiel #3
0
 /// <summary>
 /// 将报警信息添加相应的信息中存储
 /// </summary>
 /// <param name="drivaceID"></param>
 /// <param name="msgs"></param>
 /// <param name="dreMsg"></param>
 private void addDrivaceWrimMsg(string drivaceID, Dictionary <string, DrivaceWarnMessage> msgs, Dictionary <string, DrivaceWarnMessage> hisMsgs, DrivaceWarnMessage dreMsg)
 {
     if (drivaceID == null || "".Equals(drivaceID))
     {
         return;
     }
     if (hisMsgs.ContainsKey(drivaceID))
     {
         if (dreMsg.DrivaceUpTime <= hisMsgs[drivaceID].DrivaceUpTime)
         {
             return;
         }
     }
     if (msgs.ContainsKey(drivaceID))
     {
         if (dreMsg.WarnTp != WarnType.CARD_LOW_ELECTRICITY)
         {
             msgs[drivaceID].WarnTime = XwDataUtils.GetTimeStamp();
         }
         msgs[drivaceID].IsClear = false;
         msgs[drivaceID].IsDeal  = false;
     }
     else
     {
         msgs.Add(drivaceID, dreMsg);
         warnMsgCallBack(nODEUnanswerWranMsgs.Count + cardLowEleWarnMsgs.Count + cardUnanswerWranMsgs.Count);
     }
     if (dreMsg.WarnTp == WarnType.CARD_LOW_ELECTRICITY && msgs[drivaceID].CurrentElectricity > dreMsg.CurrentElectricity + 9)
     {
         msgs[drivaceID].CurrentElectricity = dreMsg.CurrentElectricity;
         msgs[drivaceID].WarnTime           = XwDataUtils.GetTimeStamp();
         warnMsgCallBack(nODEUnanswerWranMsgs.Count + cardLowEleWarnMsgs.Count + cardUnanswerWranMsgs.Count);
     }
 }
Beispiel #4
0
 public ScourDataFormModel(ScourDataInterface scourDataInter)
 {
     receVeByteHandle    = 0xfe;
     receVeByteend       = 0xfd;
     this.scourDataInter = scourDataInter;
     tag = XwDataUtils.GetTimeStamp(false).ToString() + new Random().Next(1024).ToString() + "ScourDataFormModel";
 }
Beispiel #5
0
        /// <summary>
        /// 运行的线程
        /// </summary>
        private void runThread()
        {
            isThreadOver = false;
            long currentTime = getLongTime();

            while (XwDataUtils.GetTimeStamp(false) < currentTime + 3000 && !isClose)
            {
                try {
                    Thread.Sleep(300);
                }
                catch { }
                lock (obj) {
                    foreach (DP_TYPE_LABEL dptLabelItem in listSetType.Values)
                    {
                        if (dptLabelItem == null)
                        {
                            continue;
                        }
                        if (dptLabelItem.CreateTime + 1000 < XwDataUtils.GetTimeStamp(false))
                        {
                            longTimeChangeLab(dptLabelItem);
                        }
                    }
                    deleteValue();
                    currentTime = getLongTime();
                }
            }
            isThreadOver = true;
        }
Beispiel #6
0
        private void deleteValue()
        {
            List <DataPacketType> hashKeys = new List <DataPacketType>();

            foreach (DataPacketType dpTItem in listSetType.Keys)
            {
                if (!(listSetType[dpTItem] is DP_TYPE_LABEL))
                {
                    continue;
                }
                DP_TYPE_LABEL dptLabelItem = (DP_TYPE_LABEL)listSetType[dpTItem];
                if (dptLabelItem.IsReturn && dptLabelItem.CreateTime + 1000 < XwDataUtils.GetTimeStamp(false))
                {
                    hashKeys.Add(dpTItem);
                    //listSetType.Remove(dpTItem);
                    if (this.labInterface != null)
                    {
                        labInterface.enableFalse(dptLabelItem.Lab);
                    }
                }
            }
            foreach (DataPacketType dpTItem in hashKeys)
            {
                listSetType.Remove(dpTItem);
            }
            hashKeys.Clear();
            hashKeys = null;
        }
Beispiel #7
0
        public void commOver3CallBack(string msg, CommunicationMode comMode)
        {
            addFromBaseModel(fromMainModel);
            timer1.Interval = 500;
            timer1.Start();

            if (button1.Tag.Equals("green") && getcdInterface3Open() && PeoplePowerModel.getPeoplePowerModel().IsConnect)
            {
                panel6.BackgroundImage  = Resources.tag_2;
                panel7.BackgroundImage  = Resources.pc_2;
                button1.BackgroundImage = Resources.start_3;
                button1.Tag             = "yellow";
                button1.Text            = "關閉連接";
                fromMainModel.setListViewCanInfos();
                fromMainModel.sendConjiReveLocaData();
                new Thread(tongBuAllData).Start();
                if (!timer3.Enabled)
                {
                    timer3.Start();
                }
                fromMainModel.OpenUDPtime = XwDataUtils.GetTimeStamp();
                //    timer2.Interval = 1000;
                //    if (!timer2.Enabled) timer2.Start();
            }
            else if (button1.Tag.Equals("yellow") && getcdInterface3Open() && !PeoplePowerModel.getPeoplePowerModel().IsConnect)
            {
                panel6.BackgroundImage     = Resources.tag_1;
                panel7.BackgroundImage     = Resources.pc_1;
                button1.BackgroundImage    = Resources.start_1;
                button1.Tag                = "green";
                button1.Text               = "開始連接監控";
                fromMainModel.CloseUDPtime = XwDataUtils.GetTimeStamp();
            }
        }
Beispiel #8
0
        private byte rssi_jc   = 0; //节点发送,参考点接收时获取到的信号强度值

        /// <summary>
        /// 参数data是一条协议包 FE + 02 + ID_c + Version + ID_j + CS + FD  共12byte
        /// fe 02 01 00 11 08 12 10 00 01 3d fd
        /// fe 02 01 01 11 08 12 10 02 01 40 fd
        /// </summary>
        /// <param name="data"></param>
        public LocationNode(byte[] data)
        {
            timeStamp = XwDataUtils.GetTimeStamp();
            packType  = data[1];
            createPackData02(data);
            createPackData05(data);
        }
Beispiel #9
0
        public void drivaceDeal(string drivaceID, WarnType wType) //处理设备
        {
            DrivaceWarnMessage drevaceMsg = null;

            if (wType == WarnType.CARD_LOW_ELECTRICITY)
            {
                if (cardLowEleWarnMsgs.ContainsKey(drivaceID))
                {
                    drevaceMsg = cardLowEleWarnMsgs[drivaceID];
                }
            }
            else if (wType == WarnType.CARD_UNANSWERED)
            {
                if (cardUnanswerWranMsgs.ContainsKey(drivaceID))
                {
                    drevaceMsg = cardUnanswerWranMsgs[drivaceID];                                             //.DealWarnTime = XwDataUtils.GetTimeStamp();
                }
            }
            else if (wType == WarnType.NODE_UNANSWERED)
            {
                if (nODEUnanswerWranMsgs.ContainsKey(drivaceID))
                {
                    drevaceMsg = nODEUnanswerWranMsgs[drivaceID];                                             //.DealWarnTime = XwDataUtils.GetTimeStamp();
                }
            }
            if (drevaceMsg != null)
            {
                drevaceMsg.DealWarnTime = XwDataUtils.GetTimeStamp();
                drevaceMsg.IsDeal       = true;
            }
        }
Beispiel #10
0
 private string getTimeFromINT(long time) //time 是时间戳
 {
     if (time == 0)
     {
         return("");
     }
     return(XwDataUtils.currentTimeToSe(time));
 }
Beispiel #11
0
 /// <summary>
 /// 將Buttn字樣先關掉
 /// </summary>
 private void btnChangeYellow()
 {
     panel6.BackgroundImage     = Resources.tag_1;
     panel7.BackgroundImage     = Resources.pc_1;
     fromMainModel.CloseUDPtime = XwDataUtils.GetTimeStamp();
     button1.BackgroundImage    = Resources.start_1;
     button1.Tag  = "green";
     button1.Text = "開始連接監控";
 }
Beispiel #12
0
 public LostPackFormModel()
 {
     receVeByteHandle = 0xfe;
     receVeByteend    = 0xfd;
     //this.scourDataInter = scourDataInter;
     tag           = XwDataUtils.GetTimeStamp(false).ToString() + new Random().Next(1024).ToString() + "LostPackFormModel";
     LocationBeans = new List <LocationBean>();
     loIntBean     = new LostIntBean();
 }
Beispiel #13
0
        //private void createWarnMessa

        private void timer1_Tick(object sender, EventArgs e)
        {
            Console.Write("\r\n跑了一次,时间" + XwDataUtils.currentTimeToSe());
            if (sendTime + 10 <= XwDataUtils.GetTimeStamp())
            {
                Console.Write("\r\n跑了一次,时间" + XwDataUtils.currentTimeToSe());
                warnMsgCallBack();
                timer.Enabled = false;
            }
        }
Beispiel #14
0
        public void setErrorAppData(string errorMsg)
        {
            DataFileUtils dFileUtils = new DataFileUtils();
            FileMode      fMo        = FileMode.Append;

            //if (dFileUtils.FileSize(fileName4 + "exception.txt") > 1024 * 1024 * 10) fMo = FileMode.Create;
            dFileUtils.addErrorMsgInFile("\r\n" + XwDataUtils.currentTimeToSe() + "\r\n",
                                         fileName4 + XwDataUtils.currentMonthTime() + "\\1495614534.txt", fMo);
            dFileUtils.addErrorMsgInFile(errorMsg, fileName4 + XwDataUtils.currentMonthTime() + "\\1495614534.txt", fMo);
        }
Beispiel #15
0
 /// <summary>
 /// 定位的封包
 /// </summary>
 /// <param name="buf"></param>
 public LocationBean(byte[] buf)
 {
     if (buf.Length != 15)
     {
         return;
     }
     Array.Copy(buf, 2, tagId, 0, 2);
     Array.Copy(buf, 4, locationID, 0, 2);
     sinness = buf[6];
     mIndex  = buf[12];
     time    = XwDataUtils.GetTimeStamp();
 }
Beispiel #16
0
 /// <summary>
 /// 超时未收到返回数据
 /// </summary>
 /// <param name="dptLabel"></param>
 private void longTimeChangeLab(DP_TYPE_LABEL dptLabel)
 {
     if (dptLabel.IsReturn)
     {
         return;
     }
     if (this.labInterface != null)
     {
         labInterface.setUpdataResultLabelMain(dptLabel.Lab, "失败");
     }
     dptLabel.CreateTime = XwDataUtils.GetTimeStamp(false);
     dptLabel.IsReturn   = true;
 }
Beispiel #17
0
        public void setErrorData(string errorMsg)
        {
            DataFileUtils dFileUtils = new DataFileUtils();
            FileMode      fMo        = FileMode.Append;

            if (dFileUtils.FileSize(fileName4 + errorfileName) > 1024 * 1024 * 10)
            {
                fMo = FileMode.Create;
            }
            dFileUtils.addErrorMsgInFile("\r\n" + XwDataUtils.currentTimeToSe() + "\r\n",
                                         fileName4 + errorfileName, fMo);
            dFileUtils.addErrorMsgInFile(errorMsg + "\r\n", fileName4 + errorfileName, fMo);
        }
        public void saveCardXlsFile(string filePath)
        {
            try
            {
                if (hisAdmissionExits == null)
                {
                    MessageBox.Show("數據發生錯誤!!");
                    return;
                }

                List <AdmissionExit> admissions = hisAdmissionExits.Where(a => a.Model.Equals(AdmissionExit.ADMISSION)).ToList();
                List <AdmissionExit> exits      = hisAdmissionExits.Where(a => a.Model.Equals(AdmissionExit.EXIT)).ToList();

                List <ImportAdmissExit> importAdmissionExit = new List <ImportAdmissExit>(); //合并一下进出场数据
                int length = admissions.Count;
                for (int i = 0; i < length; i++)
                {
                    ImportAdmissExit importData = new ImportAdmissExit();
                    importData.setAdmissData(admissions[i]);

                    String endTime = "";
                    for (int j = 0; j < exits.Count; j++)
                    {
                        if (exits[j].TagID.Equals(admissions[i].TagID) && exits[j].Time > admissions[i].Time)
                        // && admissions[i].Time + 72000 > exits[j].Time) //72000是秒 = 20小时,20小时内应该有一套上下班的
                        {
                            endTime = XwDataUtils.dataFromTimeStamp((Int32)exits[j].Time);
                            break;
                        }
                    }
                    importData.ExitTime = endTime;
                    importAdmissionExit.Add(importData);
                }


                Dictionary <string, string> cellheader = new Dictionary <string, string> {
                    { "Name", "名稱" },
                    { "TagID", "卡片ID" },
                    { "WorkID", "進出場ID" },
                    { "AdmissTime", "進場時間" },
                    { "ExitTime", "出場時間" },
                };
                string urlPath = ExcelHelper.EntityListToExcel2003(cellheader, importAdmissionExit, filePath, "AdmissionExit", ExcelWeithEnum.ADMISSIONEXIT_PUTONG);
            }
            catch (Exception ex)
            {
                Debug.Write("saveCardXlsFile" + ex.Message);
            }
        }
Beispiel #19
0
        private bool isClear = false;   //是否清理

        public void setLowEle(string cardId, int currentElectricity, string quYuID, string canKaoDianID, long drivaceUpTime)
        {
            drivace                 = DrivaceTypeAll.CARD;
            warnTp                  = WarnType.CARD_LOW_ELECTRICITY;
            drivaceID               = cardId;
            drivaceName             = getFileCardName(cardId);
            this.quYuID             = quYuID;
            this.drivaceUpTime      = drivaceUpTime;
            quYuName                = getFilequYuName(canKaoDianID);
            this.canKaoDianID       = canKaoDianID;
            canKaoDianName          = getFileNODEName(canKaoDianID);
            warnTime                = XwDataUtils.GetTimeStamp();
            this.currentElectricity = currentElectricity;
            dealWarnTime            = 0;
        }
Beispiel #20
0
        private void reciveDataDeal(byte[] buf, int length, string ipClient) //处理一下,接收数据之后,缓存一下隔一段时间处理
        {
            Array.Copy(buf, 0, buffer, index_re, length);
            index_re += length;

            UDPDATA_IP udpData = new UDPDATA_IP();

            udpData.Length = length;
            udpData.Ip     = ipClient;
            UDPDATA_IPs.Add(udpData);
            if (timeReve + 500 < XwDataUtils.GetLongTimeStamp() || index_re > buffer.Length)
            {
                ThreadPool.QueueUserWorkItem(new WaitCallback(dealDataThread), UDPDATA_IPs.ToList()); //参数可选
                timeReve = XwDataUtils.GetLongTimeStamp();
            }
        }
Beispiel #21
0
        private void timer1_Tick(object sender, EventArgs e)
        {
            runTime    += BeiLv;
            label5.Text = "歷史時間:" + XwDataUtils.currentTimeToSe(runTime, "yyyy-MM-dd HH:mm:ss");
            if (locaViewFrom.locaModel != null)
            {
                locaViewFrom.locaModel.setRunTimeDate(runTime + 1);
            }
            if (fromMainModel == null)
            {
                return;
            }
            fromMainModel.checkShowPoint();

            fromMainModel.setRunTimeDate(runTime + 1);
        }
Beispiel #22
0
        public override void commOverCallBack(string msg, CommunicationMode comMode)
        {
            if (comMode == CommunicationMode.TCPServer)
            {
                tcpServerHandle(getcdInterface2Open(), comMode);
            }
            else if (comMode == CommunicationMode.TCPClien)
            {
                tcpServerHandle(getcdInterface3Open(), comMode);
            }

            if (!msg.Equals("%!%"))
            {
                timer1.Stop();
                if (comMode == CommunicationMode.UDP)
                {
                    MessageBox.Show(msg);
                }
                else if (comMode == CommunicationMode.TCPServer)
                {
                    return;
                }
                else if (comMode == CommunicationMode.TCPClien)
                {
                    return;
                }
            }
            addFromBaseModel(fromMainModel);

            if (comMode == CommunicationMode.TCPServer)
            {
                return;
            }

            timer1.Interval = 500;
            timer1.Start();
            if (button1.Tag.Equals("green") && getcdInterfaceOpen())
            {
                btnChangeGreen();
                fromMainModel.setListViewCanInfos();
                fromMainModel.OpenUDPtime = XwDataUtils.GetTimeStamp();
            }
            else if (button1.Tag.Equals("yellow") && !getcdInterfaceOpen())
            {
                btnChangeYellow();
            }
        }
Beispiel #23
0
        public static ListViewItem getlvItem(LocationNode loca_node)
        {
            if (loca_node == null)
            {
                return(null);
            }
            if (loca_node.ID_C == null || loca_node.ID_J == null)
            {
                return(null);
            }
            ListViewItem lvItem = new ListViewItem();

            lvItem.SubItems[0].Text = loca_node.ID_C_str;
            lvItem.SubItems.Add(loca_node.ID_J_str);
            lvItem.SubItems.Add(loca_node.Version_str);
            lvItem.SubItems.Add(XwDataUtils.dataFromTimeStamp(loca_node.TimeStamp));
            return(lvItem);
        }
Beispiel #24
0
        private void dealWarn(ListView listView, int changeIndex)
        {
            int listCount = listView.Items.Count;

            if (listCount < 1)
            {
                return;
            }
            for (int i = 0; i < listCount; i++)
            {
                if (!listView.Items[i].Checked)
                {
                    continue;
                }
                dealWarnInModel((string)listView.Items[i].Tag);
                listView.Items[i].SubItems[changeIndex].Text     = XwDataUtils.currentTimeToSe();
                listView.Items[i].SubItems[changeIndex + 1].Text = "是";
            }
        }
        /// <summary>
        /// 设置历史出厂入场数据给列表
        /// </summary>
        private void setHisAdmiExitList(List <AdmissionExit> admissionExits)
        {
            List <AdmissionExit> admissions = admissionExits.Where(a => a.Model.Equals(AdmissionExit.ADMISSION)).ToList();
            List <AdmissionExit> exits      = admissionExits.Where(a => a.Model.Equals(AdmissionExit.EXIT)).ToList();

            daTagListView.Items.Clear();
            int length = admissions.Count;

            for (int i = 0; i < length; i++)
            {
                ListViewItem item = new ListViewItem();
                item.Text = admissions[i].TagID;
                item.Name = admissions[i].TagID;
                item.SubItems.Add(admissions[i].Name);

                String startTime = XwDataUtils.dataFromTimeStamp((Int32)admissions[i].Time);
                item.SubItems.Add(startTime); //入场时间

                String endTime = "";
                for (int j = 0; j < exits.Count; j++)
                {
                    if (exits[j].TagID.Equals(admissions[i].TagID) && exits[j].Time > admissions[i].Time)
                    // && admissions[i].Time + 72000 > exits[j].Time) //72000是秒 = 20小时,20小时内应该有一套上下班的
                    {
                        endTime = XwDataUtils.dataFromTimeStamp((Int32)exits[j].Time);
                        break;
                    }
                }
                item.SubItems.Add(endTime);//出厂时间
                String workIDs = "";
                if (admissions[i].WorkIDbyte != null)
                {
                    for (int j = 0; j < 16; j++)
                    {
                        workIDs += admissions[i].WorkIDbyte[j].ToString("X2");
                    }
                }
                item.SubItems.Add(workIDs);
                daTagListView.Items.Add(item);
            }
        }
Beispiel #26
0
 public void insertSet(DP_TYPE_LABEL dptLabel)
 {
     if (dptLabel == null)
     {
         return;
     }
     dptLabel.CreateTime = XwDataUtils.GetTimeStamp(false);
     lock (obj) {
         if (listSetType.ContainsKey(dptLabel.DpType))
         {
             listSetType[dptLabel.DpType] = dptLabel;
         }
         else
         {
             listSetType.Add(dptLabel.DpType, dptLabel);
         }
     }
     if (isThreadOver)
     {
         new Thread(runThread).Start();
     }
 }
Beispiel #27
0
        private void appRestart()
        {
            Thread.Sleep(5000);

            RestartBean resBean = new RestartBean();

            resBean.UDPopen              = getcdInterfaceOpen();
            resBean.TCPopen              = getcdInterface2Open();
            resBean.TCPClienopen         = getcdInterface3Open();
            resBean.CardLowEleWarnMsgs   = new Dictionary <string, DrivaceWarnMessage>(WarnMessage.getWarnMessage().CardLowEleWarnMsgs);
            resBean.CardUnanswerWranMsgs = new Dictionary <string, DrivaceWarnMessage>(WarnMessage.getWarnMessage().CardUnanswerWranMsgs);
            resBean.NODEUnanswerWranMsgs = new Dictionary <string, DrivaceWarnMessage>(WarnMessage.getWarnMessage().NODEUnanswerWranMsgs);
            resBean.PcType          = PeoplePowerModel.getPeoplePowerModel().Jurisdiction == PeoplePowerModel.getPeoplePowerModel().CongjiValue ? 2 : 1;
            resBean.Count           = loginForm.getAccount();
            resBean.Password        = PeoplePowerModel.getPeoplePowerModel().Password;
            resBean.PowerValue      = PeoplePowerModel.getPeoplePowerModel().PowerValue;
            resBean.Jurisdiction    = PeoplePowerModel.getPeoplePowerModel().Jurisdiction;
            resBean.DealUpCardDatas = fromMainModel.DealUpCardDatas.ToList();
            resBean.RestartTime     = XwDataUtils.GetTimeStamp();
            FileModel.getFlModel().setRestartData(resBean);
            new Thread(ApplicationRestart).Start();
        }
        /// <summary>
        /// 設置所有的歷史進出場數據
        /// </summary>
        /// <param name="admissionExits"></param>
        private void setHisAllAdmiExitList(List <AdmissionExit> admissionExits)
        {
            listView1.Items.Clear();
            int length = admissionExits.Count;

            for (int i = 0; i < length; i++)
            {
                ListViewItem item = new ListViewItem();
                item.Text = admissionExits[i].TagID;
                item.Name = admissionExits[i].TagID;
                item.SubItems.Add(admissionExits[i].Name);
                item.SubItems.Add(admissionExits[i].Model);
                item.SubItems.Add(XwDataUtils.dataFromTimeStamp((Int32)admissionExits[i].Time)); //進出厂时间
                String workIDs = "";
                for (int j = 0; j < 16; j++)
                {
                    workIDs += admissionExits[i].WorkIDbyte[j].ToString("X2");
                }
                item.SubItems.Add(workIDs);
                listView1.Items.Add(item);
            }
        }
Beispiel #29
0
        private void ApplicationRestart()
        {
            for (int i = 0; i < 100; i++)
            {
                if (getcdInterfaceOpen())
                {
                    UDPOpen();
                }
                ;
                if (getcdInterface2Open())
                {
                    canshuButton19_Click(null, null);
                }
                if (getcdInterface3Open())
                {
                    canshuButton24_Click(null, null);
                }
                else
                {
                    break;
                }
                Thread.Sleep(500);
            }

            closeTimer(timer1);
            closeTimer(timer2);
            closeTimer(timer3);
            Thread.Sleep(500);

            if (!getcdInterface2Open())
            {
                System.Windows.Forms.Application.Restart();
            }
            else
            {
                FileModel.getFlModel().setErrorAppData(XwDataUtils.currentTimeToSe() + "=== Restart File+\r\n");
            }
        }
Beispiel #30
0
        public void getCardWarnBt(ref List <byte[]> cardBt)
        {
            if (cardUnanswerWranMsgs == null)
            {
                return;
            }
            Dictionary <string, DrivaceWarnMessage> cardUnanswerWranMsgsCache = new Dictionary <string, DrivaceWarnMessage>(cardUnanswerWranMsgs);

            foreach (var item in cardUnanswerWranMsgsCache)
            {
                byte[] tagID    = XWUtils.getByteID(item.Value.DrivaceID);
                byte[] canKaoID = XWUtils.getByteID(item.Value.CanKaoDianID);
                byte[] warnTime = XwDataUtils.firstTimeByte(item.Value.WarnTime);
                byte[] dealTime = XwDataUtils.firstTimeByte(item.Value.DealWarnTime);
                if (tagID == null)
                {
                    tagID = new byte[2];
                }
                if (canKaoID == null)
                {
                    canKaoID = new byte[2];
                }

                byte[] eleByte = new byte[18];
                eleByte[0] = 0xfd;
                eleByte[1] = 0x06;
                eleByte[2] = tagID[0];
                eleByte[3] = tagID[1];
                eleByte[4] = canKaoID[0];
                eleByte[5] = canKaoID[1];
                eleByte[6] = (byte)(item.Value.SleepTime / 0x100);
                eleByte[7] = (byte)(item.Value.SleepTime % 0x100);
                Array.Copy(warnTime, 0, eleByte, 8, 4);
                Array.Copy(dealTime, 0, eleByte, 12, 4);
                eleByte[17] = 0xfb;
                cardBt.Add(eleByte);
            }
        }