dengjunjie
2025-10-24 c42731f080a4873e298bfe8489b47993432d8404
н¨Îļþ¼Ð/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/extend/Allocat.cs
@@ -9,6 +9,7 @@
using WIDESEA_Common.OrderEnum;
using WIDESEA_Common.StockEnum;
using WIDESEA_Common.TaskEnum;
using WIDESEA_Common.WareHouseEnum;
using WIDESEA_Core;
using WIDESEA_ISquareCabinServices;
using WIDESEA_Model.Models;
@@ -18,7 +19,7 @@
{
    public partial class DeliveryOrderServices
    {
        #region åˆ›å»ºå¹³åº“调拨出库单、立库调拨入库单
        #region åˆ›å»ºå¹³åº“调拨出库单、立库调拨入库单  åœ¨ç«‹åº“出库完成后调用  åœ¨å‡ºåº“完成后将物料表中的业务数量(Business_qty)减去实际出库数量
        /// <summary>
        /// åˆ›å»ºè°ƒæ‹¨å•
        /// </summary>
@@ -29,8 +30,14 @@
            WebResponseContent response = new WebResponseContent();
            try
            {
                if (materielInfo.Business_qty >= materielInfo.MinQty) return response;
                Dt_Tactics tactics = _tacticsService.Repository.QueryFirst(x => x.TacticeName == "出库策略");
                List<Dt_SupplyTask> supplyTasks = new List<Dt_SupplyTask>();
                List<Dt_InventoryInfo> dt_InventoryInfos = _inventoryInfoService.Repository.QueryData(x => x.MaterielCode == materielInfo.MaterielCode && x.StockStatus == StockStatusEmun.入库完成.ObjToInt() && x.StockQuantity > x.OutboundQuantity).OrderBy(x => x.InDate).ToList();
                List<Dt_InventoryInfo> dt_InventoryInfos = _inventoryInfoService.Repository.QueryData(x => x.MaterielCode == materielInfo.MaterielCode && x.StockStatus == StockStatusEmun.入库完成.ObjToInt() && x.StockQuantity > x.OutboundQuantity && x.WarehouseCode == WarehouseEnum.大件库.ObjToInt().ToString("000"));
                if (tactics.SelectTactice == TacticsEnum.ComeOutonFirstTime.ObjToInt())
                    dt_InventoryInfos = dt_InventoryInfos.OrderBy(x => x.ValidityPeriod).ToList();
                else
                    dt_InventoryInfos = dt_InventoryInfos.OrderBy(x => x.InDate).ToList();
                decimal Qty = 0;
                foreach (var item in dt_InventoryInfos)
                {
@@ -42,6 +49,7 @@
                        materielInfo.Business_qty += materielInfo.BoxQty;
                        item.OutboundQuantity += materielInfo.BoxQty;
                    }
                    item.AvailableQuantity = item.StockQuantity - item.OutboundQuantity;
                }
                #region æ·»åŠ è°ƒæ‹¨å‡ºåº“å•
@@ -67,6 +75,7 @@
                        Status = 2,
                        Reservoirarea = item.First().WarehouseCode
                    };
                    deliveryOrder.Warehouse_no = item.First().WarehouseCode;
                    deliveryOrder.Details.Add(deliveryOrderDetail);
                }
                #endregion