From 38748f8fbe700cc65721fc2d9b74306ca5590e01 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期二, 09 九月 2025 00:21:08 +0800
Subject: [PATCH] 1.PDA条码重打

---
 service/Warehouse/MesXsckManager.cs |   98 +++++++++++++++++++++++++++++++------------------
 1 files changed, 62 insertions(+), 36 deletions(-)

diff --git a/service/Warehouse/MesXsckManager.cs b/service/Warehouse/MesXsckManager.cs
index 446cbb7..df9f864 100644
--- a/service/Warehouse/MesXsckManager.cs
+++ b/service/Warehouse/MesXsckManager.cs
@@ -3,6 +3,7 @@
 using NewPdaSqlServer.DB;
 using NewPdaSqlServer.Dto.service;
 using NewPdaSqlServer.entity;
+using NewPdaSqlServer.entity.Base;
 using NewPdaSqlServer.util;
 using SqlSugar;
 using SqlSugar.Extensions;
@@ -19,57 +20,82 @@
     ///     鑾峰彇鐢熶骇鍙戣揣閫氱煡鍗曞彿鍒楄〃
     /// </summary>
     /// <returns>鍙戣揣閫氱煡鍗曞彿鍒楄〃</returns>
-    public List<string> GetFHTZBillNo(WarehouseQuery query)
+    public dynamic GetFHTZBillNo(dynamic query, dynamic RequestInfo)
     {
-        var list = Db.Queryable<SalesDeliver>()
-            .Where(s => (s.FApproverStatus ?? false) == true)
-            .Select(s => s.BillNo)
-            .ToList();
-        return list;
+        var orgId = RequestInfo.OrgId;
+
+        if (orgId == null)
+            throw new Exception("缁勭粐涓嶅瓨鍦紒");
+
+        // 鑾峰彇鏈畬鎴愮殑閫�鏂欏崟鍙峰垪琛�
+        var parameters = new[]
+        {
+        new SugarParameter("@pi_orgId", orgId),
+        new SugarParameter("@inP1", null),
+        new SugarParameter("@inP2", null),
+        new SugarParameter("@inP3", null),
+        new SugarParameter("@inP4", null)
+        };
+        try
+        {
+            // 杩斿洖鍗曞彿瀛楃涓插垪琛℅et_Qt_ck_List
+            var blDetails = Db.Ado.SqlQuery<string>(
+                "EXEC prc_pda_xsck_list @pi_orgId,@inP1,@inP2,@inP3,@inP4", parameters);
+            return blDetails;
+        }
+        catch (Exception ex)
+        {
+            throw new Exception($"{ex.Message}");
+        }
     }
 
     /// <summary>
     ///     鏍规嵁鍙戣揣閫氱煡鍗曡幏鍙栧搴斾唬鍙戣揣鏄庣粏  prc_rf_pda_scan_zout_showbl
     /// </summary>
     /// <returns>鍙戣揣閫氱煡鍗曟槑缁嗗垪琛�</returns>
-    public List<ItemDetailModel> GetMesItemFHTZetailByBillNo(
-            WarehouseQuery query)
+    public dynamic GetMesItemFHTZetailByBillNo(dynamic query, dynamic RequestInfo)
     {
         if (string.IsNullOrEmpty(query.billNo))
             throw new Exception("璇烽�夊崟鎹彿锛�");
 
-        // 妫�鏌ュ彂璐ч�氱煡鍗曟槸鍚﹀瓨鍦ㄤ笖瀹℃牳
-        var mesItem = Db.Queryable<SalesDeliver>()
-            .Where(a => a.BillNo == query.billNo && a.FApproverStatus == true)
-            .First();
+        if (query == null)
+            throw new ArgumentNullException(nameof(query), "鍙傛暟瀵硅薄涓嶈兘涓簄ull");
 
-        if (mesItem == null)
-            throw new Exception("鍗曟嵁鍙蜂笉瀛樺湪鎴栨湭瀹℃牳锛�");
+        if (string.IsNullOrEmpty(query.billNo?.ToString()))
+            throw new ArgumentException("鍗曟嵁鍙蜂笉鑳戒负绌�", nameof(query.billNo));
 
-        if (mesItem.FinishStatus == true)
-            throw new Exception("鍗曟嵁鍙峰凡瀹岀粨锛�");
+        var orgId = RequestInfo.OrgId;
+
+        if (orgId == null)
+            throw new Exception("缁勭粐涓嶅瓨鍦紒");
 
         // 鑾峰彇鏈畬鎴愮殑鍙戣揣閫氱煡鍗曟槑缁�
-        var blDetails = Db.Queryable<SalesDeliver, SalesDeliverDetail, SalesOrderDetail,MesItems>((a, b, c, d) =>
-                new JoinQueryInfos(JoinType.Left, a.Id == b.Pid,
-                JoinType.Left, b.SalesDetailId == c.Id,
-                JoinType.Left, c.MaterialId == d.ItemId.ToString()))
-            .Where((a, b) => a.BillNo == query.billNo
-                             && (b.FMustQty ?? 0) - (b.FRealQty ?? 0) > 0)
-            .Select((a, b, c, d) => new ItemDetailModel
+        var parameters = new[]
+{
+        new SugarParameter("@billNo", query.billNo),
+        new SugarParameter("@pi_orgId",orgId),
+        new SugarParameter("@inP1", null),
+        new SugarParameter("@inP2", null),
+        new SugarParameter("@inP3", null),
+        new SugarParameter("@inP4", null)
+    };
+        try
+        {
+            List<dynamic>? blDetails = Db.Ado.SqlQuery<dynamic>(
+                "EXEC prc_pda_xsck_detailList @billNo,@pi_orgId,@inP1,@inP2,@inP3,@inP4", parameters);
+            var items = blDetails.Where(x => x.DSQty > 0).ToList();    // 寰呮壂鐗╂枡
+            var ysitems = blDetails.Where(x => x.SQty > 0).ToList();   // 宸叉壂鐗╂枡
+            return new
             {
-                ItemNo = d.ItemNo,
-                ItemName = d.ItemName,
-                ItemModel = d.ItemModel,
-                FQty = b.FMustQty,
-                SQty = b.FRealQty,
-                FMaterialId = d.ItemId.ToString(),
-                Id = b.Id.ToString()
-
-            })
-            .ToList();
-
-        return  blDetails;
+                items = items,
+                ysitems = ysitems
+            };
+        }
+        catch (Exception ex)
+        {
+            // 淇濈暀鍘熸湁寮傚父澶勭悊閫昏緫
+            throw new Exception($"{ex.Message}");
+        }
     }
 
     /// <summary>
@@ -590,7 +616,7 @@
                     Dab020 = (it.Dab020 ?? 0) + query.Num, // 宸插彂鏂欐暟閲�
                     Dab021 = (it.Dab021 ?? 0) + query.Num // 宸插彂鏂欐暟閲�
                 })
-                .Where(it => it.Id == womdab.Id && it.Dab003 == womdab.Dab003)
+                .Where(it => it.Guid == womdab.Guid && it.Dab003 == womdab.Dab003)
                 .ExecuteCommand();
 
             // 鏇存柊鍙戣揣閫氱煡鍗曟槑缁嗗凡琛ユ暟閲�

--
Gitblit v1.9.3