From dcecb039035f4b2e82e31c39b74db9402444c536 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期二, 08 四月 2025 21:35:39 +0800
Subject: [PATCH] 代码更新,优化等内容

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs |   49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 48 insertions(+), 1 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs"
index 70287a3..4a3bddb 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockService/ProStockViewService.cs"
@@ -17,6 +17,9 @@
 using Magicodes.ExporterAndImporter.Core;
 using WIDESEA_Core.HostedService;
 using WIDESEA_Core.DB.Models;
+using WIDESEA_IOutboundRepository;
+using WIDESEA_IStockRepository;
+using WIDESEA_Common.StockEnum;
 
 namespace WIDESEA_StockService
 {
@@ -24,11 +27,15 @@
     {
         private readonly IUnitOfWorkManage _unitOfWorkManage;
         private readonly SqlSugarClient _dbBase;
+        private readonly IOutboundRepository _outboundRepository;
+        private readonly IStockRepository  _stockRepository;
 
-        public ProStockViewService(IUnitOfWorkManage unitOfWorkManage)
+        public ProStockViewService(IUnitOfWorkManage unitOfWorkManage, IOutboundRepository outboundRepository, IStockRepository stockRepository)
         {
             _unitOfWorkManage = unitOfWorkManage;
             _dbBase = unitOfWorkManage.GetDbClient();
+            _outboundRepository = outboundRepository;
+            _stockRepository = stockRepository;
         }
 
         public virtual PageGridData<ProStockViewDTO> GetPageData(PageDataOptions options)
@@ -346,5 +353,45 @@
                 throw new Exception($"鏃犳潈闄愶紝{ex.Message}");
             }
         }
+        public List<ProStockViewDTO> GetProPKSelectStocks(int orderId)
+        {
+            try
+            {
+                Dt_ProOutOrderDetail outOrderDetail = _outboundRepository.ProOutOrderDetailRepository.QueryFirst(x => x.Id == orderId);
+                Dt_ProOutOrder outOrder = _outboundRepository.ProOutOrderRepository.QueryFirst(x => x.Id == outOrderDetail.Id);
+                if (outOrderDetail == null)
+                {
+                    throw new Exception($"鏈壘鍒板嚭搴撳崟鏄庣粏");
+                }
+                return _stockRepository.ProStockInfoRepository.QueryTabs<Dt_ProStockInfo, Dt_ProStockInfoDetail, ProStockViewDTO>((a, b) => a.Id == b.ProStockId, (a, b) => new ProStockViewDTO
+                {
+                    LocationCode = a.LocationCode,
+                    ProductCode = b.ProductCode,
+                    ProStockAttribute = a.ProStockAttribute,
+                    ProductVersion=b.ProductVersion,
+                    DateCode=b.DateCode,
+                    ProStockId=a.Id,
+                    SumStocks=b.StockPcsQty,
+                    SaleOrder=b.SaleOrder,
+                    PalletCode = a.PalletCode
+                }, a => a.LocationCode == "鎴愬搧寰呭彂璐у尯", b => b.ProductCode == outOrderDetail.PCode, x => true).GroupBy(x => x.PalletCode).Select(x => new ProStockViewDTO
+                {
+                    LocationCode = x.FirstOrDefault()?.LocationCode ?? "",
+                    ProductCode = x.FirstOrDefault()?.ProductCode ?? "",
+                    ProductVersion = x.FirstOrDefault()?.ProductVersion ?? "",
+                    DateCode = x.FirstOrDefault()?.DateCode ?? "",
+                    ProStockId = x.FirstOrDefault().ProStockId,
+                    SumStocks=x.FirstOrDefault().SumStocks,
+                    SaleOrder = x.FirstOrDefault()?.SaleOrder ?? "",
+                    ProStockAttribute=x.FirstOrDefault()?.ProStockAttribute ?? 0,
+                    PalletCode = x.Key,
+
+                }).ToList();
+            }
+            catch (Exception ex)
+            {
+                throw new Exception(ex.Message);
+            }
+        }
     }
 }

--
Gitblit v1.9.3