From e3c48fc91c4ee3a959209a5926e8657c362ac2e6 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期五, 06 六月 2025 17:06:50 +0800
Subject: [PATCH] 1.其他出入库优化

---
 service/Warehouse/MesItemQtrkManager.cs |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/service/Warehouse/MesItemQtrkManager.cs b/service/Warehouse/MesItemQtrkManager.cs
index 14e0390..9eb138c 100644
--- a/service/Warehouse/MesItemQtrkManager.cs
+++ b/service/Warehouse/MesItemQtrkManager.cs
@@ -12,10 +12,17 @@
 {
     public List<string> GetQtckList()
     {
-        return Db.Queryable<MesItemQtrk>()
-            .Where(x => (x.Qt015 ?? 0) == 1 && (x.Qt014 ?? 0) == 0)
-            .Select(x => x.Qtck)
-            .ToList();
+        //return Db.Queryable<MesItemQtrk>()
+        //    .Where(x => (x.Qt015 ?? 0) == 1 && (x.Qt014 ?? 0) == 0)
+        //    .Select(x => x.Qtck)
+        //    .ToList();
+
+        const string sql = @"SELECT qtck 
+                        FROM MES_ITEM_QTRK 
+                        WHERE  QT015 = 1 AND QT028 = 1 AND QT032 = 1
+                          AND QT014 = 0  ";
+
+        return Db.Ado.SqlQuery<string>(sql);
     }
 
     public ProductionPickDto GetQtckDetailList(WarehouseQuery query)
@@ -27,11 +34,11 @@
         if (mesInvItemOuts == null) throw new Exception("鍏朵粬鍏ュ簱鐢宠鍗曚笉瀛樺湪");
 
         var sql = @"SELECT c.item_no ItemNo,c.item_name ItemName,c.item_model ItemModel,
-                    A.qd007 FQty,A.qd008 SQty,A.qd007 - A.qd008 DSQty
+                    ISNULL(A.qd007,0) FQty,ISNULL(A.qd008,0) SQty,ISNULL(A.qd007,0) - ISNULL(A.qd008,0) DSQty
                     FROM MES_ITEM_QTRR_DETAIL A
                     LEFT JOIN MES_ITEM_QTRK B ON A.qtrkGuid = B.guid
                     LEFT JOIN MES_ITEMS C ON A.itemId = C.item_id
-                    WHERE B.qtck = @billNo";
+                    WHERE B.qtck = @billNo AND QT015 = 1 AND QT028 = 1 AND QT032 = 1 AND QT014 = 0 ";
 
         var sqlParams = new List<SugarParameter> {
             new("@billNo", query.billNo)
@@ -39,6 +46,8 @@
 
         var womdabs = Db.Ado.SqlQuery<ItemDetailModel>(sql, sqlParams);
 
+        if (womdabs.Count < 1)
+            throw new Exception($"璇ュ叾浠栧叆搴撶敵璇峰崟 {query.billNo} 鏈叏閮ㄥ鏍告垨宸插畬缁擄紝璇风‘璁わ紒");
 
         var DS_list = womdabs.Where(s => s.DSQty > 0).ToList();
 
@@ -458,6 +467,11 @@
                     .Where(x => x.Qtck == p_bill_no)
                     .ExecuteCommand();
 
+            // 鍒涘缓 鎻掑叆鏃ュ織
+            var logService = new LogService();
+            var LogMsg = "銆怭DA銆戝叾浠栧叆搴撱�傛潯鐮併��" + query.barcode + "銆戞暟閲忋��" + barcode.Quantity.ToString() + "銆� 鍏ュ簱鍗曞彿銆�" + billNo + "銆�";
+            logService.CreateLog(db, query.userName, qtrk.Guid.ToString(), "MES_ITEM_QTRK", LogMsg, qtrk.Qtck);
+
             if (res < 5) throw new Exception("鎻掑叆鎴栨洿鏂板け璐�");
 
             return res;

--
Gitblit v1.9.3