| | |
| | | using iWare_SCADA_BusinessLogical.BLL; |
| | | using iWare_SCADA_BusinessLogical.BLL.Important; |
| | | using iWare_SCADA_BusinessLogical.Utils; |
| | | using iWare_SCADA_Model; |
| | | using System; |
| | |
| | | else |
| | | { |
| | | var value = plcService.ReadValuePoint(_dataCaptureConfig.DbNumber, _dataCaptureConfig.Offset, PLCManger.GetTypeForString(_dataCaptureConfig.DataCaptureColumnType)); |
| | | if (SystemValue.value_OP1004.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE")) |
| | | {//当上一标记位0,当前获取标记为1时, |
| | | //触发操作, 并给静态变量赋值为1 |
| | | //业务代码 1.取推出标记,2取推出原因(1:nok,2和3:spc,4:状态不明 5:二维码识别失败 ),3 取推出二维码 |
| | | threadStatusMonitor.Threadlastmodifytime = DateTime.Now; |
| | | WorkPieceLogMiddle wplog = new WorkPieceLogMiddle(); |
| | | |
| | | WorkPieceLogMiddle wplog = null; |
| | | var value_bool = value.ToString().ToUpper().Equals("TRUE"); |
| | | if (value_bool) |
| | | { |
| | | wplog = new WorkPieceLogMiddle(); |
| | | wplog.Id = Yitter.IdGenerator.YitIdHelper.NextId(); |
| | | wplog.WorkingProcedure = WorkingProcedure; |
| | | wplog.EquipmentID = _dataCaptureConfig.EquipmentID; |
| | | wplog.MonitoringPoint = DataCapturePointCode; |
| | | //wplog.CreatedUserName = DataCapturePointCode; |
| | | SystemBussinessHelper.SetWorkPieceLogMiddleForCreatedUserName(ref wplog, DataCapturePointCode, DataCapturePointCname); |
| | | wplog.CreatedTime = DateTimeHelper.GetDateTime(); |
| | | wplog.CreatedUserName = DataCapturePointCode; |
| | | wplog.UpdatedTime = DateTimeHelper.GetDateTime(); |
| | | wplog.UpdatedUserName = Environment.MachineName + "自动" + Thread.CurrentThread.ManagedThreadId.ToString(); |
| | | wplog.OnlineTime = DateTimeHelper.GetDateTime(); |
| | |
| | | Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序监控读码标记 读取工件码动态赋值【{WorkingProcedure ?? "空字符串"}】异常{wplog.Id}", setex); |
| | | } |
| | | } |
| | | if (wplog.OP10Flag != "1" && wplog.OP10Flag != "2" && wplog.OP10Flag != "3") |
| | | {//获取到的工件号异常 |
| | | Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序监控读码标记 读取工件码数据{wplog.WorkPieceID}推出原因[{wplog.OP10Flag}]异常"); |
| | | wplog.Remarks = $"推出原因[{wplog.OP10Flag}]异常"; |
| | | } |
| | | if (wplog.OP10Flag == "1") |
| | | { |
| | | Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序1监控读码标记 读取工件码数据{wplog.WorkPieceID}推出原因[{wplog.OP10Flag}]"); |
| | | |
| | | WorkPieceInfoManager.WorkPiecePushOff(wplog, LogType.PLCOP10); |
| | | threadStatusMonitor.Threadstatue = 1; |
| | | wplog.Remarks = (wplog.Remarks ?? "") + $"推出原因[{wplog.OP10Flag}] NOOK"; |
| | | } |
| | | //else if (wplog.OP10Flag == 2 || wplog.OP10Flag == 3) |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序23监控读码标记 读取工件码数据{wplog.WorkPieceID}推出原因[{wplog.OP10Flag}]"); |
| | | |
| | | WorkPieceInfoManager.WorkPieceSPCPushOff(wplog, LogType.PLCOP10); |
| | | wplog.Remarks = (wplog.Remarks ?? "") + $"推出原因[{wplog.OP10Flag}] SPC"; |
| | | threadStatusMonitor.Threadstatue = 1; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | //监控上线 |
| | | MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceID); |
| | | } |
| | | SystemValue.value_OP1004 = value.ToString(); |
| | | else |
| | | { |
| | | SystemValue.value_OP1004 = value.ToString(); |
| | | } |
| | | |
| | | if (wplog != null) |
| | | { |
| | | var isRight = SystemBussinessHelper.ValidateIsRightWorkPieceID(wplog.WorkPieceID); |
| | | if (isRight) |
| | | { |
| | | #region 处理业务 |
| | | |
| | | if (SystemValue.value_OP1004.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE")) |
| | | {//当上一标记位0,当前获取标记为1时, |
| | | //触发操作, 并给静态变量赋值为1 |
| | | //业务代码 1.取推出标记,2取推出原因(1:nok,2和3:spc,4:状态不明 5:二维码识别失败 ),3 取推出二维码 |
| | | threadStatusMonitor.Threadlastmodifytime = DateTime.Now; |
| | | |
| | | |
| | | if (wplog.OP10Flag != "1" && wplog.OP10Flag != "2" && wplog.OP10Flag != "3") |
| | | {//获取到的工件号异常 |
| | | Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序监控读码标记 读取工件码数据{wplog.WorkPieceID}推出原因[{wplog.OP10Flag}]异常"); |
| | | wplog.Remarks = $"推出原因[{wplog.OP10Flag}]异常"; |
| | | } |
| | | if (wplog.OP10Flag == "1") |
| | | { |
| | | Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序1监控读码标记 读取工件码数据{wplog.WorkPieceID}推出原因[{wplog.OP10Flag}]"); |
| | | |
| | | WorkPiecePushOffManager.WorkPiecePushOff(wplog, LogType.PLCOP10); |
| | | threadStatusMonitor.Threadstatue = 1; |
| | | wplog.Remarks = $"推出原因[{wplog.OP10Flag}] NOOK"; |
| | | } |
| | | //else if (wplog.OP10Flag == 2 || wplog.OP10Flag == 3) |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序23监控读码标记 读取工件码数据{wplog.WorkPieceID}推出原因[{wplog.OP10Flag}]"); |
| | | |
| | | WorkPieceSPCPushOffManager.WorkPieceSPCPushOff(wplog, LogType.PLCOP10); |
| | | wplog.Remarks = $"推出原因[{wplog.OP10Flag}] SPC"; |
| | | threadStatusMonitor.Threadstatue = 1; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | SystemValue.value_OP1004 = value.ToString(); |
| | | |
| | | #endregion |
| | | } |
| | | } |
| | | } |
| | | SystemValue.lbl_Alert_OP1004 = $"abcdefg:{RandomHelper.GenerateRandomCode(4)}"; |
| | | if (!_dataCaptureConfig.DataCaptureFrequency.HasValue || _dataCaptureConfig.DataCaptureFrequency < 10) |