From 03de13b2a5357916a7b6ec2f3e8a9ff6ca2e3970 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 10 9月 2024 18:17:22 +0800
Subject: [PATCH] 日志优化

---
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/OP80QualityDataHandler.cs |  180 +++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 113 insertions(+), 67 deletions(-)

diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/OP80QualityDataHandler.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/OP80QualityDataHandler.cs
index e14097d..6c71323 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/OP80QualityDataHandler.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/OP80QualityDataHandler.cs
@@ -28,6 +28,7 @@
         public static readonly string path = ConfigHelper.GetConfigString("OP80QualityData");//OP80鐨勫湴鍧�
         public static readonly string query_WorkingProcedureCurrent = "OP80";
         public static readonly string _DataCapturePointCode = "OP8002";
+        public static readonly string _DataCapturePointName = "OP80璐ㄩ噺鏁版嵁閲囬泦";
         public static readonly string _EquipmentId = "EOP80";
         public static readonly LogType logType = LogType.PLCOP80_QC;
 
@@ -154,7 +155,8 @@
             }
         }
 
-        private void Do_One(bool isAdd_WorkPieceInfo, bool isAdd_WorkPieceProcess, bool isAdd_QualityDataInfo, List<FileInfo> allFiles, DbModel db, WorkPieceInfo info, WorkPieceProcess pieceProcess, QualityDataInfo qualityData,
+        private void Do_One(bool isAdd_WorkPieceInfo, bool isAdd_WorkPieceProcess, bool isAdd_QualityDataInfo, List<FileInfo> allFiles, DbModel db, WorkPieceInfo info,
+            WorkPieceProcess pieceProcess, QualityDataInfo qualityData,
              List<FileInfo> findFiles)
         {
             try
@@ -167,21 +169,24 @@
 
                 Log4NetHelper.WriteInfoLog(logType, $"OP80涓嬬嚎瀹屾垚璇诲彇鍒版枃浠秢file.Name}锛屾槸鎸囧畾鐨勫伐浠秢pieceProcess.WorkPieceID}");
 
-                WorkPieceLogMiddle wplog = new WorkPieceLogMiddle();
-                wplog.WorkPieceID = pieceProcess.WorkPieceID;
-                wplog.WorkingProcedure = query_WorkingProcedureCurrent;
-                wplog.Id = Yitter.IdGenerator.YitIdHelper.NextId();
-                wplog.EquipmentID = _dataCaptureConfig.EquipmentID; ;
-                wplog.Remarks = wplog.WorkingProcedure;
-                wplog.MonitoringPoint = _DataCapturePointCode;
-                wplog.CreatedTime = DateTimeHelper.GetDateTime();
-                wplog.CreatedUserName = _DataCapturePointCode;
-                wplog.UpdatedTime = DateTimeHelper.GetDateTime();
-                wplog.UpdatedUserName = Environment.MachineName + "鑷姩" + Thread.CurrentThread.ManagedThreadId.ToString();
-                wplog.IsDeleted = false;
+                WorkPieceLogMiddle logMiddle = new WorkPieceLogMiddle();
+                logMiddle.WorkPieceID = pieceProcess.WorkPieceID;
+                logMiddle.WorkingProcedure = query_WorkingProcedureCurrent;
+                logMiddle.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+                logMiddle.EquipmentID = _dataCaptureConfig.EquipmentID; ;
+                logMiddle.Remarks = logMiddle.WorkingProcedure;
+                logMiddle.MonitoringPoint = _DataCapturePointCode;
+                //logMiddle.CreatedUserName = _DataCapturePointCode;
+                SystemBussinessHelper.SetWorkPieceLogMiddleForCreatedUserName(ref logMiddle, DataCapturePointCode, DataCapturePointCname);
+                logMiddle.CreatedTime = DateTimeHelper.GetDateTime();
+                logMiddle.UpdatedTime = DateTimeHelper.GetDateTime();
+                logMiddle.UpdatedUserName = Environment.MachineName + "鑷姩" + Thread.CurrentThread.ManagedThreadId.ToString();
+                logMiddle.IsDeleted = false;
 
                 WorkPieceLog loginfo2 = new WorkPieceLog();
-                loginfo2 = EntityPropHelper.Mapper<WorkPieceLog, WorkPieceLogMiddle>(wplog);
+                loginfo2 = EntityPropHelper.Mapper<WorkPieceLog, WorkPieceLogMiddle>(logMiddle);
+                loginfo2.DataCapturePointCname = "OP80璐ㄩ噺閲囬泦";
+                loginfo2.CreatedUserName = loginfo2.MonitoringPoint;
 
                 var datatable = CSVHelper.ReadCSVList(file.FullName);
                 List<string> rowFirst = new List<string>();
@@ -243,95 +248,111 @@
                     {
                         if (oP80Info.OP80ItemStatusInfolist.Any(o => !o.鐘舵��.Equals("OK")))
                         {
-                            wplog.QualityStateStr = "NG";
+                            logMiddle.QualityStateStr = "NG";
                         }
                         else
                         {
-                            wplog.QualityStateStr = "OK";
+                            logMiddle.QualityStateStr = "OK";
                         }
                     }
                     else
                     {
-                        wplog.QualityStateStr = "OK";
+                        logMiddle.QualityStateStr = "OK";
                     }
 
 
-                    wplog.OP80QualityFilePath = file.FullName;
-                    wplog.OP80NewCode = oP80Info.鎵瑰彿?.Replace("#", "");
+                    logMiddle.OP80QualityFilePath = file.FullName;
+                    logMiddle.OP80NewCode = oP80Info.鎵瑰彿?.Replace("#", "");
                     //澶уご閲嶉噺
-                    wplog.QualityOP80To1 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Weight Big End")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To1 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Weight Big End")).FirstOrDefault()?.缁濆鍊�;
                     //灏忓ご閲嶉噺
