From 5a3f8fe4c563f26c745e70a1fcc000af78744d14 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期日, 01 九月 2024 14:17:39 +0800
Subject: [PATCH] qq

---
 MES.Service/service/WomdaaManager.cs |   75 +++++++++++++++++++++++++++++++------
 1 files changed, 63 insertions(+), 12 deletions(-)

diff --git a/MES.Service/service/WomdaaManager.cs b/MES.Service/service/WomdaaManager.cs
index 255556a..bab21e5 100644
--- a/MES.Service/service/WomdaaManager.cs
+++ b/MES.Service/service/WomdaaManager.cs
@@ -1,25 +1,76 @@
 锘縰sing MES.Service.DB;
+using MES.Service.Dto.service;
 using MES.Service.Modes;
+using SqlSugar;
 
 namespace MES.Service.service;
 
 public class WomdaaManager : Repository<Womdaa>
 {
     //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
+    //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomdaaManager.cs
 
-    public int TestUpdate(Womdaa womdaa)
+    //鑾峰彇宸ュ崟鍙�
+    public List<string> GetProductionPickDaa001(WarehouseQuery query)
     {
-        return UseTransaction(db =>
-        {
-            return db.Updateable<Womdaa>()
-                .SetColumns(a => a.Daa001 == womdaa.Daa001)
-                .SetColumns(a => a.Daa002 == womdaa.Daa002)
-                .SetColumns(a => a.Daa003 == womdaa.Daa003)
-                .SetColumns(a => a.Daa004 == womdaa.Daa004)
-                .Where(a => a.Id == womdaa.Id)
-                .ExecuteCommand();
-        });
+        string sql =
+            "SELECT DAA001 FROM WOMDAA A LEFT JOIN (SELECT COUNT(1) UN_NUM, PID                     FROM WOMDAB                    WHERE DAB006 > DAB007                   GROUP BY PID) B ON A.ID = B.PID WHERE DAA001 LIKE '%" +
+            query.daa001 +
+            "%' and DAA018 != '瀹屽伐' AND DAA022 = 1 AND UN_NUM > 0 AND ROWNUM <= 10 order by a.id desc";
+
+        return Db.Ado.SqlQuery<string>(sql);
     }
 
-    //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomdaaManager.cs
+    //鏍规嵁宸ュ崟鍙疯繑鍥炰骇鍝佸瀷鍙峰拰寰呴鐗╂枡
+    public ProductionPickDto GetItemsByDaa001(WarehouseQuery query)
+    {
+        if (string.IsNullOrEmpty(query.daa001))
+        {
+            throw new Exception("宸ュ崟鍙蜂负绌�");
+        }
+
+        var womdaa = Db.Queryable<Womdaa, MesItems>((a, i) =>
+                new JoinQueryInfos(JoinType.Left,
+                    a.Daa002 == i.ItemId.ToString()))
+            .Where((a, i) => a.Daa001 == query.daa001)
+            .Select((a, i) => new
+            {
+                i.ItemModel
+            }).First();
+
+        if (womdaa?.ItemModel == null)
+        {
+            throw new Exception("宸ュ崟鍙蜂笉瀛樺湪");
+        }
+
+        var dto = new ProductionPickDto
+        {
+            ItemModel = womdaa.ItemModel
+        };
+
+        var womdabs = Db.Queryable<Womdaa, Womdab, MesItems>((a, b, c) =>
+                new JoinQueryInfos(
+                    JoinType.Left,
+                    a.Id == b.Pid, // LEFT JOIN WOMDAB B ON A.ID = B.PID
+                    JoinType.Inner,
+                    c.Id.ToString() ==
+                    b.Dab003 // INNER JOIN MES_ITEMS C ON C.ID = B.DAB003
+                ))
+            .Where((a, b, c) =>
+                a.Daa001 == query.daa001) // WHERE DAA001 = 'SCDD003681-1'
+            .Select((a, b, c) => new Womdab()
+            {
+                Pid = b.Pid,
+                Dab003 = b.Dab003,
+                Dab006 = b.Dab006,
+                Dab007 = b.Dab007,
+                wNum = b.Dab006 - b.Dab007, // 璁$畻瀛楁 W_NUM
+                ItemName = c.ItemName, // 鍔ㄦ�佸瓧娈� ITEM_NAME
+                ItemNo = c.ItemNo // 鍔ㄦ�佸瓧娈� ITEM_NO
+            })
+            .ToList();
+
+        dto.Womdabs = womdabs;
+        return dto;
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3