From 8bc5ee69d84d190aaeecf1b17e7d939845d385e1 Mon Sep 17 00:00:00 2001
From: pan <antony1029@163.com>
Date: 星期一, 01 十二月 2025 09:56:36 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/ZhongRui/ALDbanyunxiangmu

---
 项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs |   28 +++++++++++++++++-----------
 1 files changed, 17 insertions(+), 11 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs"
index 492701c..81e4e71 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_StockService/StockInfoService.cs"
@@ -1,4 +1,5 @@
-锘縰sing AutoMapper;
+锘縰sing Autofac.Core;
+using AutoMapper;
 using SqlSugar;
 using WIDESEA_Common.LocationEnum;
 using WIDESEA_Common.StockEnum;
@@ -22,16 +23,16 @@
         public IRepository<Dt_StockInfo> Repository => BaseDal;
         private readonly IRepository<Dt_StockInfoDetail> _stockInfoDetailRepository;
         private readonly IOutboundOrderService _outboundOrderService;
-        private readonly IOutboundOrderDetailService _outboundOrderDetailService;
+        //private readonly IOutboundOrderDetailService _outboundOrderDetailService;
         private readonly ILocationInfoService _locationInfoService;
-        public StockInfoService(IRepository<Dt_StockInfo> BaseDal, IMapper mapper, IRepository<Dt_StockInfoDetail> stockInfoDetailRepository, IRecordService recordService, ILocationInfoService locationInfoService, IOutboundOrderService outboundOrderService, IOutboundOrderDetailService outboundOrderDetailService) : base(BaseDal)
+        public StockInfoService(IRepository<Dt_StockInfo> BaseDal, IMapper mapper, IRepository<Dt_StockInfoDetail> stockInfoDetailRepository, IRecordService recordService, ILocationInfoService locationInfoService, IOutboundOrderService outboundOrderService) : base(BaseDal)
         {
             _mapper = mapper;
             _stockInfoDetailRepository = stockInfoDetailRepository;
             _recordService = recordService;
             _locationInfoService = locationInfoService;
             _outboundOrderService = outboundOrderService;
-            _outboundOrderDetailService = outboundOrderDetailService;
+            //_outboundOrderDetailService = outboundOrderDetailService;
         }
 
         /// <summary>
@@ -186,7 +187,7 @@
         public List<Dt_StockInfo> GetStockInfos(string materielCode, string lotNo, string supplyCode, List<string> locationCodes)
         {
             var query = Db.Queryable<Dt_StockInfo>()
-             .Where(x => locationCodes.Contains(x.LocationCode)
+             .Where(x => locationCodes.Contains(x.LocationCode) && x.StockStatus==StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt()
              //  && x.StockStatus == (int)StockStatusEmun.姝e父)
              ).Includes(x => x.Details);
 
@@ -279,6 +280,11 @@
         //    }
 
         //}
+        public List<StockSelectViewDTO> GetSelectViewDTOs(string orderNo,string materielCode)
+        {
+            var outboundOrder = SqlSugarHelper.DbWMS.Queryable<Dt_OutboundOrder>().Where(x => x.UpperOrderNo == orderNo).First();
+            return GetStockSelectViews(outboundOrder.Id, materielCode);
+        }
 
         public List<StockSelectViewDTO> GetStockSelectViews(int orderId, string materielCode)
         {
@@ -289,7 +295,7 @@
             }
 
             // 鑾峰彇鍑哄簱鍗曟槑缁嗭紝鐢ㄤ簬纭畾闇�瑕佺殑鎵规鍜屼緵搴斿晢
-            var orderDetails = _outboundOrderDetailService.Db.Queryable<Dt_OutboundOrderDetail>().Where(x => x.OrderId == orderId && x.MaterielCode == materielCode).ToList();
+            var orderDetails = SqlSugarHelper.DbWMS.Queryable<Dt_OutboundOrderDetail>().Where(x => x.OrderId == orderId && x.MaterielCode == materielCode).ToList();
 
             if (!orderDetails.Any())
             {
@@ -311,9 +317,9 @@
                 // 鎵ц鏌ヨ骞舵寜鍏堣繘鍏堝嚭鎺掑簭
                 var stocks = stockQuery.ToList()
                     .Where(x => x.Details.Any(d =>
-                        d.MaterielCode == materielCode &&
-                        d.BatchNo == orderDetail.BatchNo &&
-                        d.SupplyCode == orderDetail.SupplyCode &&
+                        d.MaterielCode == materielCode && 
+                        string.IsNullOrEmpty(orderDetail.BatchNo)?true: d.BatchNo == orderDetail.BatchNo&&
+                        string.IsNullOrEmpty(orderDetail.BatchNo)?true:d.SupplyCode == orderDetail.SupplyCode &&
                         d.StockQuantity > d.OutboundQuantity
                     ))
                     .OrderBy(x => x.CreateDate)
@@ -323,8 +329,8 @@
                 {
                     var relevantDetails = stock.Details
                         .Where(d => d.MaterielCode == materielCode &&
-                                   d.BatchNo == orderDetail.BatchNo &&
-                                   d.SupplyCode == orderDetail.SupplyCode &&
+                                   string.IsNullOrEmpty(orderDetail.BatchNo) ? true : d.BatchNo == orderDetail.BatchNo &&
+                                   string.IsNullOrEmpty(orderDetail.BatchNo) ? true : d.SupplyCode == orderDetail.SupplyCode &&
                                    d.StockQuantity > d.OutboundQuantity)
                         .ToList();
 

--
Gitblit v1.9.3