-                    wplog.QualityOP80To2 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Weight Small End")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To2 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Weight Small End")).FirstOrDefault()?.缁濆鍊�;
                     //鎬婚噸
-                    wplog.QualityOP80To3 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Total Weight")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To3 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Total Weight")).FirstOrDefault()?.缁濆鍊�;
                     //寮洸
-                    wplog.QualityOP80To4 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Bend to A")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To4 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Bend to A")).FirstOrDefault()?.缁濆鍊�;
                     //鎵害
-                    wplog.QualityOP80To5 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Twist to A")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To5 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Twist to A")).FirstOrDefault()?.缁濆鍊�;
                     //澶уご鍨傜洿搴�
-                    wplog.QualityOP80To6 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_C_Squareness")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To6 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_C_Squareness")).FirstOrDefault()?.缁濆鍊�;
                     //灏忓ご鍨傜洿搴�
-                    wplog.QualityOP80To10 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Sma_End_C_Squareness")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80To10 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Sma_End_C_Squareness")).FirstOrDefault()?.缁濆鍊�;
                     //澶уご瀛斿垎缁勭骇鍒�
-                    wplog.QualityOP80To7 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Dime Big_End Class")).FirstOrDefault()?.鐘舵��;
+                    logMiddle.QualityOP80To7 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Dime Big_End Class")).FirstOrDefault()?.鐘舵��;
                     //灏忓ご瀛斿垎缁勭骇鍒�
-                    wplog.QualityOP80To8 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Dime Small_End Class")).FirstOrDefault()?.鐘舵��;
+                    logMiddle.QualityOP80To8 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Dime Small_End Class")).FirstOrDefault()?.鐘舵��;
                     //閲嶉噺缁勫埆
-                    wplog.QualityOP80To9 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Weight Class")).FirstOrDefault()?.鐘舵��;
+                    logMiddle.QualityOP80To9 = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Weight Class")).FirstOrDefault()?.鐘舵��;
                     //wplog.Remarks = (wplog.Remarks ?? "") + $"OP80涓嬬嚎瀹屾垚璇诲彇鏂囦欢{file.FullName},鏁版嵁銆恵wplog.OP80NewCode??"绌�"}銆戙�恵wplog.QualityOP80To1 ?? "绌�"}銆戙�恵wplog.QualityOP80To2 ?? "绌�"}銆戙�恵wplog.QualityOP80To3 ?? "绌�"}銆戙�恵wplog.QualityOP80To4 ?? "绌�"}銆戙�恵wplog.QualityOP80To5 ?? "绌�"}銆�";
 
                     //鏂板OP80鐨勪竴浜涜川閲忔暟鎹� 銆怑ditby shaocx,2024-06-13銆�
