647556386
2026-02-06 3fb6a51a60230f42be4db54cc4371a7106b322a4
ÏîÄ¿´úÂë/WMSÎÞ²Ö´¢°æ/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs
@@ -29,7 +29,8 @@
        private readonly ILogger<OutboundOrderService> _logger;
        private readonly IRepository<Dt_OutboundOrderDetail> _outboundOrderDetailRepository;
        private readonly IMaterialUnitService _materialUnitService;
        public OutboundOrderService(IRepository<Dt_OutboundOrder> BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IRepository<Dt_OutboundOrderDetail> outboundOrderDetailRepository, ILogger<OutboundOrderService> logger, IMaterialUnitService materialUnitService, IMaterielInfoService materielInfoService) : base(BaseDal)
        private readonly IRepository<Dt_OutStockLockInfo> _outStockLockInfoRepository;
        public OutboundOrderService(IRepository<Dt_OutboundOrder> BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IRepository<Dt_OutboundOrderDetail> outboundOrderDetailRepository, ILogger<OutboundOrderService> logger, IMaterialUnitService materialUnitService, IMaterielInfoService materielInfoService, IRepository<Dt_OutStockLockInfo> outStockLockInfoRepository) : base(BaseDal)
        {
            _mapper = mapper;
            _unitOfWorkManage = unitOfWorkManage;
@@ -37,6 +38,7 @@
            _logger = logger;
            _materialUnitService = materialUnitService;
            _materielInfoService = materielInfoService;
            _outStockLockInfoRepository = outStockLockInfoRepository;
        }
        private int[] OrderTypes = new int[] { (int)InOrderTypeEnum.AllocatOutbound, (int)InOrderTypeEnum.InternalAllocat, (int)InOrderTypeEnum.ReCheck };
@@ -301,6 +303,19 @@
        }
        /// <summary>
        /// æ ¹æ®æ‰˜ç›˜å·èŽ·å–å•æ®ç¼–å·
        /// </summary>
        public WebResponseContent GetOrderNoByPalletCode(string palletCode)
        {
           var orderNo = _outStockLockInfoRepository.QueryData(x => x.PalletCode == palletCode).Select(x=>x.OrderNo).FirstOrDefault();
            if(string.IsNullOrWhiteSpace(orderNo))
            {
                return WebResponseContent.Instance.Error($"该托盘{palletCode}已拣选完");
            }
            return WebResponseContent.Instance.OK(data: orderNo);
        }
        static object lock_code = new object();
        public string CreateCodeByRule(string ruleCode)
        {
@@ -425,6 +440,23 @@
                            sugarQueryable1 = sugarQueryable1.Where(x => x.ReturnToMESStatus.Equals(returnToMESStatus));
                        }
                        var businessTypeParam = searchParametersList.FirstOrDefault(x =>
                            x.Name.Equals(nameof(Dt_OutboundOrder.BusinessType).FirstLetterToLower(), StringComparison.OrdinalIgnoreCase));
                        if (businessTypeParam != null && !string.IsNullOrEmpty(businessTypeParam.Value?.ToString()))
                        {
                            string businessType = businessTypeParam.Value.ToString().Trim();
                            sugarQueryable1 = sugarQueryable1.Where(x => x.BusinessType.Equals(businessType));
                        }
                        var departmentNameParam = searchParametersList.FirstOrDefault(x =>
                   x.Name.Equals("departmentName", StringComparison.OrdinalIgnoreCase));
                        if (departmentNameParam != null && !string.IsNullOrEmpty(departmentNameParam.Value?.ToString()))
                        {
                            string departmentName = departmentNameParam.Value.ToString().Trim();
                            sugarQueryable1 = sugarQueryable1.Where(x =>
                                x.DepartmentName.Contains(departmentName));
                        }
                        var createDateParams = searchParametersList
                    .Where(x => x.Name.Equals("createDate", StringComparison.OrdinalIgnoreCase)
                                && !string.IsNullOrEmpty(x.Value?.ToString()))