| | |
| | | public List<StockSelectViewDTO> GetSelectViewDTOs(string orderNo,string materielCode) |
| | | { |
| | | var outboundOrder = SqlSugarHelper.DbWMS.Queryable<Dt_OutboundOrder>().Where(x => x.UpperOrderNo == orderNo).First(); |
| | | if(outboundOrder == null) |
| | | { |
| | | throw new Exception($"鏈壘鍒板崟鎹紪鍙蜂负{orderNo}鐨勫嚭搴撳崟淇℃伅"); |
| | | } |
| | | return GetStockSelectViews(outboundOrder.Id, materielCode); |
| | | } |
| | | |
| | |
| | | .Includes(x => x.Details); |
| | | |
| | | // 鎵ц鏌ヨ骞舵寜鍏堣繘鍏堝嚭鎺掑簭 |
| | | var stocks = stockQuery.ToList() |
| | | .Where(x => x.Details.Any(d => |
| | | 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) |
| | | .ToList(); |
| | | var Qstocks = stockQuery.Where(x => x.Details.Any(d => d.MaterielCode == materielCode &&d.StockQuantity > d.OutboundQuantity)); |
| | | |
| | | if (!string.IsNullOrEmpty(orderDetail.BatchNo)) |
| | | { |
| | | |
| | | Qstocks = stockQuery.Where(x => x.Details.Any(d => d.BatchNo == orderDetail.BatchNo)); |
| | | |
| | | } |
| | | if (!string.IsNullOrEmpty(orderDetail.SupplyCode)) |
| | | { |
| | | |
| | | Qstocks = stockQuery.Where(x => x.Details.Any(d => d.SupplyCode == orderDetail.SupplyCode)); |
| | | |
| | | } |
| | | |
| | | var stocks= Qstocks.OrderBy(x => x.CreateDate) .ToList(); |
| | | |
| | | foreach (var stock in stocks) |
| | | { |
| | | var relevantDetails = stock.Details |
| | | .Where(d => d.MaterielCode == materielCode && |
| | | string.IsNullOrEmpty(orderDetail.BatchNo) ? true : d.BatchNo == orderDetail.BatchNo && |
| | | string.IsNullOrEmpty(orderDetail.BatchNo) ? true : d.SupplyCode == orderDetail.SupplyCode && |
| | | string.IsNullOrEmpty(orderDetail.SupplyCode) ? true : d.SupplyCode == orderDetail.SupplyCode && |
| | | d.StockQuantity > d.OutboundQuantity) |
| | | .ToList(); |
| | | |
| | |
| | | result.Add(new StockSelectViewDTO |
| | | { |
| | | LocationCode = stock.LocationCode, |
| | | MaterielCode = materielCode, |
| | | MaterielCode = firstDetail. MaterielCode, |
| | | MaterielName = firstDetail.MaterielName, |
| | | BatchNo = orderDetail.BatchNo, |
| | | SupplyCode = orderDetail.SupplyCode, |