-                    wplog.QualityOP80_Houdu = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Thickness")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_ZXJ = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Distance of Two Head")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_DTKYZD = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Cylindricity")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_XTSMYD = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Top_Roundn")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_XTXMYD = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Bot_Roundn")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_Houdu = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Thickness")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_ZXJ = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Distance of Two Head")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_DTKYZD = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Cylindricity")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_XTSMYD = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Top_Roundn")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_XTXMYD = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Bot_Roundn")).FirstOrDefault()?.缁濆鍊�;
 
 
-                    wplog.QualityOP80_D_S_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Top_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_D_S_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Top_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_D_X_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Bot_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_D_X_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Bot_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_D_S_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Top_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_D_S_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Top_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_D_X_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Bot_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_D_X_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Big_End_Bot_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
                     //璁$畻澶уご瀛旂洿寰�,澶уご瀛旂洿寰�=锛堝ぇ澶翠笂闈鏂瑰悜鐩村緞+澶уご涓婇潰Y鏂瑰悜鐩村緞+澶уご涓嬮潰X鏂瑰悜鐩村緞+澶уご涓嬮潰Y鏂瑰悜鐩村緞锛�/4
                     List<decimal> valueList = new List<decimal>() {
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_D_S_X),
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_D_S_Y),
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_D_X_X),
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_D_X_Y),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_D_S_X),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_D_S_Y),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_D_X_X),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_D_X_Y),
                                                     };
-                    wplog.QualityOP80_D_TKZJ = SystemHelper.CalcDecimalAvg(valueList, 3);
+                    logMiddle.QualityOP80_D_TKZJ = SystemHelper.CalcDecimalAvg(valueList, 3);
 
 
-                    wplog.QualityOP80_X_S_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Top_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_X_S_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Top_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_X_X_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Bot_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
-                    wplog.QualityOP80_X_X_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Bot_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_X_S_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Top_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_X_S_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Top_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_X_X_X = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Bot_X_Dia.")).FirstOrDefault()?.缁濆鍊�;
+                    logMiddle.QualityOP80_X_X_Y = oP80Info.OP80ItemInfolist.Where(o => o.鍚嶇О.Equals("Small_End_Bot_Y_Dia.")).FirstOrDefault()?.缁濆鍊�;
                     //璁$畻灏忓ご瀛旂洿寰�,灏忓ご瀛旂洿寰�=锛堝皬澶翠笂闈鏂瑰悜鐩村緞+灏忓ご涓婇潰Y鏂瑰悜鐩村緞+灏忓ご涓嬮潰X鏂瑰悜鐩村緞+灏忓ご涓嬮潰Y鏂瑰悜鐩村緞锛�/4
                     valueList = new List<decimal>();
                     valueList = new List<decimal>() {
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_X_S_X),
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_X_S_Y),
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_X_X_X),
-                                                        SystemHelper.GetDecimal(wplog.QualityOP80_X_X_Y),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_X_S_X),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_X_S_Y),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_X_X_X),
+                                                        SystemHelper.GetDecimal(logMiddle.QualityOP80_X_X_Y),
                                                     };
-                    wplog.QualityOP80_X_TKZJ = SystemHelper.CalcDecimalAvg(valueList, 3);
+                    logMiddle.QualityOP80_X_TKZJ = SystemHelper.CalcDecimalAvg(valueList, 3);
 
                 }
                 else
                 {
-                    wplog.Remarks = (wplog.Remarks ?? "") + $"OP80涓嬬嚎瀹屾垚璇诲彇鏂囦欢{file.FullName}寮傚父锛岃鏁颁笉鏄�2琛�";
+                    logMiddle.Remarks = $"OP80涓嬬嚎瀹屾垚璇诲彇鏂囦欢{file.FullName}寮傚父锛岃鏁颁笉鏄�2琛�";
                 }
 
 
                 //鏇存柊WorkPieceInfo琛ㄤ互鍙婃彃鍏orkPieceLog琛ㄥ拰WorkPieceInfoLog琛�
-                info.OP80NewCode = wplog.OP80NewCode;//鏇存柊鎴愬搧鍚�
+                info.OP80NewCode = logMiddle.OP80NewCode;//鏇存柊鎴愬搧鍚�
 
