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