From be9b996f8d4dd05efcd84e9e9397d31a0d33ab50 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 05 9月 2024 14:21:16 +0800
Subject: [PATCH] 代码回归

---
 DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs |   63 ++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 22 deletions(-)

diff --git a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
index 0a641a4..b074e05 100644
--- a/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
+++ b/DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
@@ -183,7 +183,7 @@
                                 info.Remarks = $"宸ヤ欢浜岀淮鐮佺涓�娆″嚭鐜扮殑宸ュ簭{loginfo.WorkingProcedure}涓嶆槸OP05,鏁版嵁缂哄け,璇风‘璁ゆ儏鍐靛苟鍋氱浉搴斿鐞嗭紒";
                             }
                             else
-                            {
+                            {//OP05宸ュ簭
                                 info.QualityState = (int)QualityStateEnum.OK;//姝ゅ闇�瑕佹敞鎰忥紝鍒ゆ柇鎵�鏈夊伐搴忚川閲忥紝鐒跺悗鍐嶈祴鍊� //榛樿鍚堟牸锛孫P05榛樿鏄悎鏍�
                                 info.Remarks = "OP05鏂板宸ヤ欢淇℃伅";
                             }
@@ -203,20 +203,29 @@
                                 return;
                             }
                         }
-                        info.WorkingProcedureStartTime = DateTimeHelper.GetDateTime();//
-                        info.WorkingProcedureEndTime = null;
-                        info.WorkPieceState = (int)WorkPieceState.WIP;
-                        info.EquipmentID = loginfo.EquipmentID;
-                        info.QualityStateUpdateUser = loginfo.UpdatedUserName;
-                        info.QualityStateUpdateTime = loginfo.UpdatedTime.Value.LocalDateTime;
-                        info.QualityStateUpdateMode = QualityStateUpdateMode.Auto.ToString();
-                        info.UpdatedUserName = loginfo.MonitoringPoint;
-                        SystemBussinessHelper.SetWorkPieceInfoMiddleForUpdateDataCapturePointCname(ref info, loginfo.DataCapturePointCname);
-                        info.UpdatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
-                        info.WorkPieceCurrentPosition = loginfo.WorkingProcedure;
-                        info.WorkPieceCurrentPositionOrder = info.WorkingProcedurePlan.IndexOf(loginfo.WorkingProcedure) / 2;
-                        info.WorkingProcedureCurrent = loginfo.WorkingProcedure;
-                        info.Remarks = $"{info.WorkingProcedureCurrent}宸ヤ欢涓婄嚎";
+                        if ((info.WorkingProcedureCurrent.Equals("OP05") && isAddWorkPieceInfo == false))
+                        {
+                            //濡傛灉鏄疧P05鐨勶紝骞朵笖鏄� 涓嶉渶瑕佹柊澧� 琛╓orkPieceInfo锛岄偅涔堝氨涓嶉渶瑕佹洿鏂拌〃 WorkPieceInfo
+                        }
+                        else
+                        {
+                            info.WorkingProcedureStartTime = DateTimeHelper.GetDateTime();//
+                            info.WorkingProcedureEndTime = null;
+                            info.WorkPieceState = (int)WorkPieceState.WIP;
+                            info.EquipmentID = loginfo.EquipmentID;
+                            info.QualityStateUpdateUser = loginfo.UpdatedUserName;
+                            info.QualityStateUpdateTime = loginfo.UpdatedTime.Value.LocalDateTime;
+                            info.QualityStateUpdateMode = QualityStateUpdateMode.Auto.ToString();
+                            info.UpdatedUserName = loginfo.MonitoringPoint;
+                            SystemBussinessHelper.SetWorkPieceInfoMiddleForUpdateDataCapturePointCname(ref info, loginfo.DataCapturePointCname);
+                            info.UpdatedTime = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local);
+
+                            info.WorkPieceCurrentPosition = loginfo.WorkingProcedure;
+                            info.WorkPieceCurrentPositionOrder = info.WorkingProcedurePlan.IndexOf(loginfo.WorkingProcedure) / 2;
+                            info.WorkingProcedureCurrent = loginfo.WorkingProcedure;
+                            info.Remarks = $"{info.WorkingProcedureCurrent}宸ヤ欢涓婄嚎";
+                        }
+
 
                         //淇涓� op35 鍚屼竴涓欢 涓嬬嚎鏃堕棿璺熶笅涓�涓笂绾挎椂闂翠竴妯′竴鏍风殑闂  銆怑ditby shaocx,2024-08-27銆�
                         var isNeedAddNewProcess = true;
