1
647556386
2025-12-25 dc1a2cac65d1abadabda8b5fb3977199100d2cb3
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_AllocateService/AllocateService.cs
@@ -27,6 +27,7 @@
        public readonly IRepository<Dt_AllocateOrder> _allocateOrderRepository;
        public readonly IRepository<Dt_AllocateOrderDetail> _allocateOrderDetailRepository;
        private readonly IMaterielInfoService _materielInfoService;
        private readonly IRepository<Dt_MaterielInfo> _materielInforepository;
        public readonly IRepository<Dt_InboundOrderDetail> _inboundOrderDetailRepository;
        private readonly ILogger<AllocateService> _logger;
@@ -38,7 +39,8 @@
            IRepository<Dt_AllocateOrderDetail> allocateOrderDetailRepository,
            IRepository<Dt_InboundOrderDetail> inboundOrderDetailRepository,
            ILogger<AllocateService> logger,
            IMaterielInfoService materielInfoService) : base(BaseDal)
            IMaterielInfoService materielInfoService,
            IRepository<Dt_MaterielInfo> materielInforepository) : base(BaseDal)
        {
            _unitOfWorkManage = unitOfWorkManage;
            _inboundService = inboundService;
@@ -48,6 +50,7 @@
            _logger = logger;
            _inboundOrderDetailRepository = inboundOrderDetailRepository;
            _materielInfoService = materielInfoService;
            _materielInforepository = materielInforepository;
        }
        public IRepository<Dt_AllocateOrder> Repository => BaseDal;
@@ -299,6 +302,15 @@
                .Select(g => g.First())
                .ToList();
            // èŽ·å–æ‰€æœ‰ç‰©æ–™ä»£ç 
            var materielCodes = distinctDetails.Select(d => d.MaterielCode).Distinct().ToList();
            // ä»Žæ•°æ®åº“查询物料信息(假设使用 DbContext)
            var materielInfos = _materielInforepository.Db.Queryable<Dt_MaterielInfo>()
                .Where(m => materielCodes.Contains(m.MaterielCode))
                .Select(m => new { m.MaterielCode, m.MaterielName })
                .ToDictionary(m => m.MaterielCode, m => m.MaterielName);
            return new List<Dt_InboundOrder>()
            {
                new Dt_InboundOrder(){
@@ -315,9 +327,10 @@
                   Remark=allocateOrder.Remark,
                   Details=distinctDetails.Select(detail=>new Dt_InboundOrderDetail
                   {
                       OrderId= 0,
                       MaterielCode=detail.MaterielCode,
                       MaterielName="",
                       MaterielName=detail.MaterielName,
                       BatchNo=detail.BatchNo,
                       OrderQuantity=detail.OrderQuantity,
                       ReceiptQuantity=detail.ReceiptQuantity,