schangxiang@126.com
2024-09-10 eac59f7d6f0b08d2ad9787d2e206c87e6840e0d6
自己追加 OP70
已修改6个文件
93 ■■■■■ 文件已修改
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/1_ReadQRcodeManager.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/Important/2_QualityInfoCompleteManager.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP7009.cs 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/SystemBussinessHelper.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/Utils/WorkPieceProcessHelper.cs 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_Model/TableModel/WorkPieceProcess.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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; }
    }
}