From c339254fddf2ed432dc34af2e50939d8bb0fec26 Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期五, 17 十月 2025 08:54:31 +0800
Subject: [PATCH] 逻辑修改

---
 Services/WomdaaManager.cs |   48 +++++++++++++++++-------------------------------
 1 files changed, 17 insertions(+), 31 deletions(-)

diff --git a/Services/WomdaaManager.cs b/Services/WomdaaManager.cs
index 783968e..c3b7359 100644
--- a/Services/WomdaaManager.cs
+++ b/Services/WomdaaManager.cs
@@ -171,38 +171,24 @@
         var sqlQuerySingle = Db.Ado.SqlQuerySingle<string>(sql);
         VOrdrerBycl.finalResult = sqlQuerySingle;
 
-        // 淇鍚庯紙纭繚绫诲瀷涓�鑷达紝閬垮厤鍙傛暟缁戝畾閿欒锛屽苟闃叉ID涓簄ull鏃跺紓甯革級
-        var numericalQuery = Db.Queryable<MesNumericalBycl>()
-            .Where(n => n.MachineNo == VOrdrerBycl.MachineNo
-                        && n.OrderId == (VOrdrerBycl.ID == null ? 0 : VOrdrerBycl.ID)
-                        && n.CjNum != null);
+        // 鏌ヨMES_NUMERICAL_BYCL琛紝鑾峰彇寮�宸ユ暟閲囧拰褰撳墠鏁伴噰
+        var numericalList = Db.Queryable<MesNumericalBycl>()
+            .Where(x => x.OrderId == VOrdrerBycl.ID)
+            .OrderBy(x => x.CjTiem)
+            .ToList();
 
-        // 寮�宸ラ噰闆嗗��=绗竴鏉¤褰�(鎸塈D鏈�灏�)
-        var startCjNum = numericalQuery
-            .OrderBy(n => n.Id)
-            .Select(n => n.CjNum)
-            .First();
-
-        // 鏈�澶ч噰闆嗘暟锛堢疮璁″綋鍓嶅�硷級
-        var maxCjNum = numericalQuery.Max(n => n.CjNum);
-
-        // 杈惧埌鏈�澶у�肩殑绗竴娆℃椂闂达紙濡傞渶灞曠ず鍙悗缁柊澧炲瓧娈碉級
-        var firstReachMaxTime = numericalQuery
-            .Where(n => n.CjNum == maxCjNum)
-            .OrderBy(n => n.Id)
-            .Select(n => n.CjTiem)
-            .First();
-
-        // 杈惧埌鏈�澶у�肩殑鏈�鍚庝竴娆℃椂闂达紙鑻ラ渶瑕佸垽鏂槸鍚︿粛鍦ㄥ闀匡紝鍙姣� first 涓� last锛�
-        var lastReachMaxTime = numericalQuery
-            .Where(n => n.CjNum == maxCjNum)
-            .OrderBy(n => n.Id, OrderByType.Desc)
-            .Select(n => n.CjTiem)
-            .First();
-
-        // 璧嬪�硷紙CurrentCjNum 閲囩敤绱鏈�澶у�硷紝閬垮厤 plateau 閲嶅璁板綍瀵艰嚧璇В锛�
-        VOrdrerBycl.StartCjNum = startCjNum ?? 0;
-        VOrdrerBycl.CurrentCjNum = maxCjNum ?? 0;
+        if (numericalList.Count > 0)
+        {
+            // 寮�宸ユ暟閲囷細鏈�鏃╀竴鏉�
+            VOrdrerBycl.StartCjNum = numericalList.First().CjNum ?? 0;
+            // 褰撳墠鏁伴噰锛氭渶鏂颁竴鏉�
+            VOrdrerBycl.CurrentCjNum = numericalList.Last().CjNum ?? 0;
+        }
+        else
+        {
+            VOrdrerBycl.StartCjNum = 0;
+            VOrdrerBycl.CurrentCjNum = 0;
+        }
 
         return VOrdrerBycl;
     }

--
Gitblit v1.9.3