@@ -274,12 +283,22 @@
                             new_process.Remarks = "";
                             new_process.MyRemarks = "璇荤爜涓婄嚎鏃讹紝姣忔鎵弿涓婄嚎閮芥彃鍏ヨ拷婧〃";
                             if (loginfo.WorkingProcedure.Equals("OP05"))
-                            {
+                            {//鐗规畩澶勭悊OP05宸ュ簭
                                 new_process.EndTime = new_process.StartTime;
+
+                                //濡傛灉宸茬粡瀛樺湪鍏朵粬宸ュ簭锛岄偅涔堝氨蹇呴』瑕佹寜鐓у叾浠栧伐搴忕殑鏃堕棿寰�鍓嶆帹鏁版嵁 銆怑ditby shaocx,2024-09-05銆�
+                                var op05OtherProccss = db.WorkPieceProcess.Where(o => o.WorkPieceID == loginfo.WorkPieceID).OrderBy(x => x.StartTime).FirstOrDefault();
+                                if (op05OtherProccss != null)
+                                {//璇存槑鏈夛紝閭d箞鏃堕棿灏辨寜鐓ц繖涓椂闂村線鍓嶆帹
+                                    var _time = op05OtherProccss.StartTime.AddHours(-1);
+                                    new_process.StartTime = _time;
+                                    new_process.EndTime = _time;
+                                    new_process.CreatedTime = _time;
+                                    new_process.UpdatedTime = _time;
+                                }
                             }
                             db.WorkPieceProcess.Add(new_process);
                         }
-
                         //db.Database.AutoTransactionsEnabled = false;// 鍚屼竴涓猄aveChanges榛樿浜嬪姟锛� 鍏抽棴榛樿浜嬪姟锛�... 濂藉儚涓嶈兘鐢ㄥ晩锛屽悗闈㈠啀鐮旂┒鍚�
                         if (isAddWorkPieceInfo)
                         {
@@ -1929,7 +1948,7 @@
                         .OrderByDescending(o => o.WarnStartTime).FirstOrDefault();
                     if (loginfo.IsMessage)
                     {//鑻ユ湁鍛婅锛屽鏋滄湁璁惧鐘舵�佸彉鏇达紝鑲畾鎻掑叆锛屾澶勫彧淇敼鍗冲彲
-                        //鑻ユ湁鍛婅锛屽鏋滆澶囩姸鎬佹病鏈夊彉鏇达紝鏈夊憡璀︼紝涔熶笉鎻掑叆鏂扮殑锛堥棶棰橈細褰撶姸鎬佹病鏈夋洿鏀癸紝濡備竴鐩存槸鏁呴殰锛屼絾鍛婅淇℃伅鏈夊彉鍖栵紝鎬庝箞鍔�  ps锛氭澶勫厛涓嶇锛�
+                     //鑻ユ湁鍛婅锛屽鏋滆澶囩姸鎬佹病鏈夊彉鏇达紝鏈夊憡璀︼紝涔熶笉鎻掑叆鏂扮殑锛堥棶棰橈細褰撶姸鎬佹病鏈夋洿鏀癸紝濡備竴鐩存槸鏁呴殰锛屼絾鍛婅淇℃伅鏈夊彉鍖栵紝鎬庝箞鍔�  ps锛氭澶勫厛涓嶇锛�
                         infolog.WarnStartTime = DateTimeHelper.GetDateTime();
                         infolog.WarnType = alertall;
                         infolog.Warnmsg = warnmsg;
@@ -2279,10 +2298,10 @@
                         info.UpdatedTime = DateTimeHelper.GetDateTime();
                         info.UpdatedUserName = threadinfo.Threadcode;
                         info.Threadlastmodifytime = threadinfo.Threadlastmodifytime > DateTime.MinValue ? threadinfo.Threadlastmodifytime : info.Threadlastmodifytime;//濡傛灉鏈変紶鍙傚垯鏇存柊
-                        //if (info.Threadstatue==1)
-                        //{
-                        //    info.Threadlastmodifytime = DateTimeHelper.GetDateTime();//鏈�鏂拌窇鍒版暟鎹�
-                        //}
+                                                                                                                                                                      //if (info.Threadstatue==1)
+                                                                                                                                                                      //{
+                                                                                                                                                                      //    info.Threadlastmodifytime = DateTimeHelper.GetDateTime();//鏈�鏂拌窇鍒版暟鎹�
+                                                                                                                                                                      //}
                     }
                     db.SaveChanges();
                 }

--
Gitblit v1.9.3