-                info.QualityState = (int)((wplog.QualityStateStr.Equals("OK") || wplog.QualityStateStr.Equals("0K")) ? QualityState.OK : QualityState.NG);
-                wplog.QualityState = info.QualityState;
-                info.QualityStateUpdateUser = wplog.UpdatedUserName;
-                info.QualityStateUpdateTime = wplog.UpdatedTime.Value.LocalDateTime;
-                info.QualityStateUpdateMode = QualityStateUpdateMode.Auto.ToString();
+                //濡傛灉OP80涓嬬嚎锛屽凡缁忔洿鏀逛簡璐ㄦ鐘舵�侊紝骞朵笖璐ㄦ鐘舵�佺瓑浜庝笉鍚堟牸锛屽垯杩欓噷灏变笉瑕佺户缁洿鏀硅川妫�鐘舵�佷簡 銆怑ditby shaocx,2024-08-28銆�
+                bool isNeedUpdateQualityState = true;
+                var ooDateTime = Convert.ToDateTime("0001-01-01");
+                if (pieceProcess.EndTime != ooDateTime && pieceProcess.QualityState == (int)QualityStateEnum.NG)
+                {
+                    isNeedUpdateQualityState = false;
+                }
+                if (isNeedUpdateQualityState)
+                {
+                    info.QualityState = (int)((logMiddle.QualityStateStr.Equals("OK") || logMiddle.QualityStateStr.Equals("0K")) ? QualityStateEnum.OK : QualityStateEnum.NG);
+                    logMiddle.QualityState = info.QualityState;
+                    //鏍规嵁璐ㄩ噺鏁版嵁鍒ゆ柇鏄惁鍚堟牸/涓嶅悎鏍� 銆怑ditby shaocx,2024-06-25銆�
+                    WorkPieceInfoManager.SetLogMiddleForQuality(ref logMiddle);
 
+                    //璧嬪�间笉鍚堟牸鍘熷洜
+                    WorkPieceInfoManager.SetQualityNoOk_WorkPieceInfo(logMiddle, ref info);
+
+                    info.QualityStateUpdateUser = logMiddle.UpdatedUserName;
+                    info.QualityStateUpdateTime = logMiddle.UpdatedTime.Value.LocalDateTime;
+                    info.QualityStateUpdateMode = QualityStateUpdateMode.Auto.ToString();
+
+                }
                 //var qualityData = db.QualityDataInfo.Where(o => o.WorkPieceID == wplog.WorkPieceID).FirstOrDefault();
                 //if (qualityData == null || qualityData.WorkPieceID.Length < 1 || qualityData.WorkingProcedure.Length < 1)
                 //{//鎻掑叆QualityDataInfo琛�
@@ -339,24 +360,35 @@
                 //    db.QualityDataInfo.Add(GetAddQualityDataInfo(qualityData));
                 //}
                 //淇敼QualityDataInfo琛� //閲嶅鏀跺埌璐ㄩ噺淇℃伅锛屼細瑕嗙洊涔嬪墠鐨�
-                EntityPropHelper<WorkPieceLogMiddle, QualityDataInfo>.CopyProp(wplog, qualityData, WorkPieceInfoManager.GetQualityDataInfoUpdate(wplog.WorkingProcedure, wplog.MonitoringPoint));//鎸囧畾淇敼瀛楁
+                EntityPropHelper<WorkPieceLogMiddle, QualityDataInfo>.CopyProp(logMiddle, qualityData, WorkPieceInfoManager.GetQualityDataInfoUpdate(logMiddle, logMiddle.WorkingProcedure, logMiddle.MonitoringPoint));//鎸囧畾淇敼瀛楁
+
+                //鍗曠嫭澶勭悊 璐ㄩ噺鏁版嵁鐨勭姸鎬�
+                if (isNeedUpdateQualityState)
+                {
+                    qualityData.QualityState = (int)((logMiddle.QualityStateStr.Equals("OK") || logMiddle.QualityStateStr.Equals("0K")) ? QualityStateEnum.OK : QualityStateEnum.NG);
+                }
+                else
+                {//蹇呯劧鏄笉鍚堟牸
+                    qualityData.QualityState = (int)(QualityStateEnum.NG);
+                }
+                qualityData.OP80QualityState = qualityData.QualityState.ToString();
 
                 qualityData.EquipmentID = _EquipmentId;
                 qualityData.QualityStateUpdateUser = info.UpdatedUserName;
                 qualityData.QualityReceiveTime = info.UpdatedTime.Value.LocalDateTime;
                 qualityData.QualityStateUpdateMode = info.QualityStateUpdateMode;
