From eac59f7d6f0b08d2ad9787d2e206c87e6840e0d6 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周二, 10 9月 2024 19:14:33 +0800 Subject: [PATCH] 自己追加 OP70 --- DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs | 14 +++++- DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/WorkPieceProcessHelper.cs | 56 ++++++++++++++++++++++++++++ DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Model/TableModel/WorkPieceProcess.cs | 5 ++ DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/SystemBussinessHelper.cs | 2 + DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/1_ReadQRcodeManager.cs | 6 +++ DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs | 10 +++++ 6 files changed, 90 insertions(+), 3 deletions(-) diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/1_ReadQRcodeManager.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/1_ReadQRcodeManager.cs index 684fc26..e205a38 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/1_ReadQRcodeManager.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/1_ReadQRcodeManager.cs @@ -118,6 +118,12 @@ } if (isNeedAddNewProcess) { + WorkPieceProcess process_70 = WorkPieceProcessHelper.CreateWorkPieceProcessForOP70(loginfo, db, info); + if (process_70 != null) + {//鍒涘缓OP70宸ュ簭锛屽綋娌℃湁70宸ュ簭鏃�,鎵嶅垱寤� 銆怑ditby shaocx,2024-08-29銆� + db.WorkPieceProcess.Add(process_70); + } + //姣忔鎵弿涓婄嚎閮芥彃鍏ヨ拷婧〃 WorkPieceProcess new_process = new WorkPieceProcess(); new_process = EntityPropHelper.Mapper<WorkPieceProcess, WorkPieceInfo>(info); diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs index 8a04177..e299e6c 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs @@ -425,6 +425,16 @@ { db.QualityDataInfo.Add(WorkPieceInfoManager.GetAddQualityDataInfo(qualityData)); } + + //鏇存柊琛╓orkPieceProcess + var pro_70 = db.WorkPieceProcess.Where(o => o.WorkPieceID == logMiddle.WorkPieceID && o.WorkingProcedureCurrent == "OP70" + ).OrderByDescending(o => o.StartTime).FirstOrDefault(); + + if (pro_70 != null) + { + pro_70.Update70Flag = 2; + } + db.SaveChanges();//淇濆瓨鏁版嵁 } else 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 c882e76..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 @@ -94,9 +94,17 @@ using (DbModel db = new DbModel()) { var dateTime = DateTime.Now; - noFinishWorkPieceProcessList = db.WorkPieceProcess.Where(x => x.CreatedTime >= findTime - && x.WorkingProcedureCurrent == WorkingProcedure - && x.EndTime == ooDateTime).ToList(); + noFinishWorkPieceProcessList = db.WorkPieceProcess.Where(x => + x.WorkingProcedureCurrent == WorkingProcedure + && ( + + (x.CreatedTime >= findTime + && x.EndTime == ooDateTime) + || x.Update70Flag == 1 + + ) + + ).ToList(); } if (noFinishWorkPieceProcessList?.Count <= 0) { diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/SystemBussinessHelper.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/SystemBussinessHelper.cs index 7bbbf53..57497b6 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/SystemBussinessHelper.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/SystemBussinessHelper.cs @@ -38,6 +38,8 @@ return 3 * 60; case "OP60": return 4 * 60; + case "OP70": + return 9 * 60;//9鍒嗛挓 default: return 1 * 60; } diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/WorkPieceProcessHelper.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/WorkPieceProcessHelper.cs index 094661a..7fb6455 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/WorkPieceProcessHelper.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/WorkPieceProcessHelper.cs @@ -69,5 +69,61 @@ } return null; } + + + /// <summary> + /// 鍒涘缓OP70宸ュ簭鏁版嵁 + /// </summary> + /// <param name="db"></param> + /// <param name="pieceInfo"></param> + /// <returns></returns> + public static WorkPieceProcess CreateWorkPieceProcessForOP70(WorkPieceLog logMiddle, DbModel db, WorkPieceInfo pieceInfo) + { + if (!logMiddle.WorkingProcedure.Equals("OP80")) + { + return null; + } + + var _procedureCurrent_70 = "OP70"; + + var pro_70 = db.WorkPieceProcess.Where(o => o.WorkPieceID == pieceInfo.WorkPieceID && o.WorkingProcedureCurrent == _procedureCurrent_70 + ).OrderByDescending(o => o.StartTime).FirstOrDefault(); + + if (pro_70 == null) + { + WorkPieceProcess process = new WorkPieceProcess(); + process.WorkPieceID = pieceInfo.WorkPieceID; + process.Update70Flag = 1; + + var _end_time = DateTimeHelper.GetDateTime().AddSeconds(-10); + var _startTime = _end_time.AddSeconds(-SystemBussinessHelper.MoNiTimeForWorkingProcedure(_procedureCurrent_70)); + var _user = "OP7001"; + process.StartTime = _startTime; + process.EndTime = _end_time; + + process.EquipmentID = "EOP70"; + process.WorkingProcedureCurrent = _procedureCurrent_70; + + + process.QualityState = (int)QualityStateEnum.OK; + + + process.Id = Yitter.IdGenerator.YitIdHelper.NextId(); + process.CreatedUserName = _user; + process.DataCapturePointCname = "宸ュ簭瀹屾垚鏍囪"; + process.CreatedTime = _end_time; + process.UpdatedUserName = _user; + process.UpdateDataCapturePointCname = "宸ュ簭瀹屾垚鏍囪"; + process.UpdatedTime = _end_time; + process.OperationType = OperationType.鐢熶骇.ToString(); + + process.Remarks = ""; + + process.MyRemarks = "CreateWorkPieceProcessForOP70娣诲姞"; + + return process; + } + return null; + } } } diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Model/TableModel/WorkPieceProcess.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Model/TableModel/WorkPieceProcess.cs index 6eea86f..a74c122 100644 --- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Model/TableModel/WorkPieceProcess.cs +++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Model/TableModel/WorkPieceProcess.cs @@ -93,5 +93,10 @@ [StringLength(50)] public string UpdateDataCapturePointCname { get; set; } + + /// <summary> + /// 需要更新70质量数据的标记 ( 1:需要更新 2:不需要更新) + /// </summary> + public int? Update70Flag { get; set; } } } -- Gitblit v1.9.3