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工序时,才创建 【Editby shaocx,2024-08-29】 db.WorkPieceProcess.Add(process_70); } //每次扫描上线都插入追溯表 WorkPieceProcess new_process = new WorkPieceProcess(); new_process = EntityPropHelper.Mapper<WorkPieceProcess, WorkPieceInfo>(info); DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs
@@ -425,6 +425,16 @@ { db.QualityDataInfo.Add(WorkPieceInfoManager.GetAddQualityDataInfo(qualityData)); } //更新表WorkPieceProcess 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 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) { 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; } 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; } } } 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; } } }