From c7acb51c3ace14e509704f453adc58b9eb6613a8 Mon Sep 17 00:00:00 2001 From: liuying <1427574514@qq.com> Date: 周三, 16 10月 2024 16:23:28 +0800 Subject: [PATCH] 细节 --- DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs | 90 +++++++++++++++++++++++++-------------------- 1 files changed, 50 insertions(+), 40 deletions(-) diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs index e818816..2211191 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs @@ -1,4 +1,5 @@ 锘縰sing iWare_SCADA_BusinessLogical.BLL; +using iWare_SCADA_BusinessLogical.BLL.Important; using iWare_SCADA_BusinessLogical.Utils; using iWare_SCADA_Model; using log4net; @@ -62,19 +63,19 @@ } while (true) { - ThreadStatusMonitor threadStatusMonitor = new ThreadStatusMonitor(); - threadStatusMonitor.Threadcode = DataCapturePointCode; - threadStatusMonitor.Threadcname = DataCapturePointCname; - threadStatusMonitor.Threadendtime = DateTime.Now; - //threadStatusMonitor.Threadlastmodifytime = DateTime.Now; - threadStatusMonitor.Threadstatue = 0; - threadStatusMonitor.ThreadId = Thread.CurrentThread.ManagedThreadId.ToString(); + //ThreadStatusMonitor threadStatusMonitor = new ThreadStatusMonitor(); + //threadStatusMonitor.Threadcode = DataCapturePointCode; + //threadStatusMonitor.Threadcname = DataCapturePointCname; + //threadStatusMonitor.Threadendtime = DateTime.Now; + ////threadStatusMonitor.Threadlastmodifytime = DateTime.Now; + //threadStatusMonitor.Threadstatue = 0; + //threadStatusMonitor.ThreadId = Thread.CurrentThread.ManagedThreadId.ToString(); try { //_dataCaptureConfig if (plcService == null || !plcService.IsConnected) { - threadStatusMonitor.ErrorMsg = $" {RandomHelper.GenerateRandomCode(4)} {_dataCaptureConfig.WorkingProcedure} PLC杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�!"; + // threadStatusMonitor.ErrorMsg = $" {RandomHelper.GenerateRandomCode(4)} {_dataCaptureConfig.WorkingProcedure} PLC杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�!"; SystemValue.lbl_Alert_OP1002 = $" {RandomHelper.GenerateRandomCode(4)} {WorkingProcedure} PLC杩炴帴宸叉柇寮�锛屾鍦ㄥ皾璇曟墦寮�!"; SystemValue.PLCServiceReconnect(plcService); @@ -85,20 +86,42 @@ } else { - Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}宸ュ簭娴嬫爣璁拌鍙杮DateTime.Now} *****0***"); + + //鑾峰彇OP70鏈粨鏉熺殑宸ヤ欢鍒楄〃 + var ooDateTime = Convert.ToDateTime("0001-01-01"); + var findTime = DateTime.Now.AddHours(-12); + List<WorkPieceProcess> noFinishWorkPieceProcessList = null; + using (DbModel db = new DbModel()) + { + var dateTime = DateTime.Now; + noFinishWorkPieceProcessList = db.WorkPieceProcess.Where(x => + x.WorkingProcedureCurrent == WorkingProcedure + && ( + + (x.CreatedTime >= findTime + && x.EndTime == ooDateTime) + || x.Update70Flag == 1 + + ) + + ).ToList(); + } + if (noFinishWorkPieceProcessList?.Count <= 0) + { + continue; + } - Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}宸ュ簭娴嬫爣璁拌鍙杮DateTime.Now}***1****"); - - threadStatusMonitor.Threadlastmodifytime = DateTime.Now; + // threadStatusMonitor.Threadlastmodifytime = DateTime.Now; WorkPieceLogMiddle wplog = new WorkPieceLogMiddle(); wplog.Id = Yitter.IdGenerator.YitIdHelper.NextId(); wplog.WorkingProcedure = WorkingProcedure; wplog.EquipmentID = _dataCaptureConfig.EquipmentID; wplog.Remarks = WorkingProcedure; 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(); @@ -114,9 +137,9 @@ var set = wplog.GetType().GetProperty(col.DataCaptureColumnTabelName); if (set == null) { - Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {WorkingProcedure}宸ュ簭鐩戞帶璇荤爜鏍囪 璇诲彇宸ヤ欢鐮佸姩鎬佺敱浜庡瓧娈靛悕娌℃壘鍒帮紝璧嬪�笺�恵WorkingProcedure ?? "绌哄瓧绗︿覆"}銆戝け璐wplog.Id}"); + Log4NetHelper.WriteErrorLog(LogType.OP7009, $" {WorkingProcedure}宸ュ簭鐩戞帶璇荤爜鏍囪 璇诲彇宸ヤ欢鐮佸姩鎬佺敱浜庡瓧娈靛悕娌℃壘鍒帮紝璧嬪�笺�恵WorkingProcedure ?? "绌哄瓧绗︿覆"}銆戝け璐wplog.Id}"); } - Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}宸ュ簭娴嬫爣璁拌鍙杮DateTime.Now}***2****{col.DataCaptureColumnTabelName} 鍊� {valuecol.ToString() ?? ""}"); + Log4NetHelper.WriteInfoLog(LogType.OP7009, $" {DataCapturePointCode}宸ュ簭娴嬫爣璁拌鍙杮DateTime.Now}***2****{col.DataCaptureColumnTabelName} 鍊� {valuecol.ToString() ?? ""}"); if (col.DataCaptureColumnTabelName.Contains("Quality")) {//瀛楁鍚嶅寘鍚玅uality鏄涓烘槸璐ㄩ噺鏁版嵁锛岄兘鏄浆鎹㈡垚string @@ -129,59 +152,46 @@ } catch (Exception setex) { - Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {WorkingProcedure}宸ュ簭鐩戞帶璇荤爜鏍囪 璇诲彇宸ヤ欢鐮佸姩鎬佽祴鍊笺�恵WorkingProcedure ?? "绌哄瓧绗︿覆"}銆戝紓甯竰wplog.Id}", setex); + Log4NetHelper.WriteErrorLog(LogType.OP7009, $" {WorkingProcedure}宸ュ簭鐩戞帶璇荤爜鏍囪 璇诲彇宸ヤ欢鐮佸姩鎬佽祴鍊笺�恵WorkingProcedure ?? "绌哄瓧绗︿覆"}銆戝紓甯竰wplog.Id}", setex); } } - Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}宸ュ簭娴嬫爣璁拌鍙杮DateTime.Now}***3****"); - - //鑾峰彇OP70鏈粨鏉熺殑宸ヤ欢鍒楄〃 - var ooDateTime = Convert.ToDateTime("0001-01-01"); - List<WorkPieceProcess> noFinishWorkPieceProcessList = null; - using (DbModel db = new DbModel()) + if (string.IsNullOrEmpty(wplog.QualityOP70To1) && string.IsNullOrEmpty(wplog.QualityOP70To2) && string.IsNullOrEmpty(wplog.QualityOP70To3)) { - var dateTime = DateTime.Now; - noFinishWorkPieceProcessList = db.WorkPieceProcess.Where(x => x.CreatedTime >= DateTime.Now.AddHours(-12) - && x.EndTime == ooDateTime).ToList(); + //Log4NetHelper.WriteInfoLog(LogType.OP7009, $"璇诲彇 {DataCapturePointCode}璐ㄩ噺淇℃伅涓変釜鍊奸兘鏄┖鐨勶細"); + continue; } + + if (noFinishWorkPieceProcessList?.Count > 0) { foreach (var item in noFinishWorkPieceProcessList) { wplog.WorkPieceID = item.WorkPieceID; - WorkPieceInfoManager.QualityInfoCompleteForOP70(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure)); - threadStatusMonitor.Threadstatue = 1; + QualityInfoCompleteManager.QualityInfoCompleteForOP70(wplog, LogType.OP7009); + // threadStatusMonitor.Threadstatue = 1; } } } - - SystemValue.lbl_Alert_OP1002 = $"abcdefg:{RandomHelper.GenerateRandomCode(4)}"; - if (!_dataCaptureConfig.DataCaptureFrequency.HasValue || _dataCaptureConfig.DataCaptureFrequency < 10) - { - Thread.Sleep(5000); - } - else - { - Thread.Sleep(_dataCaptureConfig.DataCaptureFrequency.Value); - } + Thread.Sleep(5000); } catch (Exception ex) { SystemValue.lbl_Alert_OP1002 = $" {RandomHelper.GenerateRandomCode(4)} 璇诲彇{DataCapturePointCode}璐ㄩ噺淇℃伅 鍑虹幇寮傚父锛岃鏌ョ湅鏃ュ織锛�"; - Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $"璇诲彇 {DataCapturePointCode}璐ㄩ噺淇℃伅鏃跺紓甯革細", ex); + Log4NetHelper.WriteErrorLog(LogType.OP7009, $"璇诲彇 {DataCapturePointCode}璐ㄩ噺淇℃伅鏃跺紓甯革細", ex); } finally { - WorkPieceInfoManager.ThreadMonitor(threadStatusMonitor); + //WorkPieceInfoManager.ThreadMonitor(threadStatusMonitor); } } } else { SystemValue.lbl_Alert_OP1002 = $" {RandomHelper.GenerateRandomCode(4)} {DataCapturePointCode}璐ㄩ噺淇℃伅 涓嶅仛鏍¢獙锛岃纭閰嶇疆淇℃伅锛�"; - Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $"{DataCapturePointCode}璐ㄩ噺淇℃伅 涓嶅仛鏍¢獙锛岃纭鏄惁閰嶇疆寮傚父"); + Log4NetHelper.WriteInfoLog(LogType.OP7009, $"{DataCapturePointCode}璐ㄩ噺淇℃伅 涓嶅仛鏍¢獙锛岃纭鏄惁閰嶇疆寮傚父"); } } -- Gitblit v1.9.3