예제 #1
0
        /// <summary>
        /// 控制器 通信 异常 显示 和记录
        /// </summary>
        private void NetErrInfoAndRecord(int iIndex, string strContent)
        {
            string strZkName = listZk[iIndex].StrNameOfZk;; //微耕控制器名称

            //异常记录
            commonCls.NewErrRecord(EventType.门禁.ToString(), strZkName, strContent, "");
            if (NewAlarmShowEvent != null)
            {
                NewAlarmShowEvent(new NewEventEventArgs(EventType.门禁, strZkName, strContent, "", "", DateTime.Now));
            }
        }
예제 #2
0
 private void timer_Execute()
 {
     try
     {
         TimeSpan span = DateTime.Now - timeReceHeat;
         if (span.TotalSeconds > 60)
         {
             timeReceHeat = DateTime.Now;
             if (blOnLine)
             {
                 blOnLine = false;
                 string strContent = "半有源读写器网络异常";
                 commonCls.NewErrRecord(AlarmsType.半有源读写器通信.ToString(), "", strContent, "");
                 if (NewAlarmShowEvent != null)
                 {
                     NewAlarmShowEvent(new NewEventEventArgs(EventType.半有源读写器通信, "", strContent, "", "", DateTime.Now));
                 }
             }
         }
     }
     catch (Exception ex)
     {
         if (frmMain.blDebug)
         {
             MessageUtil.ShowTips(ex.Message);
         }
     }
 }
예제 #3
0
        /// <summary>
        /// 控制器 通信 异常 显示 和记录
        /// </summary>
        private void NetErrInfoAndRecord(WgDoorType doorType, int iIndex, string strContent)
        {
            EventType eventType = EventType.门禁;

            if (doorType == WgDoorType.工具柜)
            {
                eventType = EventType.工具柜;
            }
            string strWgName = listWg[iIndex].StrNameOfWg;; //微耕控制器名称

            //异常记录
            commonCls.NewErrRecord(eventType.ToString(), strWgName, strContent, "");
            if (NewAlarmShowEvent != null)
            {
                NewAlarmShowEvent(new NewEventEventArgs(eventType, strWgName, strContent, "", "", DateTime.Now));
            }
        }
예제 #4
0
 private void NewErrRecord(string strType, string strPoint, string strContent, string strRemark)
 {
     commonCls.NewErrRecord(strType, strPoint, strContent, strRemark);
 }
예제 #5
0
        /// <summary>
        /// 连接 读写器  更新通信状态
        /// </summary>
        private void OpenRfidNewState(int iIndex)
        {
            if (listRfid[iIndex].StateNet == CommuniState.错误)
            {
                TimeSpan span = DateTime.Now - listRfid[iIndex].TimeLinkErr;
                if (span.TotalMinutes < 1)
                {
                    return;
                }
            }
            if (frmMain.stateRstRfid == StateRstRfid.关闭 || frmMain.stateRstRfid == StateRstRfid.重启)
            {
                return;
            }

            bool blRet = listRfid[iIndex].OpenNetPort();

            if (blRet)
            {
                listRfid[iIndex].BlConnent = true;
                listRfid[iIndex].ILinkErr  = 0;
                if (listRfid[iIndex].StateNet == CommuniState.错误)
                {
                    //通信恢复正常
                    string strName    = listRfid[iIndex].StrName;
                    string strContent = ErrorContent.通信恢复正常.ToString();
                    commonCls.NewErrRecord(EventType.RFID读写器.ToString(), strName, strContent, "");
                    if (NewAlarmShowEvent != null)
                    {
                        NewAlarmShowEvent(new NewEventEventArgs(EventType.RFID读写器, strName, strContent, "", "", DateTime.Now));
                    }
                }
                if (listRfid[iIndex].StateNet != CommuniState.正常)
                {
                    listRfid[iIndex].StateNet = CommuniState.正常;
                }
            }
            else
            {
                listRfid[iIndex].ILinkErr++;
            }
            if (listRfid[iIndex].ILinkErr >= 2)
            {
                listRfid[iIndex].ILinkErr = 0;
                if (listRfid[iIndex].StateNet == CommuniState.正常 || listRfid[iIndex].StateNet == CommuniState.初值)
                {
                    //异常记录
                    string strName    = listRfid[iIndex].StrName;
                    string strContent = ErrorContent.通信异常.ToString();
                    commonCls.NewErrRecord(EventType.RFID读写器.ToString(), strName, strContent, "");
                    if (NewAlarmShowEvent != null)
                    {
                        NewAlarmShowEvent(new NewEventEventArgs(EventType.RFID读写器, strName, strContent, "", "", DateTime.Now));
                    }
                }
                else if (listRfid[iIndex].StateNet == CommuniState.错误)
                {
                    commonCls.NewErrRecord(EventType.系统.ToString(), "", ErrorContent.RFID读写器异常系统重启.ToString(), "");
                    timerRead.Stop();

                    Thread.Sleep(1000);
                    frmMain.RFIDReLoad = ErrorContent.RFID读写器异常系统重启;
                }
                if (listRfid[iIndex].StateNet != CommuniState.错误)
                {
                    listRfid[iIndex].StateNet = CommuniState.错误;
                }
                listRfid[iIndex].TimeLinkErr = DateTime.Now;
            }
        }