From c6e8b600398de38b6684f5fa1eaaaade8562859b Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期六, 20 九月 2025 15:16:56 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/ZhiHuiQiCe/LongDeLiLiKu

---
 项目代码/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs |   89 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 89 insertions(+), 0 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs"
new file mode 100644
index 0000000..466fd52
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs"
@@ -0,0 +1,89 @@
+锘縰sing AutoMapper;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEA_Common.MaterielEnum;
+using WIDESEA_Core;
+using WIDESEA_Core.BaseServices;
+using WIDESEA_Core.Helper;
+using WIDESEA_DTO.MES;
+using WIDESEA_IBasicRepository;
+using WIDESEA_IBasicService;
+using WIDESEA_IOutboundRepository;
+using WIDESEA_IOutboundService;
+using WIDESEA_IRecordService;
+using WIDESEA_IStockService;
+using WIDESEA_Model.Models;
+
+namespace WIDESEA_OutboundService
+{
+    public class OutMESOrderService : ServiceBase<Dt_OutMESOrder, IOutMESOrderRepository>, IOutMESOrderService
+    {
+        public IOutMESOrderRepository Repository => BaseDal;
+        private IBasicRepository _basicRepository;
+        private IStockService _stockService;
+        private IOutStockLockInfoService _outStockLockInfoService;
+        private IBasicService _basicService;
+        private ILocationStatusChangeRecordService _locationStatusChangeRecordService;
+        private readonly IMapper _mapper;
+
+        public OutMESOrderService(IOutMESOrderRepository BaseDal,IBasicRepository basicRepository, IStockService stockService, IOutStockLockInfoService outStockLockInfoService, IBasicService basicService, ILocationStatusChangeRecordService locationStatusChangeRecordService,IMapper mapper) : base(BaseDal)
+        {
+            _basicRepository = basicRepository;
+            _stockService = stockService;
+            _outStockLockInfoService = outStockLockInfoService;
+            _basicService = basicService;
+            _locationStatusChangeRecordService = locationStatusChangeRecordService;
+            _mapper = mapper;
+        }
+        /// <summary>
+        /// 鎺ユ敹MES棰嗘枡璁″垝
+        /// </summary>
+        /// <returns></returns>
+        public WebResponseContent ReceiveOutBound(OutMESOrderDTO outMESOrderDTO)
+        {
+            WebResponseContent content = new WebResponseContent();
+            try
+            {
+                if (outMESOrderDTO==null)
+                {
+                    return content.Error("棰嗘枡璁″垝浼犲叆淇℃伅涓虹┖");
+                }
+                if (outMESOrderDTO.OutDetailId <= 0)
+                {
+                    return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{outMESOrderDTO.OutDetailId}闇�瑕佸ぇ浜�0");
+                }
+                if (outMESOrderDTO.ReqQuantity <= 0)
+                {
+                    return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.ReqQuantity)}:{outMESOrderDTO.ReqQuantity}闇�瑕佸ぇ浜�0");
+                }
+                //鑾峰彇鎵�鏈夌墿鏂欎俊鎭�
+                List<Dt_MaterielInfo> materielInfos = _basicRepository.MaterielInfoRepository.QueryData(x=>x.MaterielInvOrgId==MaterielInvOrgEnum.鏂板巶.ObjToInt());
+                //鑾峰彇鎵�鏈変复鏂欒鍒�
+                List<Dt_OutMESOrder> outMESOrders = BaseDal.QueryData();
+                Dt_MaterielInfo? ExistmaterielInfo = materielInfos.FirstOrDefault(x=>x.MaterielCode== outMESOrderDTO.MaterialCode);
+                if (ExistmaterielInfo == null)
+                {
+                    return content.Error($"鐗╂枡缂栫爜{nameof(OutMESOrderDTO.MaterialCode)}:{outMESOrderDTO.MaterialCode}淇℃伅涓嶅瓨鍦�");
+                }
+                Dt_OutMESOrder? OldoutMESOrder = outMESOrders.FirstOrDefault(x=>x.OutDetailId==outMESOrderDTO.OutDetailId);
+                if (OldoutMESOrder!=null)
+                {
+                    return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{outMESOrderDTO.OutDetailId}淇℃伅宸插瓨鍦�");
+                }
+                return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.ProductOrderNo)}:{outMESOrderDTO.ProductOrderNo},鐗╂枡{outMESOrderDTO.MaterialCode}鏃犲彲鍒嗛厤搴撳瓨");
+
+                Dt_OutMESOrder outMESOrder = _mapper.Map<Dt_OutMESOrder>(outMESOrderDTO);
+                BaseDal.AddData(outMESOrder);
+                return content.OK("鎺ユ敹鎴愬姛");
+            }
+            catch (Exception ex)
+            {
+                content.Error(ex.Message);
+            }
+            return content;
+        }
+    }
+}

--
Gitblit v1.9.3