From 64a4517bb197bbdd85fa76165cef9f4262e30b2d Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期三, 22 十月 2025 14:46:17 +0800
Subject: [PATCH] 逻辑优化

---
 Services/MesOrderStaManager.cs |   59 ++++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 48 insertions(+), 11 deletions(-)

diff --git a/Services/MesOrderStaManager.cs b/Services/MesOrderStaManager.cs
index 7e4a650..ea971ba 100644
--- a/Services/MesOrderStaManager.cs
+++ b/Services/MesOrderStaManager.cs
@@ -128,19 +128,59 @@
                 }
             }
 
-            // 缁熶竴鏇存柊鏈�鏂伴妫�澶囨敞
+            // 鏈�鏂伴妫�鍗�
             var latestFirst = Db.Queryable<MesQaItemsDetect02>()
                 .Where(s => s.Aufnr == womdaa.Daa001 && s.Ftype == "棣栨" && (s.Fcancel == null || s.Fcancel != "Y"))
                 .OrderBy(s => s.CreateDate, OrderByType.Desc)
                 .First();
+
             if (latestFirst != null)
             {
-                var ts = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
-                var remark = $"宸ユ帶鏈轰簬{ts}鑷姩鍒涘缓鐨勯妫�鍗�";
-                Db.Updateable<MesQaItemsDetect02>()
-                    .SetColumns(s => s.Remeke == remark)
-                    .Where(s => s.Id == latestFirst.Id)
-                    .ExecuteCommand();
+                // 濡傛灉鏈�鏂伴妫�涓嶅悎鏍硷細娓呯┖璋冩満閫佹鏃堕棿骞堕噸鏂扮敓鎴愰妫�鍗�
+                if (latestFirst.FcheckResu == "涓嶅悎鏍�")
+                {
+                    // 娓呯┖鏁版嵁搴撶殑閫佹鏃堕棿
+                    InspectionIsUnqualified(new OrderMachineDto
+                    {
+                        OrderId = entity.OrderId
+                    });
+                    // 閬垮厤鍚庣画鏇存柊鏃跺啀鍐欏叆鏃ч�佹鏃堕棿
+                    entity.MaShoutTime = null;
+
+                    // 琛岀骇閿侊紝纭繚閲嶅缓杩囩▼涓茶
+                    Db.Ado.ExecuteCommand("SELECT ID FROM WOMDAA WHERE DAA001 = :BILL_NO FOR UPDATE",
+                        new SugarParameter("BILL_NO", womdaa.Daa001));
+                    // 鐩存帴璋冪敤棣栨鐢熸垚瀛樺偍杩囩▼
+                    Db.Ado.ExecuteCommand(
+                        "BEGIN AUTOMATIC_IPQC_FIRST_CHECK(:BILL_NO); END;",
+                        new SugarParameter("BILL_NO", womdaa.Daa001, System.Data.DbType.String));
+
+                    // 鑾峰彇閲嶅缓鍚庣殑鏈�鏂伴妫�鍗曞苟鍐欏娉�
+                    var rebuiltFirst = Db.Queryable<MesQaItemsDetect02>()
+                        .Where(s => s.Aufnr == womdaa.Daa001 && s.Ftype == "棣栨" && (s.Fcancel == null || s.Fcancel != "Y"))
+                        .OrderBy(s => s.CreateDate, OrderByType.Desc)
+                        .First();
+
+                    if (rebuiltFirst != null)
+                    {
+                        var ts2 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+                        var remark2 = $"宸ユ帶鏈轰簬{ts2}閲嶅缓鐨勪笉鍚堟牸鍚庨妫�鍗�";
+                        Db.Updateable<MesQaItemsDetect02>()
+                            .SetColumns(s => s.Remeke == remark2)
+                            .Where(s => s.Id == rebuiltFirst.Id)
+                            .ExecuteCommand();
+                    }
+                }
+                else
+                {
+                    // 鍚堟牸鎴栧叾瀹冪粨鏋滄椂浠呮洿鏂板娉�
+                    var ts = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+                    var remark = $"宸ユ帶鏈轰簬{ts}鑷姩鍒涘缓鐨勯妫�鍗�";
+                    Db.Updateable<MesQaItemsDetect02>()
+                        .SetColumns(s => s.Remeke == remark)
+                        .Where(s => s.Id == latestFirst.Id)
+                        .ExecuteCommand();
+                }
             }
         }
 
@@ -214,12 +254,9 @@
         Db.Insertable<MesAnchors>(eAnchors)
             .ExecuteCommand();
 
-
-
-        // 鏂板閫昏緫锛氶�佹鏃堕棿鏈夊�兼椂锛屽垽鏂渶鏂伴妫�鍗曟槸鍚﹀悎鏍硷紝鍚堟牸鍒欏啓鍏ヨ皟鏈哄畬鎴愭椂闂翠负褰撳墠鏃堕棿
+        // 鑻ラ�佹鏃堕棿瀛樺湪涓旈妫�鍚堟牸鍒欏啓鍏ヨ皟鏈哄畬鎴愭椂闂�
         if (!string.IsNullOrEmpty(entity.MaShoutTime))
         {
-            //閫佹鍛煎彨鏃堕棿蹇呴』澶т簬鎴栫瓑浜庤皟鏈哄紑濮嬫椂闂达紝浠ユ鏉ョ瓫閫夐妫�鍗�
             if (DateTime.TryParse(entity.MaShoutTime, out var sjTime) && DateTime.TryParse(entity.MaStartTime, out var startTime))
             {
                 if (sjTime >= startTime)

--
Gitblit v1.9.3