-                qualityData.OP80QualityState = wplog.QualityState.HasValue ? wplog.QualityState.Value.ToString() : "3";
+
                 qualityData.OP80QualityReceiveTime = DateTimeHelper.GetDateTime();
-                qualityData.OP80QualityFilePath = wplog.OP80QualityFilePath;
+                qualityData.OP80QualityFilePath = logMiddle.OP80QualityFilePath;
                 long op80id = qualityData.Id;
                 if (op80id > 0)
                 {
                     pieceProcess.QualityDataInfoID = op80id;
                 }
-                loginfo2.Remarks = (loginfo2.Remarks ?? "") + $"璐ㄩ噺锛歿wplog.QualityStateStr ?? "绌�"}";
-                if (!info.QualityState.Equals(((int)QualityState.OK).ToString()))
+                loginfo2.Remarks = $"璐ㄩ噺锛歿logMiddle.QualityStateStr ?? "绌�"}";
+                if (!info.QualityState.Equals(((int)QualityStateEnum.OK).ToString()))
                 {
-                    info.QualityErrorInfo = $"{wplog.WorkingProcedure}宸ュ簭璐ㄩ噺閲囬泦鏁版嵁涓嶅悎鏍�";
+                    info.QualityErrorInfo = $"{logMiddle.WorkingProcedure}宸ュ簭璐ㄩ噺閲囬泦鏁版嵁涓嶅悎鏍�";
                 }
                 else
                 {
@@ -366,7 +398,17 @@
                 pieceProcess.GetQcDataCount = (pieceProcess.GetQcDataCount ?? 0) + 1;
                 pieceProcess.GetQcDataFlag_Remark = "鎵惧埌鏂囦欢";
                 pieceProcess.GetQcDataFlag = 1;
-                pieceProcess.QualityState = info.QualityState.HasValue ? info.QualityState.Value : (int)QualityState.OK;
+
+                if (isNeedUpdateQualityState)
+                {
+                    //涓嶅啀榛樿璧嬪�间负鍚堟牸 銆怑ditby shaocx,2024-08-16銆�
+                    pieceProcess.QualityState = WorkPieceInfoManager.GetQualityStateValue(info.QualityState);
+
+                    //璧嬪�间笉鍚堟牸鍘熷洜
+                    //TODO:闇�瑕侀厤缃甇P80璐ㄩ噺涓嶅悎鏍肩殑鍘熷洜鏄暐锛燂紵
+                    WorkPieceInfoManager.SetQualityNoOk_WorkPieceProcess(logMiddle, ref pieceProcess);
+                }
+
                 pieceProcess.EndTime = file.LastWriteTime;//涓嬬嚎鏃堕棿鏀逛负 鏂囦欢鏈�鍚庝慨鏀规椂闂� 銆怑ditby shaocx,2024-06-17銆�
 
                 db.WorkPieceLog.Add(WorkPieceInfoManager.GetAddWorkPieceLog(loginfo2));//鎻掑叆宸ヤ欢閲囬泦鏃ュ織琛�
@@ -472,7 +514,8 @@
                             WorkingProcedureCurrent = query_WorkingProcedureCurrent,
                             EquipmentID = _EquipmentId,
                             CreatedTime = DateTime.Now,
-                            CreatedUserName = _DataCapturePointCode
+                            CreatedUserName = _DataCapturePointCode,
+                            DataCapturePointCname = _DataCapturePointName
                         };
                     }
 
@@ -497,13 +540,16 @@
                         isAdd_WorkPieceProcess = true;
                         process = new WorkPieceProcess();
                         process = EntityPropHelper.Mapper<WorkPieceProcess, WorkPieceInfo>(info);
+                        QualityStateHelper.ResetQualityNoOkForNewProcess(ref process);
                         process.Id = Yitter.IdGenerator.YitIdHelper.NextId();
                         process.WorkingProcedureCurrent = query_WorkingProcedureCurrent;
                         process.StartTime = DateTimeHelper.GetDateTime();
                         process.EndTime = file.LastWriteTime;
                         process.CreatedUserName = _DataCapturePointCode;
+                        process.DataCapturePointCname = DataCapturePointCname;
                         process.CreatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
                         process.UpdatedUserName = _DataCapturePointCode;
+                        process.UpdateDataCapturePointCname = DataCapturePointCname;
                         process.UpdatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
                         process.OperationType = OperationType.鐢熶骇.ToString();
                         process.Remarks = "";

--
Gitblit v1.9.3