From bc759f50f0b169b93766465e640373067ecfc9b2 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期五, 25 七月 2025 15:15:16 +0800
Subject: [PATCH] 删除垃圾文件

---
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs         |  168 --
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/MesProductService.cs                     |  544 ------
 项目代码/WMS/WMSServices/WIDESEA_StockService/ProStockInfoService.cs                      |  241 ---
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs                           |  623 -------
 项目资料/通信协议/接驳台与AGV 交互.xls                                                              |    0 
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/LargeScreen/LargeController.cs     |  182 --
 项目代码/WMS/WMSServices/WIDESEA_ApprovalService/ApprovalTaskService.cs                   |  183 --
 项目代码/WMS/WMSServices/WIDESEA_IStockService/IStockInfoService.cs                       |   11 
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs               |  164 --
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/StockInfoController.cs       |   25 
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Completed.cs                 |    8 
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Filter/CustomProfile.cs                        |   11 
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs                   |  401 -----
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/PDAController.cs                   |    8 
 项目代码/WMS/WMSServices/WIDESEA_IStockService/IProStockInfoService.cs                    |   18 
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs                        |  106 -
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs          |  204 --
 项目代码/WMS/WMSServices/WIDESEA_BasicService/BasicService.cs                             |   11 
 项目代码/WMS/WMSServices/WIDESEA_IStockRepository/IProStockInfoRepository.cs              |    8 
 项目代码/WMS/WMSServices/WIDESEA_ITaskInfoService/ITaskService.cs                         |  113 -
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/MES/MesController.cs               |   59 
 项目代码/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCacheDetail.cs                  |   48 
 项目代码/WMS/WMSServices/WIDESEA_IStockService/IProStockViewService.cs                    |    2 
 项目代码/WMS/WMSServices/WIDESEA_BasicRepository/BasicRepository.cs                       |    4 
 项目代码/WMS/WMSServices/WIDESEA_StockService/ProStockViewService.cs                      |   82 -
 项目代码/WMS/WMSServices/WIDESEA_BasicService/MaterielCodeInfoService.cs                  |   18 
 项目代码/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCache.cs                        |   65 
 项目代码/WMS/WMSServices/WIDESEA_StockRepository/ProStockInfoRepository.cs                |   65 
 项目代码/WMS/WMSServices/WIDESEA_IBasicRepository/IBasicRepository.cs                     |    1 
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/Task_HtyService.cs                       |    3 
 /dev/null                                                                             |   55 
 项目代码/WMS/WMSServices/WIDESEA_IApprovalService/IApprovalTaskService.cs                 |   14 
 项目代码/WMS/WMSServices/WIDESEA_StockService/StockInfoService.cs                         |   81 -
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj                       |    3 
 项目代码/WMS/WMSServices/WIDESEA_IBasicService/IBasicService.cs                           |    9 
 项目代码/WMS/WMSServices/WIDESEA_Model/WIDESEA_Model.csproj                               |    6 
 项目代码/WMS/WMSServices/WIDESEA_SystemService/Sys_DictionaryService.cs                   |   21 
 项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs                  | 1039 -------------
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs |   62 
 项目代码/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/ProStockViewController.cs    |    8 
 40 files changed, 135 insertions(+), 4,539 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ApprovalService/ApprovalTaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ApprovalService/ApprovalTaskService.cs"
index 797cf26..1208d8e 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ApprovalService/ApprovalTaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ApprovalService/ApprovalTaskService.cs"
@@ -13,7 +13,6 @@
 using WIDESEA_Core.Helper;
 using WIDESEA_IApprovalRepository;
 using WIDESEA_IApprovalService;
-using WIDESEA_ICheckRepository;
 using WIDESEA_ISystemRepository;
 using WIDESEA_Model.Models;
 
@@ -24,199 +23,19 @@
         private readonly IUnitOfWorkManage _unitOfWorkManage;
         private readonly IApprovalFlowRepository _approvalFlowRepository;
         private readonly IApprovalNodeRepository _approvalNodeRepository;
-        private readonly ICheckOrderRepository _checkOrderRepository;
         private readonly WebSocketServer _webSocketServer;
         private readonly ISys_UserRepository _userRepository;
 
         public IApprovalTaskRepository Repository => BaseDal;
 
-        public ApprovalTaskService(IApprovalTaskRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IApprovalFlowRepository approvalFlowRepository, IApprovalNodeRepository approvalNodeRepository, ICheckOrderRepository checkOrderRepository, WebSocketServer webSocketServer, ISys_UserRepository userRepository) : base(BaseDal)
+        public ApprovalTaskService(IApprovalTaskRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IApprovalFlowRepository approvalFlowRepository, IApprovalNodeRepository approvalNodeRepository,  WebSocketServer webSocketServer, ISys_UserRepository userRepository) : base(BaseDal)
         {
             _unitOfWorkManage = unitOfWorkManage;
             _approvalFlowRepository = approvalFlowRepository;
             _approvalNodeRepository = approvalNodeRepository;
-            _checkOrderRepository = checkOrderRepository;
             _webSocketServer = webSocketServer;
             _userRepository = userRepository;
         }
 
-        /// <summary>
-        /// 瀹℃壒鍚屾剰
-        /// </summary>
-        /// <param name="sourceKey">婧愪富閿�</param>
-        /// <returns></returns>
-        public WebResponseContent AuditAgree(int sourceKey)
-        {
-            try
-            {
-                Dt_ApprovalFlow approvalFlow = _approvalFlowRepository.QueryFirst(x => x.FlowCode == "IQC");
-                if (approvalFlow == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈畾涔夎瀹℃壒娴�");
-                }
-                List<Dt_ApprovalNode> approvalNodes = _approvalNodeRepository.QueryData(x => x.FlowId == approvalFlow.Id);
-                if (approvalNodes == null || approvalNodes.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈畾涔夎瀹℃壒娴佺▼鑺傜偣");
-                }
-
-                Dt_ApprovalNode? currentNode = approvalNodes.FirstOrDefault(x => x.ApproverRole == App.User.RoleId);
-                if (currentNode == null)
-                {
-                    return WebResponseContent.Instance.OK($"鏈壘鍒板綋鍓嶈鑹插鎵硅妭鐐�");
-                }
-
-                Dt_ApprovalTask approvalTask = BaseDal.QueryFirst(x => x.SourceKey == sourceKey && x.NodeId == currentNode.Id);
-                if (approvalTask == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌瀹℃壒鏁版嵁");
-                }
-
-                if (approvalTask.Status != AuditStatusEnum.Auditing.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ュ鎵瑰凡瀹屾垚");
-                }
-
-                Dt_CheckOrder checkOrder = _checkOrderRepository.QueryFirst(x => x.CheckOrderId == sourceKey);
-                if (checkOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒版潵婧愭暟鎹�(璐ㄦ鍗�)");
-                }
-
-                Dt_ApprovalNode? nextNode = approvalNodes.Where(x => x.NodeSequence > currentNode.NodeSequence).OrderBy(x => x.NodeSequence).FirstOrDefault();
-                if (nextNode == null)//瀹℃壒娴佺▼缁撴潫
-                {
-                    approvalTask.Status = AuditStatusEnum.Agree.ObjToInt();
-
-                    checkOrder.AuditStatus = AuditStatusEnum.Agree.ObjToInt();
-                    _unitOfWorkManage.BeginTran();
-                    _checkOrderRepository.UpdateData(checkOrder);
-
-                    BaseDal.UpdateData(approvalTask);
-                    //BaseDal.DeleteAndMoveIntoHty(approvalTask, WIDESEA_Core.Enums.OperateTypeEnum.鑷姩瀹屾垚);
-
-                    WebSocketSession? webSocketSession = _webSocketServer.OnlineSessions.FirstOrDefault(x => x.Url.Contains(approvalTask.ApplicantUserName));
-                    if (webSocketSession != null)
-                    {
-                        _webSocketServer.SendClientPayload(webSocketSession, "鍚屾剰");
-                    }
-                    _unitOfWorkManage.CommitTran();
-                }
-                else//杩涘叆涓嬩竴绾у鎵硅妭鐐�
-                {
-                    object obj = new
-                    {
-                        title = "IQC璐ㄦ缁撴灉瀹℃壒",
-                        formData = checkOrder,
-                        tableData = checkOrder.Details,
-                        message = "鎺ㄩ�佹祴璇曚俊鎭綋",
-                        date = DateTime.Now.ToString(),
-                    };
-                    List<Dt_ApprovalTask> approvalTasks = new List<Dt_ApprovalTask>();
-                    List<string> userNames = new List<string>();
-                    List<Sys_User> users = _userRepository.QueryData(x => x.RoleId == nextNode.ApproverRole);
-                    foreach (Sys_User user in users)
-                    {
-                        Dt_ApprovalTask newApprovalTask = new Dt_ApprovalTask()
-                        {
-                            FlowId = approvalFlow.Id,
-                            NodeId = nextNode.Id,
-                            ApplicantUserId = App.User.UserId,
-                            ApplicantUserName = user.UserName,
-                            Status = AuditStatusEnum.Auditing.ObjToInt(),
-                            AuditUser = user.UserName,
-                            SourceKey = approvalTask.SourceKey
-                        };
-                        approvalTasks.Add(newApprovalTask);
-                        userNames.Add(user.UserName);
-                    }
-
-                    approvalTask.Status = AuditStatusEnum.Agree.ObjToInt();
-                    BaseDal.UpdateData(approvalTask);
-                    BaseDal.AddData(approvalTasks);
-                    foreach (string userName in userNames)
-                    {
-                        WebSocketSession? socketSessions = _webSocketServer.OnlineSessions.FirstOrDefault(x => x.Url.Contains(userName));
-                        if (socketSessions != null)
-                        {
-                            _webSocketServer.SendClientPayload(socketSessions, obj.Serialize());
-                        }
-                    }
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
-        /// 瀹℃壒椹冲洖
-        /// </summary>
-        /// <param name="sourceKey">婧愪富閿�</param>
-        /// <returns></returns>
-        public WebResponseContent AuditReject(int sourceKey)
-        {
-            try
-            {
-                Dt_ApprovalFlow approvalFlow = _approvalFlowRepository.QueryFirst(x => x.FlowCode == "IQC");
-                if (approvalFlow == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈畾涔夎瀹℃壒娴�");
-                }
-                List<Dt_ApprovalNode> approvalNodes = _approvalNodeRepository.QueryData(x => x.FlowId == approvalFlow.Id);
-                if (approvalNodes == null || approvalNodes.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈畾涔夎瀹℃壒娴佺▼鑺傜偣");
-                }
-
-                Dt_ApprovalNode? currentNode = approvalNodes.FirstOrDefault(x => x.ApproverRole == App.User.RoleId);
-                if (currentNode == null)
-                {
-                    return WebResponseContent.Instance.OK($"鏈壘鍒板綋鍓嶈鑹插鎵硅妭鐐�");
-                }
-
-                Dt_ApprovalTask approvalTask = BaseDal.QueryFirst(x => x.SourceKey == sourceKey);
-                if (approvalTask == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌瀹℃壒鏁版嵁");
-                }
-
-                if (approvalTask.Status != AuditStatusEnum.Auditing.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ュ鎵瑰凡瀹屾垚");
-                }
-
-                Dt_CheckOrder checkOrder = _checkOrderRepository.QueryFirst(x => x.CheckOrderId == sourceKey);
-                if (checkOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒版潵婧愭暟鎹�(璐ㄦ鍗�)");
-                }
-
-                approvalTask.Status = AuditStatusEnum.Reject.ObjToInt();
-
-                checkOrder.AuditStatus = AuditStatusEnum.Reject.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                _checkOrderRepository.UpdateData(checkOrder);
-
-                BaseDal.UpdateData(approvalTask);
-                //BaseDal.DeleteAndMoveIntoHty(approvalTask, WIDESEA_Core.Enums.OperateTypeEnum.鑷姩瀹屾垚);
-
-                WebSocketSession? webSocketSession = _webSocketServer.OnlineSessions.FirstOrDefault(x => x.Url.Contains(approvalTask.ApplicantUserName));
-                if (webSocketSession != null)
-                {
-                    _webSocketServer.SendClientPayload(webSocketSession, "椹冲洖");
-                }
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/BasicRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/BasicRepository.cs"
index 3d7293f..d3c9037 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/BasicRepository.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/BasicRepository.cs"
@@ -26,15 +26,13 @@
         public IWarehouseRepository WarehouseRepository { get; }
 
         public IPalletTypeInfoRepository PalletTypeInfoRepository { get; }
-        public ICustomerInfoRepository CustomerInfoRepository { get; }
 
-        public BasicRepository(ILocationInfoRepository locationInfoRepository, IMaterielInfoRepository materielInfoRepository, IWarehouseRepository warehouseRepository, IPalletTypeInfoRepository palletTypeInfoRepository, ICustomerInfoRepository customerInfoRepository)
+        public BasicRepository(ILocationInfoRepository locationInfoRepository, IMaterielInfoRepository materielInfoRepository, IWarehouseRepository warehouseRepository, IPalletTypeInfoRepository palletTypeInfoRepository)
         {
             LocationInfoRepository = locationInfoRepository;
             MaterielInfoRepository = materielInfoRepository;
             WarehouseRepository = warehouseRepository;
             PalletTypeInfoRepository = palletTypeInfoRepository;
-            CustomerInfoRepository = customerInfoRepository;
         }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/CustomerInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/CustomerInfoRepository.cs"
deleted file mode 100644
index 03490f3..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/CustomerInfoRepository.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicRepository
-{
-    /// <summary>
-    /// 瀹㈡埛淇℃伅浠撳偍瀹炵幇灞�
-    /// </summary>
-    public class CustomerInfoRepository : RepositoryBase<Dt_CustomerInfo>, ICustomerInfoRepository
-    {
-        public CustomerInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/SupplierInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/SupplierInfoRepository.cs"
deleted file mode 100644
index eb04802..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/SupplierInfoRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_BasicRepository
-{
-    /// <summary>
-    /// 渚涘簲鍟嗕俊鎭粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class SupplierInfoRepository : RepositoryBase<Dt_SupplierInfo>, ISupplierInfoRepository
-    {
-        public SupplierInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/UserInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/UserInfoRepository.cs"
deleted file mode 100644
index 4ce2812..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicRepository/UserInfoRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_BasicRepository
-{
-    /// <summary>
-    /// 鍛樺伐淇℃伅浠撳偍瀹炵幇灞�
-    /// </summary>
-    public class UserInfoRepository : RepositoryBase<Dt_UserInfo>, IUserInfoRepository
-    {
-        public UserInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/BasicService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/BasicService.cs"
index 9a3f2cb..e5ebb12 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/BasicService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/BasicService.cs"
@@ -14,13 +14,7 @@
 {
     public class BasicService : IBasicService
     {
-        public ICustomerInfoService CustomerInfoService { get; }
-
         public IPalletCodeInfoService PalletCodeInfoService { get; }
-
-        public ISupplierInfoService SupplierInfoService { get; }
-
-        public IUserInfoService UserInfoService { get; }
 
         public ILocationInfoService LocationInfoService { get; }
 
@@ -30,15 +24,12 @@
 
         public IMaterielCodeInfoService MaterielCodeInfoService { get; }
 
-        public BasicService(ILocationInfoService locationInfoService, IMaterielInfoService materielInfoService, IWarehouseService warehouseService, ISupplierInfoService supplierInfoService,ICustomerInfoService customerInfoService,IPalletCodeInfoService palletCodeInfoService, IUserInfoService userInfoService, IMaterielCodeInfoService materielCodeInfoService)
+        public BasicService(ILocationInfoService locationInfoService, IMaterielInfoService materielInfoService, IWarehouseService warehouseService,IPalletCodeInfoService palletCodeInfoService, IMaterielCodeInfoService materielCodeInfoService)
         {
             LocationInfoService = locationInfoService;
             MaterielInfoService = materielInfoService;
             WarehouseService = warehouseService;
-            SupplierInfoService = supplierInfoService;
-            CustomerInfoService = customerInfoService;
             PalletCodeInfoService = palletCodeInfoService;
-            UserInfoService = userInfoService;
             MaterielCodeInfoService = materielCodeInfoService;
         }
     }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/CustomerInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/CustomerInfoService.cs"
deleted file mode 100644
index 010ca83..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/CustomerInfoService.cs"
+++ /dev/null
@@ -1,75 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_BasicRepository;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.Basic;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_BasicService
-{
-    public class CustomerInfoService : ServiceBase<Dt_CustomerInfo, ICustomerInfoRepository>, ICustomerInfoService
-    {
-        public CustomerInfoService(ICustomerInfoRepository BaseDal) : base(BaseDal)
-        {
-        }
-
-        public ICustomerInfoRepository Repository => BaseDal;
-
-        public WebResponseContent ReceiveCustomer(CustomerInfoDTO model)
-        {
-            try
-            {
-                //if (model.OperateType == "0")
-                //{
-                Dt_CustomerInfo customer = new Dt_CustomerInfo()
-                {
-                    Code = model.Code,
-                    Name = model.ShortName,
-                    NickName = model.Name,
-                    State = model.State.ObjToInt(),
-                };
-                BaseDal.AddData(customer);
-                //}
-                //else if (model.OperateType == "1")
-                //{
-                //    Dt_Customer customer = BaseDal.QueryFirst(x => x.Code == model.Code);
-                //    if (customer == null)
-                //    {
-                //        return WebResponseContent.Instance.Error($"鏈壘鍒拌瀹㈡埛淇℃伅");
-                //    }
-                //    customer.State = model.State;
-                //    customer.Name = model.ShortName;
-                //    customer.NickName = model.Name;
-                //    BaseDal.UpdateData(customer);
-                //}
-                //else if (model.OperateType == "2")
-                //{
-                //    Dt_Customer customer = BaseDal.QueryFirst(x => x.Code == model.Code);
-                //    if (customer == null)
-                //    {
-                //        return WebResponseContent.Instance.Error($"鏈壘鍒拌瀹㈡埛淇℃伅");
-                //    }
-                //    BaseDal.DeleteData(customer);
-                //}
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        public override WebResponseContent UpdateData(SaveModel saveModel)
-        {
-            saveModel.MainData.Add("state",1);
-            return base.UpdateData(saveModel);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/MaterielCodeInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/MaterielCodeInfoService.cs"
index f46bde5..780a26c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/MaterielCodeInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/MaterielCodeInfoService.cs"
@@ -21,23 +21,5 @@
         {
             _basicRepository = basicRepository;
         }
-        public override WebResponseContent AddData(SaveModel saveModel)
-        {
-            string? MaterialCode = saveModel.MainData["materielCode"].ToString();
-            Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x=>x.MaterielCode== MaterialCode);
-            if (materielInfo == null)
-            {
-                return WebResponseContent.Instance.Error($"{MaterialCode}鐗╂枡涓嶅瓨鍦�");
-            }
-            saveModel.MainData.Add(nameof(Dt_MaterielCodeInfo.MaterielName).FirstLetterToLower(), materielInfo.MaterielName);
-            string? PurchaseOrderNo = saveModel.MainData["purchaseOrderNo"].ToString();
-            Dt_PurchaseOrder purchaseOrder = BaseDal.Db.Queryable<Dt_PurchaseOrder>().Where(x=>x.PurchaseOrderNo== PurchaseOrderNo).First();
-            if (purchaseOrder == null)
-            {
-                return WebResponseContent.Instance.Error($"{PurchaseOrderNo}閲囪喘鍗曚笉瀛樺湪");
-            }
-            saveModel.MainData.Add(nameof(Dt_MaterielCodeInfo.SupplierCode).FirstLetterToLower(), purchaseOrder.SupplierCode);
-            return base.AddData(saveModel);
-        }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/SupplierInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/SupplierInfoService.cs"
deleted file mode 100644
index a682d53..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/SupplierInfoService.cs"
+++ /dev/null
@@ -1,93 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_BasicRepository;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.Basic;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_BasicService
-{
-    public class SupplierInfoService : ServiceBase<Dt_SupplierInfo, ISupplierInfoRepository>, ISupplierInfoService
-    {
-        public SupplierInfoService(ISupplierInfoRepository BaseDal) : base(BaseDal)
-        {
-        }
-
-        public ISupplierInfoRepository Repository => BaseDal;
-
-        public WebResponseContent ReceiveSupplier(SupplierDTO model)
-        {
-            try
-            {
-                if (model.OperateType == "0")
-                {
-                    Dt_SupplierInfo supplierInfo = new Dt_SupplierInfo()
-                    {
-                        Status = 1,
-                        SupplierCode = model.Code,
-                        ContactAddress = model.ContactAddress,
-                        ContactNumber = model.ContactNumber,
-                        Contacts = model.Contacts,
-                        Description = model.Description,
-                        Email = model.Email,
-                        InvOrgId = model.InvOrgId,
-                        SupplierName = model.Name,
-                        SupplierShortName = model.ShortName
-                    };
-
-                    BaseDal.AddData(supplierInfo);
-                }
-                else if (model.OperateType == "1")
-                {
-                    Dt_SupplierInfo supplierInfo = BaseDal.QueryFirst(x => x.SupplierCode == model.Code);
-                    if (supplierInfo == null)
-                    {
-                        Dt_SupplierInfo supplierInfoAddNew = new Dt_SupplierInfo()
-                        {
-                            Status = 1,
-                            SupplierCode = model.Code,
-                            ContactAddress = model.ContactAddress,
-                            ContactNumber = model.ContactNumber,
-                            Contacts = model.Contacts,
-                            Description = model.Description,
-                            Email = model.Email,
-                            InvOrgId = model.InvOrgId,
-                            SupplierName = model.Name,
-                            SupplierShortName = model.ShortName
-                        };
-
-                        BaseDal.AddData(supplierInfoAddNew);
-                    }
-                    else
-                    {
-                        supplierInfo.Status = 1;
-                        supplierInfo.SupplierCode = model.Code;
-                        supplierInfo.SupplierName = model.Name;
-                        supplierInfo.SupplierShortName = model.ShortName;
-                        BaseDal.UpdateData(supplierInfo);
-                    }
-                }
-                else if (model.OperateType == "2")
-                {
-                    Dt_SupplierInfo supplierInfo = BaseDal.QueryFirst(x => x.SupplierCode == model.Code);
-                    if (supplierInfo == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌渚涘簲鍟嗕俊鎭�");
-                    }
-                    BaseDal.DeleteData(supplierInfo);
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs"
deleted file mode 100644
index f4724bc..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_BasicService/UserInfoService.cs"
+++ /dev/null
@@ -1,147 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Const;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_ISystemRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_BasicService
-{
-    public class UserInfoService : ServiceBase<Dt_UserInfo, IUserInfoRepository>, IUserInfoService
-    {
-        private readonly ISys_UserRepository _userRepository;
-        public UserInfoService(IUserInfoRepository BaseDal, ISys_UserRepository userRepository) : base(BaseDal)
-        {
-            _userRepository = userRepository;
-        }
-
-        public IUserInfoRepository Repository => BaseDal;
-
-        public WebResponseContent ReceiveUser(UserInfoDTO model)
-        {
-            try
-            {
-                if (model.OperateType == "0")
-                {
-                    Dt_UserInfo userInfo = new Dt_UserInfo()
-                    {
-                        Code = model.Code,
-                        DeptName = model.DeptName,
-                        DeptNo = model.DeptNo,
-                        InvOrgId = model.InvOrgId,
-                        Name = model.Name,
-                        State = model.State
-                    };
-                    Sys_User user = new Sys_User()
-                    {
-                        UserName = userInfo.Code,
-                        RoleId = 0,
-                        UserPwd = "TC123456".EncryptDES(AppSecret.User),
-                        RoleName = "",
-                        Enable = (byte)userInfo.State,
-                        LastModifyPwdDate = DateTime.Now,
-                        Address = "绯荤粺鏈嶅姟鍣�",
-                        TenantId = 0,
-                        Creater = "绯荤粺",
-                        UserTrueName = userInfo.Name,
-                    };
-                    BaseDal.AddData(userInfo);
-                    _userRepository.AddData(user);
-                }
-                else if (model.OperateType == "1")
-                {
-                    Dt_UserInfo userInfo = BaseDal.QueryFirst(x => x.Code == model.Code);
-                    if (userInfo == null)
-                    {
-                        Dt_UserInfo userInfoAddNew = new Dt_UserInfo()
-                        {
-                            Code = model.Code,
-                            DeptName = model.DeptName,
-                            DeptNo = model.DeptNo,
-                            InvOrgId = model.InvOrgId,
-                            Name = model.Name,
-                            State = model.State
-                        };
-                        Sys_User userAddNew = new Sys_User()
-                        {
-                            UserName = userInfo.Code,
-                            RoleId = 0,
-                            UserPwd = "TC123456".EncryptDES(AppSecret.User),
-                            RoleName = "",
-                            Enable = (byte)userInfo.State,
-                            LastModifyPwdDate = DateTime.Now,
-                            Address = "绯荤粺鏈嶅姟鍣�",
-                            TenantId = 0,
-                            Creater = "绯荤粺",
-                            UserTrueName = userInfo.Name,
-                        };
-                        BaseDal.AddData(userInfoAddNew);
-                        _userRepository.AddData(userAddNew);
-                    }
-                    else
-                    {
-                        userInfo.State = model.State;
-                        userInfo.DeptName = model.DeptName;
-                        userInfo.DeptNo = model.DeptNo;
-                        userInfo.InvOrgId = model.InvOrgId;
-                        userInfo.Name = model.Name;
-                        BaseDal.UpdateData(userInfo);
-                    }
-                }
-                else if (model.OperateType == "2")
-                {
-                    Dt_UserInfo userInfo = BaseDal.QueryFirst(x => x.Code == model.Code);
-                    if (userInfo == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鍛樺伐鍙枫�恵model.Code}銆戜俊鎭�");
-                    }
-                    BaseDal.DeleteData(userInfo);
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        public WebResponseContent AddUser()
-        {
-            try
-            {
-                List<Dt_UserInfo> userInfos = BaseDal.QueryData().Where(x=>x.Code!= "Admin").ToList();
-                List<Sys_User> userList = new List<Sys_User>();
-                foreach (var item in userInfos)
-                {
-                    Sys_User user = new Sys_User()
-                    {
-                        UserName = item.Code,
-                        RoleId = 0,
-                        UserPwd="TC123456".EncryptDES(AppSecret.User),
-                        RoleName ="",
-                        Enable=(byte)item.State,
-                        LastModifyPwdDate=DateTime.Now,
-                        Address= "绯荤粺鏈嶅姟鍣�",
-                        TenantId=0,
-                        Creater= "绯荤粺",
-                        UserTrueName=item.Name,
-                    };
-                    userList.Add(user);
-                }
-                _userRepository.AddData(userList);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckRepository/CheckOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckRepository/CheckOrderRepository.cs"
deleted file mode 100644
index 150f5b6..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckRepository/CheckOrderRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_ICheckRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_CheckRepository
-{
-    /// <summary>
-    /// 璐ㄦ鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class CheckOrderRepository : RepositoryBase<Dt_CheckOrder>, ICheckOrderRepository
-    {
-        public CheckOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckRepository/CheckOrderResultRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckRepository/CheckOrderResultRepository.cs"
deleted file mode 100644
index f9d9649..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckRepository/CheckOrderResultRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_ICheckRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_CheckRepository
-{
-    /// <summary>
-    /// 璐ㄦ缁撴灉浠撳偍瀹炵幇灞�
-    /// </summary>
-    public class CheckOrderResultRepository : RepositoryBase<Dt_CheckOrderResult>, ICheckOrderResultRepository
-    {
-        public CheckOrderResultRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckService/CheckOrderResultService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckService/CheckOrderResultService.cs"
deleted file mode 100644
index c67a1cc..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckService/CheckOrderResultService.cs"
+++ /dev/null
@@ -1,179 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_IApprovalRepository;
-using WIDESEA_ICheckRepository;
-using WIDESEA_ICheckService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_CheckService
-{
-    public class CheckOrderResultService : ServiceBase<Dt_CheckOrderResult, ICheckOrderResultRepository>, ICheckOrderResultService
-    {
-        private readonly ICheckOrderRepository _checkOrderRepository;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IReceiveOrderRepository _receiveOrderRepository;
-        private readonly ICheckOrderService _checkOrderService;
-        private readonly IPurchaseOrderRepository _purchaseOrderRepository;
-        private readonly IPurchaseOrderDetailRepository _purchaseOrderDetailRepository;
-        public CheckOrderResultService(ICheckOrderResultRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICheckOrderRepository checkOrderRepository, IReceiveOrderRepository receiveOrderRepository, ICheckOrderService checkOrderService, IPurchaseOrderRepository purchaseOrderRepository, IPurchaseOrderDetailRepository purchaseOrderDetailRepository) : base(BaseDal)
-        {
-            _checkOrderRepository = checkOrderRepository;
-            _unitOfWorkManage = unitOfWorkManage;
-            _receiveOrderRepository = receiveOrderRepository;
-            _checkOrderService = checkOrderService;
-            _purchaseOrderRepository = purchaseOrderRepository;
-            _purchaseOrderDetailRepository = purchaseOrderDetailRepository;
-        }
-
-        /// <summary>
-        /// 鎻愪氦璐ㄦ缁撴灉
-        /// </summary>
-        /// <param name="checkOrderId">璐ㄦ鍗曚富閿�</param>
-        /// <param name="checkResult">璐ㄦ缁撴灉瀵硅薄</param>
-        /// <param name="IsAccept">鏄惁鎺ュ彈</param>
-        /// <returns></returns>
-        public WebResponseContent CommitCheckResult(int checkOrderId,Dt_CheckOrderResult checkResult,int IsAccept=0)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_CheckOrder checkOrder = _checkOrderRepository.QueryFirst(x => x.CheckOrderId == checkOrderId);
-                //鑾峰彇璐ㄦ鍗曞搴旂殑鏀惰揣鍗�
-                if (checkOrder == null)
-                {
-                    return content.Error($"鏈壘鍒拌璐ㄦ鍗�");
-                }
-                Dt_ReceiveOrder receiveOrder = _receiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == checkOrder.ReceiveOrderNo).Includes(x => x.Details).First();
-                if (receiveOrder.ReceiveOrderStatus!=ReceiveOrderStatusEnum.Completed.ObjToInt())
-                {
-                    return content.Error($"{receiveOrder.ReceiveOrderNo}鏀惰揣鍗曟湭瀹屾垚鏃犳硶璐ㄦ");
-                }
-                if (checkOrder.CheckOrderStatus == CheckOrderStatusEnum.Checked.ObjToInt())
-                {
-                    return content.Error($"璇ュ崟鎹凡缁忔楠屽畬鎴�");
-                }
-                Dt_CheckOrderResult? checkOrderResult = null;
-                Dt_PurchaseOrder? purchaseOrder = null;
-                Dt_PurchaseOrderDetail? purchaseOrderDetail= null;
-                if (checkResult.CheckOrderId!=0)
-                {
-                    if (checkResult.Quantity < 0 || checkResult.Quantity > checkOrder.ReceivedQuantity || checkOrder.ReceivedQuantity - checkOrder.ReturnQuantity < checkResult.Quantity)
-                    {
-                        return content.Error($"鏁伴噺瓒呭嚭");
-                    }
-                    if (checkResult.Result == CheckResultEnum.Return.ToString())//閫�璐�
-                    {
-                        checkOrder.DefectedNote = checkResult.Note;
-                        checkOrder.ReturnQuantity += checkResult.Quantity;
-                    }
-                    else
-                    {
-                        return content.Error($"鏈壘鍒扮己闄风被鍨�");
-                    }
-                    checkOrderResult = new Dt_CheckOrderResult()
-                    {
-                        Quantity = checkResult.Quantity,
-                        CheckOrderId = checkOrderId,
-                        DefectCode = checkResult.DefectCode,
-                        Result = checkResult.Result,
-                        Note = checkResult.Note,
-                        SampleCount=checkResult.SampleCount,
-                    };
-                    //鑾峰彇瀵瑰簲閲囪喘鍗�
-                    Dt_ReceiveOrderDetail receiveOrderDetail = receiveOrder.Details.First(x => x.RowNo == checkOrder.ReceiveDetailRowNo);
-                    purchaseOrder = _purchaseOrderRepository.Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == receiveOrderDetail.PurchaseOrderNo).Includes(x => x.Details).Where(x => x.Details.Any(v => v.RowNo == receiveOrderDetail.PurchaseOrderDetailRowNo)).First();
-                    if (purchaseOrder == null)
-                    {
-                        return content.Error("鏈壘鍒板搴旀敹璐ч噰璐崟");
-                    }
-                    purchaseOrderDetail = purchaseOrder.Details.FirstOrDefault();
-                    if (purchaseOrderDetail==null)
-                    {
-                        return content.Error("鏈壘鍒伴��璐у搴旂殑閲囪喘鍗曟槑缁�");
-                    }
-                    purchaseOrderDetail.PurchaseDetailReceiveQty -= checkResult.Quantity;
-                }
-                if (IsAccept==CheckAcceptEnum.Accept.ObjToInt())
-                {
-                    checkOrder.Result = CheckAcceptEnum.Accept.ToString();
-                }
-                else if (IsAccept == CheckAcceptEnum.UnAccept.ObjToInt())
-                {
-                    checkOrder.Result = CheckAcceptEnum.UnAccept.ToString();
-                }
-                else
-                {
-                    return content.Error("鏈壘鍒版楠岀被鍨�");
-                }
-                checkOrder.CheckOrderStatus = CheckOrderStatusEnum.Checked.ObjToInt();
-                if (checkOrderResult!=null)
-                {
-                    checkOrder.QualifiedQuantity = checkOrder.ReceivedQuantity - checkOrderResult.Quantity;
-                }
-                else
-                {
-                    checkOrder.QualifiedQuantity = checkOrder.ReceivedQuantity;
-                }
-                checkOrder.CheckUserName = App.User.UserName;
-                _unitOfWorkManage.BeginTran();
-                
-                if (checkOrderResult!=null && purchaseOrder!=null && purchaseOrderDetail!=null)
-                {
-                    BaseDal.AddData(checkOrderResult);
-                    if (purchaseOrder.PurchaseOrderStatus>=PurchaseOrderStatusEnum.Received.ObjToInt())
-                    {
-                        purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Receiving.ObjToInt();
-                        _purchaseOrderRepository.UpdateData(purchaseOrder);
-                    }
-                    if (purchaseOrderDetail.PurchaseDetailStatus== PurchaseOrderDetailStatusEnum.Received.ObjToInt())
-                    {
-                        purchaseOrderDetail.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.Receiving.ObjToInt();
-                    }
-                    _purchaseOrderDetailRepository.UpdateData(purchaseOrderDetail);
-                }
-                //ERP涓婃姤
-                WebResponseContent responseContent= _checkOrderService.FeedbackCheckResult(checkOrder, checkOrderResult!=null? new List<Dt_CheckOrderResult> { checkOrderResult }:new List<Dt_CheckOrderResult>());
-                if (!responseContent.Status)
-                {
-                    throw new Exception(responseContent.Message);
-                }
-                checkOrder.UploadStatus = CheckUploadEnum.UploadOk.ObjToInt();
-                _checkOrderRepository.UpdateData(checkOrder);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return content.Error($"{ex.Message}");
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鑾峰彇妫�楠屼俊鎭�
-        /// </summary>
-        public WebResponseContent GetCheckResultInfo(int checkId)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_CheckOrderResult checkOrderResult = BaseDal.QueryFirst(x => x.CheckOrderId == checkId);
-                content.OK("鎴愬姛", checkOrderResult);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckService/CheckOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckService/CheckOrderService.cs"
deleted file mode 100644
index 5c447a6..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_CheckService/CheckOrderService.cs"
+++ /dev/null
@@ -1,253 +0,0 @@
-锘縰sing HslCommunication.WebSocket;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO;
-using WIDESEA_DTO.ERP;
-using WIDESEA_External.ERPService;
-using WIDESEA_External.Model;
-using WIDESEA_IApprovalRepository;
-using WIDESEA_ICheckRepository;
-using WIDESEA_ICheckService;
-using WIDESEA_ISystemRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_CheckService
-{
-    public class CheckOrderService : ServiceBase<Dt_CheckOrder, ICheckOrderRepository>, ICheckOrderService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IApprovalFlowRepository _approvalFlowRepository;
-        private readonly IApprovalNodeRepository _approvalNodeRepository;
-        private readonly IApprovalTaskRepository _approvalTaskRepository;
-        private readonly ISys_UserRepository _userRepository;
-        private readonly WebSocketServer _webSocketServer;
-        private readonly IInvokeERPService _invokeERPService;
-
-        public CheckOrderService(ICheckOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IApprovalFlowRepository approvalFlowRepository, IApprovalNodeRepository approvalNodeRepository, IApprovalTaskRepository approvalTaskRepository, ISys_UserRepository userRepository, WebSocketServer webSocketServer, IInvokeERPService invokeERPService) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _approvalFlowRepository = approvalFlowRepository;
-            _approvalNodeRepository = approvalNodeRepository;
-            _approvalTaskRepository = approvalTaskRepository;
-            _userRepository = userRepository;
-            _webSocketServer = webSocketServer;
-            _invokeERPService = invokeERPService;
-        }
-
-        #region 涓嶄娇鐢�
-        public WebResponseContent CommitAudit(int checkOrderId)
-        {
-            try
-            {
-                Dt_CheckOrder checkOrder = BaseDal.Db.Queryable<Dt_CheckOrder>().Where(x => x.CheckOrderId == checkOrderId).Includes(x => x.Details).First();
-                if (checkOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌璐ㄦ鍗�");
-                }
-                if (checkOrder.CheckOrderStatus != CheckOrderStatusEnum.Checked.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ヨ川妫�鍗曡繕鏈楠屽畬鎴�");
-                }
-
-                if (checkOrder.AuditStatus != AuditStatusEnum.NotCommited.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ暟鎹笉鍙啀娆℃彁浜ゅ鎵�");
-                }
-
-                Dt_ApprovalFlow approvalFlow = _approvalFlowRepository.QueryFirst(x => x.FlowCode == "IQC");
-                if (approvalFlow == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈畾涔夎瀹℃壒娴�");
-                }
-                List<Dt_ApprovalNode> approvalNodes = _approvalNodeRepository.QueryData(x => x.FlowId == approvalFlow.Id);
-                if (approvalNodes == null || approvalNodes.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈畾涔夎瀹℃壒娴佺▼鑺傜偣");
-                }
-
-                Dt_ApprovalNode? approvalNode = approvalNodes.OrderBy(x => x.NodeSequence).FirstOrDefault();
-                if (approvalNode == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏁版嵁閿欒");
-                }
-
-                List<Dt_ApprovalTask> approvalTasks = new List<Dt_ApprovalTask>();
-                List<string> userNames = new List<string>();
-                List<Sys_User> users = _userRepository.QueryData(x => x.RoleId == approvalNode.ApproverRole);
-                foreach (Sys_User user in users)
-                {
-                    Dt_ApprovalTask approvalTask = new Dt_ApprovalTask()
-                    {
-                        FlowId = approvalFlow.Id,
-                        NodeId = approvalNode.Id,
-                        ApplicantUserId = App.User.UserId,
-                        ApplicantUserName = user.UserName,
-                        Status = AuditStatusEnum.Auditing.ObjToInt(),
-                        AuditUser = user.UserName
-                    };
-                    approvalTasks.Add(approvalTask);
-                    userNames.Add(user.UserName);
-                }
-                _unitOfWorkManage.BeginTran();
-                _approvalTaskRepository.AddData(approvalTasks);
-                checkOrder.AuditStatus = AuditStatusEnum.Auditing.ObjToInt();
-                BaseDal.UpdateData(checkOrder);
-
-                object obj = new
-                {
-                    title = "IQC璐ㄦ缁撴灉瀹℃壒",
-                    formData = checkOrder,
-                    tableData = checkOrder.Details,
-                    message = "鎺ㄩ�佹祴璇曚俊鎭綋",
-                    date = DateTime.Now.ToString(),
-                };
-
-                foreach (string userName in userNames)
-                {
-                    WebSocketSession? socketSessions = _webSocketServer.OnlineSessions.FirstOrDefault(x => x.Url.Contains(userName));
-                    if (socketSessions != null)
-                    {
-                        _webSocketServer.SendClientPayload(socketSessions, obj.Serialize());
-                    }
-                }
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        #endregion
-        /// <summary>
-        /// 妫�楠屽畬鎺ㄩ�丒RP
-        /// </summary>
-        /// <param name="checkOrder"></param>
-        /// <param name="checkOrderResults"></param>
-        /// <returns></returns>
-        public WebResponseContent FeedbackCheckResult(Dt_CheckOrder checkOrder,List<Dt_CheckOrderResult> checkOrderResults)
-        {
-            try
-            {
-                //澧炲姞涓笂浼犵姸鎬� 璐ㄦ鍗曠粨鏋�
-                List<ERPCheckResult> checkResults = new List<ERPCheckResult>();
-                foreach (var item in checkOrderResults)
-                {
-                    ERPCheckResult checkResult = new ERPCheckResult()
-                    {
-                        DefectCode = item.DefectCode,
-                        Note = item.Note,
-                        Quantity = item.Quantity.ToString(),
-                        Result = item.Result
-                    };
-                    checkResults.Add(checkResult);
-                }
-                ERPCheckModel model = new ERPCheckModel()
-                {
-                    Code = checkOrder.CheckOrderNo,
-                    CompanyId = "HATC",
-                    Result = checkOrder.Result,
-                    CreatorCode = checkOrder.CheckUserName,
-                    DefectedNote = checkOrder.DefectedNote,
-                    MaterialsCode = checkOrder.MaterielCode,
-                    PlantsId = "HA02",
-                    QtyDefected = checkOrder.DefectedQuantity.GetValueOrDefault().ToString(),
-                    QtyInspected = checkOrder.ReceivedQuantity.ToString(),
-                    QtyQualified = checkOrder.QualifiedQuantity.GetValueOrDefault().ToString(),
-                    QtyReturn = checkOrder.ReturnQuantity.GetValueOrDefault().ToString(),
-                    QtyScrapped = checkOrder.ScrappedQuantity.GetValueOrDefault().ToString(),
-                    ReceiptCode = checkOrder.ReceiveOrderNo,
-                    ReceiveDate = checkOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
-                    SerNo = checkOrder.ReceiveDetailRowNo.ToString(),
-                    TestDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    UniqueTag = checkOrder.CheckOrderId.ToString(),
-                    Way = 1,
-                    Details = checkResults
-                };
-
-                string response = _invokeERPService.InvokeCheckOrderApi(model);
-                ErpRequestContent requestContent = response.DeserializeObject<ErpRequestContent>();
-                if (requestContent.res!=1)
-                {
-                    return WebResponseContent.Instance.Error(requestContent.Data);
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 璐ㄦ瀹屼笂鎶ヨ嚦ERP
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        public WebResponseContent FeedbackCheckResult(int id)
-        {
-            try
-            {
-                //澧炲姞涓笂浼犵姸鎬� 璐ㄦ鍗曠粨鏋�
-                Dt_CheckOrder checkOrder = Db.Queryable<Dt_CheckOrder>().Where(x => x.CheckOrderId == id).Includes(x => x.Details).First();
-                if (checkOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌川妫�鍗曟嵁");
-                }
-
-                List<ERPCheckResult> checkResults = new List<ERPCheckResult>();
-                foreach (var item in checkOrder.Details)
-                {
-                    ERPCheckResult checkResult = new ERPCheckResult()
-                    {
-                        DefectCode = item.DefectCode,
-                        Note = item.Note,
-                        Quantity = item.Quantity.ToString(),
-                        Result = item.Result
-                    };
-                    checkResults.Add(checkResult);
-                }
-
-                ERPCheckModel model = new ERPCheckModel()
-                {
-                    Code = checkOrder.CheckOrderNo,
-                    CompanyId = "HATC",
-                    Result = checkOrder.Result,
-                    CreatorCode = checkOrder.CheckUserName,
-                    DefectedNote = checkOrder.DefectedNote,
-                    MaterialsCode = checkOrder.MaterielCode,
-                    PlantsId = "HA02",
-                    QtyDefected = checkOrder.DefectedQuantity.GetValueOrDefault().ToString(),
-                    QtyInspected = checkOrder.ReceivedQuantity.ToString(),
-                    QtyQualified = checkOrder.QualifiedQuantity.GetValueOrDefault().ToString(),
-                    QtyReturn = checkOrder.ReturnQuantity.GetValueOrDefault().ToString(),
-                    QtyScrapped = checkOrder.ScrappedQuantity.GetValueOrDefault().ToString(),
-                    ReceiptCode = checkOrder.ReceiveOrderNo,
-                    ReceiveDate = checkOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
-                    SerNo = checkOrder.ReceiveDetailRowNo.ToString(),
-                    TestDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    UniqueTag = checkOrder.CheckOrderId.ToString(),
-                    Way = 1,
-                    Details = checkResults
-                };
-
-                string response = _invokeERPService.InvokeCheckOrderApi(model);
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_DTO/AGV/AgvResponseContent.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_DTO/AGV/AgvResponseContent.cs"
deleted file mode 100644
index 3eeefb9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_DTO/AGV/AgvResponseContent.cs"
+++ /dev/null
@@ -1,30 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace WIDESEA_DTO.AGV
-{
-    #region 寮冪敤
-    public class AgvResponseContent
-    {
-        /// <summary>
-        /// 杩斿洖鐮�
-        /// </summary>
-        public string Code { get; set; }
-        /// <summary>
-        /// 杩斿洖娑堟伅
-        /// </summary>
-        public string Message { get; set; }
-        /// <summary>
-        /// 璇锋眰缂栧彿
-        /// </summary>
-        public string ReqCode { get; set; }
-        /// <summary>
-        /// 鑷畾涔夎繑鍥烇紙杩斿洖浠诲姟鍗曞彿锛�
-        /// </summary>
-        public string Data { get; set; }
-    }
-    #endregion
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IApprovalService/IApprovalTaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IApprovalService/IApprovalTaskService.cs"
index 0e4278d..fc348a7 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IApprovalService/IApprovalTaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IApprovalService/IApprovalTaskService.cs"
@@ -13,19 +13,5 @@
     public interface IApprovalTaskService : IService<Dt_ApprovalTask>
     {
         IApprovalTaskRepository Repository { get; }
-
-        /// <summary>
-        /// 瀹℃壒鍚屾剰
-        /// </summary>
-        /// <param name="sourceKey">婧愪富閿�</param>
-        /// <returns></returns>
-        WebResponseContent AuditAgree(int sourceKey);
-
-        /// <summary>
-        /// 瀹℃壒椹冲洖
-        /// </summary>
-        /// <param name="sourceKey">婧愪富閿�</param>
-        /// <returns></returns>
-        WebResponseContent AuditReject(int sourceKey);
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IBasicRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IBasicRepository.cs"
index 7942ee8..5be3300 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IBasicRepository.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IBasicRepository.cs"
@@ -17,7 +17,6 @@
         IWarehouseRepository WarehouseRepository { get; }
 
         IPalletTypeInfoRepository PalletTypeInfoRepository { get; }
-        ICustomerInfoRepository CustomerInfoRepository { get; }
 
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/ICustomerInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/ICustomerInfoRepository.cs"
deleted file mode 100644
index 18685f9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/ICustomerInfoRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicRepository
-{
-    /// <summary>
-    /// 瀹㈡埛淇℃伅浠撳偍鎺ュ彛灞�
-    /// </summary>
-    public interface ICustomerInfoRepository : IRepository<Dt_CustomerInfo>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/ISupplierInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/ISupplierInfoRepository.cs"
deleted file mode 100644
index bd20303..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/ISupplierInfoRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicRepository
-{
-    /// <summary>
-    /// 渚涘簲鍟嗕俊鎭粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface ISupplierInfoRepository : IRepository<Dt_SupplierInfo>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IUserInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IUserInfoRepository.cs"
deleted file mode 100644
index e0de526..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicRepository/IUserInfoRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicRepository
-{
-    /// <summary>
-    /// 鍛樺伐淇℃伅浠撳偍鎺ュ彛灞�
-    /// </summary>
-    public interface IUserInfoRepository: IRepository<Dt_UserInfo>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IBasicService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IBasicService.cs"
index cab3468..b62017b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IBasicService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IBasicService.cs"
@@ -24,16 +24,7 @@
         /// </summary>
         IWarehouseService WarehouseService { get; }
 
-        /// <summary>
-        /// 渚涘簲鍟嗕笟鍔″眰
-        /// </summary>
-        ISupplierInfoService SupplierInfoService { get; }
-
-        IUserInfoService UserInfoService { get; }
-
         IPalletCodeInfoService PalletCodeInfoService { get; }
-
-        ICustomerInfoService CustomerInfoService { get; }
 
         IMaterielCodeInfoService MaterielCodeInfoService { get; }
     }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/ICustomerInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/ICustomerInfoService.cs"
deleted file mode 100644
index 9264403..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/ICustomerInfoService.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.Basic;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicService
-{
-    public interface ICustomerInfoService : IService<Dt_CustomerInfo>
-    {
-        ICustomerInfoRepository Repository { get; }
-
-        WebResponseContent ReceiveCustomer(CustomerInfoDTO model);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/ISupplierInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/ISupplierInfoService.cs"
deleted file mode 100644
index 77bf100..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/ISupplierInfoService.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.Basic;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicService
-{
-    public interface ISupplierInfoService : IService<Dt_SupplierInfo>
-    {
-        ISupplierInfoRepository Repository { get; }
-
-        WebResponseContent ReceiveSupplier(SupplierDTO model);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IUserInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IUserInfoService.cs"
deleted file mode 100644
index 3efe3f0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IBasicService/IUserInfoService.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IBasicService
-{
-    public interface IUserInfoService:IService<Dt_UserInfo>
-    {
-        IUserInfoRepository Repository { get; }
-
-        WebResponseContent ReceiveUser(UserInfoDTO content);
-        WebResponseContent AddUser();
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckRepository/ICheckOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckRepository/ICheckOrderRepository.cs"
deleted file mode 100644
index 1a9a50e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckRepository/ICheckOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_ICheckRepository
-{
-    /// <summary>
-    /// 璐ㄦ鍗曚粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface ICheckOrderRepository : IRepository<Dt_CheckOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckRepository/ICheckOrderResultRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckRepository/ICheckOrderResultRepository.cs"
deleted file mode 100644
index 95fd939..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckRepository/ICheckOrderResultRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_ICheckRepository
-{
-    /// <summary>
-    /// 璐ㄦ缁撴灉浠撳偍鎺ュ彛灞�
-    /// </summary>
-    public interface ICheckOrderResultRepository : IRepository<Dt_CheckOrderResult>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckService/ICheckOrderResultService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckService/ICheckOrderResultService.cs"
deleted file mode 100644
index 869fd31..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckService/ICheckOrderResultService.cs"
+++ /dev/null
@@ -1,29 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_ICheckService
-{
-    public interface ICheckOrderResultService : IService<Dt_CheckOrderResult>
-    {
-        /// <summary>
-        /// 鎻愪氦璐ㄦ缁撴灉
-        /// </summary>
-        /// <param name="checkOrderId">璐ㄦ鍗曚富閿�</param>
-        /// <param name="checkResult">璐ㄦ缁撴灉瀵硅薄</param>
-        /// <param name="IsAccept">鏄惁鎺ュ彈</param>
-        /// <returns></returns>
-        WebResponseContent CommitCheckResult(int checkOrderId, Dt_CheckOrderResult checkResult, int IsAccept = 0);
-        /// <summary>
-        /// 鑾峰彇妫�楠屼俊鎭�
-        /// </summary>
-        /// <param name="checkId"></param>
-        /// <returns></returns>
-        WebResponseContent GetCheckResultInfo(int checkId);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckService/ICheckOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckService/ICheckOrderService.cs"
deleted file mode 100644
index c65c105..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ICheckService/ICheckOrderService.cs"
+++ /dev/null
@@ -1,29 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_ICheckService
-{
-    public interface ICheckOrderService : IService<Dt_CheckOrder>
-    {
-        /// <summary>
-        /// 璐ㄦ瀹屾垚鍚庢彁浜ゅ鎵�
-        /// </summary>
-        /// <param name="checkOrderId"></param>
-        /// <returns></returns>
-        WebResponseContent CommitAudit(int checkOrderId);
-
-        /// <summary>
-        /// 璐ㄦ缁撴灉瀹℃壒瀹屾垚鍚庡洖浼燛RP
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        WebResponseContent FeedbackCheckResult(int id);
-        WebResponseContent FeedbackCheckResult(Dt_CheckOrder checkOrder, List<Dt_CheckOrderResult> checkOrderResults);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IErpProInOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IErpProInOrderRepository.cs"
deleted file mode 100644
index 8454c25..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IErpProInOrderRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    public interface IErpProInOrderRepository : IRepository<Dt_ErpProInOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderDetailRepository.cs"
deleted file mode 100644
index 199dd3b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁嗕粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IInboundOrderDetailRepository : IRepository<Dt_InboundOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderDetail_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderDetail_HtyRepository.cs"
deleted file mode 100644
index 6491007..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderDetail_HtyRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁嗗巻鍙蹭粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IInboundOrderDetail_HtyRepository : IRepository<Dt_InboundOrderDetail_Hty>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderRepository.cs"
deleted file mode 100644
index 3cada14..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曚粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IInboundOrderRepository : IRepository<Dt_InboundOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrder_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrder_HtyRepository.cs"
deleted file mode 100644
index a5409d9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundOrder_HtyRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曞巻鍙蹭粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IInboundOrder_HtyRepository : IRepository<Dt_InboundOrder_Hty>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundRepository.cs"
deleted file mode 100644
index ee67db6..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IInboundRepository.cs"
+++ /dev/null
@@ -1,28 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-
-namespace WIDESEA_IInboundRepository
-{
-    public interface IInboundRepository : IDependency
-    {
-        IInboundOrderDetailRepository InboundOrderDetailRepository { get; }
-
-        IInboundOrderRepository InboundOrderRepository { get; }
-
-        IReceiveOrderDetailRepository ReceiveOrderDetailRepository { get; }
-
-        IReceiveOrderRepository ReceiveOrderRepository { get; }
-
-        IPurchaseOrderDetailRepository PurchaseOrderDetailRepository { get; }
-
-        IPurchaseOrderRepository PurchaseOrderRepository { get; }
-        IReturnOrderRepository ReturnOrderRepository { get; }
-        IReturnOrderDetailRepository ReturnOrderDetailRepository { get; }
-        IMesProInOrderRepository MesProInOrderRepository { get; }
-        IMesProInOrderDetailRepository MesProInOrderDetailRepository { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IMesProInOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IMesProInOrderDetailRepository.cs"
deleted file mode 100644
index a614416..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IMesProInOrderDetailRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    public interface IMesProInOrderDetailRepository : IRepository<Dt_MesProInOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IMesProInOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IMesProInOrderRepository.cs"
deleted file mode 100644
index 32537e8..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IMesProInOrderRepository.cs"
+++ /dev/null
@@ -1,15 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    public interface IMesProInOrderRepository : IRepository<Dt_MesProInOrder>
-    {
-
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IProInStatisticsRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IProInStatisticsRepository.cs"
deleted file mode 100644
index db5f58c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IProInStatisticsRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    public interface IProInStatisticsRepository : IRepository<Dt_ProInStatistics>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IPurchaseOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IPurchaseOrderDetailRepository.cs"
deleted file mode 100644
index 772ca96..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IPurchaseOrderDetailRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 閲囪喘鍗曟槑缁嗕粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IPurchaseOrderDetailRepository : IRepository<Dt_PurchaseOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IPurchaseOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IPurchaseOrderRepository.cs"
deleted file mode 100644
index 442d3e4..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IPurchaseOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 閲囪喘鍗曚粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IPurchaseOrderRepository : IRepository<Dt_PurchaseOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReceiveOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReceiveOrderDetailRepository.cs"
deleted file mode 100644
index 44644fb..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReceiveOrderDetailRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鏀惰揣鍗曟槑缁嗕粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IReceiveOrderDetailRepository : IRepository<Dt_ReceiveOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReceiveOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReceiveOrderRepository.cs"
deleted file mode 100644
index dd5570e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReceiveOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鏀惰揣鍗曚粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IReceiveOrderRepository : IRepository<Dt_ReceiveOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReturnOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReturnOrderDetailRepository.cs"
deleted file mode 100644
index d48ac9d..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReturnOrderDetailRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 閫�鏂欏崟鏄庣粏浠撳偍鎺ュ彛灞�
-    /// </summary>
-    public interface IReturnOrderDetailRepository : IRepository<Dt_ReturnOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReturnOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReturnOrderRepository.cs"
deleted file mode 100644
index a4d689e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/IReturnOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 閫�鏂欏崟浠撳偍鎺ュ彛灞�
-    /// </summary>
-    public interface IReturnOrderRepository : IRepository<Dt_ReturnOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/ITakeStockOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/ITakeStockOrderDetailRepository.cs"
deleted file mode 100644
index 889f98a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/ITakeStockOrderDetailRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鐩樼偣鍗曟槑缁嗕粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface ITakeStockOrderDetailRepository : IRepository<Dt_TakeStockOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/ITakeStockOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/ITakeStockOrderRepository.cs"
deleted file mode 100644
index 94f385f..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundRepository/ITakeStockOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundRepository
-{
-    /// <summary>
-    /// 鐩樼偣鍗曚粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface ITakeStockOrderRepository : IRepository<Dt_TakeStockOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IErpProInOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IErpProInOrderService.cs"
deleted file mode 100644
index dbc33b3..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IErpProInOrderService.cs"
+++ /dev/null
@@ -1,19 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IErpProInOrderService : IService<Dt_ErpProInOrder>
-    {
-        IErpProInOrderRepository Repository { get; }
-        WebResponseContent ProductWarehousingOrder(ErpProductWarehousingOrderDTO warehousingOrderDTO);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderDetailService.cs"
deleted file mode 100644
index 437e29b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderDetailService.cs"
+++ /dev/null
@@ -1,19 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IInboundOrderDetailService : IService<Dt_InboundOrderDetail>
-    {
-        IInboundOrderDetailRepository Repository { get; }
-
-        WebResponseContent GetInboundOrderDetails(SaveModel saveModel);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderDetail_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderDetail_HtyService.cs"
deleted file mode 100644
index 9888163..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderDetail_HtyService.cs"
+++ /dev/null
@@ -1,16 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IInboundOrderDetail_HtyService : IService<Dt_InboundOrderDetail_Hty>
-    {
-        
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderService.cs"
deleted file mode 100644
index 1dff918..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrderService.cs"
+++ /dev/null
@@ -1,57 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_External.Model;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IInboundOrderService : IService<Dt_InboundOrder>
-    {
-        IInboundOrderRepository Repository { get; }
-
-        WebResponseContent GetInboundOrders(SaveModel saveModel);
-        WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, string serNum);
-
-        WebResponseContent InPinKu(string inboundOrderId,int warehouseId, List<string> serNums);
-        WebResponseContent WMSInPinKu(int warehouseId, List<string> serNums);
-        WebResponseContent MaterielGroup(string palletCode, int Initiallife, int warehouseId, List<string> serNums);
-
-        //WebResponseContent FeedbackInboundOrder(int id);
-
-        WebResponseContent MaterielGroup(SaveModel saveModel);
-
-        WebResponseContent MaterielPPorGM(string materielBoxCode="");
-        /// <summary>
-        /// 鍏ュ簱瀹屾垚涓婃姤
-        /// </summary>
-        /// <returns></returns>
-        WebResponseContent FeedbackInboundOrder(int inboundOrderId);
-        /// <summary>
-        /// 閫�鏂欏畬鎴愪笂鎶ヨ嚦ERP
-        /// </summary>
-        WebResponseContent FeedbackReturnOrder(Dt_InboundOrder inboundOrder,Dt_ReturnOrder returnOrder);
-        /// <summary>
-        /// 鏍规嵁浠撳簱鍜屾墭鐩樺彿鑾峰彇鎵樼洏绫诲瀷
-        /// </summary>
-        /// <returns></returns>
-        int GetPalletType(Dt_Warehouse warehouse, string palletCode);
-        /// <summary>
-        /// 鍏朵粬鍏ュ簱鍗曟帴鏀�(璋冩嫈鍏ヤ粨,瀹緵鍥炴敹,鐗╂枡閿�鍞��璐�)
-        /// </summary>
-        /// <returns></returns>
-        WebResponseContent ReceiveWarehousingOrder(ErpInOrderDTO model);
-        /// <summary>
-        /// 鎴愬搧鍏ュ簱涓婁紶ERP
-        /// </summary>
-        WebResponseContent FeedbackProIn(Dt_MesProInOrder mesProInOrder);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrder_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrder_HtyService.cs"
deleted file mode 100644
index 647c1b1..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundOrder_HtyService.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IInboundOrder_HtyService : IService<Dt_InboundOrder_Hty>
-    {
-        
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundService.cs"
deleted file mode 100644
index 24139a2..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IInboundService.cs"
+++ /dev/null
@@ -1,26 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_IInboundRepository;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IInboundService:IDependency
-    {
-        IInboundOrderDetailService InboundOrderDetailService { get; }
-
-        IInboundOrderService InbounOrderService { get; }
-
-        IReceiveOrderDetailService ReceiveOrderDetailService { get; }
-
-        IReceiveOrderService ReceiveOrderService { get; }
-
-        IPurchaseOrderService PurchaseOrderService { get; }
-
-        IPurchaseOrderDetailService PurchaseOrderDetailService { get; }
-        IErpProInOrderService ErpProInOrderService { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IMesProInOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IMesProInOrderDetailService.cs"
deleted file mode 100644
index 048dc02..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IMesProInOrderDetailService.cs"
+++ /dev/null
@@ -1,16 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IMesProInOrderDetailService : IService<Dt_MesProInOrderDetail>
-    {
-        IMesProInOrderDetailRepository Repository { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IMesProInOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IMesProInOrderService.cs"
deleted file mode 100644
index 9c4f0da..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IMesProInOrderService.cs"
+++ /dev/null
@@ -1,19 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-using WIDESEA_DTO.MES;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IMesProInOrderService : IService<Dt_MesProInOrder>
-    {
-        IMesProInOrderRepository Repository { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IProInStatisticsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IProInStatisticsService.cs"
deleted file mode 100644
index b9fbf47..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IProInStatisticsService.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.MES;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IProInStatisticsService : IService<Dt_ProInStatistics>
-    {
-        IProInStatisticsRepository Repository { get; }
-        void SaveStatic(MesBagInfoModel mesBagInfoModel);
-        WebResponseContent GetMonthProductions();
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs"
deleted file mode 100644
index 18680f9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs"
+++ /dev/null
@@ -1,22 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IPurchaseOrderDetailService : IService<Dt_PurchaseOrderDetail>
-    {
-        WebResponseContent GetPurchaseOrderDetailMaterielCode(int warehouseId);
-        WebResponseContent GetPurchaseOrderNos(string materielCode);
-
-        WebResponseContent GetOrderQuantity(string purchaseOrderNo);
-
-        WebResponseContent GetOrderMaterielSpec(string purchaseOrderNo, string materielCode);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IPurchaseOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IPurchaseOrderService.cs"
deleted file mode 100644
index fc2a5fd..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IPurchaseOrderService.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IPurchaseOrderService : IService<Dt_PurchaseOrder>
-    {
-        WebResponseContent GetPurchaseOrderInfo(string purchaseOrderNo);
-        WebResponseContent ReceivePurchaseOrder(PurchaseOrderModel model);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReceiveOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReceiveOrderDetailService.cs"
deleted file mode 100644
index 1fc5500..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReceiveOrderDetailService.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IReceiveOrderDetailService : IService<Dt_ReceiveOrderDetail>
-    {
-        WebResponseContent AddReceiveOrderDetail(string serNum, string orderNo);
-        WebResponseContent GetReceiveOrderInfos(SaveModel saveModel);
-        WebResponseContent ScaninnerCode(string innerCode);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReceiveOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReceiveOrderService.cs"
deleted file mode 100644
index cc5da6a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReceiveOrderService.cs"
+++ /dev/null
@@ -1,37 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IReceiveOrderService : IService<Dt_ReceiveOrder>
-    {
-        /// <summary>
-        /// 鏍规嵁鏀惰揣鍗曞垱寤哄叆搴撳崟
-        /// </summary>
-        /// <param name="receiveOrderId"></param>
-        /// <returns></returns>
-        WebResponseContent CreateInboundOrder(int receiveOrderId);
-
-        /// <summary>
-        /// 鏀惰揣瀹屾垚鍥炰紶ERP
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <returns></returns>
-        WebResponseContent FeedbackReceiveOrder(int orderId);
-        WebResponseContent GetReceiveOrders(SaveModel saveModel);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="purchaseOrderId"></param>
-        /// <param name="lotNo"></param>
-        /// <returns></returns>
-        WebResponseContent ReceiveAllOrder(int purchaseOrderId, string lotNo);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReturnOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReturnOrderDetailService.cs"
deleted file mode 100644
index 233ee1c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReturnOrderDetailService.cs"
+++ /dev/null
@@ -1,16 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IReturnOrderDetailService : IService<Dt_ReturnOrderDetail>
-    {
-        IReturnOrderDetailRepository Repository { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReturnOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReturnOrderService.cs"
deleted file mode 100644
index 4b470a0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/IReturnOrderService.cs"
+++ /dev/null
@@ -1,31 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface IReturnOrderService : IService<Dt_ReturnOrder>
-    {
-        IReturnOrderRepository Repository { get; }
-        /// <summary>
-        /// 鑾峰彇鎺ユ敹閫�鏂欏崟
-        /// </summary>
-        WebResponseContent ReturnOrder(ErpReturnOrderDTO model);
-        /// <summary>
-        /// 鑾峰彇閫�鏂欏崟
-        /// </summary>
-        WebResponseContent GetReturnOrders(SaveModel saveModel);
-        /// <summary>
-        /// 纭閫�搴撴牴鎹��搴撳崟鐢熸垚鍏ュ簱鍗�
-        /// </summary>
-        /// <returns></returns>
-        WebResponseContent IsReturnCreateInOrder(int returnId);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/ITakeStockOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/ITakeStockOrderDetailService.cs"
deleted file mode 100644
index 1a01783..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/ITakeStockOrderDetailService.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface ITakeStockOrderDetailService : IService<Dt_TakeStockOrderDetail>
-    {
-        ITakeStockOrderDetailRepository Repository { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/ITakeStockOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/ITakeStockOrderService.cs"
deleted file mode 100644
index aecce86..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IInboundService/ITakeStockOrderService.cs"
+++ /dev/null
@@ -1,25 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IInboundService
-{
-    public interface ITakeStockOrderService : IService<Dt_TakeStockOrder>
-    {
-        ITakeStockOrderRepository Repository { get; }
-
-        /// <summary>
-        /// 鐩樼偣
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        WebResponseContent MatPicking(SaveModel saveModel);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IErpProTransferOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IErpProTransferOrderRepository.cs"
deleted file mode 100644
index b5e40d8..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IErpProTransferOrderRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IErpProTransferOrderRepository : IRepository<Dt_ErpProTransferOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IMesOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IMesOutboundOrderRepository.cs"
deleted file mode 100644
index 9ea7dab..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IMesOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IMesOutboundOrderRepository : IRepository<Dt_MesOutboundOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IMesRworkOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IMesRworkOutboundOrderRepository.cs"
deleted file mode 100644
index c766209..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IMesRworkOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IMesRworkOutboundOrderRepository : IRepository<Dt_MesRworkOutboundOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutProStockInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutProStockInfoRepository.cs"
deleted file mode 100644
index 1b66392..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutProStockInfoRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IOutProStockInfoRepository : IRepository<Dt_OutProStockInfo>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutStockLockInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutStockLockInfoRepository.cs"
deleted file mode 100644
index 644b08d..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutStockLockInfoRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱璇︽儏淇℃伅浠撳偍鎺ュ彛灞�
-    /// </summary>
-    public interface IOutStockLockInfoRepository : IRepository<Dt_OutStockLockInfo>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderDetailRepository.cs"
deleted file mode 100644
index 5dddddc..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁嗕粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IOutboundOrderDetailRepository : IRepository<Dt_OutboundOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderDetail_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderDetail_HtyRepository.cs"
deleted file mode 100644
index 98d38bc..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderDetail_HtyRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱鍗曟槑缁嗗巻鍙蹭粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IOutboundOrderDetail_HtyRepository : IRepository<Dt_OutboundOrderDetail_Hty>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderRepository.cs"
deleted file mode 100644
index f8c62d9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曚粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IOutboundOrderRepository : IRepository<Dt_OutboundOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrder_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrder_HtyRepository.cs"
deleted file mode 100644
index 415a955..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundOrder_HtyRepository.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱鍗曞巻鍙蹭粨鍌ㄦ帴鍙e眰
-    /// </summary>
-    public interface IOutboundOrder_HtyRepository : IRepository<Dt_OutboundOrder_Hty>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundRepository.cs"
deleted file mode 100644
index bf013c4..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IOutboundRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IOutboundRepository : IDependency
-    {
-        IOutboundOrderDetailRepository OutboundOrderDetailRepository { get; }
-
-        IOutboundOrderRepository OutboundOrderRepository { get; }
-
-        IOutStockLockInfoRepository OutboundStockLockInfoRepository { get; }
-        IProOutOrderRepository ProOutOrderRepository { get; }
-        IProOutOrderDetailRepository ProOutOrderDetailRepository { get; }
-        IMesRworkOutboundOrderRepository RworkOutboundOrderRepository { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IProOutOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IProOutOrderDetailRepository.cs"
deleted file mode 100644
index 97ba303..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IProOutOrderDetailRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IProOutOrderDetailRepository : IRepository<Dt_ProOutOrderDetail>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IProOutOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IProOutOrderRepository.cs"
deleted file mode 100644
index daab7b0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundRepository/IProOutOrderRepository.cs"
+++ /dev/null
@@ -1,14 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    public interface IProOutOrderRepository : IRepository<Dt_ProOutOrder>
-    {
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IErpProTransferOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IErpProTransferOrderService.cs"
deleted file mode 100644
index f5c1599..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IErpProTransferOrderService.cs"
+++ /dev/null
@@ -1,23 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-using WIDESEA_DTO.ERP;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IErpProTransferOrderService : IService<Dt_ErpProTransferOrder>
-    {
-        IErpProTransferOrderRepository Repository { get; }
-        /// <summary>
-        /// 鎴愬搧璋冩嫧鍑猴紙鐮斿彂锛�
-        /// </summary>
-        WebResponseContent ProductTransferOrder(ErpProductTransferOrderDTO productTransferOrderDTO);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IMesOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IMesOutboundOrderService.cs"
deleted file mode 100644
index 95fb08f..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IMesOutboundOrderService.cs"
+++ /dev/null
@@ -1,48 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.MES;
-using WIDESEA_DTO;
-using WIDESEA_Model.Models;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Core;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IMesOutboundOrderService : IService<Dt_MesOutboundOrder>
-    {
-        /// <summary>
-        /// 
-        /// </summary>
-        IMesOutboundOrderRepository Repository { get; }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="mesOutboundOrder"></param>
-        /// <returns></returns>
-        (List<Dt_StockInfo>, Dt_MesOutboundOrder, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(Dt_MesOutboundOrder mesOutboundOrder);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="stockInfos"></param>
-        /// <param name="outStockLockInfos"></param>
-        /// <param name="locationInfos"></param>
-        /// <param name="locationStatus"></param>
-        /// <param name="tasks"></param>
-        /// <returns></returns>
-        WebResponseContent LockOutboundStockDataUpdate(List<Dt_StockInfo> stockInfos, List<Dt_OutStockLockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="substrateOutModel"></param>
-        /// <returns></returns>
-        WebResponseContent AddMesOrder(SubstrateOutModel substrateOutModel);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IMesRworkOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IMesRworkOutboundOrderService.cs"
deleted file mode 100644
index 88b8e64..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IMesRworkOutboundOrderService.cs"
+++ /dev/null
@@ -1,37 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.MES;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IMesRworkOutboundOrderService : IService<Dt_MesRworkOutboundOrder>
-    {
-        IMesRworkOutboundOrderRepository Repository { get; }
-        /// <summary>
-        /// 鎻愬簱浠诲姟鍒嗛厤搴撳瓨
-        /// </summary>
-        /// <param name="mesOutboundOrder"></param>
-        /// <returns></returns>
-        (List<Dt_ProStockInfo>?, Dt_MesRworkOutboundOrder?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>) AssignMesStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrders);
-        /// <summary>
-        /// 澶勭悊鍑哄簱鏁版嵁
-        /// </summary>
-        WebResponseContent LockOutboundStockDataUpdate(List<Dt_ProStockInfo> stockInfos, List<Dt_OutProStockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null);
-
-        //搴撳瓨鏉垮嚭搴�
-        WebResponseContent ProductOutBoundSync(MesProductOutBound model);
-        /// <summary>
-        /// 鎴愬搧MES鎻愬簱鍑哄簱瀹屽悗涓�鍖呬竴鍖呮嫞閫�
-        /// </summary>
-        /// <returns></returns>
-        WebResponseContent MesRworkOutPick(int OrderId, string InrPKCode, int Count = 0);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutProStockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutProStockInfoService.cs"
deleted file mode 100644
index f27c514..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutProStockInfoService.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutProStockInfoService : IService<Dt_OutProStockInfo>
-    {
-        IOutProStockInfoRepository Repository { get; }
-        Dt_OutProStockInfo GetOutStockLockInfo(Dt_ProOutOrder proOutOrder, Dt_ProOutOrderDetail proOutOrderDetail, Dt_ProStockInfo proStockInfo, float assignQty, int? taskNum = null);
-        //澶勭悊鎻愬簱鍑哄簱璇︽儏
-        Dt_OutProStockInfo GetOutStockLockInfo(Dt_MesRworkOutboundOrder mesOutboundOrder, Dt_ProStockInfo outStock, float assignQuantity, int? taskNum = null);
-        List<Dt_OutProStockInfo> GetByOrderDetailId(int orderDetailId, OutLockStockStatusEnum? outStockStatus);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutStockLockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutStockLockInfoService.cs"
deleted file mode 100644
index 243e1ea..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutStockLockInfoService.cs"
+++ /dev/null
@@ -1,87 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutStockLockInfoService : IService<Dt_OutStockLockInfo>
-    {
-        /// <summary>
-        /// 
-        /// </summary>
-        IOutStockLockInfoRepository Repository { get; }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="outboundOrder"></param>
-        /// <param name="outboundOrderDetail"></param>
-        /// <param name="outStocks"></param>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        List<Dt_OutStockLockInfo> GetOutStockLockInfos(Dt_OutboundOrder outboundOrder, Dt_OutboundOrderDetail outboundOrderDetail, List<Dt_StockInfo> outStocks, int? taskNum = null);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="outboundOrder"></param>
-        /// <param name="outboundOrderDetail"></param>
-        /// <param name="outStock"></param>
-        /// <param name="assignQuantity"></param>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        Dt_OutStockLockInfo GetOutStockLockInfo(Dt_OutboundOrder outboundOrder, Dt_OutboundOrderDetail outboundOrderDetail, Dt_StockInfo outStock, float assignQuantity, int? taskNum = null);
-
-        /// <summary>
-        /// PP澶у嵎鍑哄簱
-        /// </summary>
-        /// <param name="mesOutboundOrder"></param>
-        /// <param name="outStock"></param>
-        /// <param name="assignQuantity"></param>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        Dt_OutStockLockInfo GetOutStockLockInfo(Dt_MesOutboundOrder mesOutboundOrder, Dt_StockInfo outStock, float assignQuantity, int? taskNum = null);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="outStockStatus"></param>
-        /// <returns></returns>
-        List<Dt_OutStockLockInfo> GetByOrderDetailId(int orderDetailId, OutLockStockStatusEnum? outStockStatus);
-        /// <summary>
-        /// 鏍规嵁鍑哄簱鍗曞彿鑾峰彇鍑哄簱璇︽儏
-        /// </summary>
-        /// <param name="OrderNo"></param>
-        /// <returns></returns>
-        List<Dt_OutStockLockInfo> OutStockLockInfos(string OrderNo);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        List<Dt_OutStockLockInfo> GetStockOutboundOrder(SaveModel saveModel);
-
-        /// <summary>
-        /// 鍒嗘嫞
-        /// </summary>
-        /// <param name="palletCode">鎵樼洏鍙�</param>
-        /// <returns></returns>
-        WebResponseContent MaterialPick(string palletCode);
-        /// <summary>
-        /// 鑾峰彇Mes鍑哄簱璇︽儏
-        /// </summary>
-        /// <param name="taskNo">Mes浠诲姟鍗曞彿</param>
-        /// <returns></returns>
-        List<Dt_OutStockLockInfo> GetByMesOrderDetail(string taskNo);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderDetailService.cs"
deleted file mode 100644
index 4cbbf81..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderDetailService.cs"
+++ /dev/null
@@ -1,78 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutboundOrderDetailService : IService<Dt_OutboundOrderDetail>
-    {
-        IOutboundOrderDetailRepository Repository { get; }
-        WebResponseContent GetOutboundOrderDetails(SaveModel saveModel);
-        /// <summary>
-        /// 閿佸畾鍑哄簱搴撳瓨
-        /// </summary>
-        /// <param name="orderDetailId">鍑哄簱鍗曟槑缁咺d</param>
-        /// <returns></returns>
-        WebResponseContent LockOutboundStock(int orderDetailId);
-
-        /// <summary>
-        /// 鍒嗛厤搴撳瓨鍑哄簱閫昏緫
-        /// </summary>
-        /// <param name="outboundOrderDetail">鍑哄簱鍗曟槑缁�</param>
-        /// <param name="stockSelectViews">浜哄伐閫夋嫨鐨勫簱瀛�</param>
-        /// <returns></returns>
-        (List<Dt_StockInfo>, Dt_OutboundOrderDetail, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(Dt_OutboundOrderDetail outboundOrderDetail, List<StockSelectViewDTO> stockSelectViews);
-
-        /// <summary>
-        /// 鍒嗛厤搴撳瓨鍑哄簱閫昏緫
-        /// </summary>
-        /// <param name="outboundOrderDetails"></param>
-        /// <returns></returns>
-        (List<Dt_StockInfo>, List<Dt_OutboundOrderDetail>, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(List<Dt_OutboundOrderDetail> outboundOrderDetails);
-
-    
-        /// <summary>
-        /// 閿佸畾鍑哄簱搴撳瓨
-        /// </summary>
-        /// <param name="orderDetailId">鍑哄簱鍗曟槑缁咺d</param>
-        /// <param name="stockSelectViews">浜哄伐閫夋嫨鐨勫簱瀛�</param>
-        /// <returns></returns>
-        WebResponseContent LockOutboundStock(int orderDetailId, List<StockSelectViewDTO> stockSelectViews);
-
-        /// <summary>
-        /// 閿佸畾鍑哄簱搴撳瓨(澶氭槑缁�)
-        /// </summary>
-        /// <param name="keys"></param>
-        /// <returns></returns>
-        WebResponseContent LockOutboundStock(int[] keys);
-
-        /// <summary>
-        /// 閿佸畾鍑哄簱搴撳瓨(淇敼鏁版嵁)
-        /// </summary>
-        /// <param name="stockInfos">搴撳瓨鏄庣粏闆嗗悎</param>
-        /// <param name="outboundOrderDetails">鍑哄簱鍗曟槑缁嗛泦鍚�</param>
-        /// <param name="outStockLockInfos">鍑哄簱閿佸畾鏄庣粏闆嗗悎</param>
-        /// <param name="locationInfos">璐т綅缁撳悎</param>
-        /// <param name="locationStatus">璐т綅鐘舵�佷慨鏀圭殑鍊�</param>
-        /// <param name="tasks">浠诲姟淇℃伅</param>
-        /// <returns></returns>
-        WebResponseContent LockOutboundStockDataUpdate(List<Dt_StockInfo> stockInfos, List<Dt_OutboundOrderDetail> outboundOrderDetails, List<Dt_OutStockLockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null);
-
-        /// <summary>
-        /// 鎾ら攢閿佸畾鍑哄簱搴撳瓨
-        /// </summary>
-        /// <param name="orderDetailId">鍑哄簱鍗曟槑缁嗕富閿�</param>
-        /// <returns></returns>
-        WebResponseContent RevokeLockOutboundStock(int orderDetailId);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderDetail_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderDetail_HtyService.cs"
deleted file mode 100644
index f89e09c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderDetail_HtyService.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutboundOrderDetail_HtyService : IService<Dt_OutboundOrderDetail_Hty>
-    {
-        
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderService.cs"
deleted file mode 100644
index fc19740..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrderService.cs"
+++ /dev/null
@@ -1,30 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_External.Model;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutboundOrderService : IService<Dt_OutboundOrder>
-    {
-        IOutboundOrderRepository Repository { get; }
-
-        WebResponseContent GetOutboundOrders(SaveModel saveModel);
-        WebResponseContent outpinku(SaveModel saveModel);
-        WebResponseContent ReceiveOutOrder(ErpOutOrderDTO model);
-        WebResponseContent TestOutUpload(int id,List<Dt_OutStockLockInfo>? outStockLockInfos=null);
-        string CreateCodeByRule(string ruleCode);
-        ERPIssueModel GetERPIssueModel(Dt_OutboundOrder outboundOrder, string WarehouseCode);
-        WebResponseContent PushERPOutBound(int outId, string WarehouseCode);
-        WebResponseContent OutUpOrderGetFLOrder();
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrder_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrder_HtyService.cs"
deleted file mode 100644
index b6f5dd8..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundOrder_HtyService.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutboundOrder_HtyService : IService<Dt_OutboundOrder_Hty>
-    {
-        
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundService.cs"
deleted file mode 100644
index 1b28791..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IOutboundService.cs"
+++ /dev/null
@@ -1,25 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IOutboundService : IDependency
-    {
-        IMesOutboundOrderService MesOutboundOrderService { get; }
-
-        IOutboundOrderDetailService OutboundOrderDetailService { get; }
-
-        IOutboundOrderService OutboundOrderService { get; }
-
-        IOutStockLockInfoService OutboundStockLockInfoService { get; }
-        IProOutOrderService ProOutOrderService { get; }
-        IProOutOrderDetailService ProOutOrderDetailService { get; }
-
-        IMesRworkOutboundOrderService RworkOutboundOrderService { get; }
-        IErpProTransferOrderService ErpProTransferOrderService { get; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IProOutOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IProOutOrderDetailService.cs"
deleted file mode 100644
index b94d169..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IProOutOrderDetailService.cs"
+++ /dev/null
@@ -1,26 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IProOutOrderDetailService : IService<Dt_ProOutOrderDetail>
-    {
-        IProOutOrderDetailRepository Repository { get; }
-        /// <summary>
-        /// 鍒嗛厤搴撳瓨澶勭悊璐т綅鏁版嵁
-        /// </summary>
-        (List<Dt_ProStockInfo>, List<Dt_ProOutOrderDetail>, List<Dt_OutProStockInfo>, List<Dt_LocationInfo>) AssignProStockOut(List<Dt_ProOutOrderDetail> proOutOrderDetails);
-        /// <summary>
-        /// 鍑哄簱浠诲姟鏁版嵁澶勭悊
-        /// </summary>
-        WebResponseContent LockOutboundStockDataUpdate(List<Dt_ProStockInfo> proStockInfos, List<Dt_ProOutOrderDetail> proOutOrderDetails, List<Dt_OutProStockInfo> outProStockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IProOutOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IProOutOrderService.cs"
deleted file mode 100644
index a4e0a9c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IOutboundService/IProOutOrderService.cs"
+++ /dev/null
@@ -1,54 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public interface IProOutOrderService : IService<Dt_ProOutOrder>
-    {
-        IProOutOrderRepository Repository { get; }
-        /// <summary>
-        /// 鎺ユ敹ERP鎴愬搧鍑哄簱鍗曚俊鎭�(璁㈠崟鍑哄簱/瀵勫敭鍑哄簱)
-        /// </summary>
-        /// <returns></returns>
-        Task<WebResponseContent> ProductDeliveryOrder(ErpProOutOrderDTO outOrderDTO);
-        /// <summary>
-        /// 閿�鍞儴浠舵寚娲�
-        /// </summary>
-        /// <returns></returns>
-        Task<WebResponseContent> ProductSpecifyVer(ErpProductSpecifyVerDTO erpProductSpecifyVerDTO);
-        /// <summary>
-        /// 鎴愬搧鍑哄緟鍙戣揣鍖�(骞冲簱)+鍚屾ERP鍑哄簱(宸茬粦瀹氬嚭搴撳崟搴撳瓨)
-        /// </summary>
-        /// <returns></returns>
-        WebResponseContent OutProductPK(SaveModel saveModel, string ProOutNo);
-        ///// <summary>
-        ///// 鎴愬搧鍑哄緟鍙戣揣鍖�(骞冲簱)+鍚屾ERP鍑哄簱(鏈粦瀹氬嚭搴撳崟搴撳瓨)
-        ///// </summary>
-        ///// <returns></returns>
-        //WebResponseContent OutProductNoPK(string[] OutPKCodes, string ProOutNo);
-        WebResponseContent GetProOutOrders(SaveModel saveModel);
-        /// <summary>
-        /// 鑾峰彇鏄庣粏
-        /// </summary>
-        /// <param name="keyId"></param>
-        /// <returns></returns>
-        WebResponseContent GetOrderDetails(int keyId);
-        /// <summary>
-        /// 鏌ヨERP璁㈠崟鎵i櫎搴撳瓨鏁伴噺
-        /// </summary>
-        Task <WebResponseContent> OutProErpSync(string outProOrderNo);
-        /// <summary>
-        /// 鍑哄簱鍗曟壂鐮佸悓姝RP
-        /// </summary>
-        /// <returns></returns>
-        Task<WebResponseContent> OutProScanCodeSync(SaveModel saveModel);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockRepository/IProStockInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockRepository/IProStockInfoRepository.cs"
index 4d8d4c7..553243d 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockRepository/IProStockInfoRepository.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockRepository/IProStockInfoRepository.cs"
@@ -10,13 +10,5 @@
 {
     public interface IProStockInfoRepository : IRepository<Dt_ProStockInfo>
     {
-        /// <summary>
-        /// 鏌ユ壘鍙敤搴撳瓨
-        /// </summary>
-        List<Dt_ProStockInfo> GetProStocks(Dt_ProOutOrderDetail proOutOrderDetail,List<string> locationInfos);
-        /// <summary>
-        /// 鑾峰彇鎴愬搧搴撳瓨
-        /// </summary>
-        List<Dt_ProStockInfo> GetProStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrder, List<string> locationInfos);
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IMaterielnfoStatisticsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IMaterielnfoStatisticsService.cs"
deleted file mode 100644
index 93d8901..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IMaterielnfoStatisticsService.cs"
+++ /dev/null
@@ -1,17 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_DTO.Stock;
-
-namespace WIDESEA_IStockService
-{
-    public interface  IMaterielnfoStatisticsService : IDependency
-    {
-        PageGridData<MaterielnfoStatisticsDTO> GetPageGridData(PageDataOptions options);
-
-        WebResponseContent Export(PageDataOptions options);
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockInfoService.cs"
index 6e082b8..8a0d2e1 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockInfoService.cs"
@@ -19,23 +19,5 @@
         /// <param name="proStockInfoDetails"></param>
         /// <returns></returns>
         WebResponseContent UnBindStock(List<Dt_ProStockInfoDetail> proStockInfoDetails);
-        /// <summary>
-        /// 鏌ユ壘鍙敤搴撳瓨
-        /// </summary>
-        List<Dt_ProStockInfo> GetUseableStocks(int warehoseId, Dt_ProOutOrderDetail proOutOrderDetail);
-        /// <summary>
-        /// 鑾峰彇鍑哄簱搴撳瓨
-        /// </summary>
-        List<Dt_ProStockInfo> GetOutboundStocks(List<Dt_ProStockInfo> stockInfos, Dt_ProOutOrderDetail outOrderDetail, float needQuantity, out float residueQuantity);
-        
-        /// <summary>
-        /// MES鎻愬簱鍙敤搴撳瓨
-        /// </summary>
-        /// <returns></returns>
-        public List<Dt_ProStockInfo> GetUseableStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrder);
-        /// <summary>
-        /// 鑾峰彇MES鎻愬簱搴撳瓨
-        /// </summary>
-        List<Dt_ProStockInfo> GetOutboundStocks(List<Dt_ProStockInfo> stockInfos, Dt_MesRworkOutboundOrder mesRworkOutboundOrder, float needQuantity, out float residueQuantity);
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockViewService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockViewService.cs"
index dee2a57..8460ffe 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockViewService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IProStockViewService.cs"
@@ -13,7 +13,5 @@
         PageGridData<ProStockViewDTO> GetPageData(PageDataOptions options);
 
         object GetDetailPage(PageDataOptions pageData);
-        WebResponseContent Export(PageDataOptions options);
-        List<ProStockViewDTO> GetProPKSelectStocks(int orderId);
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IStockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IStockInfoService.cs"
index 890e8c4..85d708b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IStockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_IStockService/IStockInfoService.cs"
@@ -14,17 +14,6 @@
     public interface IStockInfoService : IService<Dt_StockInfo>
     {
         IStockInfoRepository Repository { get; }
-
-        List<StockSelectViewDTO> GetStockSelectViews(int orderId, string materielCode);
-        List<StockSelectViewDTO> GetPKStockSelectViews(int orderId, string materielCode);
-
-        List<Dt_StockInfo> GetOutboundStocks(List<Dt_StockInfo> stockInfos, string materielCode, float needQuantity, out float residueQuantity);
-
-        List<Dt_StockInfo> GetUseableStocks(string materielCode, string batchNo, int warehoseId);
-
-        //List<Dt_StockInfo> GetUseableStocks(string materielCode, string batchNo,,string , int warehoseId);
-
-        List<Dt_StockInfo> GetUseableStocks(string materielCode, string batchNo, string palletcode, int warehoseId);
         WebResponseContent StockQueryData(SaveModel saveModel);
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ITaskInfoService/ITaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ITaskInfoService/ITaskService.cs"
index a94089f..d7aff8b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ITaskInfoService/ITaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_ITaskInfoService/ITaskService.cs"
@@ -58,14 +58,6 @@
         WebResponseContent PushTasksToWCSSingle(int taskNum, string agvDescription = "");
 
         /// <summary>
-        /// 鐢宠鍏ュ簱浠诲姟(PDA浣跨敤锛屼粎鎵樼洏缁戝畾鍏ュ簱绔欏彴锛屼笉鍒嗛厤璐т綅)
-        /// </summary>
-        /// <param name="palletCode">鎵樼洏鍙�</param>
-        /// <param name="stationCode">绔欏彴鍙�</param>
-        /// <returns></returns>
-        //WebResponseContent RequestInboundTask(string palletCode, string stationCode);
-        WebResponseContent RequestInboundTask(SaveModel saveModel);
-        /// <summary>
         /// 绌虹鍏ュ簱
         /// </summary>
         /// <param name="barcode"></param>
@@ -79,16 +71,6 @@
         /// <param name="address">鍦板潃</param>
         /// <returns></returns>
         WebResponseContent OutEmpty(int qty, string address, int WarehouseId, string barcode);
-
-        /// <summary>
-        /// WCS鐢宠鍏ュ簱
-        /// </summary>
-        /// <param name="stationCode"></param>
-        /// <param name="roadwayNo"></param>
-        /// <param name="palletCode"></param>
-        /// <returns></returns>
-        WebResponseContent DeviceRequestInboundTask(string stationCode, string roadwayNo, string palletCode,string materielBoxCode = "");
-
         /// <summary>
         /// 浠呯敵璇蜂换鍔★紝璁¦CS鏍规嵁璺敱纭畾涓嬩竴鍦板潃
         /// </summary>
@@ -96,17 +78,6 @@
         /// <param name="palletCode"></param>
         /// <returns></returns>
         WebResponseContent DeviceRequestInboundTaskSimple(string stationCode, string palletCode);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="stationCode"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="roadwayNos"></param>
-        /// <param name="heightType"></param>
-        /// <returns></returns>
-        WebResponseContent DeviceRequestInboundTaskByRoadways(string stationCode, string palletCode, List<string> roadwayNos, int heightType);
-
         /// <summary>
         /// 鍏ュ簱浠诲姟鐢宠鍒嗛厤璐т綅
         /// </summary>
@@ -115,7 +86,6 @@
         /// <param name="palletType">鎵樼洏绫诲瀷</param>
         /// <returns></returns>
         WebResponseContent AssignInboundTaskLocation(int taskNum, string roadwayNo);
-
         /// <summary>
         /// 
         /// </summary>
@@ -133,39 +103,11 @@
         Task<WebResponseContent> TaskCompleted(int taskNum);
 
         /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        WebResponseContent InboundTaskCompleted(int taskNum);
-        /// <summary>
         /// 娴嬭瘯鏋跺嚭浠�
         /// </summary>
         /// <param name="model"></param>
         /// <returns></returns>
         MesResponseContent TestToolOut(TestToolOutModel model);
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        WebResponseContent GenerateOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews);
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="keys"></param>
-        /// <returns></returns>
-        WebResponseContent GenerateOutboundTasks(int[] keys);
-
-        /// <summary>
-        /// 鍑哄簱浠诲姟瀹屾垚
-        /// </summary>
-        /// <param name="taskNum">浠诲姟鍙�</param>
-        /// <returns></returns>
-        WebResponseContent OutboundTaskCompleted(int taskNum);
 
         /// <summary>
         /// 鍒ゆ柇鏄惁闇�瑕佺Щ搴�
@@ -212,25 +154,11 @@
         WebResponseContent UploadMesMaterialLotaAcept(MesMaterialLotaAceptModel model);
 
         /// <summary>
-        /// 鍩烘澘鍑哄簱
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        MesResponseContent SubstrateOut(SubstrateOutModel model);
-
-        /// <summary>
         /// 鍩烘澘浣欐枡閫�搴�
         /// </summary>
         /// <param name="model"></param>
         /// <returns></returns>
         MesResponseContent SubstrateBack(SubstrateBackModel model);
-
-        /// <summary>
-        /// 鎴愬搧杩斿伐鎻愬簱
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        MesResponseContent RworkTask(RworkTaskModel model);
 
         /// <summary>
         /// 
@@ -240,15 +168,6 @@
         /// <param name="heightType"></param>
         /// <returns></returns>
         WebResponseContent AssignRoadwayByHeight(List<string> roadwayNos, int taskNum, int heightType = 0);
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="roadwayNos"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="heightType"></param>
-        /// <returns></returns>
-        WebResponseContent AssignRoadwayByHeightAndCode(List<string> roadwayNos, string palletCode, int heightType = 0);
 
         /// <summary>
         /// 鍒嗛厤宸烽亾
@@ -266,13 +185,6 @@
         WebResponseContent SingleAssignRoadway(List<string> roadwayNos);
 
         /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <returns></returns>
-        WebResponseContent HandSubstrateOut(int orderId);
-
-        /// <summary>
         /// 淇敼浠诲姟鐘舵��
         /// </summary>
         /// <param name="task"></param>
@@ -285,32 +197,11 @@
         /// <param name="task"></param>
         /// <returns></returns>
         WebResponseContent AGVTasks(SaveModel saveModel);
-
-
-        WebResponseContent GeneratePKOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews);
-        /// <summary>
-        /// MES鎴愬搧鍐呭寘淇℃伅鎺ユ敹
-        /// </summary>
-        /// <returns></returns>
-        MesResponseContent BagInfoSync(MesBagInfoModel bagInfoModel);
-        /// <summary>
-        /// MES鎴愬搧澶栧寘淇℃伅鎺ユ敹
-        /// </summary>
-        /// <param name="boxInfoModel"></param>
-        /// <returns></returns>
-        MesResponseContent BoxStockin(MesBoxInfoModel boxInfoModel);
         /// <summary>
         /// MES鎴愬搧鍑哄簱鎺ュ彛璋冪敤
         /// </summary>
         /// <returns></returns>
         WebResponseContent ShipmentOrderSync(MesShipmentOrderSync model);
-        /// <summary>
-        /// 鐢熸垚鎴愬搧鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="ProOutNo">鍑哄簱璁㈠崟鍙�</param>
-        /// <param name="StationCode">绔欏彴鍦板潃</param>
-        /// <returns></returns>
-        Task<WebResponseContent> OutProductTask(int[] keys, string StationCode, int Grade);
         /// <summary>
         /// 鎴愬搧浣欐枡閫�搴撳叆浠�
         /// </summary>
@@ -325,9 +216,5 @@
         /// <param name="startPoint"></param>
         /// <returns></returns>
         WebResponseContent EmptyBackTask(string barCode, string startPoint);
-        /// <summary>
-        /// 浜哄伐閫夋嫨搴撳瓨
-        /// </summary>
-        WebResponseContent OutProductSelect(int orderDetailId, List<ProStockViewDTO> proStockViews);
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ErpProInOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ErpProInOrderRepository.cs"
deleted file mode 100644
index 6274a41..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ErpProInOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    public class ErpProInOrderRepository : RepositoryBase<Dt_ErpProInOrder>, IErpProInOrderRepository
-    {
-        public ErpProInOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderDetailRepository.cs"
deleted file mode 100644
index 46a9294..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁嗕粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class InboundOrderDetailRepository : RepositoryBase<Dt_InboundOrderDetail>, IInboundOrderDetailRepository
-    {
-        public InboundOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderDetail_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderDetail_HtyRepository.cs"
deleted file mode 100644
index 1266b73..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderDetail_HtyRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁嗗巻鍙蹭粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class InboundOrderDetail_HtyRepository : RepositoryBase<Dt_InboundOrderDetail_Hty>, IInboundOrderDetail_HtyRepository
-    {
-        public InboundOrderDetail_HtyRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderRepository.cs"
deleted file mode 100644
index 371a492..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrderRepository.cs"
+++ /dev/null
@@ -1,24 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class InboundOrderRepository : RepositoryBase<Dt_InboundOrder>, IInboundOrderRepository
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-
-        public InboundOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrder_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrder_HtyRepository.cs"
deleted file mode 100644
index f81ab2f..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundOrder_HtyRepository.cs"
+++ /dev/null
@@ -1,24 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曞巻鍙蹭粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class InboundOrder_HtyRepository : RepositoryBase<Dt_InboundOrder_Hty>, IInboundOrder_HtyRepository
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-
-        public InboundOrder_HtyRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundRepository.cs"
deleted file mode 100644
index e1c76e9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/InboundRepository.cs"
+++ /dev/null
@@ -1,42 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_IInboundRepository;
-
-namespace WIDESEA_InboundRepository
-{
-    public class InboundRepository : IInboundRepository
-    {
-        public IInboundOrderDetailRepository InboundOrderDetailRepository { get; }
-
-        public IInboundOrderRepository InboundOrderRepository { get; }
-
-        public IReceiveOrderDetailRepository ReceiveOrderDetailRepository { get; }
-
-        public IReceiveOrderRepository ReceiveOrderRepository { get; }
-
-        public IPurchaseOrderDetailRepository PurchaseOrderDetailRepository { get; }
-
-        public IPurchaseOrderRepository PurchaseOrderRepository { get; }
-        public IReturnOrderRepository ReturnOrderRepository { get; }
-        public IReturnOrderDetailRepository ReturnOrderDetailRepository { get; }
-        public IMesProInOrderRepository MesProInOrderRepository { get; }
-        public IMesProInOrderDetailRepository MesProInOrderDetailRepository { get; }
-
-        public InboundRepository(IInboundOrderDetailRepository inboundOrderDetailRepository, IInboundOrderRepository inboundOrderRepository, IReceiveOrderDetailRepository receiveOrderDetailRepository, IReceiveOrderRepository receiveOrderRepository, IPurchaseOrderDetailRepository purchaseOrderDetailRepository, IPurchaseOrderRepository purchaseOrderRepository, IReturnOrderRepository returnOrderRepository, IReturnOrderDetailRepository returnOrderDetailRepository, IMesProInOrderRepository mesProInOrderRepository, IMesProInOrderDetailRepository mesProInOrderDetailRepository)
-        {
-            InboundOrderDetailRepository = inboundOrderDetailRepository;
-            InboundOrderRepository = inboundOrderRepository;
-            ReceiveOrderDetailRepository = receiveOrderDetailRepository;
-            ReceiveOrderRepository = receiveOrderRepository;
-            PurchaseOrderDetailRepository = purchaseOrderDetailRepository;
-            PurchaseOrderRepository = purchaseOrderRepository;
-            ReturnOrderRepository = returnOrderRepository;
-            ReturnOrderDetailRepository = returnOrderDetailRepository;
-            MesProInOrderRepository = mesProInOrderRepository;
-            MesProInOrderDetailRepository = mesProInOrderDetailRepository;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/MesProInOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/MesProInOrderDetailRepository.cs"
deleted file mode 100644
index 704eb6c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/MesProInOrderDetailRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    public class MesProInOrderDetailRepository : RepositoryBase<Dt_MesProInOrderDetail>, IMesProInOrderDetailRepository
-    {
-        public MesProInOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/MesProInOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/MesProInOrderRepository.cs"
deleted file mode 100644
index 2f154f3..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/MesProInOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    public class MesProInOrderRepository : RepositoryBase<Dt_MesProInOrder>, IMesProInOrderRepository
-    {
-        public MesProInOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ProInStatisticsRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ProInStatisticsRepository.cs"
deleted file mode 100644
index 85feacf..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ProInStatisticsRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    public class ProInStatisticsRepository : RepositoryBase<Dt_ProInStatistics>, IProInStatisticsRepository
-    {
-        public ProInStatisticsRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/PurchaseOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/PurchaseOrderDetailRepository.cs"
deleted file mode 100644
index b04d125..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/PurchaseOrderDetailRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 閲囪喘鍗曟槑缁嗕粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class PurchaseOrderDetailRepository : RepositoryBase<Dt_PurchaseOrderDetail>, IPurchaseOrderDetailRepository
-    {
-        public PurchaseOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/PurchaseOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/PurchaseOrderRepository.cs"
deleted file mode 100644
index 2156a34..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/PurchaseOrderRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 閲囪喘鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class PurchaseOrderRepository : RepositoryBase<Dt_PurchaseOrder>, IPurchaseOrderRepository
-    {
-        public PurchaseOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReceiveOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReceiveOrderDetailRepository.cs"
deleted file mode 100644
index e3bfaa4..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReceiveOrderDetailRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鏀惰揣鍗曟槑缁嗕粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class ReceiveOrderDetailRepository : RepositoryBase<Dt_ReceiveOrderDetail>, IReceiveOrderDetailRepository
-    {
-        public ReceiveOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReceiveOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReceiveOrderRepository.cs"
deleted file mode 100644
index f8cc367..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReceiveOrderRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鏀惰揣鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class ReceiveOrderRepository : RepositoryBase<Dt_ReceiveOrder>, IReceiveOrderRepository
-    {
-        public ReceiveOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReturnOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReturnOrderDetailRepository.cs"
deleted file mode 100644
index 09ed473..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReturnOrderDetailRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    public class ReturnOrderDetailRepository : RepositoryBase<Dt_ReturnOrderDetail>, IReturnOrderDetailRepository
-    {
-        public ReturnOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReturnOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReturnOrderRepository.cs"
deleted file mode 100644
index a72ab45..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/ReturnOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    public class ReturnOrderRepository : RepositoryBase<Dt_ReturnOrder>, IReturnOrderRepository
-    {
-        public ReturnOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/TakeStockOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/TakeStockOrderDetailRepository.cs"
deleted file mode 100644
index 101b836..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/TakeStockOrderDetailRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鐩樼偣鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class TakeStockOrderDetailRepository : RepositoryBase<Dt_TakeStockOrderDetail>, ITakeStockOrderDetailRepository
-    {
-        public TakeStockOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/TakeStockOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/TakeStockOrderRepository.cs"
deleted file mode 100644
index 735f0f0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundRepository/TakeStockOrderRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundRepository
-{
-    /// <summary>
-    /// 鐩樼偣鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class TakeStockOrderRepository : RepositoryBase<Dt_TakeStockOrder>, ITakeStockOrderRepository
-    {
-        public TakeStockOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ErpProInOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ErpProInOrderService.cs"
deleted file mode 100644
index 694f677..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ErpProInOrderService.cs"
+++ /dev/null
@@ -1,76 +0,0 @@
-锘縰sing AutoMapper;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class ErpProInOrderService : ServiceBase<Dt_ErpProInOrder, IErpProInOrderRepository>, IErpProInOrderService
-    {
-        public IErpProInOrderRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private IBasicRepository _basicRepository;
-        private readonly IMapper _mapper;
-        public ErpProInOrderService(IErpProInOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManag, IBasicRepository basicRepository,IMapper mapper) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManag;
-            _basicRepository = basicRepository;
-            _mapper = mapper;
-        }
-        /// <summary>
-        /// 鎺ユ敹鎴愬搧璋冨叆閿�鍞崟鎹�
-        /// </summary>
-        public WebResponseContent ProductWarehousingOrder(ErpProductWarehousingOrderDTO warehousingOrderDTO)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鍒ゆ柇鍗曟嵁鏄惁宸插瓨鍦�
-                Dt_ErpProInOrder erpProInOrderOld = BaseDal.QueryFirst(x => x.UpperOrderNo == warehousingOrderDTO.TransferNo);
-                if ( erpProInOrderOld != null )
-                {
-                    return content.Error($"鍗曟嵁{warehousingOrderDTO.TransferNo}宸插瓨鍦�");
-                }
-                //鍒ゆ柇鎵�浼犲鎴锋槸鍚﹀瓨鍦�
-                Dt_CustomerInfo customerInfo = _basicRepository.CustomerInfoRepository.QueryFirst(x=>x.Code==warehousingOrderDTO.Customer);
-                if ( customerInfo == null )
-                {
-                    return content.Error($"瀹㈡埛{warehousingOrderDTO.Customer}淇℃伅涓嶅瓨鍦�");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                ErpProOrderTypeEnum orderTypeEnum = new ErpProOrderTypeEnum();
-                if (warehousingOrderDTO.TransferNo.Substring(0, 3)=="DBD")
-                {
-                    orderTypeEnum = ErpProOrderTypeEnum.ProAllocat;
-                }
-                else
-                {
-                    orderTypeEnum = ErpProOrderTypeEnum.ProConsign;
-                }
-                Dt_ErpProInOrder erpProInOrder = _mapper.Map<Dt_ErpProInOrder>(warehousingOrderDTO);
-                erpProInOrder.OrderType = orderTypeEnum.ObjToInt();
-                erpProInOrder.WarehouseId = warehouse.WarehouseId;
-                BaseDal.AddData(erpProInOrder);
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderDetailService.cs"
deleted file mode 100644
index 00cd1d2..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderDetailService.cs"
+++ /dev/null
@@ -1,40 +0,0 @@
-锘縰sing Org.BouncyCastle.Crypto;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class InboundOrderDetailService : ServiceBase<Dt_InboundOrderDetail, IInboundOrderDetailRepository>, IInboundOrderDetailService
-    {
-        public IInboundOrderDetailRepository Repository => BaseDal;
-
-        public InboundOrderDetailService(IInboundOrderDetailRepository BaseDal) : base(BaseDal)
-        {
-        }
-        public WebResponseContent GetInboundOrderDetails(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                string orderNo = saveModel.MainData["orderNo"].ToString();
-                Dt_InboundOrder inboundOrder = Db.Queryable<Dt_InboundOrder>().Where(x => x.InboundOrderNo == orderNo).Includes(x => x.Details).First();
-                content.OK(data: inboundOrder.Details);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderDetail_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderDetail_HtyService.cs"
deleted file mode 100644
index 366c165..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderDetail_HtyService.cs"
+++ /dev/null
@@ -1,23 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class InboundOrderDetail_HtyService : ServiceBase<Dt_InboundOrderDetail_Hty, IInboundOrderDetail_HtyRepository>, IInboundOrderDetail_HtyService
-    {
-        public IInboundOrderDetail_HtyRepository Repository => BaseDal;
-
-        public InboundOrderDetail_HtyService(IInboundOrderDetail_HtyRepository BaseDal) : base(BaseDal)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderService.cs"
deleted file mode 100644
index ae1b538..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrderService.cs"
+++ /dev/null
@@ -1,1851 +0,0 @@
-锘縰sing AutoMapper;
-using HslCommunication.WebSocket;
-using Microsoft.AspNetCore.Mvc.RazorPages;
-using Newtonsoft.Json;
-using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
-using OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup;
-using SqlSugar;
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Dynamic;
-using System.Globalization;
-using System.Linq;
-using System.Linq.Expressions;
-using System.Reflection;
-using System.Reflection.Metadata;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.Seed;
-using WIDESEA_Core.Utilities;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Basic;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.MES;
-using WIDESEA_External.ERPService;
-using WIDESEA_External.Model;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_ITaskInfoRepository;
-using WIDESEA_ITaskInfoService;
-using WIDESEA_Model.Models;
-using WIDESEA_StockRepository;
-using static Org.BouncyCastle.Pqc.Crypto.Utilities.PqcOtherInfoGenerator;
-
-namespace WIDESEA_InboundService
-{
-    public class InboundOrderService : ServiceBase<Dt_InboundOrder, IInboundOrderRepository>, IInboundOrderService
-    {
-        private readonly IMapper _mapper;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IInboundRepository _inboundRepository;
-        private readonly IBasicRepository _basicRepository;
-        private readonly IStockRepository _stockRepository;
-        private readonly IRecordService _recordService;
-        private readonly IInvokeERPService _invokeERPService;
-        private readonly IWarehouseService _warehouseService;
-        private readonly IPalletTypeInfoRepository _palletTypeInfoRepository;
-
-        public IInboundOrderRepository Repository => BaseDal;
-
-        public InboundOrderService(IInboundOrderRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IInboundRepository inboundRepository, IBasicRepository basicRepository, IStockRepository stockRepository, IRecordService recordService, IInvokeERPService invokeERPService, IWarehouseService warehouseService, IPalletTypeInfoRepository palletTypeInfoRepository) : base(BaseDal)
-        {
-            _mapper = mapper;
-            _unitOfWorkManage = unitOfWorkManage;
-            _inboundRepository = inboundRepository;
-            _basicRepository = basicRepository;
-            _stockRepository = stockRepository;
-            _recordService = recordService;
-            _invokeERPService = invokeERPService;
-            _warehouseService = warehouseService;
-            _palletTypeInfoRepository = palletTypeInfoRepository;
-        }
-        public override object GetDetailPage(PageDataOptions pageData)
-        {
-            Type t = typeof(Dt_InboundOrder);
-
-            if (pageData.Value == null) return new PageGridData<object>(total: 0, null);
-            string keyName = t.GetKeyName();
-            ////鐢熸垚鏌ヨ鏉′欢
-            //Expression<Func<TEntity, bool>> whereExpression = keyName.CreateExpression<TEntity>(pageData.Value, LinqExpressionType.Equal);
-            int totalCount = 0;
-            PropertyInfo propertyInfo = t.GetProperties().FirstOrDefault(x => x.GetCustomAttribute<Navigate>() != null);
-            if (propertyInfo != null)
-            {
-                Type detailType = propertyInfo.PropertyType.GetGenericArguments()[0];
-                Navigate navigate = propertyInfo.GetCustomAttribute<Navigate>();
-                List<Dt_InboundOrderDetail> list = BaseDal.Db.Queryable<Dt_InboundOrderDetail>().Where(navigate.GetName(), "=", pageData.Value).ToPageList(pageData.Page, pageData.Rows, ref totalCount);
-                decimal sum = 0;
-                list.ForEach(x =>
-                {
-                    sum += Convert.ToDecimal(x.OrderQuantity);
-                });
-                PageGridData<Dt_InboundOrderDetail> pageGridData = new PageGridData<Dt_InboundOrderDetail>()
-                {
-                    Total= totalCount,
-                    Rows=list,
-                    Summary=new
-                    {
-                        OrderQuantity = Math.Round(sum, 3),
-                    }
-                };
-                return pageGridData;
-            }
-            return new PageGridData<object>(total: 0, null);
-        }
-        /// <summary>
-        /// 鍏朵粬鍏ュ簱鍗曟帴鏀�(璋冩嫈鍏ヤ粨,瀹緵鍥炴敹,鐗╂枡閿�鍞��璐�)
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent ReceiveWarehousingOrder(ErpInOrderDTO model)
-        {
-            try
-            {
-                return model.Way switch
-                {
-                    1 => AddSingOrder(model),
-                    2 => UpdateSingOrder(model),
-                    3 => DeleteSingOrder(model),
-                    _ => WebResponseContent.Instance.Error($"鎿嶄綔绫诲瀷涓嶅瓨鍦�,Way:{model.Way}"),
-                };
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 鏂板鍗曟嵁
-        /// </summary>
-        public WebResponseContent AddSingOrder(ErpInOrderDTO model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇鐗╂枡淇℃伅
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x=>x.MaterielCode==model.MCode);
-                if (materielInfo==null)
-                {
-                    return content.Error($"鐗╂枡{model.MCode}涓嶅瓨鍦�!");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == model.WaId);
-                if (warehouse == null)
-                {
-                    return content.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-                }
-                Dt_InboundOrder inboundOrderOld = BaseDal.Db.Queryable<Dt_InboundOrder>().Where(x => x.UpperOrderNo == model.OrderNo).Includes(x=>x.Details).First();
-                if (inboundOrderOld!=null)
-                {
-                    if (inboundOrderOld.OrderStatus!= OrderDetailStatusEnum.New.ObjToInt())
-                    {
-                        return content.Error($"{model.OrderNo}鍗曟嵁宸插紑濮�!");
-                    }
-                    Dt_InboundOrderDetail? inboundOrderDetailOld = inboundOrderOld.Details?.FirstOrDefault(x => x.RowNo == model.RowNo.ObjToInt() && x.MaterielCode == model.MCode);
-                    if (inboundOrderDetailOld!=null)
-                    {
-                        inboundOrderDetailOld.OrderQuantity += model.Qty;
-                        _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetailOld);
-                    }
-                    else
-                    {
-                        Dt_InboundOrderDetail orderDetail = new Dt_InboundOrderDetail()
-                        {
-                            OrderId= inboundOrderOld.Id,
-                            MaterielCode = model.MCode,
-                            BatchNo = "",
-                            OrderQuantity = model.Qty,
-                            ReceiptQuantity = 0,
-                            OverInQuantity = 0,
-                            OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                            Unit = materielInfo.MaterielUnit,
-                            RowNo = model.RowNo.ObjToInt(),
-                            MaterielName = materielInfo.MaterielName,
-                            MaterielSpec = materielInfo.MaterielSpec
-                        };
-                        _inboundRepository.InboundOrderDetailRepository.AddData(orderDetail);
-                    }
-                }
-                else
-                {
-                    Dt_InboundOrderDetail orderDetail = new Dt_InboundOrderDetail()
-                    {
-                        MaterielCode = model.MCode,
-                        BatchNo = "",
-                        OrderQuantity = model.Qty,
-                        ReceiptQuantity = 0,
-                        OverInQuantity = 0,
-                        OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                        Unit = materielInfo.MaterielUnit,
-                        RowNo = model.RowNo.ObjToInt(),
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec = materielInfo.MaterielSpec
-                    };
-
-                    Dt_InboundOrder inboundOrder = new Dt_InboundOrder()
-                    {
-                        UpperOrderNo = model.OrderNo,
-                        WarehouseId = warehouse.WarehouseId,
-                        SupplierId = "",
-                        OrderStatus = InOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                        CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                        Remark = model.Note,
-                        Details = new List<Dt_InboundOrderDetail> { orderDetail }
-                    };
-                    switch (model.OType)
-                    {
-                        case 1:
-                            inboundOrder.OrderType = InOrderTypeEnum.Allocat.ObjToInt();
-                            break;
-                        case 3:
-                            inboundOrder.OrderType = InOrderTypeEnum.CustomerRecovery.ObjToInt();
-                            break;
-                        case 6:
-                            inboundOrder.OrderType = InOrderTypeEnum.SaleReturn.ObjToInt();
-                            break;
-                        default:
-                            break;
-                    };
-                    Db.InsertNav(inboundOrder).Include(x => x.Details).ExecuteCommand();
-                }
-                return content.OK("鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 淇敼鍗曟嵁
-        /// </summary>
-        public WebResponseContent UpdateSingOrder(ErpInOrderDTO model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇鍗曟嵁淇℃伅
-                Dt_InboundOrder inboundOrder = Db.Queryable<Dt_InboundOrder>().Where(x => x.UpperOrderNo == model.OrderNo).First();
-                if (inboundOrder == null)
-                {
-                    return content.Error($"鍗曟嵁{model.OrderNo}涓嶅瓨鍦�!");
-                }
-                if (inboundOrder.OrderStatus>=InOrderStatusEnum.鍏ュ簱涓�.ObjToInt())
-                {
-                    return content.Error($"鍗曟嵁{model.OrderNo}鍏ュ簱涓垨宸插畬鎴�");
-                }
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鍒犻櫎鍗曟嵁
-        /// </summary>
-        public WebResponseContent DeleteSingOrder(ErpInOrderDTO model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            return content;
-        }
-        public WebResponseContent GetInboundOrders(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                int pageNo = saveModel.MainData["pageNo"].ObjToInt();
-                string? orderNo = saveModel.MainData["orderNo"].ToString();
-                int warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                List<Dt_InboundOrder> dt_ReceiveOrders = new List<Dt_InboundOrder>();
-                if (string.IsNullOrEmpty(orderNo))
-                {
-                    dt_ReceiveOrders = Db.Queryable<Dt_InboundOrder>().Where(x => x.OrderStatus < InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt() && x.WarehouseId == warehouseId).Includes(x=>x.Details).OrderByDescending(x => x.CreateDate).ToPageList(pageNo, 10);
-                }
-                else
-                {
-                    dt_ReceiveOrders = Db.Queryable<Dt_InboundOrder>().Where(x => (x.InboundOrderNo.Contains(orderNo)) && x.OrderStatus < InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt() && x.WarehouseId == warehouseId).Includes(x => x.Details).OrderByDescending(x => x.CreateDate).ToPageList(pageNo, 10);
-                }
-
-                content.OK(data: dt_ReceiveOrders);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鍗曚釜鐗╂枡鐮佺粍鐩� 閫傜敤娴嬭瘯鏋�
-        /// </summary>
-        /// <param name="inboundOrderId"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="serNum"></param>
-        /// <returns></returns>
-        public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, string serNum)
-        {
-            try
-            {
-                Dt_InboundOrder inboundOrder = BaseDal.Db.Queryable<Dt_InboundOrder>().Where(x => x.Id == inboundOrderId).Includes(x => x.Details).First();
-                if (inboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟淇℃伅");
-                }
-                if (inboundOrder.OrderStatus >= InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鍏ュ簱鍗曞凡缁撴潫");
-                }
-                if (inboundOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟鏄庣粏淇℃伅");
-                }
-                MatSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNum);
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == model.MaterielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-                if (materielInfo.WarehouseId != inboundOrder.WarehouseId)
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ墿鏂欎笉灞炰簬鏈粨");
-                }
-                Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗�");
-                }
-                if (receiveOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗曟槑缁�");
-                }
-                List<string> purchaseOrderNos = receiveOrder.Details.Select(x => x.PurchaseOrderNo).ToList();
-                if (!purchaseOrderNos.Contains(model.PurchaseOrderNo))
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旀敹璐у崟鏄庣粏涓噰璐崟");
-                }
-                Dt_ReceiveOrderDetail? receiveOrderDetail = receiveOrder.Details.FirstOrDefault(x => x.MaterielCode == model.MaterielCode);
-                if (receiveOrderDetail == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-                Dt_InboundOrderDetail? inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.MaterielCode == model.MaterielCode);
-                if (inboundOrderDetail == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鍏ュ簱鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-                if (inboundOrderDetail.OrderDetailStatus > OrderDetailStatusEnum.GroupAndInbound.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"瀵瑰簲鍏ュ簱鍗曟槑缁嗗凡缁撴潫");
-                }
-                float inboundDetailSum = inboundOrderDetail.OverInQuantity + inboundOrderDetail.ReceiptQuantity;
-                if (inboundDetailSum == inboundOrderDetail.OrderQuantity)
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ墿鏂欏叆搴撳崟鏄庣粏宸插叏閮ㄧ粍鐩樺畬鎴�");
-                }
-                if (model.Quantity > receiveOrderDetail.ReceivedQuantity || (inboundDetailSum + model.Quantity) > receiveOrderDetail.ReceivedQuantity)
-                {
-                    return WebResponseContent.Instance.Error($"涓庤鏀惰揣鍗曟槑缁嗘敹璐ф暟閲忎笉涓�鑷�");
-                }
-                Dt_StockInfo oldStockinfo = _stockRepository.StockInfoRepository.QueryFirst(x => x.PalletCode == palletCode);
-                if (oldStockinfo != null)
-                {
-                    return WebResponseContent.Instance.Error($"鎵樼洏閲嶅");
-                }
-                Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                {
-                    BatchNo = model.LotNo,
-                    MaterielCode = materielInfo.MaterielCode,
-                    MaterielName = materielInfo.MaterielName,
-                    OrderNo = inboundOrder.InboundOrderNo,
-                    SerialNumber = model.SerialNumber,
-                    StockQuantity = model.Quantity,
-                    OutboundQuantity = 0,
-                    Unit = materielInfo.MaterielUnit,
-                    Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                    ProductionDate = model.ProductionDate,
-                    EffectiveDate = model.EffectiveDate,
-                    InboundOrderRowNo = inboundOrderDetail.RowNo,
-                };
-
-                Dt_StockInfo stockInfo = new Dt_StockInfo()
-                {
-                    PalletCode = palletCode,
-                    StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                    WarehouseId = inboundOrder.WarehouseId,
-                    Details = new List<Dt_StockInfoDetail> { stockInfoDetail }
-                };
-                inboundOrderDetail.ReceiptQuantity += model.Quantity;
-                _unitOfWorkManage.BeginTran();
-                if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                {
-                    inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.GroupAndInbound.ObjToInt();
-                }
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetail);
-                if (inboundOrder.OrderStatus == InOrderStatusEnum.鏈紑濮�.ObjToInt())
-                {
-                    inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
-                    BaseDal.UpdateData(inboundOrder);
-                }
-                _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand();
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-
-        /// <summary>
-        /// 鍏ュ钩搴擄紝鐩存帴娣诲姞搴撳瓨
-        /// </summary>
-        /// <param name="warehouseId"></param>
-        /// <param name="serNums"></param>
-        /// <returns></returns>
-        public WebResponseContent InPinKu(string inboundOrderId, int warehouseId, List<string> serNums)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == warehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-                Dt_InboundOrder inboundOrder = BaseDal.Db.Queryable<Dt_InboundOrder>().Where(x => x.InboundOrderNo == inboundOrderId && x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).First();
-                if (inboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟淇℃伅");
-                }
-                if (inboundOrder.Details == null || inboundOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟鏄庣粏淇℃伅");
-                }
-
-                //鍏ュ簱鏄庣粏鍘熷畬鎴愭暟閲�
-                int oldCount = inboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).ToList().Count;
-
-                Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                if (receiveOrder == null && inboundOrder.OrderType==InOrderTypeEnum.Purchase.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗�");
-                }
-                if ((receiveOrder?.Details == null || receiveOrder?.Details.Count <= 0) && inboundOrder.OrderType == InOrderTypeEnum.Purchase.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗曟槑缁�");
-                }
-
-                List<string> purchaseOrderNos = receiveOrder?.Details.Select(x => x.PurchaseOrderNo).ToList();
-
-                List<MatSerNumAnalysisModel> models = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNums);
-
-                if (models.Select(x => x.MaterielCode).Distinct().Count() > 1)
-                {
-                    return WebResponseContent.Instance.Error($"鐗╂枡涓嶅彲娣锋斁");
-                }
-
-                string materielCode = models.FirstOrDefault()?.MaterielCode ?? "";
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-
-                List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details.Where(x => x.MaterielCode == materielCode).ToList();
-
-                if (inboundOrderDetails == null || inboundOrderDetails.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鍏ュ簱鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-                foreach (var model in models)
-                {
-                    if (!inboundOrderDetails.Any(x => x.BatchNo == model.LotNo))
-                        return WebResponseContent.Instance.Error($"鏈湪鍏ュ簱鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欐壒娆°�恵model.LotNo}銆�");
-                }
-                if (receiveOrder?.Details.FirstOrDefault(x => x.MaterielCode == materielCode) == null && inboundOrder.OrderType == InOrderTypeEnum.Purchase.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-                float beforeQuantity = 0;
-                Dt_StockInfo stockInfo = new Dt_StockInfo()
-                {
-                    PalletCode = DateTime.Now.ToString("yyyyMMddHHmmss"),
-                    StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt(),
-                    WarehouseId = inboundOrder.WarehouseId,
-                    PalletType = PalletTypeEnum.SmallPallet.ObjToInt(),
-                    LocationCode = "骞冲簱浣�",
-                    Details = new List<Dt_StockInfoDetail>()
-                };
-
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                List<int> detailKeys = new List<int>();
-                Dt_ReturnOrder? returnOrder = null;
-                foreach (var model in models)
-                {
-                    if (purchaseOrderNos?.FirstOrDefault(x => x == model.PurchaseOrderNo) == null && inboundOrder.OrderType == InOrderTypeEnum.Purchase.ObjToInt())
-                    {
-                        return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鍗曟槑缁嗕腑鎵惧埌璇ラ噰璐崟");
-                    }
-
-                    Dt_InboundOrderDetail? notGroupDetail = inboundOrderDetails.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt() && x.OrderQuantity == model.Quantity && !detailKeys.Contains(x.Id) && x.OrderQuantity > x.ReceiptQuantity).FirstOrDefault();
-
-                    if (notGroupDetail == null)
-                    {
-                        return WebResponseContent.Instance.Error($"璇ョ墿鏂欏湪璇ュ叆搴撳崟涓凡鍏ㄩ儴缁勭洏瀹屾垚");
-                    }
-                    detailKeys.Add(notGroupDetail.Id);
-
-                    Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                    {
-                        BatchNo = model.LotNo,
-                        MaterielCode = materielInfo.MaterielCode,
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec=materielInfo.MaterielSpec,
-                        OrderNo = inboundOrder.InboundOrderNo,
-                        SerialNumber = model.SerialNumber,
-                        StockQuantity = model.Quantity,
-                        OutboundQuantity = 0,
-                        Unit = materielInfo.MaterielUnit,
-                        Status = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt(),
-                        ProductionDate = model.ProductionDate,
-                        EffectiveDate = model.EffectiveDate,
-                        InboundOrderRowNo = notGroupDetail.RowNo,
-                    };
-                    oldCount++;
-
-                    if (stockInfo.Id > 0)
-                    {
-                        stockInfoDetail.StockId = stockInfo.Id;
-                    }
-                    stockInfo.Details.Add(stockInfoDetail);
-
-                    stockInfoDetails.Add(stockInfoDetail);
-
-                    notGroupDetail.ReceiptQuantity = model.Quantity;
-                    notGroupDetail.OverInQuantity = model.Quantity;
-                    notGroupDetail.OrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                }
-
-                //鍏ュ簱鏄庣粏鏂板瀹屾垚鏁伴噺
-                if (inboundOrder.Details.Count == oldCount)
-                {
-                    inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt();
-                    //鍒ゆ柇鏄惁涓洪��鏂欏叆搴撳崟
-                    if (inboundOrder.OrderType == InOrderTypeEnum.Return.ObjToInt())
-                    {
-                        returnOrder = _inboundRepository.ReturnOrderRepository.Db.Queryable<Dt_ReturnOrder>().Where(x => x.OrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                        returnOrder.ReturnOrderStatus = ReturnOrderStatusEnum.Returned.ObjToInt();
-                        foreach (var item in inboundOrder.Details)
-                        {
-                            Dt_ReturnOrderDetail returnOrderDetail = returnOrder.Details?.FirstOrDefault(x => x.MCode == item.MaterielCode);
-                            if (returnOrderDetail != null)
-                            {
-                                returnOrderDetail.OverReturnQty = item.OverInQuantity;
-                                returnOrderDetail.OrderDetailStatus = ReturnOrderStatusEnum.Returned.ObjToInt();
-                            }
-                        }
-                    }
-                }
-                else
-                    inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
-                float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-
-                _unitOfWorkManage.BeginTran();
-                if (stockInfo.Id == 0)
-                {
-                    _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand();
-                }
-                else
-                {
-                    _stockRepository.StockInfoRepository.Db.UpdateNav(stockInfo).Include(x => x.Details, new UpdateNavOptions() { OneToManyInsertOrUpdate = true }).ExecuteCommand();
-                }
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetails);
-                _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
-                if (returnOrder != null)
-                {
-                    _inboundRepository.ReturnOrderRepository.UpdateData(returnOrder);
-                    _inboundRepository.ReturnOrderDetailRepository.UpdateData(returnOrder.Details);
-                }
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.Inbound);
-                _unitOfWorkManage.CommitTran();
-
-                #region 鍏ュ簱瀹屾垚涓婃姤ERP
-                if (inboundOrder != null && inboundOrder.OrderStatus == InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt() && inboundOrder.OrderType != InOrderTypeEnum.Allocat.ObjToInt())
-                {
-                    if (inboundOrder.OrderType == InOrderTypeEnum.Return.ObjToInt())
-                    {
-                        FeedbackReturnOrder(inboundOrder, returnOrder);
-                    }
-                    else
-                    {
-                        FeedbackInboundOrder(inboundOrder.Id);
-                    }
-                }
-                #endregion
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// WMS鍏ュ钩搴撲笉鎺ㄥ崟鎹�
-        /// </summary>
-        /// <param name="warehouseId"></param>
-        /// <param name="serNums"></param>
-        /// <returns></returns>
-        public WebResponseContent WMSInPinKu(int warehouseId, List<string> serNums)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == warehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-                List<MatSerNumAnalysisModel> models = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNums);
-                if (models.Select(x => x.MaterielCode).Distinct().Count() > 1)
-                {
-                    return WebResponseContent.Instance.Error($"鐗╂枡涓嶅彲娣锋斁");
-                }
-
-                string materielCode = models.FirstOrDefault()?.MaterielCode ?? "";
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-                float beforeQuantity = 0;
-                Dt_StockInfo stockInfo = new Dt_StockInfo()
-                {
-                    PalletCode = DateTime.Now.ToString("yyyyMMddHHmmss"),
-                    StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt(),
-                    WarehouseId = warehouse.WarehouseId,
-                    PalletType = PalletTypeEnum.SmallPallet.ObjToInt(),
-                    LocationCode = "骞冲簱浣�",
-                    Details = new List<Dt_StockInfoDetail>()
-                };
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                foreach (var model in models)
-                {
-                    Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                    {
-                        BatchNo = model.LotNo,
-                        MaterielCode = materielInfo.MaterielCode,
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec = materielInfo.MaterielSpec,
-                        SerialNumber = model.SerialNumber,
-                        StockQuantity = model.Quantity,
-                        OutboundQuantity = 0,
-                        OrderNo = "",
-                        Unit = materielInfo.MaterielUnit,
-                        Status = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt(),
-                        ProductionDate = model.ProductionDate,
-                        EffectiveDate = model.EffectiveDate,
-                    };
-
-                    if (stockInfo.Id > 0)
-                    {
-                        stockInfoDetail.StockId = stockInfo.Id;
-                    }
-                    stockInfo.Details.Add(stockInfoDetail);
-
-                    stockInfoDetails.Add(stockInfoDetail);
-
-                }
-                float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-                _unitOfWorkManage.BeginTran();
-                if (stockInfo.Id == 0)
-                {
-                    _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand();
-                }
-                else
-                {
-                    _stockRepository.StockInfoRepository.Db.UpdateNav(stockInfo).Include(x => x.Details, new UpdateNavOptions() { OneToManyInsertOrUpdate = true }).ExecuteCommand();
-                }
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.Inbound);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 缁勭洏
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        public WebResponseContent MaterielGroup(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                var orderNo = saveModel.MainData["orderNo"].ToString();
-                var palletCode = saveModel.MainData["palletCode"].ToString();
-                var warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                var Initiallife = saveModel.MainData["initiallife"].ObjToInt();
-                var serNums = saveModel.DelKeys.Select(x => x.ToString()).ToList();
-                Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == warehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-
-                Dt_InboundOrder inboundOrder = BaseDal.Db.Queryable<Dt_InboundOrder>().Where(x => x.InboundOrderNo == orderNo && x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).First();
-                if (inboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟淇℃伅");
-                }
-                if (inboundOrder.Details == null || inboundOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟鏄庣粏淇℃伅");
-                }
-                List<MatSerNumAnalysisModel> models = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNums);
-                //楠岃瘉鍒ゆ柇鏃堕棿鏍煎紡
-                WebResponseContent IsValidContent = IsValidMCDates(models);
-                if (!IsValidContent.Status)
-                {
-                    return content.Error(IsValidContent.Message);
-                }
-                //闄ら噰璐叆搴撳崟浠ュ鍏朵粬鍏ュ簱鍗曠粍鐩樻暟鎹鐞�
-                if (inboundOrder.OrderType != InOrderTypeEnum.Purchase.ObjToInt())
-                {
-                    return OtherInGroup(inboundOrder, palletCode, Initiallife, warehouse, models);
-                }
-                Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗�");
-                }
-                if (receiveOrder.Details == null || receiveOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗曟槑缁�");
-                }
-
-                List<string> purchaseOrderNos = receiveOrder.Details.Select(x => x.PurchaseOrderNo).ToList();
-                if (models.Select(x => x.MaterielCode).Distinct().Count() > 1)
-                {
-                    return WebResponseContent.Instance.Error($"鐗╂枡涓嶅彲娣锋斁");
-                }
-
-                string materielCode = models.FirstOrDefault()?.MaterielCode ?? "";
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-
-                List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details.Where(x => x.MaterielCode == materielCode && x.BatchNo == (models.FirstOrDefault()?.LotNo ?? "")).ToList();
-
-                if (inboundOrderDetails == null || inboundOrderDetails.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鍏ュ簱鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-                if (receiveOrder.Details.FirstOrDefault(x => x.MaterielCode == materielCode) == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-
-                float beforeQuantity = 0;
-
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode).Includes(x => x.Details).First();
-                if (stockInfo == null)
-                {
-                    stockInfo = new Dt_StockInfo()
-                    {
-                        PalletCode = palletCode,
-                        StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        WarehouseId = inboundOrder.WarehouseId,
-                        PalletType = GetPalletType(warehouse, palletCode),
-                        Details = new List<Dt_StockInfoDetail>()
-                    };
-                }
-                else
-                {
-                    if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt())
-                    {
-                        return WebResponseContent.Instance.Error($"鎵樼洏鍙烽噸澶�");
-                    }
-                    beforeQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-                }
-
-                if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                {
-                    stockInfo.Remark = Initiallife.ToString();
-                    string batchNo = models.FirstOrDefault()?.LotNo ?? "";
-                    Dt_StockInfoDetail existDetail = _stockRepository.StockInfoDetailRepository.QueryFirst(x => x.BatchNo == batchNo);
-                    if (existDetail != null)
-                    {
-                        return WebResponseContent.Instance.Error($"{batchNo}娴嬭瘯鏋跺凡瀛樺湪");
-                    }
-                    if (models.Count >= 2)
-                    {
-                        return WebResponseContent.Instance.Error($"缁勭洏鏄庣粏涓嶅敮涓�");
-                    }
-                    if (palletCode.Substring(0, 1) == "6")
-                    {
-                        stockInfo.PalletType = PalletTypeEnum.MediumPallet.ObjToInt();
-                    }
-                    else
-                    {
-                        stockInfo.PalletType = PalletTypeEnum.LargestPallet.ObjToInt();
-                    }
-                }
-                else if(warehouse.WarehouseCode == WarehouseEnum.HA57.ToString())
-                {
-                    if (models.Count >= 2)
-                    {
-                        return WebResponseContent.Instance.Error($"缁勭洏鏄庣粏涓嶅敮涓�");
-                    }
-                }
-
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                foreach (var model in models)
-                {
-                    if (purchaseOrderNos.FirstOrDefault(x => x == model.PurchaseOrderNo) == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈湪閲囪喘鍗曟槑缁嗕腑鎵惧埌璇ラ噰璐崟");
-                    }
-
-                    Dt_InboundOrderDetail? notGroupDetail = inboundOrderDetails.Where(x => x.OrderDetailStatus <= OrderDetailStatusEnum.Inbounding.ObjToInt() && x.MaterielCode==model.MaterielCode && x.BatchNo==model.LotNo && x.OrderQuantity > x.ReceiptQuantity).FirstOrDefault();
-
-                    if (notGroupDetail == null)
-                    {
-                        return WebResponseContent.Instance.Error($"璇ョ墿鏂欏湪璇ュ叆搴撳崟涓凡鍏ㄩ儴缁勭洏瀹屾垚");
-                    }
-                    Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                    {
-                        BatchNo = model.LotNo,
-                        MaterielCode = materielInfo.MaterielCode,
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec = materielInfo.MaterielSpec,
-                        OrderNo = inboundOrder.InboundOrderNo,
-                        SerialNumber = model.SerialNumber,
-                        StockQuantity = model.Quantity,
-                        OutboundQuantity = 0,
-                        Unit = materielInfo.MaterielUnit,
-                        Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        ProductionDate = model.ProductionDate,
-                        EffectiveDate = model.EffectiveDate,
-                        InboundOrderRowNo = notGroupDetail.RowNo,
-                    };
-
-                    if (stockInfo.Id > 0)
-                    {
-                        stockInfoDetail.StockId = stockInfo.Id;
-                    }
-                    stockInfo.Details.Add(stockInfoDetail);
-
-                    stockInfoDetails.Add(stockInfoDetail);
-
-                    decimal decimalReceiptQuantity = Convert.ToDecimal(notGroupDetail.ReceiptQuantity);
-                    decimal decimalModelQuantity = Convert.ToDecimal(model.Quantity);
-                    decimal decimalOrderQuantity = Convert.ToDecimal(notGroupDetail.OrderQuantity);
-                    decimalReceiptQuantity += decimalModelQuantity;
-                    // 妫�鏌ユ槸鍚﹁秴鍑鸿鍗曟暟閲�
-                    if (decimalReceiptQuantity > decimalOrderQuantity)
-                    {
-                        return WebResponseContent.Instance.Error($"缁勭洏鏁伴噺婧㈠嚭{decimalReceiptQuantity - decimalOrderQuantity}");
-                    }
-                    // 杞洖float绫诲瀷瀛樺偍锛屼絾姣旇緝鍜岃绠楅兘浣跨敤decimal瀹屾垚
-                    notGroupDetail.ReceiptQuantity = Convert.ToSingle(decimalReceiptQuantity);
-                    if (notGroupDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                    {
-                        notGroupDetail.OrderDetailStatus = OrderDetailStatusEnum.GroupAndInbound.ObjToInt();
-                    }
-                }
-
-                float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-
-                inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
-
-                _unitOfWorkManage.BeginTran();
-                if (stockInfo.Id == 0)
-                {
-                    _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand();
-                }
-                else
-                {
-                    _stockRepository.StockInfoRepository.Db.UpdateNav(stockInfo).Include(x => x.Details, new UpdateNavOptions() { OneToManyInsertOrUpdate = true }).ExecuteCommand();
-                }
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetails);
-                _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent MaterielPPorGM(string materielBoxCode = "")
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                string SerNum = materielBoxCode.Substring(0, materielBoxCode.LastIndexOf("SC:")-1);
-                MatSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, SerNum);
-                //楠岃瘉鍒ゆ柇鏃堕棿鏍煎紡
-                WebResponseContent IsValidContent = IsValidMCDates(new List<MatSerNumAnalysisModel>() { model });
-                if (!IsValidContent.Status)
-                {
-                    return content.Error(IsValidContent.Message);
-                }
-                string result = materielBoxCode.Substring(materielBoxCode.LastIndexOf("SC:") + 3);
-                //鑾峰彇鍏ュ簱鍗曟槑缁�
-                Dt_InboundOrderDetail inboundOrderDetail = _inboundRepository.InboundOrderDetailRepository.QueryFirst(x=>x.BatchNo== model.LotNo && x.MaterielCode== model.MaterielCode);
-                if (inboundOrderDetail == null)
-                {
-                    return InOtherGMOrPP(model, result);
-                }
-                Dt_InboundOrder inboundOrder = BaseDal.Db.Queryable<Dt_InboundOrder>().First(x => x.Id == inboundOrderDetail.OrderId);
-
-                if (inboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟淇℃伅");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == inboundOrder.WarehouseId);
-                //闄ら噰璐叆搴撳崟浠ュ鍏朵粬鍏ュ簱鍗曠粍鐩樻暟鎹鐞�
-                if (inboundOrder.OrderType != InOrderTypeEnum.Purchase.ObjToInt())
-                {
-                    return OtherInGroup(inboundOrder, model.LotNo, 0, warehouse, new List<MatSerNumAnalysisModel>() { model });
-                }
-                Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗�");
-                }
-                if (receiveOrder.Details == null || receiveOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板搴旂殑鏀惰揣鍗曟槑缁�");
-                }
-
-                List<string> purchaseOrderNos = receiveOrder.Details.Select(x => x.PurchaseOrderNo).ToList();
-
-                string materielCode = model?.MaterielCode ?? "";
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-
-                float beforeQuantity = 0;
-                
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == model.LotNo).Includes(x => x.Details).First();
-                if (stockInfo == null)
-                {
-                    stockInfo = new Dt_StockInfo()
-                    {
-                        PalletCode = model.LotNo,
-                        StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        WarehouseId = inboundOrder.WarehouseId,
-                        PalletType = GetPalletTypeGMOrPP(warehouse, result.Split("*")[0]),
-                        StockLength = result.Split("*")[0].ObjToInt(),
-                        Details = new List<Dt_StockInfoDetail>()
-                    };
-                }
-                else
-                {
-                    if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt())
-                    {
-                        return WebResponseContent.Instance.Error($"鎵樼洏鍙烽噸澶�");
-                    }
-                }
-                if (stockInfo.PalletType==-1)
-                {
-                    return WebResponseContent.Instance.Error($"鎵樼洏绫诲瀷涓嶅瓨鍦�");
-                }
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                if (purchaseOrderNos.FirstOrDefault(x => x == model.PurchaseOrderNo) == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈湪鏀惰揣鏄庣粏涓壘鍒拌閲囪喘鍗�");
-                }
-
-                if (inboundOrderDetail.OrderDetailStatus > OrderDetailStatusEnum.Inbounding.ObjToInt() || inboundOrderDetail.OrderQuantity == inboundOrderDetail.ReceiptQuantity)
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ墿鏂欏湪璇ュ叆搴撳崟涓凡鍏ㄩ儴缁勭洏瀹屾垚");
-                }
-                Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                {
-                    BatchNo = model.LotNo,
-                    MaterielCode = materielInfo.MaterielCode,
-                    MaterielName = materielInfo.MaterielName,
-                    MaterielSpec = materielInfo.MaterielSpec,
-                    OrderNo = inboundOrder.InboundOrderNo,
-                    SerialNumber = model.SerialNumber,
-                    StockQuantity = model.Quantity,
-                    OutboundQuantity = 0,
-                    Unit = materielInfo.MaterielUnit,
-                    Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                    ProductionDate = model.ProductionDate,
-                    EffectiveDate = model.EffectiveDate,
-                    InboundOrderRowNo = inboundOrderDetail.RowNo,
-                };
-
-                stockInfo.Details.Add(stockInfoDetail);
-
-                stockInfoDetails.Add(stockInfoDetail);
-
-                inboundOrderDetail.ReceiptQuantity += model.Quantity;
-                if (inboundOrderDetail.ReceiptQuantity > inboundOrderDetail.OrderQuantity)
-                {
-                    return WebResponseContent.Instance.Error($"缁勭洏鏁伴噺婧㈠嚭{inboundOrderDetail.ReceiptQuantity - inboundOrderDetail.OrderQuantity}");
-                }
-                if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                {
-                    inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.GroupAndInbound.ObjToInt();
-                }
-                float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-                if (inboundOrder.OrderStatus == InOrderStatusEnum.鏈紑濮�.ObjToInt())
-                {
-                    inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
-                }
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetail);
-                _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup);
-                content.OK(data: stockInfo);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent InOtherGMOrPP(MatSerNumAnalysisModel model,string request = "")
-        {
-            string materielCode = model?.MaterielCode ?? "";
-            Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-            if (materielInfo == null)
-            {
-                return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-            }
-            float beforeQuantity = 0;
-            Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == materielInfo.WarehouseId);
-            Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == model.LotNo).Includes(x => x.Details).First();
-            if (stockInfo == null)
-            {
-                stockInfo = new Dt_StockInfo()
-                {
-                    PalletCode = model.LotNo,
-                    StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                    WarehouseId = warehouse.WarehouseId,
-                    PalletType = GetPalletTypeGMOrPP(warehouse, request.Split("*")[0]),
-                    StockLength = request.Split("*")[0].ObjToInt(),
-                    Details = new List<Dt_StockInfoDetail>()
-                };
-            }
-            else
-            {
-                if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鎵樼洏鍙烽噸澶�");
-                }
-            }
-            if (stockInfo.PalletType == -1)
-            {
-                return WebResponseContent.Instance.Error($"鎵樼洏绫诲瀷涓嶅瓨鍦�");
-            }
-            List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-            Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-            {
-                BatchNo = model.LotNo,
-                MaterielCode = materielInfo.MaterielCode,
-                MaterielName = materielInfo.MaterielName,
-                MaterielSpec = materielInfo.MaterielSpec,
-                OrderNo = "",
-                SerialNumber = model.SerialNumber,
-                StockQuantity = model.Quantity,
-                OutboundQuantity = 0,
-                Unit = materielInfo.MaterielUnit,
-                Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                ProductionDate = model.ProductionDate,
-                EffectiveDate = model.EffectiveDate,
-                InboundOrderRowNo = 0,
-            };
-
-            stockInfo.Details.Add(stockInfoDetail);
-
-            stockInfoDetails.Add(stockInfoDetail);
-            float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-            _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup);
-            return WebResponseContent.Instance.OK(data: stockInfo);
-        }
-        public int GetPalletTypeGMOrPP(Dt_Warehouse warehouse, string boxWidth)
-        {
-            if (warehouse.WarehouseCode == WarehouseEnum.HA152.ToString())
-            {
-
-                if (boxWidth.ObjToInt() <= 690 && boxWidth.ObjToInt()>=520)
-                {
-                    return 15;
-                }
-                else if (boxWidth.ObjToInt() > 690 && boxWidth.ObjToInt() <= 1400)
-                {
-                    return 16;
-                }
-
-            }
-            else if (warehouse.WarehouseCode == WarehouseEnum.HA58.ToString())
-            {
-                Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.WarehouseId == warehouse.WarehouseId);
-                return palletTypeInfo.PalletType;
-            }
-            return -1;
-        }
-        public WebResponseContent OtherInGroup(Dt_InboundOrder inboundOrder,string? palletCode,int Initiallife,Dt_Warehouse warehouse,List<MatSerNumAnalysisModel> models)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                if (models.Select(x => x.MaterielCode).Distinct().Count() > 1)
-                {
-                    return content.Error($"鐗╂枡涓嶅彲娣锋斁");
-                }
-                //楠岃瘉鍒ゆ柇鏃堕棿鏍煎紡
-                WebResponseContent IsValidContent = IsValidMCDates(models);
-                if (!IsValidContent.Status)
-                {
-                    return content.Error(IsValidContent.Message);
-                }
-                string materielCode = models.FirstOrDefault()?.MaterielCode ?? "";
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-                if (materielInfo == null)
-                {
-                    return content.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-
-                List<Dt_InboundOrderDetail> inboundOrderDetails = inboundOrder.Details.Where(x => x.MaterielCode == materielCode).ToList();
-
-                if (inboundOrderDetails == null || inboundOrderDetails.Count <= 0)
-                {
-                    return content.Error($"鏈湪鍏ュ簱鍗曟槑缁嗕腑鎵惧埌璇ョ墿鏂欎俊鎭�");
-                }
-
-                float beforeQuantity = 0;
-
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode).Includes(x => x.Details).First();
-                if (stockInfo == null)
-                {
-                    stockInfo = new Dt_StockInfo()
-                    {
-                        PalletCode = palletCode,
-                        StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        WarehouseId = inboundOrder.WarehouseId,
-                        PalletType = GetPalletType(warehouse, palletCode),
-                        Details = new List<Dt_StockInfoDetail>()
-                    };
-                }
-                else
-                {
-                    if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
-                    {
-                        return content.Error($"鎵樼洏鍙烽噸澶�");
-                    }
-                    beforeQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-                }
-
-                if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                {
-                    stockInfo.Remark = Initiallife.ToString();
-                    string batchNo = models.FirstOrDefault()?.LotNo ?? "";
-                    Dt_StockInfoDetail existDetail = _stockRepository.StockInfoDetailRepository.QueryFirst(x => x.BatchNo == batchNo);
-                    if (existDetail != null)
-                    {
-                        return content.Error($"{batchNo}娴嬭瘯鏋跺凡瀛樺湪");
-                    }
-                    if (models.Count >= 2)
-                    {
-                        return content.Error($"缁勭洏鏄庣粏涓嶅敮涓�");
-                    }
-                    if (palletCode.Substring(0, 1) == "6")
-                    {
-                        stockInfo.PalletType = PalletTypeEnum.MediumPallet.ObjToInt();
-                    }
-                    else
-                    {
-                        stockInfo.PalletType = PalletTypeEnum.LargestPallet.ObjToInt();
-                    }
-                }
-                else if (warehouse.WarehouseCode == WarehouseEnum.HA57.ToString())
-                {
-                    if (models.Count >= 2)
-                    {
-                        return content.Error($"缁勭洏鏄庣粏涓嶅敮涓�");
-                    }
-                }
-
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                foreach (var model in models)
-                {
-                    Dt_InboundOrderDetail? notGroupDetail = inboundOrderDetails.Where(x => x.OrderDetailStatus <= OrderDetailStatusEnum.Inbounding.ObjToInt() && x.MaterielCode == model.MaterielCode && x.OrderQuantity > x.ReceiptQuantity).FirstOrDefault();
-
-                    if (notGroupDetail == null)
-                    {
-                        return WebResponseContent.Instance.Error($"璇ョ墿鏂欏湪璇ュ叆搴撳崟涓凡鍏ㄩ儴缁勭洏瀹屾垚");
-                    }
-                    Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                    {
-                        BatchNo = model.LotNo,
-                        MaterielCode = materielInfo.MaterielCode,
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec = materielInfo.MaterielSpec,
-                        OrderNo = inboundOrder.InboundOrderNo,
-                        SerialNumber = model.SerialNumber,
-                        StockQuantity = model.Quantity,
-                        OutboundQuantity = 0,
-                        Unit = materielInfo.MaterielUnit,
-                        Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        ProductionDate = model.ProductionDate,
-                        EffectiveDate = model.EffectiveDate,
-                        InboundOrderRowNo = notGroupDetail.RowNo,
-                    };
-
-                    if (stockInfo.Id > 0)
-                    {
-                        stockInfoDetail.StockId = stockInfo.Id;
-                    }
-                    stockInfo.Details.Add(stockInfoDetail);
-
-                    stockInfoDetails.Add(stockInfoDetail);
-
-                    notGroupDetail.ReceiptQuantity += model.Quantity;
-                    if (notGroupDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                    {
-                        notGroupDetail.OrderDetailStatus = OrderDetailStatusEnum.GroupAndInbound.ObjToInt();
-                    }
-                }
-
-                float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-
-                inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
-
-                _unitOfWorkManage.BeginTran();
-                if (stockInfo.Id == 0)
-                {
-                    _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand();
-                }
-                else
-                {
-                    _stockRepository.StockInfoRepository.Db.UpdateNav(stockInfo).Include(x => x.Details, new UpdateNavOptions() { OneToManyInsertOrUpdate = true }).ExecuteCommand();
-                }
-                _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetails);
-                _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-
-        public WebResponseContent MaterielGroup(string palletCode, int Initiallife, int warehouseId, List<string> serNums)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == warehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-
-                List<MatSerNumAnalysisModel> models = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNums);
-
-                if (models.Select(x => x.MaterielCode).Distinct().Count() > 1)
-                {
-                    return WebResponseContent.Instance.Error($"鐗╂枡涓嶅彲娣锋斁");
-                }
-                //楠岃瘉鍒ゆ柇鏃堕棿鏍煎紡
-                WebResponseContent IsValidContent = IsValidMCDates(models);
-                if (!IsValidContent.Status)
-                {
-                    return content.Error(IsValidContent.Message);
-                }
-                string materielCode = models.FirstOrDefault()?.MaterielCode ?? "";
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-
-                float beforeQuantity = 0;
-
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode).Includes(x => x.Details).First();
-
-                if (stockInfo == null)
-                {
-                    stockInfo = new Dt_StockInfo()
-                    {
-                        PalletCode = palletCode,
-                        StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt(),
-                        WarehouseId = warehouse.WarehouseId,
-                        PalletType = GetPalletType(warehouse, palletCode),
-                        Details = new List<Dt_StockInfoDetail>()
-                    };
-                }
-                else
-                {
-                    if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
-                    {
-                        return WebResponseContent.Instance.Error($"鎵樼洏鍙烽噸澶�");
-                    }
-                    beforeQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-                }
-
-                if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                {
-                    string batchNo = models.FirstOrDefault()?.LotNo ?? "";
-                    Dt_StockInfoDetail existDetail = _stockRepository.StockInfoDetailRepository.QueryFirst(x => x.BatchNo == batchNo);
-                    if (existDetail != null)
-                    {
-                        return WebResponseContent.Instance.Error($"{batchNo}娴嬭瘯鏋跺凡瀛樺湪");
-                    }
-                    if (models.Count >= 2)
-                    {
-                        return WebResponseContent.Instance.Error($"缁勭洏鏄庣粏涓嶅敮涓�");
-                    }
-                    stockInfo.Remark = Initiallife.ToString();
-                    if (palletCode.Substring(0, 1) == "6")
-                    {
-                        stockInfo.PalletType = PalletTypeEnum.MediumPallet.ObjToInt();
-                    }
-                    else
-                    {
-                        stockInfo.PalletType = PalletTypeEnum.LargestPallet.ObjToInt();
-                    }
-                }
-                else if (warehouse.WarehouseCode == WarehouseEnum.HA57.ToString())
-                {
-                    if (models.Count >= 2)
-                    {
-                        return WebResponseContent.Instance.Error($"缁勭洏鏄庣粏涓嶅敮涓�");
-                    }
-                }
-
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                List<int> detailKeys = new List<int>();
-                foreach (var model in models)
-                {
-                    Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail()
-                    {
-                        BatchNo = model.LotNo,
-                        MaterielCode = materielInfo.MaterielCode,
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec = materielInfo.MaterielSpec,
-                        OrderNo = "",
-                        SerialNumber = model.SerialNumber,
-                        StockQuantity = model.Quantity,
-                        OutboundQuantity = 0,
-                        Unit = materielInfo.MaterielUnit,
-                        Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(),
-                        ProductionDate = model.ProductionDate,
-                        EffectiveDate = model.EffectiveDate,
-                        InboundOrderRowNo = 0,
-                    };
-
-                    if (stockInfo.Id > 0)
-                    {
-                        stockInfoDetail.StockId = stockInfo.Id;
-                    }
-                    stockInfo.Details.Add(stockInfoDetail);
-
-                    stockInfoDetails.Add(stockInfoDetail);
-                }
-
-                float totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
-
-                _unitOfWorkManage.BeginTran();
-                if (stockInfo.Id == 0)
-                {
-                    _stockRepository.StockInfoRepository.Db.InsertNav(stockInfo).Include(x => x.Details).ExecuteCommand();
-                }
-                else
-                {
-                    _stockRepository.StockInfoRepository.Db.UpdateNav(stockInfo).Include(x => x.Details, new UpdateNavOptions() { OneToManyInsertOrUpdate = true }).ExecuteCommand();
-                }
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfoDetails, beforeQuantity, totalQuantity, StockChangeTypeEnum.MaterielGroup);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鍏ュ簱瀹屾垚涓婃姤ERP
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent FeedbackInboundOrder(int inboundOrderId)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_InboundOrder inboundOrder = BaseDal.Db.Queryable<Dt_InboundOrder>().Where(x => x.Id == inboundOrderId).Includes(x => x.Details).First();
-                if (inboundOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟鏄庣粏淇℃伅");
-                }
-
-                List<Dt_StockInfoDetail> stockInfoDetails = _stockRepository.StockInfoDetailRepository.QueryData(x => x.OrderNo == inboundOrder.InboundOrderNo);
-                if (stockInfoDetails.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板簱瀛樻槑缁嗕俊鎭�");
-                }
-                //鑾峰彇璇ュ叆搴撳崟鎵�鏈夊簱瀛�
-                List<Dt_StockInfo> stockInfos = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => stockInfoDetails.GroupBy(x => x.StockId).Select(x => x.Key).Contains(x.Id)).Includes(x => x.Details).ToList();
-                Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == inboundOrder.WarehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-                }
-                List<ERPInboundDetailModel>? detailModels = new List<ERPInboundDetailModel>();
-                foreach (var stockInfo in stockInfos)
-                {
-                    foreach (var item in stockInfo.Details.GroupBy(x => x.InboundOrderRowNo).Select(x => x.Key))
-                    {
-                        //鍖哄垎涓嶅悓鎵规
-                        Dt_StockInfoDetail? dt_StockInfoDetail = stockInfo.Details.Where(x => x.InboundOrderRowNo == item).FirstOrDefault();
-                        ERPInboundDetailModel detailModel = new ERPInboundDetailModel()
-                        {
-                            ExpiryDate = dt_StockInfoDetail?.EffectiveDate ?? "",
-                            LocationCode = warehouse.WarehouseCode,
-                            MaterialsCode = dt_StockInfoDetail.MaterielCode,
-                            MfgDate = dt_StockInfoDetail.ProductionDate ?? "",
-                            QtyCustoms = "0",
-                            Quantity = stockInfo.Details.Where(x => x.InboundOrderRowNo == item).Sum(x => x.StockQuantity).ToString(),
-                            Rack = stockInfo.LocationCode,
-                            ReceiptCode = inboundOrder.UpperOrderNo,
-                            ReceiptSerNo = item.ToString()
-                        };
-                        detailModels.Add(detailModel);
-                    }
-                }
-                ERPInboundModel model = new ERPInboundModel()
-                {
-                    Code = CreateCodeByRule(nameof(RuleCodeEnum.RLCodeRule)),
-                    CreatorCode = inboundOrder.Creater,
-                    EntDate = inboundOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
-                    StockDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    SuppliersId = inboundOrder.SupplierId,
-                    Type = "S",
-                    UniqueTag = inboundOrder.Id.ToString(),
-                    WarehouseCode = warehouse.WarehouseCode,
-                    Way = 1,
-                    Details = detailModels
-                };
-                //鎺ㄩ�丒RP
-                _invokeERPService.InvokeInboundOrderApi(model);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 閫�鏂欏畬鎴愪笂鎶ヨ嚦ERP
-        /// </summary>
-        public WebResponseContent FeedbackReturnOrder(Dt_InboundOrder inboundOrder,Dt_ReturnOrder returnOrder)
-        {
-            WebResponseContent content= new WebResponseContent();
-            try
-            {
-                if (returnOrder==null)
-                {
-                    return content.OK();
-                }
-                //鑾峰彇浠撳簱缂栫爜
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseId==inboundOrder.WarehouseId);
-
-                var groupedDetails = returnOrder.Details.GroupBy(d => new { d.PickCode, d.RowId })
-                    .Select(g => new
-                    {
-                        PickCode = returnOrder.OrderNo,
-                        RowIndex = g.Key.RowId,
-                        Details = g.ToList()
-                    })
-                    .ToList();
-                // 鏋勫缓宓屽缁撴瀯
-                var issitems = groupedDetails.Select(g => new ReturnItem
-                {
-                    Pickcode = g.PickCode,
-                    Rowindex = g.RowIndex,
-                    PickList = g.Details
-                        .GroupBy(d => d.MCode)
-                        .Select(mg => new ReturnPickItem
-                        {
-                            Material = mg.Key,
-                            Qty = mg.Sum(x => x.ReturnQty),
-                            Dataitem = mg.Select(d => new ReturnDataItem
-                            {
-                                Lotno = d.BatchNo,
-                                Qty = d.ReturnQty,
-                                Location = warehouse.WarehouseCode,
-                                Msfpart = d.Code
-                            }).ToList()
-                        }).ToList()
-                }).ToList();
-                //鑾峰彇瀵瑰簲閫�鏂欏崟
-                ERPReturnModel returnModel = new ERPReturnModel()
-                {
-                    Way = 1,
-                    UniqueTag = returnOrder.Id.ToString(),
-                    Code = CreateCodeByRule(nameof(RuleCodeEnum.TLCodeRule)),
-                    WarehouseCode = warehouse.WarehouseCode,
-                    Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    Createuser=inboundOrder.Creater,
-                    IsDev=returnOrder.IsDev,
-                    Issitem= issitems
-                };
-                _invokeERPService.InvokeReturnApi(returnModel);
-                return content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鎴愬搧鍏ュ簱涓婁紶ERP
-        /// </summary>
-        public WebResponseContent FeedbackProIn(Dt_MesProInOrder mesProInOrder)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                List<ERPProItemsItem> proItemsItems = new List<ERPProItemsItem>();
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseId==mesProInOrder.WarehouseId);
-                string batchNoRemark = "";
-                foreach (var item in mesProInOrder.Details)
-                {
-                    ERPProItemsItem proItemsItem = new ERPProItemsItem()
-                    {
-                        PartNum = item.ProductCode,
-                        Rev=item.ProductVersion,
-                        DateCode=item.DateCode,
-                        BatchNumber= item.ProductCode,
-                        XLocation=item.XSite,
-                        Xqty=item.XQty,
-                        QtySet=item.SETQty,
-                        QtyPcs=item.OKPCSQTY,
-                        WoList=new List<ERPProListItem>()
-                        {
-                            new ERPProListItem()
-                            {
-                                moNumber=item.MoNumber,
-                                WoNumber=item.ERPOrder,
-                                QtyPcs=item.OKPCSQTY,
-                                QtySet=item.SETQty
-                            }
-                        }
-                    };
-                    batchNoRemark += item.BagNo + ",";
-                    proItemsItems.Add(proItemsItem);
-                }
-                ERPProInboundModel proInboundModel = new ERPProInboundModel()
-                {
-                    Way = 1,
-                    Code = mesProInOrder.ProInOrderNo,
-                    CreatorCode = "GSWMS",
-                    CompanyCode = "HATC",
-                    FactoryCode = "HA02",
-                    WarehouseCode = warehouse.WarehouseCode,
-                    LocationCode = warehouse.WarehouseCode,
-                    StockDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    StockFormType= "Production",
-                    StockFormItems= proItemsItems,
-                    Remark=batchNoRemark
-                };
-                string response = _invokeERPService.InvokeProInApi(proInboundModel);
-                ErpRequestContent requestContent = response.DeserializeObject<ErpRequestContent>();
-                if (requestContent.res != 1)
-                {
-                    return content.Error($"{requestContent.Data}");
-                }
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        static object lock_code = new object();
-        public string CreateCodeByRule(string ruleCode)
-        {
-            lock (lock_code)
-            {
-
-                string code = string.Empty;
-                DateTime dateTime = DateTime.Now;
-                DateTime now = DateTime.Now;
-                try
-                {
-                    if (string.IsNullOrEmpty(ruleCode))
-                        throw new ArgumentNullException(nameof(ruleCode));
-                    SqlSugarClient sugarClient = new SqlSugarClient(new ConnectionConfig
-                    {
-                        IsAutoCloseConnection = true,
-                        DbType = DbType.SqlServer,
-                        ConnectionString = DBContext.ConnectionString
-                    });
-                    Dt_CodeRuleConfig codeRuleConfig = sugarClient.Queryable<Dt_CodeRuleConfig>().Where(x => x.RuleCode == ruleCode).First();
-                    if (codeRuleConfig == null)
-                        throw new ArgumentNullException(nameof(codeRuleConfig));
-                    if (codeRuleConfig.ModifyDate != null)
-                    {
-                        dateTime = Convert.ToDateTime(codeRuleConfig.ModifyDate);
-                    }
-                    else
-                    {
-                        dateTime = Convert.ToDateTime(codeRuleConfig.CreateDate);
-                    }
-
-                    if (now.Year == dateTime.Year && now.Month == dateTime.Month && now.Day == dateTime.Day)
-                    {
-                        now = dateTime;
-                        codeRuleConfig.CurrentVal = Convert.ToInt32(codeRuleConfig.CurrentVal) + 1;
-                    }
-                    else
-                    {
-                        codeRuleConfig.CurrentVal = 1;
-                    }
-                    codeRuleConfig.ModifyDate = DateTime.Now;
-                    code = codeRuleConfig.Format;
-                    code = code.Replace($"[{CodeFormatTypeEnum.YYYY}]", now.Year.ToString().PadLeft(4, '0'));
-                    code = code.Replace($"[{CodeFormatTypeEnum.MM}]", now.Month.ToString().PadLeft(2, '0'));
-                    code = code.Replace($"[{CodeFormatTypeEnum.DD}]", now.Day.ToString().PadLeft(2, '0'));
-                    code = code.Replace($"[{CodeFormatTypeEnum.ST}]", codeRuleConfig.StartStr?.ToString() ?? "");
-                    code = code.Replace($"[{CodeFormatTypeEnum.NUM}]", codeRuleConfig.CurrentVal.ToString().PadLeft(codeRuleConfig.Length, '0'));
-                    Dictionary<string, object> keyValuePairs = new Dictionary<string, object>() { { nameof(codeRuleConfig.CurrentVal), codeRuleConfig.CurrentVal }, { nameof(codeRuleConfig.Id), codeRuleConfig.Id }, { nameof(codeRuleConfig.ModifyDate), DateTime.Now } };
-                    sugarClient.Updateable(keyValuePairs).AS(MainDb.CodeRuleConfig).WhereColumns(nameof(codeRuleConfig.Id)).ExecuteCommand();
-                    sugarClient.Updateable(codeRuleConfig);
-
-                }
-                catch (Exception ex)
-                {
-
-                }
-                return code;
-            }
-        }
-        #region 寮冪敤
-        /// <summary>
-        /// 鍏ュ簱瀹屾垚鍥炰紶鍒癊RP
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        //public WebResponseContent FeedbackInboundOrder(int id)
-        //{
-        //    try
-        //    {
-        //        Dt_InboundOrder inboundOrder = Db.Queryable<Dt_InboundOrder>().Where(x => x.Id == id).Includes(x => x.Details).First();
-        //        if (inboundOrder == null)
-        //        {
-        //            return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟淇℃伅");
-        //        }
-        //        if (inboundOrder.Details == null || inboundOrder.Details.Count == 0)
-        //        {
-        //            return WebResponseContent.Instance.Error($"鏈壘鍒板叆搴撳崟鏄庣粏淇℃伅");
-        //        }
-        //        if (inboundOrder.OrderStatus == InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt())
-        //        {
-        //            return WebResponseContent.Instance.Error($"鍏ュ簱鍗曟嵁宸插畬鎴�");
-        //        }
-
-        //        List<Dt_StockInfo> stockInfos = Db.Queryable<Dt_StockInfo>().Where(x => x.Details.Any(v => v.OrderNo == inboundOrder.InboundOrderNo)).Includes(x => x.Details).ToList();
-        //        List<Dt_Warehouse> warehouses = Db.Queryable<Dt_Warehouse>().ToList();
-
-        //        List<ERPInboundDetailModel> detailModels = new List<ERPInboundDetailModel>();
-        //        foreach (var item in inboundOrder.Details)
-        //        {
-        //            Dt_StockInfo? stockInfo = stockInfos.FirstOrDefault(x => x.Details.Any(v => v.InboundOrderRowNo == item.RowNo && v.MaterielCode == item.MaterielCode));
-        //            if (stockInfo == null)
-        //            {
-        //                return WebResponseContent.Instance.Error($"鏈壘鍒板簱瀛樹俊鎭�");
-        //            }
-
-        //            Dt_Warehouse? warehouse = warehouses.FirstOrDefault(x => x.WarehouseId == stockInfo.WarehouseId);
-        //            if (warehouse == null)
-        //            {
-        //                return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-        //            }
-
-        //            ERPInboundDetailModel detailModel = new ERPInboundDetailModel()
-        //            {
-        //                ExpiryDate = stockInfo.Details.FirstOrDefault()?.EffectiveDate ?? "",
-        //                LocationCode = warehouse.WarehouseCode,
-        //                MaterialsCode = item.MaterielCode,
-        //                MfgDate = stockInfo.Details.FirstOrDefault()?.ProductionDate ?? "",
-        //                QtyCustoms = "0",
-        //                Quantity = stockInfo.Details.Sum(x => x.StockQuantity).ToString(),
-        //                Rack = stockInfo.LocationCode,
-        //                ReceiptCode = inboundOrder.UpperOrderNo,
-        //                ReceiptSerNo = item.RowNo.ToString()
-        //            };
-        //            detailModels.Add(detailModel);
-        //        }
-        //        Dt_Warehouse? warehouse2 = warehouses.FirstOrDefault(x => x.WarehouseId == inboundOrder.WarehouseId);
-        //        if (warehouse2 == null)
-        //        {
-        //            return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-        //        }
-        //        ERPInboundModel model = new ERPInboundModel()
-        //        {
-        //            Code = inboundOrder.InboundOrderNo,
-        //            CreatorCode = inboundOrder.Creater,//娴嬭瘯
-        //            EntDate = inboundOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
-        //            StockDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-        //            SuppliersId = inboundOrder.SupplierId,
-        //            Type = "S",
-        //            UniqueTag = inboundOrder.Id.ToString(),
-        //            WarehouseCode = warehouse2.WarehouseCode,
-        //            Way = 1,
-        //            Details = detailModels
-        //        };
-        //        //娴嬭瘯娉ㄩ噴
-        //        _invokeERPService.InvokeInboundOrderApi(model);
-        //        return WebResponseContent.Instance.OK();
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        return WebResponseContent.Instance.Error(ex.Message);
-        //    }
-        //}
-        #endregion
-        public int GetPalletType(Dt_Warehouse warehouse, string palletCode)
-        {
-            if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-            {
-                if (palletCode.Substring(0, 1) == "6")
-                {
-                    return PalletTypeEnum.MediumPallet.ObjToInt();
-                }
-                else
-                {
-                    return PalletTypeEnum.LargestPallet.ObjToInt();
-                }
-            }
-            else if (warehouse.WarehouseCode == WarehouseEnum.HA153.ObjToString())
-            {
-                Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 1));
-                if (palletTypeInfo == null)
-                {
-                    throw new Exception($"鎵樼洏鍙烽敊璇�");
-                }
-                return palletTypeInfo.PalletType;
-            }
-            else if (warehouse.WarehouseCode == WarehouseEnum.HA152.ObjToString())
-            {
-                Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 2));
-                if (palletTypeInfo == null)
-                {
-                    throw new Exception($"鎵樼洏鍙烽敊璇�");
-                }
-                return palletTypeInfo.PalletType;
-            }
-            else if (warehouse.WarehouseCode == WarehouseEnum.HA57.ObjToString())
-            {
-                Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 3));
-                if (palletTypeInfo == null)
-                {
-                    throw new Exception($"鎵樼洏鍙烽敊璇�");
-                }
-                return palletTypeInfo.PalletType;
-            }
-            else if (warehouse.WarehouseCode == WarehouseEnum.HA58.ObjToString())
-            {
-                Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.CodeStartStr == palletCode.Substring(0, 2));
-                if (palletTypeInfo == null)
-                {
-                    throw new Exception($"鎵樼洏鍙烽敊璇�");
-                }
-                return palletTypeInfo.PalletType;
-            }
-            return -1;
-        }
-        /// <summary>
-        /// 鍒ゆ柇姝g‘鏃堕棿鏍煎紡
-        /// </summary>
-        public WebResponseContent IsValidMCDates(List<MatSerNumAnalysisModel> analysisModels)
-        {
-            string[] effDates = analysisModels.Select(x => x.EffectiveDate).Distinct().ToArray();
-            string[] ProDates = analysisModels.Select(x => x.ProductionDate).Distinct().ToArray();
-            foreach (string effDate in effDates)
-            {
-                string format = "yyyy-MM-dd"; // 鐩爣鏍煎紡
-                DateTime parsedDate;
-                // 瑙f瀽骞堕獙璇佹牸寮�
-                bool isValid = DateTime.TryParseExact(
-                    effDate,
-                    format,
-                    CultureInfo.InvariantCulture,
-                    DateTimeStyles.None,
-                    out parsedDate
-                );
-
-                if (!isValid)
-                {
-                    return WebResponseContent.Instance.Error("鏍煎紡鏃犳晥鎴栨棩鏈熶笉鍚堟硶");
-                }
-            }
-            foreach (string ProDate in ProDates)
-            {
-                string format = "yyyy-MM-dd"; // 鐩爣鏍煎紡
-                DateTime parsedDate;
-                // 瑙f瀽骞堕獙璇佹牸寮�
-                bool isValid = DateTime.TryParseExact(
-                    ProDate,
-                    format,
-                    CultureInfo.InvariantCulture,
-                    DateTimeStyles.None,
-                    out parsedDate
-                );
-
-                if (!isValid)
-                {
-                    return WebResponseContent.Instance.Error("鏍煎紡鏃犳晥鎴栨棩鏈熶笉鍚堟硶");
-                }
-            }
-            return WebResponseContent.Instance.OK();
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrder_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrder_HtyService.cs"
deleted file mode 100644
index fba9048..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundOrder_HtyService.cs"
+++ /dev/null
@@ -1,32 +0,0 @@
-锘縰sing AutoMapper;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection.Metadata;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.Utilities;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IBasicService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IStockService;
-using WIDESEA_ITaskInfoRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class InboundOrder_HtyService : ServiceBase<Dt_InboundOrder_Hty, IInboundOrder_HtyRepository>, IInboundOrder_HtyService
-    {
-        public InboundOrder_HtyService(IInboundOrder_HtyRepository BaseDal) : base(BaseDal)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundService.cs"
deleted file mode 100644
index c0623d9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/InboundService.cs"
+++ /dev/null
@@ -1,38 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-
-namespace WIDESEA_InboundService
-{
-    public class InboundService : IInboundService
-    {
-        public IInboundOrderDetailService InboundOrderDetailService { get; }
-
-        public IInboundOrderService InbounOrderService { get; }
-
-        public IReceiveOrderDetailService ReceiveOrderDetailService { get; }
-
-        public IReceiveOrderService ReceiveOrderService { get; }
-
-        public IPurchaseOrderService PurchaseOrderService { get; }
-
-        public IPurchaseOrderDetailService PurchaseOrderDetailService { get; }
-
-        public IErpProInOrderService ErpProInOrderService { get; }
-
-        public InboundService(IInboundOrderDetailService inboundOrderDetailService, IInboundOrderService inbounOrderService, IReceiveOrderDetailService receiveOrderDetailService, IReceiveOrderService receiveOrderService, IPurchaseOrderService purchaseOrderService, IPurchaseOrderDetailService purchaseOrderDetailService, IErpProInOrderService erpProInOrderService)
-        {
-            InboundOrderDetailService = inboundOrderDetailService;
-            InbounOrderService = inbounOrderService;
-            ReceiveOrderDetailService = receiveOrderDetailService;
-            ReceiveOrderService = receiveOrderService;
-            PurchaseOrderService = purchaseOrderService;
-            PurchaseOrderDetailService = purchaseOrderDetailService;
-            ErpProInOrderService = erpProInOrderService;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/MesProInOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/MesProInOrderDetailService.cs"
deleted file mode 100644
index f8226b0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/MesProInOrderDetailService.cs"
+++ /dev/null
@@ -1,23 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class MesProInOrderDetailService : ServiceBase<Dt_MesProInOrderDetail, IMesProInOrderDetailRepository>, IMesProInOrderDetailService
-    {
-        public IMesProInOrderDetailRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        public MesProInOrderDetailService(IMesProInOrderDetailRepository BaseDal, IUnitOfWorkManage unitOfWorkManag) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManag;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/MesProInOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/MesProInOrderService.cs"
deleted file mode 100644
index 7bc2e90..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/MesProInOrderService.cs"
+++ /dev/null
@@ -1,85 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.Basic;
-using WIDESEA_DTO.MES;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundService;
-using WIDESEA_IStockRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class MesProInOrderService : ServiceBase<Dt_MesProInOrder, IMesProInOrderRepository>, IMesProInOrderService
-    {
-        public IMesProInOrderRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IInboundRepository _inboundRepository;
-        private readonly IStockRepository _stockRepository;
-        public MesProInOrderService(IMesProInOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManag, IInboundRepository inboundRepository, IStockRepository stockRepository) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManag;
-            _inboundRepository = inboundRepository;
-            _stockRepository = stockRepository;
-        }
-        /// <summary>
-        /// 鎴愬搧鍏ュ簱鎵爜
-        /// </summary>
-        /// <param name="Id"></param>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        public WebResponseContent ProInboundScan(int Id,string serNum)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇瀵瑰簲MES鎴愬搧鍏ュ簱鍗曟嵁
-                Dt_MesProInOrder mesProInOrder = BaseDal.Db.Queryable<Dt_MesProInOrder>().Where(x => x.Id == Id).Includes(x => x.Details).First();
-                if (mesProInOrder==null)
-                {
-                    return content.Error("褰撳墠MES鍏ュ簱鍗曟嵁涓嶅瓨鍦�");
-                }
-                if (mesProInOrder.MesProStatus>= InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt())
-                {
-                    return content.Error("褰撳墠鍗曟嵁宸插叆搴撴垨鍏抽棴鐘舵��");
-                }
-                ProSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<ProSerNumAnalysisModel>(AnalysisCodeEnum.ProSerNumAnalysis, serNum);
-                Dt_MesProInOrderDetail? proInOrderDetail = mesProInOrder.Details.FirstOrDefault(x => x.BagNo == model.BagNO);
-                //鍒ゆ柇鎵弿鍜屽崟鎹腑鏄惁鍖归厤
-                if (proInOrderDetail == null)
-                {
-                    return content.Error($"妗嗙爜{mesProInOrder.BatchNo}涓棤鍐呭寘{model.BagNO}淇℃伅");
-                }
-                if ((proInOrderDetail.OverInQuantity + model.OKPCSQTY.ObjToInt())> proInOrderDetail.OKPCSQTY)
-                {
-                    return content.Error($"鍐呭寘鏁伴噺婧㈠嚭{(proInOrderDetail.OverInQuantity + model.OKPCSQTY.ObjToInt()) - proInOrderDetail.OKPCSQTY}");
-                }
-                float SumPCSQty = mesProInOrder.Details.Sum(x => x.OKPCSQTY);
-                float OverPCSQty = mesProInOrder.Details.Sum(x=>x.OverInQuantity);
-                if ((OverPCSQty+model.OKPCSQTY.ObjToInt())>SumPCSQty)
-                {
-                    return content.Error($"褰撳墠鍏ュ簱璁㈠崟鏁伴噺婧㈠嚭{(OverPCSQty + model.OKPCSQTY.ObjToInt())- SumPCSQty}");
-                }
-
-                proInOrderDetail.OverInQuantity += model.OKPCSQTY.ObjToInt();
-                _inboundRepository.MesProInOrderDetailRepository.UpdateData(proInOrderDetail);
-                return content.OK($"鍐呭寘{proInOrderDetail.BagNo}宸叉壂鏁伴噺锛歿proInOrderDetail.OverInQuantity},鍓╀綑锛歿proInOrderDetail.OKPCSQTY-proInOrderDetail.OverInQuantity}");
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ProInStatisticsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ProInStatisticsService.cs"
deleted file mode 100644
index cd459fa..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ProInStatisticsService.cs"
+++ /dev/null
@@ -1,95 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.MES;
-using WIDESEA_External.ERPService;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class ProInStatisticsService : ServiceBase<Dt_ProInStatistics, IProInStatisticsRepository>, IProInStatisticsService
-    {
-        public IProInStatisticsRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IInvokeERPService _invokeERPService;
-        private readonly IBasicRepository _basicRepository;
-        public ProInStatisticsService(IProInStatisticsRepository BaseDal, IUnitOfWorkManage unitOfWorkManag,IInvokeERPService invokeERPService,IBasicRepository basicRepository) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManag;
-            _invokeERPService = invokeERPService;
-            _basicRepository = basicRepository;
-        }
-        
-        public void SaveStatic(MesBagInfoModel mesBagInfoModel)
-        {
-            List<ProInStaticDTO> mESBagDetails = mesBagInfoModel.BagDetails.GroupBy(x=>new { x.ProductCode, x.ProductVersion }).Select(x=>new ProInStaticDTO
-            {
-                ProductCode= x.Key.ProductCode,
-                ProductVersion= x.Key.ProductVersion,
-                SumPcs=x.Sum(x => x.OKPCSQTY)
-            }).ToList();
-            List<Dt_ProInStatistics> proInStatistics= new List<Dt_ProInStatistics>();
-            Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseCode==mesBagInfoModel.WarehouseCode);
-            foreach (var m in mESBagDetails)
-            {
-                string response = _invokeERPService.InvokeProInErpStatic(m.ProductCode, m.ProductCode + m.ProductVersion);
-                ErpProInErpStaticResponseContent erpProInErpStatic = response.DeserializeObject<ErpProInErpStaticResponseContent>();
-                if (erpProInErpStatic.Code != 200)
-                {
-                    return;
-                }
-                float adjusted = (float)Math.Round(erpProInErpStatic.Data[0].UnitArea, 3);
-                Dt_ProInStatistics inStatistics = new Dt_ProInStatistics()
-                {
-                    WarehouseId = warehouse.WarehouseId,
-                    ProductCode = m.ProductCode,
-                    ProductRev = m.ProductVersion,
-                    PcsQty = m.SumPcs,
-                    SquareMeter = (float)Math.Round((adjusted * m.SumPcs), 3),
-                    Remark = mesBagInfoModel.BatchNo
-                };
-                proInStatistics.Add(inStatistics);
-            }
-            BaseDal.AddData(proInStatistics);
-        }
-        /// <summary>
-        /// 鑾峰彇鏈堜唤浜ч噺
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent GetMonthProductions()
-        {
-            WebResponseContent content=new WebResponseContent();
-            try
-            {
-                DateTime date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
-                List<object> list = new List<object>();
-                //鏈湀鎬诲ぉ鏁�
-                int daysInMonth = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);
-                for (int i = 1; i <= daysInMonth; i++)
-                {
-                    DateTime dateTime = date.AddDays(i);
-                    //鑾峰彇鏁版嵁
-                    var dayProDuctions = BaseDal.QueryData(x => x.CreateDate <= dateTime && x.CreateDate >= dateTime.AddDays(-1)).Sum(x => x.SquareMeter);
-                    list.Add(new { dateNow= dateTime.AddHours(-1).ToString("yyyy-MM-dd"), dayProDuctions });
-                }
-                content.OK("鎴愬姛",list);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/PurchaseOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/PurchaseOrderDetailService.cs"
deleted file mode 100644
index 2cd6d3a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/PurchaseOrderDetailService.cs"
+++ /dev/null
@@ -1,84 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class PurchaseOrderDetailService : ServiceBase<Dt_PurchaseOrderDetail, IPurchaseOrderDetailRepository>, IPurchaseOrderDetailService
-    {
-        public IPurchaseOrderDetailRepository Repository => BaseDal;
-
-        public PurchaseOrderDetailService(IPurchaseOrderDetailRepository BaseDal) : base(BaseDal)
-        {
-        }
-        public WebResponseContent GetPurchaseOrderDetailMaterielCode(int warehouseId)
-        {
-            try
-            {
-                List<Dt_PurchaseOrderDetail> purchaseOrderDetails = BaseDal.QueryData(x => x.WarehouseId == warehouseId && x.PurchaseDetailStatus != PurchaseOrderDetailStatusEnum.Received.ObjToInt());
-                List<string> MaterielCodes = purchaseOrderDetails.Select(x => x.MaterielCode).ToList();
-                MaterielCodes = MaterielCodes.Distinct().ToList();
-                return WebResponseContent.Instance.OK(data: MaterielCodes);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        public WebResponseContent GetPurchaseOrderNos(string materielCode)
-        {
-            try
-            {
-                List<Dt_PurchaseOrderDetail> purchaseOrderDetails = BaseDal.QueryData(x => x.MaterielCode == materielCode && x.PurchaseDetailStatus != PurchaseOrderDetailStatusEnum.Received.ObjToInt());
-                List<int> PurchaseOrderIds = purchaseOrderDetails.Select(x => x.PurchaseOrderId).ToList();
-                List<Dt_PurchaseOrder> purchaseOrders = BaseDal.Db.Queryable<Dt_PurchaseOrder>().Where(x => PurchaseOrderIds.Contains(x.Id)).ToList();
-                List<string> PurchaseOrderNos = purchaseOrders.Select(x => x.PurchaseOrderNo).ToList();
-                return WebResponseContent.Instance.OK(data: PurchaseOrderNos);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        public WebResponseContent GetOrderQuantity(string purchaseOrderNo)
-        {
-            try
-            {
-                List<Dt_PurchaseOrder> purchaseOrders = BaseDal.Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == purchaseOrderNo).ToList();
-                List<float> orderQuantity = purchaseOrders.Select(x => x.OrderQuantity).ToList();
-                return WebResponseContent.Instance.OK(data: orderQuantity);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent GetOrderMaterielSpec(string purchaseOrderNo, string materielCode)
-        {
-            try
-            {
-                List<Dt_PurchaseOrder> purchaseOrders = BaseDal.Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == purchaseOrderNo).ToList();
-                List<int> purchaseOrderIds = purchaseOrders.Select(x => x.Id).ToList();
-                List<Dt_PurchaseOrderDetail> purchaseOrderDetails = BaseDal.Db.Queryable<Dt_PurchaseOrderDetail>()
-                .Where(x => purchaseOrderIds.Contains(x.PurchaseOrderId)&& x.MaterielCode == materielCode).ToList();
-                List<string> materielSpec = purchaseOrderDetails.Select(x => x.MaterielSpec).ToList();
-                return WebResponseContent.Instance.OK(data: materielSpec);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/PurchaseOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/PurchaseOrderService.cs"
deleted file mode 100644
index 2eb5da7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/PurchaseOrderService.cs"
+++ /dev/null
@@ -1,281 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_BasicRepository;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Basic;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_InboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class PurchaseOrderService : ServiceBase<Dt_PurchaseOrder, IPurchaseOrderRepository>, IPurchaseOrderService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IPurchaseOrderDetailRepository _purchaseOrderDetailRepository;
-        private readonly IBasicRepository _basicRepository;
-        private readonly ISupplierInfoRepository _supplierInfoRepository;
-        private readonly IMaterielInfoRepository _materielInfoRepository;
-
-        public PurchaseOrderService(IPurchaseOrderRepository BaseDal, IPurchaseOrderDetailRepository purchaseOrderDetailRepository, IUnitOfWorkManage unitOfWorkManage, IBasicRepository basicRepository, ISupplierInfoRepository supplierInfoRepository, IMaterielInfoRepository materielInfoRepository) : base(BaseDal)
-        {
-            _purchaseOrderDetailRepository = purchaseOrderDetailRepository;
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicRepository = basicRepository;
-            _supplierInfoRepository = supplierInfoRepository;
-            _materielInfoRepository = materielInfoRepository;
-        }
-        public WebResponseContent GetPurchaseOrderInfo(string purchaseOrderNo)
-        {
-            try
-            {
-                Dt_PurchaseOrder purchaseOrder = BaseDal.Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == purchaseOrderNo).Includes(x => x.Details).First();
-                List<string> MaterielCodes = purchaseOrder.Details.Where(x => x.PurchaseDetailStatus != PurchaseOrderDetailStatusEnum.Received.ObjToInt()).Select(x => x.MaterielCode).ToList();
-                return WebResponseContent.Instance.OK(data: MaterielCodes);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        public WebResponseContent ReceivePurchaseOrder(PurchaseOrderModel model)
-        {
-            try
-            {
-                return model.Way switch
-                {
-                    1 => AddPurchaseOrder(model),
-                    2 => UpdatePurchaseOrder(model),
-                    3 => DeletePurchaseOrder(model),
-                    4 => ClosePurchaseOrder(model),
-                    _ => WebResponseContent.Instance.OK(),
-                };
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent AddPurchaseOrder(PurchaseOrderModel model)
-        {
-            try
-            {
-                if (BaseDal.QueryFirst(x => x.PurchaseOrderNo == model.OrderNo) != null)
-                {
-                    return WebResponseContent.Instance.Error($"閲囪喘鍗曞彿閲嶅");
-                }
-                if (_supplierInfoRepository.QueryFirst(x => x.SupplierCode == model.SCode) == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒颁緵搴斿晢缂栫爜銆恵model.SCode}銆戠殑淇℃伅");
-                }
-                List<Dt_Warehouse> warehouses = _basicRepository.WarehouseRepository.QueryData();
-                List<Dt_MaterielInfo> materielInfos = _materielInfoRepository.QueryData();
-                List<Dt_PurchaseOrderDetail> purchaseOrderDetails = new List<Dt_PurchaseOrderDetail>();
-                foreach (var item in model.MList)
-                {
-                    Dt_Warehouse? warehouse = warehouses.FirstOrDefault(x => x.WarehouseCode == item.WaId);
-                    if (warehouse == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-                    }
-                    Dt_MaterielInfo? materielInfo = materielInfos.FirstOrDefault(x => x.MaterielCode == item.MCode);
-                    if (materielInfo == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒扮墿鏂欑紪鐮併�恵item.MCode}銆戠殑淇℃伅");
-                    }
-                    Dt_PurchaseOrderDetail purchaseOrderDetail = new Dt_PurchaseOrderDetail()
-                    {
-                        MaterielCode = item.MCode,
-                        MaterielName = materielInfo.MaterielName,
-                        MaterielSpec = materielInfo.MaterielSpec,
-                        PurchaseDetailQuantity = item.Qty,
-                        PurchaseDetailReceiveQty = 0,
-                        PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.NotReceived.ObjToInt(),
-                        Unit = item.Unit,
-                        WarehouseId = warehouse.WarehouseId,
-                        RowNo = item.RowId,
-                    };
-                    purchaseOrderDetails.Add(purchaseOrderDetail);
-                }
-
-                Dt_PurchaseOrder purchaseOrder = new Dt_PurchaseOrder()
-                {
-                    OrderQuantity = model.Amount,
-                    OrderDate = model.OrderDate,
-                    PurchaseOrderNo = model.OrderNo,
-                    PurchaseOrderStatus = PurchaseOrderStatusEnum.NotReceived.ObjToInt(),
-                    PurchaseOrderType = model.Type,
-                    SupplierCode = model.SCode,
-                    Details = purchaseOrderDetails
-                };
-
-                Db.InsertNav(purchaseOrder).Include(x => x.Details).ExecuteCommand();
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent UpdatePurchaseOrder(PurchaseOrderModel model)
-        {
-            try
-            {
-                Dt_PurchaseOrder purchaseOrder = Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == model.OrderNo).Includes(x => x.Details).First();
-                if (purchaseOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟淇℃伅");
-                }
-                if (purchaseOrder.Details == null || purchaseOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟鏄庣粏淇℃伅");
-                }
-                if (_supplierInfoRepository.QueryFirst(x => x.SupplierCode == model.SCode) == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒颁緵搴斿晢缂栫爜銆恵model.SCode}銆戠殑淇℃伅");
-                }
-                List<Dt_Warehouse> warehouses = _basicRepository.WarehouseRepository.QueryData();
-                List<Dt_MaterielInfo> materielInfos = _materielInfoRepository.QueryData();
-                List<Dt_PurchaseOrderDetail> purchaseOrderDetails = new List<Dt_PurchaseOrderDetail>();
-                List<Dt_PurchaseOrderDetail> updatePurchaseOrderDetails = new List<Dt_PurchaseOrderDetail>();
-                List<int> detailIds = new List<int>();
-                foreach (var item in model.MList)
-                {
-                    Dt_Warehouse? warehouse = warehouses.FirstOrDefault(x => x.WarehouseCode == item.WaId);
-                    if (warehouse == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-                    }
-                    Dt_MaterielInfo? materielInfo = materielInfos.FirstOrDefault(x => x.MaterielCode == item.MCode);
-                    if (materielInfo == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒扮墿鏂欑紪鐮併�恵item.MCode}銆戠殑淇℃伅");
-                    }
-                    Dt_PurchaseOrderDetail? purchaseOrderDetail = purchaseOrder.Details.FirstOrDefault(x => x.RowNo == item.RowId);
-                    if (purchaseOrderDetail == null)
-                    {
-                        purchaseOrderDetail = new Dt_PurchaseOrderDetail()
-                        {
-                            MaterielCode = item.MCode,
-                            PurchaseDetailQuantity = item.Qty,
-                            PurchaseDetailReceiveQty = 0,
-                            PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.NotReceived.ObjToInt(),
-                            Unit = item.Unit,
-                            WarehouseId = warehouse.WarehouseId,
-                            RowNo = item.RowId,
-                        };
-                        purchaseOrderDetails.Add(purchaseOrderDetail);
-                    }
-                    else
-                    {
-                        purchaseOrderDetail.MaterielCode = item.MCode;
-                        purchaseOrderDetail.PurchaseDetailQuantity = item.Qty;
-                        purchaseOrderDetail.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.NotReceived.ObjToInt();
-                        purchaseOrderDetail.Unit = item.Unit;
-                        purchaseOrderDetail.WarehouseId = warehouse.WarehouseId;
-                        purchaseOrderDetail.RowNo = item.RowId;
-                        updatePurchaseOrderDetails.Add(purchaseOrderDetail);
-                        detailIds.Add(purchaseOrderDetail.Id);
-                    }
-                }
-
-                purchaseOrder.OrderQuantity = model.Amount;
-                purchaseOrder.OrderDate = model.OrderDate;
-                purchaseOrder.PurchaseOrderNo = model.OrderNo;
-                purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.NotReceived.ObjToInt();
-                purchaseOrder.PurchaseOrderType = model.Type;
-                purchaseOrder.SupplierCode = model.SCode;
-
-                List<Dt_PurchaseOrderDetail> deletePurchaseOrderDetails = purchaseOrder.Details.Where(x => !detailIds.Contains(x.Id)).ToList();
-
-                _unitOfWorkManage.BeginTran();
-                foreach (var item in deletePurchaseOrderDetails)
-                {
-                    _purchaseOrderDetailRepository.DeleteAndMoveIntoHty(item, OperateTypeEnum.浜哄伐鍒犻櫎);
-                }
-
-                _purchaseOrderDetailRepository.UpdateData(updatePurchaseOrderDetails);
-                _purchaseOrderDetailRepository.AddData(purchaseOrderDetails);
-
-                BaseDal.UpdateData(purchaseOrder);
-                _unitOfWorkManage.CommitTran();
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent DeletePurchaseOrder(PurchaseOrderModel model)
-        {
-            try
-            {
-                Dt_PurchaseOrder purchaseOrder = Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == model.OrderNo).Includes(x => x.Details).First();
-                if (purchaseOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟淇℃伅");
-                }
-                if (purchaseOrder.Details == null || purchaseOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟鏄庣粏淇℃伅");
-                }
-                Db.DeleteNav(purchaseOrder).Include(x => x.Details).ExecuteCommand();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent ClosePurchaseOrder(PurchaseOrderModel model)
-        {
-            try
-            {
-                Dt_PurchaseOrder purchaseOrder = Db.Queryable<Dt_PurchaseOrder>().Where(x=>x.PurchaseOrderNo== model.OrderNo).Includes(x=>x.Details).First();
-                if (purchaseOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟淇℃伅");
-                }
-                if (purchaseOrder.Details == null || purchaseOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟鏄庣粏淇℃伅");
-                }
-                purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Closed.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                BaseDal.UpdateData(purchaseOrder);
-                //BaseDal.DeleteAndMoveIntoHty(purchaseOrder, OperateTypeEnum.鍏抽棴);
-                foreach (var item in purchaseOrder.Details)
-                {
-                    item.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.Closed.ObjToInt();
-                    //_purchaseOrderDetailRepository.DeleteAndMoveIntoHty(item, OperateTypeEnum.鍏抽棴);
-                    _purchaseOrderDetailRepository.UpdateData(item);
-                }
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReceiveOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReceiveOrderDetailService.cs"
deleted file mode 100644
index 8486575..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReceiveOrderDetailService.cs"
+++ /dev/null
@@ -1,408 +0,0 @@
-锘�
-using AutoMapper;
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Basic;
-using WIDESEA_IBasicRepository;
-using WIDESEA_ICheckRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IStockRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class ReceiveOrderDetailService : ServiceBase<Dt_ReceiveOrderDetail, IReceiveOrderDetailRepository>, IReceiveOrderDetailService
-    {
-        private readonly IMapper _mapper;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IInboundRepository _inboundRepository;
-        private readonly IBasicRepository _basicRepository;
-        private readonly ICheckOrderRepository _checkOrderRepository;
-        private readonly IStockRepository _stockRepository;
-
-        public ReceiveOrderDetailService(IReceiveOrderDetailRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IInboundRepository inboundRepository, IBasicRepository basicRepository, ICheckOrderRepository checkOrderRepository, IStockRepository stockRepository) : base(BaseDal)
-        {
-            _mapper = mapper;
-            _unitOfWorkManage = unitOfWorkManage;
-            _inboundRepository = inboundRepository;
-            _basicRepository = basicRepository;
-            _checkOrderRepository = checkOrderRepository;
-            _stockRepository = stockRepository;
-        }
-
-        private static object _rowNoLocker = new object();
-        /// <summary>
-        /// 鎵爜娣诲姞鏀惰揣鍗曟槑缁嗭紙鍗曚釜锛�
-        /// </summary>
-        /// <param name="serNum">鐗╂枡鐮�</param>
-        /// <param name="orderNo">鏀惰揣鍗曞彿</param>
-        /// <returns></returns>
-        public WebResponseContent AddReceiveOrderDetail(string serNum, string orderNo)
-        {
-            try
-            {
-                Dt_ReceiveOrder receiveOrder = _inboundRepository.ReceiveOrderRepository.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == orderNo).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鏀惰揣鍗�");
-                }
-
-                if (receiveOrder.ReceiveOrderStatus == ReceiveOrderStatusEnum.Completed.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ュ崟鎹凡鏀惰揣瀹屾垚");
-                }
-
-                MatSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNum);
-                //鏀惰揣澧炲姞鎵规鍗℃帶
-                //鏌ヨ鏀惰揣鏄庣粏鏄惁鏈夊瓨鍦ㄥ悓涓�涓壒娆�
-                Dt_ReceiveOrderDetail receiveOrderDetailOld = _inboundRepository.ReceiveOrderDetailRepository.QueryFirst(x => x.LotNo == model.LotNo && x.MaterielCode == model.MaterielCode);
-                Dt_ReceiveOrder? receiveOrderOld = null;
-                if (receiveOrderDetailOld!=null)
-                {
-                    receiveOrderOld = _inboundRepository.ReceiveOrderRepository.QueryFirst(x => x.ReceiveOrderId == receiveOrderDetailOld.ReceiveOrderId);
-                }
-                if (receiveOrderDetailOld!=null && receiveOrderOld?.WarehouseId== receiveOrder.WarehouseId)
-                {
-                    return WebResponseContent.Instance.Error($"鏀惰揣鍗曞彿{receiveOrderOld.ReceiveOrderNo}涓壒娆model.LotNo}宸插瓨鍦�");
-                }
-                //鏌ヨ搴撳瓨鎵规鏄惁鏈夊瓨鍦ㄥ悓涓�涓壒娆�
-                Dt_StockInfoDetail stockInfoDetail = _stockRepository.StockInfoDetailRepository.QueryFirst(x => x.BatchNo == model.LotNo && x.MaterielCode == model.MaterielCode);
-                Dt_StockInfo? stockInfo = null;
-                if (stockInfoDetail!=null)
-                {
-                    stockInfo = _stockRepository.StockInfoRepository.QueryFirst(x => x.Id == stockInfoDetail.Id);
-                }
-                if (stockInfoDetail!=null && stockInfo?.WarehouseId==receiveOrder.WarehouseId)
-                {
-                    return WebResponseContent.Instance.Error($"搴撳瓨{stockInfo.PalletCode}涓壒娆model.LotNo}宸插瓨鍦�");
-                }
-                if (model!=null)
-                {
-                    string format = "yyyy-MM-dd"; // 鐩爣鏍煎紡
-                    DateTime parsedDate;
-                    // 瑙f瀽楠岃瘉鏍煎紡
-                    bool isValidEffDate = DateTime.TryParseExact(
-                        model.EffectiveDate,
-                        format,
-                        CultureInfo.InvariantCulture,
-                        DateTimeStyles.None,
-                        out parsedDate
-                    );
-                    bool isValidProDate = DateTime.TryParseExact(
-                        model.ProductionDate,
-                        format,
-                        CultureInfo.InvariantCulture,
-                        DateTimeStyles.None,
-                        out parsedDate
-                    );
-
-                    if (!isValidEffDate || !isValidProDate)
-                    {
-                        return WebResponseContent.Instance.Error("鏍煎紡鏃犳晥鎴栨棩鏈熶笉鍚堟硶");
-                    }
-                }
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == model.MaterielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-                //璇ユ敹璐у崟浠撳簱鏄惁鏈夎鐗╂枡
-                if (materielInfo.WarehouseId != receiveOrder.WarehouseId)
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ墿鏂欎笉灞炰簬璇ヤ粨搴�");
-                }
-                //鏃犻噰璐崟杩涜鏀惰揣
-                if (receiveOrder.ReceiveOrderType != ReceiveOrderTypeEnum.PO.ObjToInt())
-                {
-                    //鑾峰彇鍏蜂綋鎵规鍙婄墿鏂�
-                    Dt_ReceiveOrderDetail? detailNoPo = receiveOrder.Details.FirstOrDefault(x => x.LotNo == model.LotNo && x.MaterielCode == model.MaterielCode);
-                    lock (_rowNoLocker)
-                    {
-                        if (detailNoPo != null)
-                        {
-                            //鍘熸湁鏀惰揣鏄庣粏澧炲姞鏀惰揣鏁伴噺
-                            detailNoPo.ReceivedQuantity += model.Quantity;
-                            _unitOfWorkManage.BeginTran();
-                            BaseDal.UpdateData(detailNoPo);
-                            _unitOfWorkManage.CommitTran();
-                        }
-                        else
-                        {
-                            int rowNo = 0;
-                            if (receiveOrder.Details.Count > 0)
-                            {
-                                rowNo = receiveOrder.Details.Max(x => x.RowNo);
-                            }
-                            Dt_ReceiveOrderDetail receiveOrderDetail = new Dt_ReceiveOrderDetail()
-                            {
-                                PurchaseOrderNo = model.PurchaseOrderNo,
-                                ReceivedQuantity = model.Quantity,
-                                MaterielCode = model.MaterielCode,
-                                LotNo = model.LotNo,
-                                MaterielName = materielInfo.MaterielName,
-                                MaterielSpec = materielInfo.MaterielSpec,
-                                ReceiveOrderId = receiveOrder.ReceiveOrderId,
-                                PurchaseOrderDetailRowNo = rowNo + 1,
-                                IfInspection = materielInfo.IsCheck.ObjToInt(),
-                                CurrCode = "",
-                                PriceInTax = 0,
-                                TaxRate = "",
-                                RowNo = rowNo + 1,
-                                Unit = materielInfo.MaterielUnit
-                            };
-                            if (receiveOrder.ReceiveOrderStatus == ReceiveOrderStatusEnum.NotStarted.ObjToInt())
-                            {
-                                receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt();
-                            }
-                            _unitOfWorkManage.BeginTran();
-                            _inboundRepository.ReceiveOrderDetailRepository.AddData(receiveOrderDetail);
-                            _inboundRepository.ReceiveOrderRepository.UpdateData(receiveOrder);
-                            #region 娉ㄩ噴
-                            if (materielInfo.IsCheck == WhetherEnum.True)
-                            {
-                                Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
-                                checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo;
-                                checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity;
-                                checkOrder.ReceiveDetailRowNo = receiveOrderDetail.RowNo;
-                                checkOrder.ScrappedQuantity = 0;
-                                checkOrder.ReturnQuantity = 0;
-                                checkOrder.DefectedQuantity = 0;
-                                _checkOrderRepository.AddData(checkOrder);
-                            }
-                            #endregion
-                            _unitOfWorkManage.CommitTran();
-                        }
-                        return WebResponseContent.Instance.OK();
-                    }
-                }
-                Dt_PurchaseOrder purchaseOrder = _inboundRepository.PurchaseOrderRepository.Db.Queryable<Dt_PurchaseOrder>().Where(x => x.PurchaseOrderNo == model.PurchaseOrderNo).Includes(x => x.Details).First();
-                if (purchaseOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌閲囪喘鍗�");
-                }
-                if (purchaseOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌閲囪喘鍗曟槑缁嗘暟鎹�");
-                }
-                if (purchaseOrder.SupplierCode != receiveOrder.SuppliersId)
-                {
-                    return WebResponseContent.Instance.Error($"渚涘簲鍟嗕笉涓�鑷�,璇锋柊寤烘敹璐у崟");
-                }
-                if (purchaseOrder.PurchaseOrderStatus == PurchaseOrderStatusEnum.Received.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ラ噰璐崟鏀惰揣宸插畬鎴�");
-                }
-                Dt_PurchaseOrderDetail? purchaseOrderDetail = purchaseOrder.Details.Where(x => x.MaterielCode == model.MaterielCode && (x.PurchaseDetailStatus == PurchaseOrderDetailStatusEnum.NotReceived.ObjToInt() || x.PurchaseDetailStatus == PurchaseOrderDetailStatusEnum.Receiving.ObjToInt())).OrderBy(x=>x.Id).FirstOrDefault();
-                if (purchaseOrderDetail == null)
-                {
-                    return WebResponseContent.Instance.Error($"璇ラ噰璐崟鏄庣粏鏀惰揣宸插畬鎴�");
-                }
-                //鍒ゆ柇璇ラ噰璐崟鏄庣粏鏄惁宸插瓨鍦ㄦ槑缁�
-                List<Dt_ReceiveOrderDetail> details = receiveOrder.Details.Where(x => x.PurchaseOrderNo == model.PurchaseOrderNo && x.PurchaseOrderDetailRowNo == purchaseOrderDetail.RowNo && x.MaterielCode == model.MaterielCode).ToList();
-                if (details.Count >0 && details.Sum(x=>x.ReceivedQuantity) == purchaseOrderDetail.PurchaseDetailQuantity)
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ敹璐у崟鏄庣粏宸叉敹璐�");
-                }
-                //鑾峰彇鍏蜂綋鎵规鍙婄墿鏂�
-                Dt_ReceiveOrderDetail? detail = details.FirstOrDefault(x => x.LotNo == model.LotNo && x.MaterielCode==model.MaterielCode);
-                lock (_rowNoLocker)
-                {
-                    if (detail != null)
-                    {
-                        //鍘熸湁鏀惰揣鏄庣粏澧炲姞鏀惰揣鏁伴噺
-                        detail.ReceivedQuantity += model.Quantity;
-                        purchaseOrderDetail.PurchaseDetailReceiveQty += model.Quantity;
-                        if (purchaseOrderDetail.PurchaseDetailReceiveQty > purchaseOrderDetail.PurchaseDetailQuantity)
-                        {
-                            return WebResponseContent.Instance.Error($"閲囪喘鍗曡鍙穥purchaseOrderDetail.RowNo}鐗╂枡{purchaseOrderDetail.MaterielCode}鏁伴噺婧㈠嚭:{purchaseOrderDetail.PurchaseDetailReceiveQty - purchaseOrderDetail.PurchaseDetailQuantity}");
-                        }
-                        if (purchaseOrderDetail.PurchaseDetailReceiveQty == purchaseOrderDetail.PurchaseDetailQuantity)
-                        {
-                            purchaseOrderDetail.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.Received.ObjToInt();
-                        }
-                        else
-                        {
-                            purchaseOrderDetail.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.Receiving.ObjToInt();
-                        }
-                        float sumQty = purchaseOrder.Details.Sum(x => x.PurchaseDetailReceiveQty);
-                        if (purchaseOrder.OrderQuantity == sumQty)
-                        {
-                            purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Received.ObjToInt();
-                        }
-                        else
-                        {
-                            purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Receiving.ObjToInt();
-                        }
-                        _unitOfWorkManage.BeginTran();
-                        _inboundRepository.PurchaseOrderRepository.UpdateData(purchaseOrder);
-                        BaseDal.UpdateData(detail);
-                        _inboundRepository.PurchaseOrderDetailRepository.UpdateData(purchaseOrderDetail);
-                        _unitOfWorkManage.CommitTran();
-                    }
-                    else
-                    {
-                        int rowNo = 0;
-                        if (receiveOrder.Details.Count > 0)
-                        {
-                            rowNo = receiveOrder.Details.Max(x => x.RowNo);
-                        }
-                        Dt_ReceiveOrderDetail receiveOrderDetail = new Dt_ReceiveOrderDetail()
-                        {
-                            PurchaseOrderNo = model.PurchaseOrderNo,
-                            ReceivedQuantity = model.Quantity,
-                            MaterielCode = model.MaterielCode,
-                            LotNo = model.LotNo,
-                            MaterielName=materielInfo.MaterielName,
-                            MaterielSpec=materielInfo.MaterielSpec,
-                            ReceiveOrderId = receiveOrder.ReceiveOrderId,
-                            PurchaseOrderDetailRowNo = purchaseOrderDetail.RowNo,
-                            IfInspection = materielInfo.IsCheck.ObjToInt(),
-                            CurrCode = "",
-                            PriceInTax = 0,
-                            TaxRate = "",
-                            RowNo = rowNo + 1,
-                            Unit = purchaseOrderDetail.Unit
-                        };
-                        if (receiveOrder.ReceiveOrderStatus == ReceiveOrderStatusEnum.NotStarted.ObjToInt())
-                        {
-                            receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt();
-                        }
-                        //鍒ゆ柇閲囪喘鏄庣粏鏁伴噺
-                        if (purchaseOrderDetail.PurchaseDetailQuantity < model.Quantity)
-                        {
-                            return WebResponseContent.Instance.Error($"璇锋牳瀵归噰璐崟璇ョ墿鏂欐暟閲�");
-                        }
-                        if (purchaseOrderDetail.PurchaseDetailReceiveQty > 0)
-                        {
-                            purchaseOrderDetail.PurchaseDetailReceiveQty += model.Quantity;
-                        }
-                        else
-                        {
-                            purchaseOrderDetail.PurchaseDetailReceiveQty = model.Quantity;
-                        }
-                        if (purchaseOrderDetail.PurchaseDetailReceiveQty > purchaseOrderDetail.PurchaseDetailQuantity)
-                        {
-                            return WebResponseContent.Instance.Error($"閲囪喘鍗曡鍙穥purchaseOrderDetail.RowNo}鐗╂枡{purchaseOrderDetail.MaterielCode}鏁伴噺婧㈠嚭:{purchaseOrderDetail.PurchaseDetailReceiveQty - purchaseOrderDetail.PurchaseDetailQuantity}");
-                        }
-                        if (purchaseOrderDetail.PurchaseDetailQuantity == purchaseOrderDetail.PurchaseDetailReceiveQty)
-                        {
-                            purchaseOrderDetail.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.Received.ObjToInt();
-                        }
-                        else
-                        {
-                            purchaseOrderDetail.PurchaseDetailStatus = PurchaseOrderDetailStatusEnum.Receiving.ObjToInt();
-                        }
-                        float sumQty = purchaseOrder.Details.Sum(x => x.PurchaseDetailReceiveQty); //+ model.Quantity
-                        _unitOfWorkManage.BeginTran();
-                        BaseDal.AddData(receiveOrderDetail);
-                        if (purchaseOrder.OrderQuantity == sumQty)
-                        {
-                            purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Received.ObjToInt();
-                            _inboundRepository.PurchaseOrderRepository.UpdateData(purchaseOrder);
-                        }
-                        if(purchaseOrder.PurchaseOrderStatus== PurchaseOrderStatusEnum.NotReceived.ObjToInt())
-                        {
-                            purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Receiving.ObjToInt();
-                            _inboundRepository.PurchaseOrderRepository.UpdateData(purchaseOrder);
-                        }
-                        _inboundRepository.ReceiveOrderRepository.UpdateData(receiveOrder);
-                        _inboundRepository.PurchaseOrderDetailRepository.UpdateData(purchaseOrderDetail);
-                        #region 娉ㄩ噴
-                        if (materielInfo.IsCheck == WhetherEnum.True)
-                        {
-                            Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
-                            checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo;
-                            checkOrder.Result = CheckAcceptEnum.NotCheckAccept.ToString();
-                            checkOrder.QualifiedQuantity = 0;
-                            checkOrder.ReceiveDetailRowNo = receiveOrderDetail.RowNo;
-                            checkOrder.WarehouseId = receiveOrder.WarehouseId;
-                            checkOrder.ScrappedQuantity = 0;
-                            checkOrder.MaterielSpec = materielInfo.MaterielSpec;
-                            checkOrder.ReturnQuantity = 0;
-                            checkOrder.DefectedQuantity = 0;
-                            _checkOrderRepository.AddData(checkOrder);
-                        }
-                        #endregion
-                        _unitOfWorkManage.CommitTran();
-                    }
-
-                    return WebResponseContent.Instance.OK();
-                }
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        public WebResponseContent ScaninnerCode(string innerCode)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                var innerCodes = innerCode.Split(',');
-                var matCode = innerCodes.FirstOrDefault(x => x.Contains("M:"));//.Replace("M:", "");
-                if (matCode == null) throw new Exception("鏈幏鍙栧埌鐗╂枡鐮�");
-                var batchNo = innerCodes.FirstOrDefault(x => x.Contains("BS:"));//.Replace("BS:", "")
-                if (batchNo == null) throw new Exception("鏈幏鍙栧埌鎵规鍙�");
-                var purchaseOrderNo = innerCodes.FirstOrDefault(x => x.Contains("PO:"));//.Replace("PO:", "")
-                if (purchaseOrderNo == null) throw new Exception("鏈幏鍙栧埌閲囪喘鍗曞彿");
-                var qty = innerCodes.FirstOrDefault(x => x.Contains("Q:"));
-                if (qty == null) throw new Exception("鏈幏鍙栧埌鏁伴噺");
-                InnerCodeDTO innerCodeDTO = new InnerCodeDTO()
-                {
-                    matCode = matCode.Replace("M:", ""),
-                    batchNo = batchNo.Replace("BS:", ""),
-                    purchaseOrderNo = purchaseOrderNo.Replace("PO:", ""),
-                    qty = Convert.ToInt32(qty.Replace("Q:", ""))
-                };
-                content.OK("鎵弿鎴愬姛", data: innerCodeDTO);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent GetReceiveOrderInfos(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                string searchValue = saveModel.MainData["searchValue"].ToString();
-                string orderNo = saveModel.MainData["orderNo"].ToString();
-                Dt_ReceiveOrder receiveOrder = Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderNo == orderNo).First();
-                if (receiveOrder == null) throw new Exception($"鏈壘鍒板崟鎹紪鍙枫�恵orderNo}銆戜俊鎭�");
-                List<Dt_ReceiveOrderDetail> receiveOrderDetails = new List<Dt_ReceiveOrderDetail>();
-                if (string.IsNullOrEmpty(searchValue))
-                {
-                    receiveOrderDetails = Db.Queryable<Dt_ReceiveOrderDetail>().Where(x => x.ReceiveOrderId == receiveOrder.ReceiveOrderId).ToList();
-                }
-                else
-                {
-                    receiveOrderDetails = Db.Queryable<Dt_ReceiveOrderDetail>().Where(x => x.ReceiveOrderId == receiveOrder.ReceiveOrderId && x.MaterielCode == searchValue).ToList();
-                }
-
-                content.OK(data: receiveOrderDetails);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReceiveOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReceiveOrderService.cs"
deleted file mode 100644
index 2e8992a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReceiveOrderService.cs"
+++ /dev/null
@@ -1,520 +0,0 @@
-锘縰sing AutoMapper;
-using MailKit.Search;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.Utilities;
-using WIDESEA_DTO;
-using WIDESEA_DTO.Basic;
-using WIDESEA_DTO.ERP;
-using WIDESEA_External.ERPService;
-using WIDESEA_External.Model;
-using WIDESEA_IBasicRepository;
-using WIDESEA_ICheckRepository;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class ReceiveOrderService : ServiceBase<Dt_ReceiveOrder, IReceiveOrderRepository>, IReceiveOrderService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IMapper _mapper;
-        private readonly ICheckOrderRepository _checkOrderRepository;
-        private readonly IInboundRepository _inboundRepository;
-        private readonly IBasicRepository _basicRepository;
-        private readonly IInvokeERPService _invokeERPService;
-
-        public ReceiveOrderService(IReceiveOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IMapper mapper, ICheckOrderRepository checkOrderRepository, IInboundRepository inboundRepository, IBasicRepository basicRepository, IInvokeERPService invokeERPService) : base(BaseDal)
-        {
-            _mapper = mapper;
-            _unitOfWorkManage = unitOfWorkManage;
-            _checkOrderRepository = checkOrderRepository;
-            _inboundRepository = inboundRepository;
-            _basicRepository = basicRepository;
-            _invokeERPService = invokeERPService;
-        }
-        public override PageGridData<Dt_ReceiveOrder> GetPageData(PageDataOptions options)
-        {
-            PageGridData<Dt_ReceiveOrder> pageGridData = base.GetPageData(options);
-            //foreach (var item in pageGridData.Rows)
-            //{
-            //    //鑾峰彇鏀惰揣鏄庣粏
-            //    item.PurchaseOrderNo
-            //}
-            return pageGridData;
-        }
-        public override WebResponseContent AddData(SaveModel saveModel)
-        {
-            if (saveModel.MainData.ContainsKey(nameof(Dt_ReceiveOrder.ReceiveOrderStatus).FirstLetterToLower()))
-            {
-                saveModel.MainData[nameof(Dt_ReceiveOrder.ReceiveOrderStatus).FirstLetterToLower()] = ReceiveOrderStatusEnum.NotStarted.ObjToInt();
-            }
-            else
-            {
-                saveModel.MainData.Add(nameof(Dt_ReceiveOrder.ReceiveOrderStatus).FirstLetterToLower(), ReceiveOrderStatusEnum.NotStarted.ObjToInt());
-            }
-            if (saveModel.MainData.ContainsKey(nameof(Dt_ReceiveOrder.UploadStatus).FirstLetterToLower()))
-            {
-                saveModel.MainData[nameof(Dt_ReceiveOrder.UploadStatus).FirstLetterToLower()] = WhetherEnum.False.ObjToInt();
-            }
-            else
-            {
-                saveModel.MainData.Add(nameof(Dt_ReceiveOrder.UploadStatus).FirstLetterToLower(), WhetherEnum.False.ObjToInt());
-            }
-            if (saveModel.MainData.ContainsKey(nameof(Dt_ReceiveOrder.ReceiveDate).FirstLetterToLower()))
-            {
-                saveModel.MainData[nameof(Dt_ReceiveOrder.ReceiveDate).FirstLetterToLower()] = DateTime.Now;
-            }
-            else
-            {
-                saveModel.MainData.Add(nameof(Dt_ReceiveOrder.ReceiveDate).FirstLetterToLower(), DateTime.Now);
-            }
-
-            if (saveModel.MainData.TryGetValue(nameof(Dt_ReceiveOrder.SuppliersId).FirstLetterToLower(), out object? suppliersId) && suppliersId != null && !string.IsNullOrEmpty(suppliersId.ToString()))
-            {
-                Dt_ReceiveOrder receiveOrder = BaseDal.QueryFirst(x => x.SuppliersId == suppliersId.ToString() && x.WarehouseId == Convert.ToInt32(saveModel.MainData[nameof(Dt_ReceiveOrder.WarehouseId).FirstLetterToLower()]) && x.ReceiveOrderStatus< ReceiveOrderStatusEnum.Completed.ObjToInt());
-                if (receiveOrder != null)
-                {
-                    return WebResponseContent.Instance.Error("璇ヤ緵搴斿晢鏈夋湭瀹屾垚鐨勬敹璐у崟");
-                }
-            }
-
-            return base.AddData(saveModel);
-        }
-        public override object GetDetailPage(PageDataOptions pageData)
-        {
-            Type t = typeof(Dt_ReceiveOrder);
-
-            if (pageData.Value == null) return new PageGridData<object>(total: 0, null);
-            string keyName = t.GetKeyName();
-            ////鐢熸垚鏌ヨ鏉′欢
-            //Expression<Func<TEntity, bool>> whereExpression = keyName.CreateExpression<TEntity>(pageData.Value, LinqExpressionType.Equal);
-            int totalCount = 0;
-            PropertyInfo propertyInfo = t.GetProperties().FirstOrDefault(x => x.GetCustomAttribute<Navigate>() != null);
-            if (propertyInfo != null)
-            {
-                Type detailType = propertyInfo.PropertyType.GetGenericArguments()[0];
-                Navigate navigate = propertyInfo.GetCustomAttribute<Navigate>();
-                List<Dt_ReceiveOrderDetail> list = BaseDal.Db.Queryable<Dt_ReceiveOrderDetail>().Where(navigate.GetName(), "=", pageData.Value).ToPageList(pageData.Page, pageData.Rows, ref totalCount);
-                decimal sum = 0;
-                list.ForEach(x =>
-                {
-                    sum += Convert.ToDecimal(x.ReceivedQuantity);
-                });
-                PageGridData<Dt_ReceiveOrderDetail> pageGridData = new PageGridData<Dt_ReceiveOrderDetail>()
-                {
-                    Total = totalCount,
-                    Rows = list,
-                    Summary = new
-                    {
-                        ReceivedQuantity = Math.Round(sum, 3),
-                    }
-                };
-                return pageGridData;
-            }
-            return new PageGridData<object>(total: 0, null);
-        }
-        /// <summary>
-        /// 鏀惰揣瀹屾垚骞跺洖浼燛RP
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <returns></returns>
-        public WebResponseContent FeedbackReceiveOrder(int orderId)
-        {
-            try
-            {
-                Dt_ReceiveOrder receiveOrder = BaseDal.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderId == orderId).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒版敹璐у崟");
-                }
-                if (receiveOrder.ReceiveOrderStatus == ReceiveOrderStatusEnum.Completed.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鏀惰揣鍗曞凡瀹屾垚");
-                }
-                if (receiveOrder.Details == null || receiveOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒版敹璐у崟鏄庣粏");
-                }
-
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == receiveOrder.WarehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-                }
-
-                List<RecevieOrderDetailModel> recevieOrderDetails = new List<RecevieOrderDetailModel>();
-                foreach (var item in receiveOrder.Details)
-                {
-                    RecevieOrderDetailModel recevieOrderDetail = new RecevieOrderDetailModel()
-                    {
-                        Currcode = "",
-                        IfInspection = item.IfInspection,
-                        Lotno = item.LotNo,
-                        MaterialsId = item.MaterielCode,
-                        PriceInTax = 0,
-                        PurchaseOrderCode = item.PurchaseOrderNo,
-                        PurchaseOrderSerno = item.PurchaseOrderDetailRowNo,
-                        QtyRecieved = item.ReceivedQuantity,
-                        Serno = item.RowNo,
-                        Supplotno = item.LotNo,
-                        Taxrate = "",
-
-                    };
-                    if (receiveOrder.ReceiveOrderType!=ReceiveOrderTypeEnum.PO.ObjToInt())
-                    {
-                        recevieOrderDetail.Taxrate = "ZZ11";
-                        recevieOrderDetail.Currcode = "RMB";
-                    }
-                    recevieOrderDetails.Add(recevieOrderDetail);
-                }
-
-                ERPReceiveModel receiveModel = new ERPReceiveModel()
-                {
-                    Code = receiveOrder.ReceiveOrderNo,
-                    DeliveryCode = receiveOrder.DeliveryCode,
-                    CustomerId = receiveOrder.CustomerId,
-                    CreatorId = receiveOrder.Creater,
-                    EntDate = receiveOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
-                    ReceiveDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    SuppliersId = receiveOrder.SuppliersId,
-                    Type = Enum.GetName(typeof(ReceiveOrderTypeEnum), receiveOrder.ReceiveOrderType) ?? throw new Exception($"閲囪喘鍗曠被鍨嬮敊璇�"),
-                    UniqueTag = receiveOrder.ReceiveOrderId.ToString(),
-                    WarehouseCode = warehouse.WarehouseCode,
-                    Way = 1,
-                    Details = recevieOrderDetails
-                };
-
-                //鏇存柊鏀惰揣鍗曚俊鎭�
-                receiveOrder.ReceiveOrderStatus = ReceiveOrderStatusEnum.Completed.ObjToInt();
-                //鏀惰揣鎺ㄩ�佽嚦ER
-                string response = _invokeERPService.InvokeMatReceiveApi(receiveModel);
-                ErpRequestContent requestContent = response.DeserializeObject<ErpRequestContent>();
-                if (requestContent.res != 1)
-                {
-                    return WebResponseContent.Instance.Error($"{requestContent.Data}");
-                }
-                receiveOrder.UploadStatus = WhetherEnum.True.ObjToInt();
-                BaseDal.UpdateData(receiveOrder);
-                if (receiveOrder.Details.FirstOrDefault(x=>x.IfInspection==WhetherEnum.True.ObjToInt())==null)
-                {
-                    //鍒涘缓鍏ュ簱鍗� todo:鏄庣粏閮芥槸涓嶆楠岃嚜鍔ㄥ垱寤哄叆搴撳崟
-                    CreateInboundOrder(orderId);
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent GetReceiveOrders(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                int pageNo = saveModel.MainData["pageNo"].ObjToInt();
-                int warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                string orderNo = saveModel.MainData["orderNo"].ToString();
-                List<Dt_ReceiveOrder> dt_ReceiveOrders = new List<Dt_ReceiveOrder>();
-                if (string.IsNullOrEmpty(orderNo))
-                {
-                    dt_ReceiveOrders = Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderStatus < ReceiveOrderStatusEnum.Completed.ObjToInt() && x.WarehouseId == warehouseId).Includes(x=>x.Details).OrderByDescending(x=>x.ReceiveOrderId).ToPageList(pageNo, 5);
-                }
-                else
-                {
-                    dt_ReceiveOrders = Db.Queryable<Dt_ReceiveOrder>().Where(x => (x.ReceiveOrderNo.Contains(orderNo) || x.SuppliersId.Contains(orderNo)) && x.ReceiveOrderStatus < ReceiveOrderStatusEnum.Completed.ObjToInt() && x.WarehouseId == warehouseId).OrderByDescending(x => x.ReceiveOrderId).Includes(x => x.Details).ToPageList(pageNo, 5);
-                }
-
-                content.OK(data: dt_ReceiveOrders);
-            }
-            catch (Exception)
-            {
-
-                throw;
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鍒涘缓鍏ュ簱鍗�
-        /// </summary>
-        /// <param name="receiveOrderId">鏀惰揣鍗曠紪鍙�</param>
-        /// <returns></returns>
-        public WebResponseContent CreateInboundOrder(int receiveOrderId)
-        {
-            try
-            {
-                Dt_ReceiveOrder receiveOrder = Db.Queryable<Dt_ReceiveOrder>().Where(x => x.ReceiveOrderId == receiveOrderId).Includes(x => x.Details).First();
-                if (receiveOrder.UploadStatus!= WhetherEnum.True.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ敹璐у崟鏉ユ枡涓婁紶ERP澶辫触鏃犳硶鍒涘缓鍏ュ簱鍗曟嵁");
-                }
-                if (receiveOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鏀惰揣鍗曚俊鎭�");
-                }
-                if (receiveOrder.Details == null || receiveOrder.Details.Count() <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鏀惰揣鍗曟槑缁嗕俊鎭�");
-                }
-                if (receiveOrder.ReceiveOrderStatus != ReceiveOrderStatusEnum.Completed.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ敹璐у崟鏈畬鎴�");
-                }
-                Dt_InboundOrder OldCreateOrder = _inboundRepository.InboundOrderRepository.QueryFirst(x => x.UpperOrderNo == receiveOrder.ReceiveOrderNo);
-                if (receiveOrder.CreateInOrderStatus==WhetherEnum.True.ObjToInt() || OldCreateOrder!=null)
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ敹璐у崟瀵瑰簲鐨勫叆搴撳崟宸插瓨鍦�");
-                }
-                #region 娉ㄩ噴
-                List<Dt_CheckOrder> checkOrders = _checkOrderRepository.QueryData(x => x.ReceiveOrderNo == receiveOrder.ReceiveOrderNo);
-                if (checkOrders.FirstOrDefault(x => x.CheckOrderStatus == CheckOrderStatusEnum.NotCheck.ObjToInt()) != null)
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ敹璐у崟鏈川妫�瀹屾垚");
-                }
-
-                //if (checkOrders.FirstOrDefault(x => x.AuditStatus != AuditStatusEnum.Agree.ObjToInt()) != null)
-                //{
-                //    return WebResponseContent.Instance.Error($"璇ユ敹璐у崟璐ㄦ缁撴灉瀹℃壒鏈畬鎴�");
-                //}
-                if (checkOrders.FirstOrDefault(x => x.Result != CheckAcceptEnum.Accept.ToString()) != null)
-                {
-                    return WebResponseContent.Instance.Error($"鏀惰揣鏄庣粏涓瓨鏈夎川妫�鏈�氳繃");
-                }
-                #endregion
-
-                Dt_InboundOrder inboundOrder = new Dt_InboundOrder()
-                {
-                    UpperOrderNo = receiveOrder.ReceiveOrderNo,
-                    CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                    OrderStatus = InOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                    OrderType = InOrderTypeEnum.Purchase.ObjToInt(),
-                    WarehouseId = receiveOrder.WarehouseId,
-                    SupplierId = receiveOrder.SuppliersId,
-                    Details = new List<Dt_InboundOrderDetail>()
-                };
-                List<Dt_MaterielInfo> materielCodeInfos = _basicRepository.MaterielInfoRepository.QueryData(x => receiveOrder.Details.Select(x => x.MaterielCode).ToList().Contains(x.MaterielCode));
-                foreach (var item in receiveOrder.Details)
-                {
-                    float quantity = item.ReceivedQuantity;
-                    #region 娉ㄩ噴
-                    if (item.IfInspection == WhetherEnum.True.ObjToInt())
-                    {
-                        Dt_CheckOrder? checkOrder = checkOrders.FirstOrDefault(x => x.ReceiveOrderNo == receiveOrder.ReceiveOrderNo && x.ReceiveDetailRowNo == item.RowNo);
-                        if (checkOrder == null)
-                        {
-                            return WebResponseContent.Instance.Error($"璐ㄦ鍗曟暟鎹敊璇�");
-                        }
-                        quantity = checkOrder.QualifiedQuantity.GetValueOrDefault() + checkOrder.DefectedQuantity.GetValueOrDefault();
-                    }
-                    #endregion
-                    Dt_InboundOrderDetail detail = new Dt_InboundOrderDetail()
-                    {
-                        MaterielCode = item.MaterielCode,
-                        MaterielName = materielCodeInfos.FirstOrDefault(x => x.MaterielCode == item.MaterielCode)?.MaterielName ?? "",
-                        MaterielSpec= materielCodeInfos.FirstOrDefault(x => x.MaterielCode == item.MaterielCode)?.MaterielSpec ?? "",
-                        OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                        OrderQuantity = quantity,
-                        OverInQuantity = 0,
-                        ReceiptQuantity = 0,
-                        RowNo = item.RowNo,
-                        Unit = item.Unit,
-                        BatchNo = item.LotNo
-                    };
-                    inboundOrder.Details.Add(detail);
-                }
-                //鏇存柊鍏ュ簱鍗曞垱寤虹姸鎬�
-                receiveOrder.CreateInOrderStatus = WhetherEnum.True.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                BaseDal.UpdateData(receiveOrder);
-                _inboundRepository.InboundOrderRepository.Db.InsertNav(inboundOrder).Include(x => x.Details).ExecuteCommand();
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        #region 娴嬭瘯
-        public WebResponseContent ReceiveAllOrder(int purchaseOrderId, string lotNo)
-        {
-            try
-            {
-                Dt_PurchaseOrder purchaseOrder = Db.Queryable<Dt_PurchaseOrder>().Where(x => x.Id == purchaseOrderId).Includes(x => x.Details).First();
-                if (purchaseOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌閲囪喘鍗�");
-                }
-                if (purchaseOrder.Details.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒伴噰璐崟鏄庣粏淇℃伅");
-                }
-                if (purchaseOrder.PurchaseOrderStatus == PurchaseOrderStatusEnum.Received.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"宸叉敹璐у畬鎴�");
-                }
-                if (purchaseOrder.Details.FirstOrDefault(x => x.PurchaseDetailStatus == PurchaseOrderStatusEnum.NotReceived.ObjToInt()) == null)
-                {
-                    return WebResponseContent.Instance.Error($"宸叉敹璐у畬鎴�");
-                }
-                List<Dt_CheckOrder> checkOrders = new List<Dt_CheckOrder>();
-                List<Dt_MaterielInfo> materielInfos = new List<Dt_MaterielInfo>();
-                List<Dt_ReceiveOrderDetail> receiveOrderDetails = new List<Dt_ReceiveOrderDetail>();
-                Dt_ReceiveOrder receiveOrder = BaseDal.Db.Queryable<Dt_ReceiveOrder>().Where(x => x.SuppliersId == purchaseOrder.SupplierCode && x.ReceiveOrderStatus != ReceiveOrderStatusEnum.Completed.ObjToInt()).Includes(x => x.Details).First();
-                if (receiveOrder == null)
-                {
-                    int rowNo = 0;
-                    foreach (var item in purchaseOrder.Details)
-                    {
-                        Dt_MaterielInfo? materielInfo = materielInfos.FirstOrDefault(x => x.MaterielCode == item.MaterielCode);
-                        if (materielInfo == null)
-                        {
-                            materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == item.MaterielCode);
-                            if (materielInfo == null)
-                            {
-                                return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                            }
-                            materielInfos.Add(materielInfo);
-                        }
-                        Dt_ReceiveOrderDetail receiveOrderDetail = new Dt_ReceiveOrderDetail()
-                        {
-                            PurchaseOrderNo = purchaseOrder.PurchaseOrderNo,
-                            ReceivedQuantity = item.PurchaseDetailQuantity,
-                            MaterielCode = item.MaterielCode,
-                            LotNo = lotNo,
-                            PurchaseOrderDetailRowNo = item.RowNo,
-                            IfInspection = materielInfo.IsCheck.ObjToInt(),
-                            CurrCode = "",
-                            PriceInTax = 0,
-                            TaxRate = "",
-                            RowNo = rowNo + 1,
-                            Unit = item.Unit
-                        };
-                        rowNo += 1;
-                        receiveOrderDetails.Add(receiveOrderDetail);
-                        #region 娉ㄩ噴
-                        if (materielInfo.IsCheck == WhetherEnum.True)
-                        {
-                            Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
-                            checkOrder.CheckOrderNo = "TestCheckNo21";//娴嬭瘯
-                            checkOrder.ReceiveOrderNo = "";
-                            checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity;
-                            checkOrder.ScrappedQuantity = 0;
-                            checkOrder.ReturnQuantity = 0;
-                            checkOrder.DefectedQuantity = 0;
-                            checkOrder.ReceiveDetailRowNo = rowNo;
-                            checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt();
-                            checkOrders.Add(checkOrder);
-                        }
-                        #endregion
-                    }
-                    receiveOrder = new Dt_ReceiveOrder()
-                    {
-                        ReceiveOrderStatus = ReceiveOrderStatusEnum.Receiving.ObjToInt(),
-                        CustomerId = "",
-                        DeliveryCode = "/",
-                        ReceiveDate = DateTime.Now,
-                        ReceiveOrderType = ReceiveOrderTypeEnum.PO.ObjToInt(),
-                        SuppliersId = purchaseOrder.SupplierCode,
-                        WarehouseId = purchaseOrder.Details.FirstOrDefault()?.WarehouseId ?? 0,
-                        UploadStatus = WhetherEnum.False.ObjToInt(),
-                        Details = receiveOrderDetails
-                    };
-                }
-                else
-                {
-                    int rowNo = receiveOrder.Details.Count > 0 ? receiveOrder.Details.Max(x => x.RowNo) : 0;
-
-                    foreach (var item in purchaseOrder.Details)
-                    {
-                        Dt_MaterielInfo? materielInfo = materielInfos.FirstOrDefault(x => x.MaterielCode == item.MaterielCode);
-                        if (materielInfo == null)
-                        {
-                            materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == item.MaterielCode);
-                            if (materielInfo == null)
-                            {
-                                return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                            }
-                            materielInfos.Add(materielInfo);
-                        }
-                        Dt_ReceiveOrderDetail receiveOrderDetail = new Dt_ReceiveOrderDetail()
-                        {
-                            PurchaseOrderNo = purchaseOrder.PurchaseOrderNo,
-                            ReceivedQuantity = item.PurchaseDetailQuantity,
-                            MaterielCode = item.MaterielCode,
-                            LotNo = lotNo,
-                            ReceiveOrderId = receiveOrder.ReceiveOrderId,
-                            PurchaseOrderDetailRowNo = item.RowNo,
-                            IfInspection = materielInfo.IsCheck.ObjToInt(),
-                            CurrCode = "",
-                            PriceInTax = 0,
-                            TaxRate = "",
-                            RowNo = rowNo + 1,
-                            Unit = item.Unit,
-
-                        };
-                        rowNo += 1;
-                        receiveOrderDetails.Add(receiveOrderDetail);
-
-                        if (materielInfo.IsCheck == WhetherEnum.True)
-                        {
-                            Dt_CheckOrder checkOrder = _mapper.Map<Dt_CheckOrder>(receiveOrderDetail);
-                            checkOrder.CheckOrderNo = "Test-CheckNo1";//娴嬭瘯
-                            checkOrder.QualifiedQuantity = receiveOrderDetail.ReceivedQuantity;
-                            checkOrder.ScrappedQuantity = 0;
-                            checkOrder.ReceiveOrderNo = receiveOrder.ReceiveOrderNo;
-                            checkOrder.ReturnQuantity = 0;
-                            checkOrder.DefectedQuantity = 0;
-                            checkOrder.ReceiveDetailRowNo = rowNo;
-                            checkOrder.UploadStatus = CheckUploadEnum.UploadNo.ObjToInt();
-                            checkOrders.Add(checkOrder);
-                        }
-                    }
-                }
-
-                purchaseOrder.Details.ForEach(x => x.PurchaseDetailStatus = PurchaseOrderStatusEnum.Received.ObjToInt());
-                purchaseOrder.PurchaseOrderStatus = PurchaseOrderStatusEnum.Received.ObjToInt();
-
-                _unitOfWorkManage.BeginTran();
-                if (receiveOrder.ReceiveOrderId > 0)
-                {
-                    Db.Insertable(receiveOrderDetails).ExecuteCommand();
-                }
-                else
-                {
-                    Db.InsertNav(receiveOrder).Include(x => x.Details).ExecuteCommand();
-                    checkOrders.ForEach(x => x.ReceiveOrderNo = receiveOrder.ReceiveOrderNo);
-                }
-                if (checkOrders.Count > 0)
-                {
-                    _checkOrderRepository.AddData(checkOrders);
-                }
-                _inboundRepository.PurchaseOrderRepository.UpdateData(purchaseOrder);
-                _inboundRepository.PurchaseOrderDetailRepository.UpdateData(purchaseOrder.Details);
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        #endregion
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReturnOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReturnOrderDetailService.cs"
deleted file mode 100644
index 653ced1..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReturnOrderDetailService.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_InboundService
-{
-    public class ReturnOrderDetailService : ServiceBase<Dt_ReturnOrderDetail, IReturnOrderDetailRepository>, IReturnOrderDetailService
-    {
-        public IReturnOrderDetailRepository Repository => BaseDal;
-
-        public ReturnOrderDetailService(IReturnOrderDetailRepository BaseDal) : base(BaseDal)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReturnOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReturnOrderService.cs"
deleted file mode 100644
index 1943086..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/ReturnOrderService.cs"
+++ /dev/null
@@ -1,243 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-using WIDESEA_DTO.ERP;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_Common.OrderEnum;
-using SqlSugar.Extensions;
-using WIDESEA_Common.CommonEnum;
-
-namespace WIDESEA_InboundService
-{
-    public class ReturnOrderService : ServiceBase<Dt_ReturnOrder, IReturnOrderRepository>, IReturnOrderService
-    {
-        public IReturnOrderRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IBasicRepository _basicRepository;
-        private readonly IOutboundService _outboundService;
-        private readonly IInboundRepository _inboundRepository;
-        public ReturnOrderService(IReturnOrderRepository BaseDal,IUnitOfWorkManage unitOfWorkManage,IBasicRepository basicRepository,
-        IOutboundService outboundService,IInboundRepository inboundRepository) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicRepository = basicRepository;
-            _outboundService = outboundService;
-            _inboundRepository = inboundRepository;
-        }
-        /// <summary>
-        /// 鑾峰彇閫�鏂欏崟
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        public WebResponseContent GetReturnOrders(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                int pageNo = saveModel.MainData["pageNo"].ObjToInt();
-                string? orderNo = saveModel.MainData["orderNo"].ToString();
-                int warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                List<Dt_ReturnOrder> returnOrders = new List<Dt_ReturnOrder>();
-                if (string.IsNullOrEmpty(orderNo))
-                {
-                    returnOrders = Db.Queryable<Dt_ReturnOrder>().Where(x => x.ReturnOrderStatus < ReturnOrderStatusEnum.Returning.ObjToInt() && x.WarehouseId == warehouseId).OrderByDescending(x => x.CreateDate).ToPageList(pageNo, 5);
-                }
-                else
-                {
-                    returnOrders = Db.Queryable<Dt_ReturnOrder>().Where(x => (x.OrderNo.Contains(orderNo)) && x.ReturnOrderStatus < ReturnOrderStatusEnum.Returning.ObjToInt() && x.WarehouseId == warehouseId).OrderByDescending(x => x.CreateDate).ToPageList(pageNo, 5);
-                }
-
-                content.OK(data: returnOrders);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鑾峰彇鎺ユ敹閫�鏂欏崟
-        /// </summary>
-        public WebResponseContent ReturnOrder(ErpReturnOrderDTO model)
-        {
-            try
-            {
-                return model.Way switch
-                {
-                    1 => AddReturnOrder(model),
-                    2 => UpdateReturnOrder(model),
-                    3 => DeleteReturnOrder(model),
-                    _ => WebResponseContent.Instance.Error($"鎿嶄綔绫诲瀷涓嶅瓨鍦�,Way:{model.Way}"),
-                };
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 鏂板缓閫�鏂欏崟
-        /// </summary>
-        public WebResponseContent AddReturnOrder(ErpReturnOrderDTO model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                if (BaseDal.QueryFirst(x => x.OrderNo == model.OrderNo) != null) 
-                {
-                    return content.Error($"閫�鏂欏崟鍙穥model.OrderNo}宸插瓨鍦�!");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == model.WaCode);
-                if (warehouse == null)
-                {
-                    return content.Error($"鏈壘鍒颁粨搴撲俊鎭�");
-                }
-                List<Dt_ReturnOrderDetail> returnOrderDetails = new List<Dt_ReturnOrderDetail>();
-                foreach (var item in model.Issitem)
-                {
-                    //鍒ゆ柇鍙戞枡鍗曞彿
-                    Dt_OutboundOrder outboundOrder = _outboundService.OutboundOrderService.Repository.Db.Queryable<Dt_OutboundOrder>().Where(x=>x.UpFLOrderNo==item.PickCode).Includes(x=>x.Details).First() ?? throw new Exception($"鐢宠鍗曞彿(鍙戞枡鍗�){item.PickCode}涓嶅瓨鍦�");
-                    
-                    foreach (var pickitem in item.PickList)
-                    {
-                        Dt_OutboundOrderDetail outboundOrderDetail = outboundOrder.Details.Find(x => x.MaterielCode == pickitem.MCode) ?? throw new Exception($"{item.PickCode}鐢宠鍗曞彿涓墿鏂檣pickitem.MCode}涓嶅瓨鍦�");
-                        //鑾峰彇瀵瑰簲鍑哄簱鍗曡鎯�
-                        Dt_OutStockLockInfo outStockLockInfo = _outboundService.OutboundStockLockInfoService.Repository.QueryFirst(x => x.OrderDetailId == outboundOrderDetail.Id);
-                        
-                        Dt_ReturnOrderDetail returnOrderDetail = new Dt_ReturnOrderDetail()
-                        {
-                            PickCode = item.PickCode,
-                            ApplyRow = item.ApplyRow ?? 0,
-                            RowId = item.RowId,
-                            OrderDetailStatus = ReturnOrderStatusEnum.NotReturn.ObjToInt(),
-                            MCode = pickitem.MCode,
-                            MaterielName = outboundOrderDetail.MaterielName,
-                            MaterielSpec = outboundOrderDetail.MaterielSpec ?? "",
-                            BatchNo = outStockLockInfo.BatchNo,
-                            Qty = pickitem.Qty,
-                            ReturnQty = pickitem.ReturnQty,
-                            OverReturnQty = 0,
-                            Unit = pickitem.Unit,
-                            Code = pickitem.Code
-                        };
-                        returnOrderDetails.Add(returnOrderDetail);
-                    }
-                }
-                Dt_ReturnOrder returnOrder = new Dt_ReturnOrder()
-                {
-                    OrderNo=model.OrderNo,
-                    WarehouseId=warehouse.WarehouseId,
-                    ReturnOrderType=model.OrderType,
-                    ReturnOrderStatus=ReturnOrderStatusEnum.NotReturn.ObjToInt(),
-                    UploadStatus= WhetherEnum.False.ObjToInt(),
-                    IsDev=model.IsDev,
-                    Remark=model.Note,
-                    Details= returnOrderDetails
-                };
-                Db.InsertNav(returnOrder).Include(x => x.Details).ExecuteCommand();
-
-                content.OK("鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 淇敼閫�鏂欏崟
-        /// </summary>
-        public WebResponseContent UpdateReturnOrder(ErpReturnOrderDTO model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            return content;
-        }
-        /// <summary>
-        /// 鍒犻櫎閫�鏂欏崟
-        /// </summary>
-        public WebResponseContent DeleteReturnOrder(ErpReturnOrderDTO model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            return content;
-        }
-        /// <summary>
-        /// 纭閫�搴撴牴鎹��搴撳崟鐢熸垚鍏ュ簱鍗�
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent IsReturnCreateInOrder(int returnId)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_ReturnOrder returnOrder = Db.Queryable<Dt_ReturnOrder>().Where(x => x.Id == returnId).Includes(x => x.Details).First();
-                if (returnOrder==null)
-                {
-                    return content.Error("鏈壘鍒伴��鏂欒淇℃伅");
-                }
-                if (returnOrder.Details==null || returnOrder.Details.Count<=0)
-                {
-                    return content.Error("鏈壘鍒拌閫�鏂欏崟淇℃伅");
-                }
-                if (returnOrder.ReturnOrderStatus!=ReturnOrderStatusEnum.NotReturn.ObjToInt())
-                {
-                    return content.Error("璇ラ��鏂欏崟宸插畬鎴愭垨閫�鏂欎腑");
-                }
-                //鍒ゆ柇鏄惁鍒涘缓鍏ュ簱鍗�
-                Dt_InboundOrder InboundOld = _inboundRepository.InboundOrderRepository.QueryFirst(x=>x.UpperOrderNo== returnOrder.OrderNo);
-                if (InboundOld!=null)
-                {
-                    return content.Error($"璇ラ��鏂欏崟{returnOrder.OrderNo}宸茬敓鎴愬叆搴撳崟鍙穥InboundOld.InboundOrderNo}");
-                }
-                List<Dt_InboundOrderDetail> inboundOrderDetails = new List<Dt_InboundOrderDetail>();
-                foreach (var item in returnOrder.Details)
-                {
-                    Dt_InboundOrderDetail orderDetail = new Dt_InboundOrderDetail()
-                    {
-                        MaterielCode=item.MCode,
-                        BatchNo=item.BatchNo,
-                        OrderQuantity=item.ReturnQty,
-                        ReceiptQuantity=0,
-                        OverInQuantity=0,
-                        OrderDetailStatus= OrderDetailStatusEnum.New.ObjToInt(),
-                        Unit=item.Unit,
-                        RowNo=item.RowId,
-                        MaterielName=item.MaterielName,
-                        MaterielSpec=item.MaterielSpec,
-                    };
-                    inboundOrderDetails.Add(orderDetail);
-                }
-                Dt_InboundOrder inboundOrder = new Dt_InboundOrder()
-                {
-                    WarehouseId=returnOrder.WarehouseId,
-                    UpperOrderNo=returnOrder.OrderNo,
-                    SupplierId="",
-                    OrderType= InOrderTypeEnum.Return.ObjToInt(),
-                    OrderStatus= InOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                    CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                    Remark=returnOrder.Remark,
-                    Details= inboundOrderDetails
-                };
-                returnOrder.ReturnOrderStatus=ReturnOrderStatusEnum.Returning.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                BaseDal.UpdateData(returnOrder);
-                Db.InsertNav(inboundOrder).Include(x=>x.Details).ExecuteCommand();
-                _unitOfWorkManage.CommitTran();
-                return content.OK("鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/TakeStockOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/TakeStockOrderDetailService.cs"
deleted file mode 100644
index 5afb93e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/TakeStockOrderDetailService.cs"
+++ /dev/null
@@ -1,30 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-using WIDESEA_DTO.ERP;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_Common.OrderEnum;
-using SqlSugar.Extensions;
-using WIDESEA_Common.CommonEnum;
-
-namespace WIDESEA_InboundService
-{
-    public class TakeStockOrderDetailService : ServiceBase<Dt_TakeStockOrderDetail, ITakeStockOrderDetailRepository>, ITakeStockOrderDetailService
-    {
-        public ITakeStockOrderDetailRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        public TakeStockOrderDetailService(ITakeStockOrderDetailRepository BaseDal, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/TakeStockOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/TakeStockOrderService.cs"
deleted file mode 100644
index 94f8e0b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_InboundService/TakeStockOrderService.cs"
+++ /dev/null
@@ -1,105 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-using WIDESEA_DTO.ERP;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Core.Helper;
-using Microsoft.AspNetCore.Mvc.RazorPages;
-
-namespace WIDESEA_InboundService
-{
-    public class TakeStockOrderService : ServiceBase<Dt_TakeStockOrder, ITakeStockOrderRepository>, ITakeStockOrderService
-    {
-        public ITakeStockOrderRepository Repository => BaseDal;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IBasicRepository _basicRepository;
-        public TakeStockOrderService(ITakeStockOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IBasicRepository basicRepository) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicRepository = basicRepository;
-        }
-        /// <summary>
-        /// 鏂板
-        /// </summary>
-        public override WebResponseContent AddData(SaveModel saveModel)
-        {
-            Dt_Warehouse? warehouse = null;
-            if (saveModel.MainData.TryGetValue(nameof(Dt_TakeStockOrder.WarehouseId).FirstLetterToLower(), out object? warehouseId) && warehouseId != null && !string.IsNullOrEmpty(warehouseId.ToString()))
-            {
-                warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == warehouseId.ObjToInt());
-                if (warehouse == null)
-                    return WebResponseContent.Instance.Error("鏈壘鍒颁粨搴撲俊鎭�");
-            }
-
-            if (saveModel.DetailData.Count>0)
-            {
-                for (int i = 0; i < saveModel.DetailData.Count; i++)
-                {
-                    if (saveModel.DetailData[i].TryGetValue(nameof(Dt_TakeStockOrderDetail.MaterielCode).FirstLetterToLower(), out object? materielCode) && materielCode != null && !string.IsNullOrEmpty(materielCode.ToString()))
-                    {
-                        Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode.ToString() && x.WarehouseId == warehouse.WarehouseId);
-                        if (materielInfo == null) return WebResponseContent.Instance.Error($"鏈壘鍒版湰浠撳簱鐗╂枡{materielCode}淇℃伅");
-                        saveModel.DetailData[i].Add(nameof(Dt_TakeStockOrderDetail.MaterielName).FirstLetterToLower(),materielInfo.MaterielName);
-                        saveModel.DetailData[i].Add(nameof(Dt_TakeStockOrderDetail.MaterielSpec).FirstLetterToLower(), materielInfo.MaterielSpec);
-                        saveModel.DetailData[i].Add(nameof(Dt_TakeStockOrderDetail.Unit).FirstLetterToLower(), materielInfo.MaterielUnit);
-                    }
-                }
-            }
-            saveModel.MainData.Add(nameof(Dt_TakeStockOrder.TakeStockStatus).FirstLetterToLower(), TakeStockStatusEnum.NotTake.ObjToInt());
-            return base.AddData(saveModel); 
-        }
-        /// <summary>
-        /// 鑾峰彇瀵瑰簲浠撳簱鐩樼偣鍗�
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent GetTakeStockOrders(SaveModel saveModel)
-        {
-            WebResponseContent content =new WebResponseContent();
-            try
-            {
-                int pageNo = saveModel.MainData["pageNo"].ObjToInt();
-                string? orderNo = saveModel.MainData["orderNo"].ToString();
-                int warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                List<Dt_TakeStockOrder> takeStockOrders = new List<Dt_TakeStockOrder>();
-                if (string.IsNullOrEmpty(orderNo))
-                {
-                    takeStockOrders = Db.Queryable<Dt_TakeStockOrder>().Where(x => x.TakeStockStatus < TakeStockStatusEnum.Taked.ObjToInt() && x.WarehouseId == warehouseId).ToPageList(pageNo, 5);
-                }
-                else
-                {
-                    takeStockOrders = Db.Queryable<Dt_TakeStockOrder>().Where(x => (x.OrderNo.Contains(orderNo) && x.TakeStockStatus < TakeStockStatusEnum.Taked.ObjToInt() && x.WarehouseId == warehouseId)).ToPageList(pageNo, 5);
-                }
-                content.OK(data: takeStockOrders);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent MatPicking(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_CustomerInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_CustomerInfo.cs"
deleted file mode 100644
index cc03303..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_CustomerInfo.cs"
+++ /dev/null
@@ -1,51 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 瀹㈡埛淇℃伅
-    /// </summary>
-    [SugarTable(nameof(Dt_CustomerInfo), "瀹㈡埛淇℃伅")]
-    public class Dt_CustomerInfo : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 瀹㈡埛缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "瀹㈡埛缂栫爜")]
-        public string Code { get; set; }
-        /// <summary>
-        /// 瀹㈡埛鍑哄叆搴撹鍒�
-        /// </summary>
-        [SugarColumn(IsNullable = true,ColumnDescription = "瀹㈡埛鍑哄叆搴撹鍒�")]
-        public int OutRule { get; set; }
-        /// <summary>
-        /// 瀹㈡埛鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "瀹㈡埛鍚嶇О")]
-        public string Name { get; set; }
-
-        /// <summary>
-        /// 瀹㈡埛鍏ㄧО
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 100, ColumnDescription = "瀹㈡埛鍏ㄧО")]
-        public string NickName { get; set; }
-
-        /// <summary>
-        /// 瀹㈡埛鐘舵�� 0:绂佺敤 1:鍙敤
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐘舵��")]
-        public int State { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs"
deleted file mode 100644
index 557e906..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs"
+++ /dev/null
@@ -1,83 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 渚涘簲鍟嗕俊鎭�
-    /// </summary>
-    [SugarTable(nameof(Dt_SupplierInfo), "渚涘簲鍟嗕俊鎭�")]
-    public class Dt_SupplierInfo : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 渚涘簲鍟嗙紪鐮�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "渚涘簲鍟嗙紪鐮�")]
-        public string SupplierCode { get; set; }
-
-        /// <summary>
-        /// 渚涘簲鍟嗗悕绉�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "渚涘簲鍟嗗悕绉�")]
-        public string SupplierName { get; set; }
-
-        /// <summary>
-        /// 渚涘簲鍟嗙畝绉�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "渚涘簲鍟嗙畝绉�")]
-        public string SupplierShortName { get; set; }
-
-        /// <summary>
-        /// 鑱旂郴浜�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鑱旂郴浜�")]
-        public string Contacts { get; set; }
-
-        /// <summary>
-        /// 鑱旂郴鐢佃瘽
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鑱旂郴鐢佃瘽")]
-        public string ContactNumber { get; set; }
-
-        /// <summary>
-        /// 鑱旂郴鍦板潃
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鑱旂郴鍦板潃")]
-        public string ContactAddress { get; set; }
-
-        /// <summary>
-        /// 鐢靛瓙閭
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鐢靛瓙閭")]
-        public string Email { get; set; }
-
-        /// <summary>
-        /// 鎻忚堪
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鎻忚堪")]
-        public string Description { get; set; }
-
-        /// <summary>
-        /// 搴撳瓨缁勭粐
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "搴撳瓨缁勭粐")]
-        public string InvOrgId { get; set; }
-
-        /// <summary>
-        /// 鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐘舵��")]
-        public int Status { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_UserInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_UserInfo.cs"
deleted file mode 100644
index 5e5066e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Basic/Dt_UserInfo.cs"
+++ /dev/null
@@ -1,61 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍛樺伐淇℃伅
-    /// </summary>
-    [SugarTable(nameof(Dt_UserInfo), "鍛樺伐淇℃伅")]
-    public class Dt_UserInfo : BaseEntity
-    {
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鍛樺伐鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鍛樺伐鍙�")]
-        public string Code { get; set; }
-
-        /// <summary>
-        /// 閮ㄩ棬缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "閮ㄩ棬缂栫爜")]
-        public string DeptNo { get; set; }
-        /// <summary>
-        /// 閮ㄩ棬鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "閮ㄩ棬鍚嶇О")]
-        public string DeptName { get; set; }
-
-        /// <summary>
-        /// 鍛樺伐鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鍛樺伐鍚嶇О")]
-        public string Name { get; set; }
-
-        /// <summary>
-        /// 鐘舵�� 0:绂佺敤銆�1:鍙敤锛涢粯璁や负1
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐘舵��")]
-        public int State { get; set; }
-
-        /// <summary>
-        /// 搴撳瓨缁勭粐
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "搴撳瓨缁勭粐")]
-        public string InvOrgId { get; set; }
-
-        /// <summary>
-        /// 绫诲瀷 1=浠撶鍛橈紝2=璐ㄦ鍛�
-        /// </summary>
-        //[SugarColumn(IsNullable = false, ColumnDescription = "绫诲瀷")]
-        //public int Type { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Check/Dt_CheckOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Check/Dt_CheckOrder.cs"
deleted file mode 100644
index 3308e72..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Check/Dt_CheckOrder.cs"
+++ /dev/null
@@ -1,141 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 璐ㄦ鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_CheckOrder), "璐ㄦ鍗�")]
-    public class Dt_CheckOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int CheckOrderId { get; set; }
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-        /// <summary>
-        /// 妫�楠屽崟鍙�
-        /// </summary>
-        [CodeRule(RuleCodeEnum.CheckOrderRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "妫�楠屽崟鍙�")]
-        public string CheckOrderNo { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鏀惰揣鍗曞彿")]
-        public string ReceiveOrderNo { get; set; }
-
-        /// <summary>
-        /// 璐ㄦ鍗曠姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璐ㄦ鍗曠姸鎬�")]
-        public int CheckOrderStatus { get; set; }
-
-        /// <summary>
-        /// 瀹℃壒鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "瀹℃壒鐘舵��")]
-        public int AuditStatus { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鍗曟槑缁嗚鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏀惰揣鍗曟槑缁嗚鍙�")]
-        public int ReceiveDetailRowNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string LotNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 鍚堟牸鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍚堟牸鏁伴噺")]
-        public float? QualifiedQuantity { get; set; }
-
-        /// <summary>
-        /// 鐗归噰鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鐗归噰鏁伴噺")]
-        public float? DefectedQuantity { get; set; }
-
-        /// <summary>
-        /// 閫�璐ф暟閲�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "閫�璐ф暟閲�")]
-        public float? ReturnQuantity { get; set; }
-
-        /// <summary>
-        /// 鎶ュ簾鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鎶ュ簾鏁伴噺")]
-        public float? ScrappedQuantity { get; set; }
-
-        /// <summary>
-        /// 妫�楠屾�绘暟(鏀惰揣鏁伴噺)
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "妫�楠屾�绘暟")]
-        public float ReceivedQuantity { get; set; }
-
-        /// <summary>
-        /// 妫�楠岀粨鏋�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "妫�楠岀粨鏋�")]
-        public string Result { get; set; }
-
-        /// <summary>
-        /// 鐗归噰璇存槑
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鐗归噰璇存槑")]
-        public string DefectedNote { get; set; }
-
-        /// <summary>
-        /// 妫�楠屼汉
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "妫�楠屼汉")]
-        public string CheckUserName { get; set; }
-        /// <summary>
-        /// 妫�楠屼笂浼犵姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "妫�楠屼笂浼犵姸鎬�")]
-        public int UploadStatus { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 璐ㄦ缁撴灉
-        /// </summary>
-        [Navigate(NavigateType.OneToMany, nameof(Dt_CheckOrderResult.CheckOrderId), nameof(CheckOrderId))]
-        public List<Dt_CheckOrderResult> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Check/Dt_CheckOrderResult.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Check/Dt_CheckOrderResult.cs"
deleted file mode 100644
index d2dd436..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Check/Dt_CheckOrderResult.cs"
+++ /dev/null
@@ -1,57 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 妫�楠岀粨鏋�
-    /// </summary>
-    [SugarTable(nameof(Dt_CheckOrderResult), "妫�楠岀粨鏋�")]
-    public class Dt_CheckOrderResult : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 妫�楠屽崟涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "妫�楠屽崟涓婚敭")]
-        public int CheckOrderId { get; set; }
-
-        /// <summary>
-        /// 缂洪櫡浠g爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "缂洪櫡浠g爜")]
-        public string DefectCode { get; set; }
-
-        /// <summary>
-        /// 妫�楠岀粨鏋�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "妫�楠岀粨鏋�")]
-        public string Result { get; set; }
-
-        /// <summary>
-        /// 閫�璐ф暟閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏁伴噺")]
-        public float Quantity { get; set; }
-        /// <summary>
-        /// 鎶芥牱鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false,  ColumnDescription = "鏁伴噺")]
-        public float SampleCount { get; set; }
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 500, ColumnDescription = "澶囨敞")]
-        public string Note { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ErpProInOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ErpProInOrder.cs"
deleted file mode 100644
index 3e7e405..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ErpProInOrder.cs"
+++ /dev/null
@@ -1,142 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧璋冩嫧閿�鍞叆搴撳崟
-    /// </summary>
-    [SugarTable(nameof(Dt_ErpProInOrder), "鎴愬搧璋冩嫧閿�鍞叆搴撳崟")]
-    public class Dt_ErpProInOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.ProInCodeRule)]
-        [SugarColumn(IsNullable = false,Length =50, ColumnDescription = "鍗曟嵁缂栧彿")]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 涓婃父鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "涓婃父鍗曟嵁缂栧彿")]
-        public string UpperOrderNo { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟绫诲瀷")]
-        public int OrderType { get; set; }
-        /// <summary>
-        /// 搴撳瓨灞炴��<br/>
-        /// 1:鎴愬搧<br/>
-        /// 2:灏炬暟<br/>
-        /// 3:鐮斿彂<br/>
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "搴撳瓨灞炴��")]
-        public int ProStockAttribute { get; set; }
-        /// <summary>
-        /// 鍏ュ簱鍗曠姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍏ュ簱鍗曠姸鎬�")]
-        public int ProInStatus { get; set; }
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string PCode { get; set; }
-
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string PVer { get; set; }
-
-        /// <summary>
-        /// 浜у搧鎵规
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鎵规")]
-        public string PLot { get; set; }
-
-        /// <summary>
-        /// 浜у搧鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鍛ㄦ湡")]
-        public string DateCode { get; set; }
-
-        /// <summary>
-        /// 鍚堟牸PCS鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍚堟牸PCS鏁�")]
-        public float QtyPcs { get; set; }
-
-        /// <summary>
-        /// 鍖呰Set鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍖呰Set鏁�")]
-        public float QtySet { get; set; }
-
-        /// <summary>
-        /// X鏉挎暟
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "X鏉挎暟")]
-        public float XQty { get; set; }
-        /// <summary>
-        /// X鏉夸綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "X鏉夸綅")]
-        public string XSite { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 涓婃父寤哄崟鏃ユ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "涓婃父寤哄崟鏃ユ湡")]
-        public string OrderDate { get; set; }
-
-        /// <summary>
-        /// 閿�鍞鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閿�鍞鍗曞彿")]
-        public string ProSaleOrderNo { get; set; }
-        /// <summary>
-        /// 瀹㈡埛
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "瀹㈡埛")]
-        public string Customer { get; set; }
-
-        /// <summary>
-        /// 宸ュ巶
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "宸ュ巶")]
-        public string FactoryCode { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrder.cs"
deleted file mode 100644
index 63042a0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrder.cs"
+++ /dev/null
@@ -1,80 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍏ュ簱鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_InboundOrder), "鍏ュ簱鍗�")]
-    public class Dt_InboundOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.InboundOrderRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿")]
-        public string InboundOrderNo { get; set; }
-
-        /// <summary>
-        /// 涓婃父鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "涓婃父鍗曟嵁缂栧彿")]
-        public string UpperOrderNo { get; set; }
-
-        /// <summary>
-        /// 渚涘簲鍟嗙紪鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "渚涘簲鍟嗙紪鍙�")]
-        public string SupplierId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁绫诲瀷")]
-        public int OrderType { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鐘舵��")]
-        public int OrderStatus { get; set; }
-
-        /// <summary>
-        /// 鍒涘缓鏂瑰紡
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒涘缓鏂瑰紡")]
-        public int CreateType { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鍏ュ簱鍗曟槑缁�
-        /// </summary>
-        [Navigate(NavigateType.OneToMany, nameof(Dt_InboundOrderDetail.OrderId), nameof(Id))]
-        public List<Dt_InboundOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrderDetail.cs"
deleted file mode 100644
index 16aea96..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrderDetail.cs"
+++ /dev/null
@@ -1,95 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_InboundOrderDetail), "鍏ュ簱鍗曟槑缁�")]
-    public class Dt_InboundOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鍏ュ簱鍗曚富閿�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍏ュ簱鍗曚富閿�")]
-        public int OrderId { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string BatchNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鏁伴噺")]
-        public float OrderQuantity { get; set; }
-
-        /// <summary>
-        /// 缁勭洏鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "缁勭洏鏁伴噺", DefaultValue = "0")]
-        public float ReceiptQuantity { get; set; }
-
-        /// <summary>
-        /// 涓婃灦鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "涓婃灦鏁伴噺", DefaultValue = "0")]
-        public float OverInQuantity { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟鏄庣粏鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟鏄庣粏鐘舵��")]
-        public int OrderDetailStatus { get; set; }
-
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鍗曟槑缁嗚鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏀惰揣鍗曟槑缁嗚鍙�")]
-        public int RowNo { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrderDetail_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrderDetail_Hty.cs"
deleted file mode 100644
index 34e13aa..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrderDetail_Hty.cs"
+++ /dev/null
@@ -1,42 +0,0 @@
-锘縰sing Magicodes.ExporterAndImporter.Core;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_InboundOrderDetail_Hty), "鍏ュ簱鍗曟槑缁�")]
-    public class Dt_InboundOrderDetail_Hty : Dt_InboundOrderDetail, IBaseHistoryEntity
-    {
-        /// <summary>
-        /// 鍘熻〃涓婚敭
-        /// </summary>
-        [ImporterHeader(Name = "鍘熻〃涓婚敭")]
-        [ExporterHeader(DisplayName = "鍘熻〃涓婚敭")]
-        [SugarColumn(IsNullable = false, DefaultValue = "0", ColumnDescription = "鍘熻〃涓婚敭")]
-        public int SourceId { get; set; }
-
-        /// <summary>
-        /// 鎿嶄綔绫诲瀷
-        /// </summary>
-        [ImporterHeader(Name = "鎿嶄綔绫诲瀷")]
-        [ExporterHeader(DisplayName = "鎿嶄綔绫诲瀷")]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎿嶄綔绫诲瀷")]
-        public string OperateType { get; set; }
-
-        /// <summary>
-        /// 绉诲叆鍘嗗彶鏃堕棿
-        /// </summary>
-        [ImporterHeader(Name = "绉诲叆鍘嗗彶鏃堕棿")]
-        [ExporterHeader(DisplayName = "绉诲叆鍘嗗彶鏃堕棿")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "绉诲叆鍘嗗彶鏃堕棿")]
-        public DateTime InsertTime { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrder_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrder_Hty.cs"
deleted file mode 100644
index 2442f67..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_InboundOrder_Hty.cs"
+++ /dev/null
@@ -1,44 +0,0 @@
-锘縰sing Magicodes.ExporterAndImporter.Core;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曞巻鍙�
-    /// </summary>
-    [SugarTable(nameof(Dt_InboundOrder_Hty), "鍏ュ簱鍗曞巻鍙�")]
-    public class Dt_InboundOrder_Hty : Dt_InboundOrder, IBaseHistoryEntity
-    {
-        /// <summary>
-        /// 鍘熻〃涓婚敭
-        /// </summary>
-        [ImporterHeader(Name = "鍘熻〃涓婚敭")]
-        [ExporterHeader(DisplayName = "鍘熻〃涓婚敭")]
-        [SugarColumn(IsNullable = false, DefaultValue = "0", ColumnDescription = "鍘熻〃涓婚敭")]
-        public int SourceId { get; set; }
-
-        /// <summary>
-        /// 鎿嶄綔绫诲瀷
-        /// </summary>
-        [ImporterHeader(Name = "鎿嶄綔绫诲瀷")]
-        [ExporterHeader(DisplayName = "鎿嶄綔绫诲瀷")]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎿嶄綔绫诲瀷")]
-        public string OperateType { get; set; }
-
-        /// <summary>
-        /// 绉诲叆鍘嗗彶鏃堕棿
-        /// </summary>
-        [ImporterHeader(Name = "绉诲叆鍘嗗彶鏃堕棿")]
-        [ExporterHeader(DisplayName = "绉诲叆鍘嗗彶鏃堕棿")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "绉诲叆鍘嗗彶鏃堕棿")]
-        public DateTime InsertTime { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_MesProInOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_MesProInOrder.cs"
deleted file mode 100644
index 7831749..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_MesProInOrder.cs"
+++ /dev/null
@@ -1,75 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// MES鎴愬搧鍏ュ簱鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_MesProInOrder), "MES鎴愬搧鍏ュ簱鍗�")]
-    public class Dt_MesProInOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-        /// <summary>
-        /// 鍏ュ簱鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍏ュ簱鍗曟嵁缂栧彿")]
-        public string ProInOrderNo { get; set; }
-        /// <summary>
-        /// 鑳舵鐮�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "鑳舵鐮�")]
-        public string BatchNo { get; set; }
-        /// <summary>
-        /// 鎴愬搧鍏ュ簱鍗曠姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鎴愬搧鍏ュ簱鍗曠姸鎬�")]
-        public int MesProStatus { get; set; }
-        /// <summary>
-        /// 鎷嗙鍏ュ簱
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏄惁鎷嗙鍏ュ簱")]
-        public int UnPackStock { get; set; }
-        /// <summary>
-        /// 鍒涘缓鏂瑰紡
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒涘缓鏂瑰紡")]
-        public int CreateType { get; set; }
-        /// <summary>
-        /// 宸ヤ綔涓績
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "宸ヤ綔涓績")]
-        public string WorkCenter { get; set; }
-        /// <summary>
-        /// 涓婁紶ERP鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "涓婁紶ERP鐘舵��")]
-        public int UpErpStatus { get; set; }
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-        /// <summary>
-        /// 鎴愬搧鍏ュ簱鍗曟槑缁�
-        /// </summary>
-        [Navigate(NavigateType.OneToMany, nameof(Dt_MesProInOrderDetail.OrderId), nameof(Id))]
-        public List<Dt_MesProInOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_MesProInOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_MesProInOrderDetail.cs"
deleted file mode 100644
index 5150702..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_MesProInOrderDetail.cs"
+++ /dev/null
@@ -1,110 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// MES鎴愬搧鍏ュ簱鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_MesProInOrderDetail), "MES鎴愬搧鍏ュ簱鍗曟槑缁�"), ModelValidate]
-    public class Dt_MesProInOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鎴愬搧鍏ュ簱鍗曚富閿�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鎴愬搧鍏ュ簱鍗曚富閿�")]
-        public int OrderId { get; set; }
-        /// <summary>
-        /// 鍐呭寘鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false,Length =50, ColumnDescription = "鍐呭寘鍙�")]
-        public string BagNo { get; set; }
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string ProductCode { get; set; }
-        /// <summary>
-        /// 鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗堟湰")]
-        public string ProductVersion { get; set; }
-        /// <summary>
-        /// 鍖呰SET鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍖呰SET鏁伴噺")]
-        public float SETQty { get; set; }
-        /// <summary>
-        /// 鍚堟牸PCS鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍚堟牸PCS鏁�")]
-        public float OKPCSQTY { get; set; }
-        /// <summary>
-        /// 涓婃灦鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "涓婃灦鏁伴噺")]
-        public float OverInQuantity { get; set; }
-        /// <summary>
-        /// 鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍛ㄦ湡")]
-        public string DateCode { get; set; }
-        /// <summary>
-        /// X鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "X鏁�")]
-        public float XQty { get; set; }
-        /// <summary>
-        /// X浣�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "X浣�")]
-        public string XSite { get; set; }
-        /// <summary>
-        /// 鍐呭寘閲嶉噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍐呭寘閲嶉噺")]
-        public float Weight { get; set; }
-        /// <summary>
-        /// ERP宸ュ崟
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "ERP宸ュ崟")]
-        public string ERPOrder { get; set; }
-        /// <summary>
-        /// 鍒堕�犺鍗�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍒堕�犺鍗�")]
-        public string MoNumber { get; set; }
-        /// <summary>
-        /// 閿�鍞鍗�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閿�鍞鍗�")]
-        public string SaleOrder { get; set; }
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string LotNumber { get; set; }
-        /// <summary>
-        /// 鍖呰鏃堕棿
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍖呰鏃堕棿")]
-        public DateTime PackingDate { get; set; }
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ProInStatistics.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ProInStatistics.cs"
deleted file mode 100644
index 055f237..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ProInStatistics.cs"
+++ /dev/null
@@ -1,58 +0,0 @@
-锘縰sing Magicodes.ExporterAndImporter.Core;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧鍏ュ簱缁熻琛�
-    /// </summary>
-    [SugarTable(nameof(Dt_ProInStatistics), "鎴愬搧鍏ュ簱缁熻琛�")]
-    public class Dt_ProInStatistics : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-        /// <summary>
-        /// 浜у搧鍨嬪彿
-        /// </summary>
-        [ExporterHeader(DisplayName = "浜у搧鍨嬪彿")]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鍨嬪彿")]
-        public string ProductCode { get; set; }
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [ExporterHeader(DisplayName = "浜у搧鐗堟湰")]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string ProductRev { get; set; }
-        /// <summary>
-        /// PCS鏁�
-        /// </summary>
-        [ExporterHeader(DisplayName = "PCS鏁�")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "PCS鏁�")]
-        public float PcsQty { get; set; }
-        /// <summary>
-        /// 闈㈢Н
-        /// </summary>
-        [ExporterHeader(DisplayName = "闈㈢Н(銕�)")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "闈㈢Н(銕�)")]
-        public float SquareMeter { get; set; }
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [ExporterHeader(DisplayName = "鑳舵鍙�")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_PurchaseOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_PurchaseOrder.cs"
deleted file mode 100644
index 52c9f66..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_PurchaseOrder.cs"
+++ /dev/null
@@ -1,77 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 閲囪喘鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_PurchaseOrder), "閲囪喘鍗�"), ModelValidate]
-    public class Dt_PurchaseOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 閲囪喘鍗曞彿
-        /// </summary>
-        [PropertyValidate("閲囪喘鍗曞彿", NotNullAndEmpty = true)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閲囪喘鍗曞彿")]
-        public string PurchaseOrderNo { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷(S:鏍囧噯鍏ュ簱銆乂:瀵勫敭琛ョ粰鍏ュ簱)
-        /// </summary>
-        [PropertyValidate("鍗曟嵁绫诲瀷", NotNullAndEmpty = true, Check = new[] { "S", "V" })]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁绫诲瀷")]
-        public string PurchaseOrderType { get; set; }
-
-        /// <summary>
-        /// 渚涘簲鍟嗙紪鍙�
-        /// </summary>
-        [PropertyValidate("渚涘簲鍟嗙紪鍙�", NotNullAndEmpty = true)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "渚涘簲鍟嗙紪鍙�")]
-        public string SupplierCode { get; set; }
-
-        /// <summary>
-        /// 閲囪喘鏁伴噺
-        /// </summary>
-        [PropertyValidate("閲囪喘鏁伴噺", MinValue = 0, IsContainMinValue = false)]
-        [SugarColumn(IsNullable = false, ColumnDescription = "閲囪喘鏁伴噺")]
-        public float OrderQuantity { get; set; }
-
-        /// <summary>
-        /// 閲囪喘鍗曠姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閲囪喘鍗曠姸鎬�")]
-        public int PurchaseOrderStatus { get; set; }
-
-        /// <summary>
-        /// 涓嬪崟鏃ユ湡
-        /// </summary>
-        [PropertyValidate("涓嬪崟鏃ユ湡", NotNullAndEmpty = true)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "涓嬪崟鏃ユ湡")]
-        public string OrderDate { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍒楄〃
-        /// </summary>
-        [PropertyValidate("鐗╂枡鍒楄〃", NotNullAndEmpty = true), Navigate(NavigateType.OneToMany, nameof(Dt_PurchaseOrderDetail.PurchaseOrderId), nameof(Id))]
-        public List<Dt_PurchaseOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_PurchaseOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_PurchaseOrderDetail.cs"
deleted file mode 100644
index 7b7efc4..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_PurchaseOrderDetail.cs"
+++ /dev/null
@@ -1,83 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 閲囪喘鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_PurchaseOrderDetail), "閲囪喘鍗曟槑缁�"), ModelValidate]
-    public class Dt_PurchaseOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 澶磋〃涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "澶磋〃涓婚敭")]
-        public int PurchaseOrderId { get; set; }
-
-        /// <summary>
-        /// 琛屽彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "琛屽彿")]
-        public int RowNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 閲囪喘鍗曟槑缁嗙姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閲囪喘鍗曟槑缁嗙姸鎬�")]
-        public int PurchaseDetailStatus { get; set; }
-
-        /// <summary>
-        /// 浠撳簱缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnName = "WarehouseId", ColumnDescription = "浠撳簱缂栧彿")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏁伴噺")]
-        public float PurchaseDetailQuantity { get; set; }
-        /// <summary>
-        /// 宸叉敹璐ф暟閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "宸叉敹璐ф暟閲�")]
-        public float PurchaseDetailReceiveQty { get; set; }
-
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReceiveOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReceiveOrder.cs"
deleted file mode 100644
index aeb933c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReceiveOrder.cs"
+++ /dev/null
@@ -1,101 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鏀惰揣鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_ReceiveOrder), "鏀惰揣鍗�")]
-    public class Dt_ReceiveOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int ReceiveOrderId { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鍗曞彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.ReceiveOrderRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鏀惰揣鍗曞彿")]
-        public string ReceiveOrderNo { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟绫诲瀷")]
-        public int ReceiveOrderType { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟鐘舵��")]
-        public int ReceiveOrderStatus { get; set; }
-
-        /// <summary>
-        /// 涓婁紶鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "涓婁紶鐘舵��")]
-        public int UploadStatus { get; set; }
-
-        /// <summary>
-        /// 鏄惁鍒涘缓鍏ュ簱鍗�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鏄惁鍒涘缓鍏ュ簱鍗�")]
-        public int CreateInOrderStatus { get; set; }
-
-        /// <summary>
-        /// 瀹㈡埛浠e彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "瀹㈡埛浠e彿")]
-        public string CustomerId { get; set; }
-
-        /// <summary>
-        /// 渚涘簲鍟嗕唬鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "渚涘簲鍟嗕唬鍙�")]
-        public string SuppliersId { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鏃ユ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鏀惰揣鏃ユ湡")]
-        public DateTime ReceiveDate { get; set; }
-
-        /// <summary>
-        /// 閫佽揣鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "閫佽揣鍗曞彿")]
-        public string DeliveryCode { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 500, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鍗曟槑缁�
-        /// </summary>
-        [Navigate(NavigateType.OneToMany, nameof(Dt_ReceiveOrderDetail.ReceiveOrderId), nameof(ReceiveOrderId))]
-        public List<Dt_ReceiveOrderDetail> Details { get; set; }
-
-        [SugarColumn(IsIgnore = true)]
-        public string? PurchaseOrderNo { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReceiveOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReceiveOrderDetail.cs"
deleted file mode 100644
index 428bb28..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReceiveOrderDetail.cs"
+++ /dev/null
@@ -1,113 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鏀惰揣鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_ReceiveOrderDetail), "鏀惰揣鍗曟槑缁�")]
-    public class Dt_ReceiveOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鍗曚富閿�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏀惰揣鍗曚富閿�")]
-        public int ReceiveOrderId { get; set; }
-
-        /// <summary>
-        /// 閲囪喘鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閲囪喘鍗曞彿")]
-        public string PurchaseOrderNo { get; set; }
-
-        /// <summary>
-        /// 閲囪喘鍗曟槑缁嗚鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閲囪喘鍗曟槑缁嗚鍙�")]
-        public int PurchaseOrderDetailRowNo { get; set; }
-
-        /// <summary>
-        /// 琛屽彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "琛屽彿")]
-        public int RowNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string LotNo { get; set; }
-
-        /// <summary>
-        /// 鏀惰揣鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏀惰揣鏁伴噺")]
-        public float ReceivedQuantity { get; set; }
-
-        /// <summary>
-        /// 鏄惁瑕佹楠�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏄惁瑕佹楠�")]
-        public int IfInspection { get; set; }
-
-        /// <summary>
-        /// 鍚◣浠锋牸
-        /// </summary>
-        [SugarColumn(IsNullable = false, DecimalDigits = 2, ColumnDescription = "鍚◣浠锋牸")]
-        public decimal PriceInTax { get; set; }
-
-        /// <summary>
-        /// 绋庣巼
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 20, ColumnDescription = "绋庣巼")]
-        public string TaxRate { get; set; }
-
-        /// <summary>
-        /// 甯佸埆缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 20, ColumnDescription = "甯佸埆缂栫爜")]
-        public string CurrCode { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 500, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReturnOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReturnOrder.cs"
deleted file mode 100644
index 49ef233..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReturnOrder.cs"
+++ /dev/null
@@ -1,75 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 閫�鏂欏崟
-    /// </summary>
-    [SugarTable(nameof(Dt_ReturnOrder), "閫�鏂欏崟")]
-    public class Dt_ReturnOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 閫�鏂欏崟鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閫�鏂欏崟鍙�")]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟绫诲瀷<br/>
-        /// 1锛氭爣鍑嗛��鏂�<br/>
-        /// 2锛歜om閫�鏂�<br/>
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟绫诲瀷")]
-        public int ReturnOrderType { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟鐘舵��")]
-        public int ReturnOrderStatus { get; set; }
-
-        /// <summary>
-        /// 涓婁紶鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "涓婁紶鐘舵��")]
-        public int UploadStatus { get; set; }
-
-        /// <summary>
-        /// 鏄惁鐮斿彂
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏄惁鐮斿彂")]
-        public int IsDev { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 500, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 閫�鏂欏崟鏄庣粏
-        /// </summary>
-        [PropertyValidate("閫�鏂欏崟鏄庣粏", NotNullAndEmpty = true), Navigate(NavigateType.OneToMany, nameof(Dt_ReturnOrderDetail.ReturnId), nameof(Id))]
-        public List<Dt_ReturnOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReturnOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReturnOrderDetail.cs"
deleted file mode 100644
index 85fb400..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_ReturnOrderDetail.cs"
+++ /dev/null
@@ -1,109 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 閫�鏂欏崟鏄庣粏
-    /// </summary>
-    [SugarTable(nameof(Dt_ReturnOrderDetail), "閫�鏂欏崟鏄庣粏")]
-    public class Dt_ReturnOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 閫�鏂欏崟涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閫�鏂欏崟涓婚敭")]
-        public int ReturnId { get; set; }
-
-        /// <summary>
-        /// 鐢宠鍗曞彿(鍙戞枡鍗�)
-        /// </summary>
-        [SugarColumn(IsNullable = false,Length =50, ColumnDescription = "鐢宠鍗曞彿(鍙戞枡鍗�)")]
-        public string PickCode { get; set; }
-
-        /// <summary>
-        /// 鐢宠鍗曞彿琛屽彿(鍙戞枡鍗曟槑缁嗚鍙�)
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐢宠鍗曞彿琛屽彿(鍙戞枡鍗曟槑缁嗚鍙�)")]
-        public int ApplyRow { get; set; }
-
-        /// <summary>
-        /// 閫�鏂欒鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閫�鏂欒鍙�")]
-        public int RowId { get; set; }
-
-        /// <summary>
-        /// 鏄庣粏鍗曠姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏄庣粏鍗曠姸鎬�")]
-        public int OrderDetailStatus { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false,Length =50, ColumnDescription = "鐗╂枡缂栫爜")]
-        public string MCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string BatchNo { get; set; }
-
-        /// <summary>
-        /// 鍙��鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍙��鏁伴噺")]
-        public float Qty { get; set; }
-
-        /// <summary>
-        /// 閫�鍥炴暟閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閫�鍥炴暟閲�")]
-        public float ReturnQty { get; set; }
-
-        /// <summary>
-        /// 宸查��鍥炴暟閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "宸查��鍥炴暟閲�")]
-        public float OverReturnQty { get; set; }
-
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false,Length =20, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-
-        /// <summary>
-        /// 鍒堕�犻儴浠禼ode
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鍒堕�犻儴浠禼ode")]
-        public string Code { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_TakeStockOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_TakeStockOrder.cs"
deleted file mode 100644
index 324ac31..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_TakeStockOrder.cs"
+++ /dev/null
@@ -1,56 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鐩樼偣鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_TakeStockOrder), "鐩樼偣鍗�")]
-    public class Dt_TakeStockOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鐩樼偣鍗曞彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.PDCodeRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐩樼偣鍗曞彿")]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鐩樼偣鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐩樼偣鐘舵��")]
-        public int TakeStockStatus { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 500, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鐩樼偣鏄庣粏
-        /// </summary>
-        [PropertyValidate("閫�鏂欏崟鏄庣粏", NotNullAndEmpty = true), Navigate(NavigateType.OneToMany, nameof(Dt_TakeStockOrderDetail.TakeStockId), nameof(Id))]
-        public List<Dt_TakeStockOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_TakeStockOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_TakeStockOrderDetail.cs"
deleted file mode 100644
index acbd45d..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Inbound/Dt_TakeStockOrderDetail.cs"
+++ /dev/null
@@ -1,77 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鐩樼偣鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_TakeStockOrderDetail), "鐩樼偣鍗曟槑缁�")]
-    public class Dt_TakeStockOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鐩樼偣鍗曚富閿�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閫�鏂欏崟涓婚敭")]
-        public int TakeStockId { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栫爜")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string BatchNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-
-        /// <summary>
-        /// 璐﹂潰鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "璐﹂潰鏁伴噺")]
-        public float SysQty { get; set; }
-
-        /// <summary>
-        /// 瀹炵洏鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "瀹炵洏鏁伴噺")]
-        public float Qty { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 500, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ErpProTransferOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ErpProTransferOrder.cs"
deleted file mode 100644
index 7f611a7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ErpProTransferOrder.cs"
+++ /dev/null
@@ -1,137 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧璋冩嫧鍑哄簱鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_ErpProTransferOrder), "鎴愬搧璋冩嫧鍑哄簱鍗�")]
-    public class Dt_ErpProTransferOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.ProOutCOdeRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿")]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 涓婃父鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "涓婃父鍗曟嵁缂栧彿")]
-        public string UpperOrderNo { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟绫诲瀷")]
-        public int OrderType { get; set; }
-        /// <summary>
-        /// 搴撳瓨灞炴��<br/>
-        /// 1:鎴愬搧<br/>
-        /// 2:灏炬暟<br/>
-        /// 3:鐮斿彂<br/>
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "搴撳瓨灞炴��")]
-        public int ProStockAttribute { get; set; }
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string PCode { get; set; }
-
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string PVer { get; set; }
-
-        /// <summary>
-        /// 浜у搧鎵规
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鎵规")]
-        public string PLot { get; set; }
-
-        /// <summary>
-        /// 浜у搧鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鍛ㄦ湡")]
-        public string DateCode { get; set; }
-
-        /// <summary>
-        /// 鍚堟牸PCS鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍚堟牸PCS鏁�")]
-        public float QtyPcs { get; set; }
-
-        /// <summary>
-        /// 鍖呰Set鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍖呰Set鏁�")]
-        public float QtySet { get; set; }
-
-        /// <summary>
-        /// X鏉挎暟
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "X鏉挎暟")]
-        public float XQty { get; set; }
-        /// <summary>
-        /// X鏉夸綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "X鏉夸綅")]
-        public string XSite { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 涓婃父寤哄崟鏃ユ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "涓婃父寤哄崟鏃ユ湡")]
-        public string OrderDate { get; set; }
-
-        /// <summary>
-        /// 閿�鍞鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閿�鍞鍗曞彿")]
-        public string ProSaleOrderNo { get; set; }
-        /// <summary>
-        /// 瀹㈡埛
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "瀹㈡埛")]
-        public string Customer { get; set; }
-
-        /// <summary>
-        /// 宸ュ巶
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "宸ュ巶")]
-        public string FactoryCode { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_MesOutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_MesOutboundOrder.cs"
deleted file mode 100644
index 235c50e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_MesOutboundOrder.cs"
+++ /dev/null
@@ -1,116 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 
-    /// </summary>
-    [SugarTable(nameof(Dt_MesOutboundOrder))]
-    public class Dt_MesOutboundOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.OutboundOrderRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿", IsOnlyIgnoreUpdate = true)]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 浠诲姟鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浠诲姟鍗曞彿")]
-        public string TaskNo { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁绫诲瀷", IsOnlyIgnoreUpdate = true)]
-        public int OrderType { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鐘舵��")]
-        public int OrderStatus { get; set; }
-
-        /// <summary>
-        /// 鍒涘缓鏂瑰紡
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒涘缓鏂瑰紡", IsOnlyIgnoreUpdate = true)]
-        public int CreateType { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterialCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterialName { get; set; }
-
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鏁伴噺")]
-        public float OrderQuantity { get; set; }
-
-        /// <summary>
-        /// 閿佸畾鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閿佸畾鏁伴噺", DefaultValue = "0")]
-        public float LockQuantity { get; set; }
-
-        /// <summary>
-        /// 宸插嚭鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "宸插嚭鏁伴噺", DefaultValue = "0")]
-        public float OverOutQuantity { get; set; }
-
-        /// <summary>
-        /// 绾夸綋
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "绾夸綋")]
-        public string Line { get; set; }
-
-        /// <summary>
-        /// 绾胯竟浠撳湴鍧�鐮�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "绾胯竟浠撳湴鍧�鐮�")]
-        public string TargetAddressCode { get; set; }
-
-        /// <summary>
-        /// 瑁佸垏瀹�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "瑁佸垏瀹�")]
-        public float Width { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_MesRworkOutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_MesRworkOutboundOrder.cs"
deleted file mode 100644
index 86e7760..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_MesRworkOutboundOrder.cs"
+++ /dev/null
@@ -1,111 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using SqlSugar;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧杩斿伐鎻愬簱鍑哄簱鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_MesRworkOutboundOrder), "鎴愬搧杩斿伐鎻愬簱鍑哄簱鍗�")]
-    public class Dt_MesRworkOutboundOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.OutboundOrderRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿", IsOnlyIgnoreUpdate = true)]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 浠诲姟鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浠诲姟鍗曞彿")]
-        public string TaskNo { get; set; }
-
-        /// <summary>
-        /// 閿佸畾鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閿佸畾鏁伴噺", DefaultValue = "0")]
-        public float LockQuantity { get; set; }
-
-        /// <summary>
-        /// 宸插嚭鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "宸插嚭鏁伴噺", DefaultValue = "0")]
-        public float OverOutQuantity { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鐘舵��")]
-        public int OrderStatus { get; set; }
-
-        /// <summary>
-        /// 鍒涘缓鏂瑰紡
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒涘缓鏂瑰紡", IsOnlyIgnoreUpdate = true)]
-        public int CreateType { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁绫诲瀷", IsOnlyIgnoreUpdate = true)]
-        public int OrderType { get; set; }
-
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string ProductCode { get; set; }
-        /// <summary>
-        /// 浜у搧鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鍚嶇О")]
-        public string ProductName { get; set; }
-
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string ProductVersion { get; set; }
-        /// <summary>
-        /// 鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍛ㄦ湡")]
-        public string DateCode { get; set; }
-        /// <summary>
-        /// 闇�姹傛暟閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "闇�姹傛暟閲�", DefaultValue = "0")]
-        public float RequiredQuantity { get; set; }
-        /// <summary>
-        /// 宸ュ巶
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "宸ュ巶")]
-        public string FactoryCode { get; set; }
-        /// <summary>
-        /// 閿�鍞鍗�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "閿�鍞鍗�")]
-        public string SaleOrder { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutProPKStockInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutProPKStockInfo.cs"
deleted file mode 100644
index 6edd1d7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutProPKStockInfo.cs"
+++ /dev/null
@@ -1,71 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱澶栧唴鍖呮槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_OutProPKStockInfo), "鎴愬搧鍑哄簱澶栧唴鍖呮槑缁�")]
-    public class Dt_OutProPKStockInfo : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string PCode { get; set; }
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string PVer { get; set; }
-        /// <summary>
-        /// 浜у搧鎵规
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "浜у搧鎵规")]
-        public string PLot { get; set; }
-        /// <summary>
-        /// 浜у搧鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "浜у搧鍛ㄦ湡")]
-        public string DateCode { get; set; }
-        /// <summary>
-        /// 搴撳瓨涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "搴撳瓨涓婚敭")]
-        public int StockId { get; set; }
-
-        /// <summary>
-        /// 鍘熷搴撳瓨閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍘熷搴撳瓨閲�")]
-        public float OriginalQuantity { get; set; }
-
-        /// <summary>
-        /// 鍒嗛厤鍑哄簱閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍑哄簱閲�")]
-        public float AssignQuantity { get; set; }
-
-        /// <summary>
-        /// 鑳舵鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "澶栫鍙�")]
-        public string PalletCode { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutProStockInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutProStockInfo.cs"
deleted file mode 100644
index 7bbfb97..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutProStockInfo.cs"
+++ /dev/null
@@ -1,126 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱璇︽儏鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_OutProStockInfo), "鎴愬搧鍑哄簱璇︽儏鍗�")]
-    public class Dt_OutProStockInfo : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿")]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鏄庣粏涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鏄庣粏涓婚敭")]
-        public int OrderDetailId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁绫诲瀷")]
-        public int OrderType { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string BatchNo { get; set; }
-        /// <summary>
-        /// 閿�鍞鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "閿�鍞鍗曞彿")]
-        public string SaleOrder { get; set; }
-        /// <summary>
-        /// 瀹㈡埛
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "瀹㈡埛")]
-        public string Customer { get; set; }
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string PCode { get; set; }
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string PVer { get; set; }
-        /// <summary>
-        /// 浜у搧鎵规
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "浜у搧鎵规")]
-        public string PLot { get; set; }
-        /// <summary>
-        /// 浜у搧鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "浜у搧鍛ㄦ湡")]
-        public string DateCode { get; set; }
-        /// <summary>
-        /// 搴撳瓨涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "搴撳瓨涓婚敭")]
-        public int StockId { get; set; }
-        /// <summary>
-        /// 鍗曟嵁鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鏁伴噺")]
-        public float OrderQuantity { get; set; }
-        /// <summary>
-        /// 鍘熷搴撳瓨閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍘熷搴撳瓨閲�")]
-        public float OriginalQuantity { get; set; }
-
-        /// <summary>
-        /// 鍒嗛厤鍑哄簱閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒嗛厤鍑哄簱閲�")]
-        public float AssignQuantity { get; set; }
-
-        /// <summary>
-        /// 璐т綅缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "璐т綅缂栧彿")]
-        public string LocationCode { get; set; }
-
-        /// <summary>
-        /// 鑳舵鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鑳舵鍙�")]
-        public string PalletCode { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 浠诲姟鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "浠诲姟鍙�")]
-        public int? TaskNum { get; set; }
-
-        /// <summary>
-        /// 鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐘舵��")]
-        public int Status { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundLockInfo.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundLockInfo.cs"
deleted file mode 100644
index 4ee5363..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundLockInfo.cs"
+++ /dev/null
@@ -1,124 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍑哄簱璇︽儏
-    /// </summary>
-    [SugarTable(nameof(Dt_OutStockLockInfo), "鍑哄簱璇︽儏")]
-    public class Dt_OutStockLockInfo : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿")]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鏄庣粏涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鏄庣粏涓婚敭")]
-        public int OrderDetailId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁绫诲瀷")]
-        public int OrderType { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string BatchNo { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 搴撳瓨涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "搴撳瓨涓婚敭")]
-        public int StockId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鏁伴噺")]
-        public float OrderQuantity { get; set; }
-
-        /// <summary>
-        /// 鍘熷搴撳瓨閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍘熷搴撳瓨閲�")]
-        public float OriginalQuantity {  get; set; }
-
-        /// <summary>
-        /// 鍒嗛厤鍑哄簱閲�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒嗛厤鍑哄簱閲�")]
-        public float AssignQuantity {  get; set; }
-
-        /// <summary>
-        /// 璐т綅缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "璐т綅缂栧彿")]
-        public string LocationCode { get; set; }
-
-        /// <summary>
-        /// 鎵樼洏缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎵樼洏缂栧彿")]
-        public string PalletCode { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 浠诲姟鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "浠诲姟鍙�")]
-        public int? TaskNum { get; set; }
-
-        /// <summary>
-        /// 鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐘舵��")]
-        public int Status { get; set; }
-
-        /// <summary>
-        /// 鐢熶骇鏃ユ湡
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐢熶骇鏃ユ湡")]
-        public string ProductionDate { get; set; }
-
-        /// <summary>
-        /// 鏈夋晥鏈�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏈夋晥鏈�")]
-        public string EffectiveDate { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder.cs"
deleted file mode 100644
index 35aae57..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder.cs"
+++ /dev/null
@@ -1,92 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍑哄簱鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_OutboundOrder), "鍑哄簱鍗�")]
-    public class Dt_OutboundOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁缂栧彿
-        /// </summary>
-        [CodeRule(RuleCodeEnum.OutboundOrderRule)]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曟嵁缂栧彿", IsOnlyIgnoreUpdate = true)]
-        public string OrderNo { get; set; }
-
-        /// <summary>
-        /// 涓婃父鍗曟嵁缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "涓婃父鍗曟嵁缂栧彿", IsOnlyIgnoreUpdate = true)]
-        public string UpperOrderNo { get; set; }
-
-        /// <summary>
-        /// 鍙戞枡鎺ㄩ�佸崟鎹紪鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鍙戞枡鎺ㄩ�佸崟鎹紪鍙�")]
-        public string UpFLOrderNo { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁绫诲瀷", IsOnlyIgnoreUpdate = true)]
-        public int OrderType { get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍗曟嵁鐘舵��")]
-        public int OrderStatus { get; set; }
-
-        /// <summary>
-        /// 鍒涘缓鏂瑰紡
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍒涘缓鏂瑰紡", IsOnlyIgnoreUpdate = true)]
-        public int CreateType { get; set; }
-
-        /// <summary>
-        /// 閮ㄩ棬缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "閮ㄩ棬缂栧彿")]
-        public string DepartmentCode { get; set; }
-
-        /// <summary>
-        /// 閮ㄩ棬鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "閮ㄩ棬鍚嶇О")]
-        public string DepartmentName { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鍑哄簱鍗曟槑缁�
-        /// </summary>
-        [Navigate(NavigateType.OneToMany, nameof(Dt_OutboundOrderDetail.OrderId), nameof(Id))]
-        public List<Dt_OutboundOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail.cs"
deleted file mode 100644
index 500f310..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail.cs"
+++ /dev/null
@@ -1,93 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鍑哄簱鍗曟槑缁�
-    /// </summary>
-    [SugarTable(nameof(Dt_OutboundOrderDetail), "鍑哄簱鍗曟槑缁�")]
-    public class Dt_OutboundOrderDetail : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鍑哄簱鍗曚富閿�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍑哄簱鍗曚富閿�")]
-        public int OrderId { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 鎵规鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鎵规鍙�")]
-        public string BatchNo { get; set; }
-
-        /// <summary>
-        /// 琛屽彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "琛屽彿")]
-        public int RowNo {  get; set; }
-
-        /// <summary>
-        /// 鍗曟嵁鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false,  ColumnDescription = "鍗曟嵁鏁伴噺")]
-        public float OrderQuantity { get; set; }
-
-        /// <summary>
-        /// 閿佸畾鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false,  ColumnDescription = "閿佸畾鏁伴噺", DefaultValue = "0")]
-        public float LockQuantity { get; set; }
-
-        /// <summary>
-        /// 宸插嚭鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false,  ColumnDescription = "宸插嚭鏁伴噺", DefaultValue = "0")]
-        public float OverOutQuantity { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟鏄庣粏鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟鏄庣粏鐘舵��")]
-        public int OrderDetailStatus { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail_Hty.cs"
deleted file mode 100644
index 01d46d6..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail_Hty.cs"
+++ /dev/null
@@ -1,42 +0,0 @@
-锘縰sing Magicodes.ExporterAndImporter.Core;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 
-    /// </summary>
-    [SugarTable(nameof(Dt_OutboundOrderDetail_Hty), "鍑哄簱鍗曟槑缁�")]
-    public class Dt_OutboundOrderDetail_Hty : Dt_OutboundOrderDetail, IBaseHistoryEntity
-    {
-        /// <summary>
-        /// 鍘熻〃涓婚敭
-        /// </summary>
-        [ImporterHeader(Name = "鍘熻〃涓婚敭")]
-        [ExporterHeader(DisplayName = "鍘熻〃涓婚敭")]
-        [SugarColumn(IsNullable = false, DefaultValue = "0", ColumnDescription = "鍘熻〃涓婚敭")]
-        public int SourceId { get; set; }
-
-        /// <summary>
-        /// 鎿嶄綔绫诲瀷
-        /// </summary>
-        [ImporterHeader(Name = "鎿嶄綔绫诲瀷")]
-        [ExporterHeader(DisplayName = "鎿嶄綔绫诲瀷")]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎿嶄綔绫诲瀷")]
-        public string OperateType { get; set; }
-
-        /// <summary>
-        /// 绉诲叆鍘嗗彶鏃堕棿
-        /// </summary>
-        [ImporterHeader(Name = "绉诲叆鍘嗗彶鏃堕棿")]
-        [ExporterHeader(DisplayName = "绉诲叆鍘嗗彶鏃堕棿")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "绉诲叆鍘嗗彶鏃堕棿")]
-        public DateTime InsertTime { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder_Hty.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder_Hty.cs"
deleted file mode 100644
index c53b331..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder_Hty.cs"
+++ /dev/null
@@ -1,44 +0,0 @@
-锘縰sing Magicodes.ExporterAndImporter.Core;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 
-    /// </summary>
-    [SugarTable(nameof(Dt_OutboundOrder_Hty), "鍑哄簱鍗�")]
-    public class Dt_OutboundOrder_Hty : Dt_OutboundOrder, IBaseHistoryEntity
-    {
-        /// <summary>
-        /// 鍘熻〃涓婚敭
-        /// </summary>
-        [ImporterHeader(Name = "鍘熻〃涓婚敭")]
-        [ExporterHeader(DisplayName = "鍘熻〃涓婚敭")]
-        [SugarColumn(IsNullable = false, DefaultValue = "0", ColumnDescription = "鍘熻〃涓婚敭")]
-        public int SourceId { get; set; }
-
-        /// <summary>
-        /// 鎿嶄綔绫诲瀷
-        /// </summary>
-        [ImporterHeader(Name = "鎿嶄綔绫诲瀷")]
-        [ExporterHeader(DisplayName = "鎿嶄綔绫诲瀷")]
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鎿嶄綔绫诲瀷")]
-        public string OperateType { get; set; }
-
-        /// <summary>
-        /// 绉诲叆鍘嗗彶鏃堕棿
-        /// </summary>
-        [ImporterHeader(Name = "绉诲叆鍘嗗彶鏃堕棿")]
-        [ExporterHeader(DisplayName = "绉诲叆鍘嗗彶鏃堕棿")]
-        [SugarColumn(IsNullable = false, ColumnDescription = "绉诲叆鍘嗗彶鏃堕棿")]
-        public DateTime InsertTime { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ProOutOrder.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ProOutOrder.cs"
deleted file mode 100644
index b3ca30b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ProOutOrder.cs"
+++ /dev/null
@@ -1,65 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_ProOutOrder), "鎴愬搧鍑哄簱鍗�")]
-    public class Dt_ProOutOrder : BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱涓婚敭
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱涓婚敭")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鍑哄簱鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false,Length = 20, ColumnDescription = "鍑哄簱鍗曞彿")]
-        public string ProOutOrderNo { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟绫诲瀷
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟绫诲瀷")]
-        public int ProOrderType { get; set; }
-
-        /// <summary>
-        /// 璁㈠崟鐘舵��
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁㈠崟鐘舵��")]
-        public int ProOrderStatus { get; set; }
-
-        /// <summary>
-        /// 璁″垝鍑鸿揣鏃堕棿
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "璁″垝鍑鸿揣鏃堕棿")]
-        public DateTime PlantShipDate { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true,Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-
-        /// <summary>
-        /// 鎴愬搧鍑哄簱鍗曡鎯�
-        /// </summary>
-        [Navigate(NavigateType.OneToMany, nameof(Dt_ProOutOrderDetail.ProOrderId), nameof(Id))]
-        public List<Dt_ProOutOrderDetail> Details { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ProOutOrderDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ProOutOrderDetail.cs"
deleted file mode 100644
index e9ff56f..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Outbound/Dt_ProOutOrderDetail.cs"
+++ /dev/null
@@ -1,130 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱鏄庣粏鍗�
-    /// </summary>
-    [SugarTable(nameof(Dt_ProOutOrderDetail), "鎴愬搧鍑哄簱鏄庣粏鍗�")]
-    public class Dt_ProOutOrderDetail: BaseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 鎴愬搧鍑哄簱鍗曚富閿�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍑哄簱鍗曚富閿�")]
-        public int ProOrderId { get; set; }
-
-        /// <summary>
-        /// 鍑哄簱鍗曡鍙�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍑哄簱鍗曡鍙�")]
-        public int RowId { get; set; }
-
-        /// <summary>
-        /// 鍑哄簱鍗曟槑缁嗙姸鎬�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍑哄簱鍗曟槑缁嗙姸鎬�")]
-        public int ProOrderDetailStatus { get; set; }
-
-        /// <summary>
-        /// 閿�鍞鍗曞彿
-        /// </summary>
-        [SugarColumn(IsNullable = false,Length = 50, ColumnDescription = "閿�鍞鍗曞彿")]
-        public string SaleOrder { get; set; }
-
-        /// <summary>
-        /// 瀹㈡埛
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "瀹㈡埛")]
-        public string Customer { get; set; }
-        
-        /// <summary>
-        /// 缁堢瀹㈡埛
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "缁堢瀹㈡埛")]
-        public string EndCustomer { get; set; }
-        /// <summary>
-        /// 宸ュ巶
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "宸ュ巶")]
-        public string FactoryCode { get; set; }
-        /// <summary>
-        /// 浜у搧缂栫爜
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧缂栫爜")]
-        public string PCode { get; set; }
-        /// <summary>
-        /// 浜у搧鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "浜у搧鐗堟湰")]
-        public string PVer { get; set; }
-
-        /// <summary>
-        /// 浜у搧鎵规
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "浜у搧鎵规")]
-        public string PLot { get; set; }
-
-        /// <summary>
-        /// 浜у搧鍛ㄦ湡
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "浜у搧鍛ㄦ湡")]
-        public string DateCode { get; set; }
-
-        /// <summary>
-        /// 鍑哄簱鍚堟牸PCS鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鍑哄簱鍚堟牸PCS鏁�")]
-        public float QtyPcs { get; set; }
-
-        /// <summary>
-        /// 宸插嚭鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "宸插嚭鏁伴噺")]
-        public float OverQtyPcs { get; set; }
-
-        /// <summary>
-        /// 閿佸畾鏁伴噺
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "閿佸畾鏁伴噺")]
-        public float LockQtyPcs { get; set; }
-
-        /// <summary>
-        /// X鏉挎暟
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "X鏉挎暟")]
-        public string XQty { get; set; }
-        /// <summary>
-        /// X鏉夸綅
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "X鏉夸綅")]
-        public string XSite { get; set; }
-        /// <summary>
-        /// 鍗曚綅
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曚綅")]
-        public string Unit { get; set; }
-        /// <summary>
-        /// 澶囧搧鏁�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "澶囧搧鏁�")]
-        public float SpareQty { get; set; }
-        /// <summary>
-        /// 鎸囨淳鐗堟湰
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "鎸囨淳鐗堟湰")]
-        public string OutSpecifyVer { get; set; }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCache.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCache.cs"
new file mode 100644
index 0000000..ab93e6a
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCache.cs"
@@ -0,0 +1,65 @@
+锘縰sing SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEA_Core.DB.Models;
+
+namespace WIDESEA_Model.Models
+{
+    /// <summary>
+    /// 鎴愬搧鐮佸灈宸ヤ綅
+    /// </summary>
+    [SugarTable(nameof(Dt_ProCache), "鎴愬搧鐮佸灈宸ヤ綅涓昏〃")]
+    public class Dt_ProCache : BaseEntity
+    {
+        /// <summary>
+        /// 涓婚敭
+        /// </summary>
+        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
+        public int Id { get; set; }
+
+        /// <summary>
+        /// 鐮佸灈宸ヤ綅鍙�
+        /// </summary>
+        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐮佸灈宸ヤ綅鍙�")]
+        public string MdNo { get; set; }
+
+        /// <summary>
+        /// 鐮佸灈鐗╂枡<br/>
+        /// </summary>
+        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐮佸灈鐗╂枡")]
+        public string MdMaterial { get; set; }
+
+        /// <summary>
+        /// 鐮佸灈鐗╂枡绠卞瀷
+        /// </summary>
+        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐮佸灈鐗╂枡绠卞瀷")]
+        public string MdBoxMaterial { get; set; }
+
+        /// <summary>
+        /// 宸茬爜鍨涚鏁�
+        /// </summary>
+        [SugarColumn(IsNullable = false, ColumnDescription = "宸茬爜鍨涚鏁�")]
+        public string MdQtys { get; set; }
+
+        /// <summary>
+        /// 鍗曞彿
+        /// </summary>
+        [SugarColumn(IsNullable = true, Length = 30, ColumnDescription = "鍗曞彿")]
+        public string ShipmentOrder { get; set; }
+
+        /// <summary>
+        /// 鐮佸灈鐘舵��
+        /// </summary>
+        [SugarColumn(IsNullable = false, ColumnDescription = "鐮佸灈鐘舵��")]
+        public int MdStatus { get; set; }
+
+        /// <summary>
+        /// 鐮佸灈鏄庣粏
+        /// </summary>
+        [Navigate(NavigateType.OneToMany, nameof(Dt_ProStockInfoDetail.ProStockId), nameof(Id))]
+        public List<Dt_ProStockInfoDetail> proStockInfoDetails { get; set; }
+    }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCacheDetail.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCacheDetail.cs"
new file mode 100644
index 0000000..742c629
--- /dev/null
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/Models/Stock/Dt_ProCacheDetail.cs"
@@ -0,0 +1,48 @@
+锘縰sing SqlSugar;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using WIDESEA_Core.DB.Models;
+
+namespace WIDESEA_Model.Models
+{
+    /// <summary>
+    /// 鎴愬搧鐮佸灈宸ヤ綅鏄庣粏
+    /// </summary>
+    [SugarTable(nameof(Dt_ProCacheDetail), "鎴愬搧鐮佸灈宸ヤ綅鏄庣粏")]
+    public class Dt_ProCacheDetail : BaseEntity
+    {
+        /// <summary>
+        /// 涓婚敭
+        /// </summary>
+        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
+        public int Id { get; set; }
+
+        /// <summary>
+        /// 鎴愬搧鐮佸灈宸ヤ綅涓婚敭
+        /// </summary>
+        [SugarColumn(IsNullable = false, ColumnDescription = "鎴愬搧鐮佸灈宸ヤ綅涓婚敭")]
+        public int ProCacheId { get; set; }
+
+        /// <summary>
+        /// 鐮佸灈绠卞彿
+        /// </summary>
+        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐮佸灈绠卞彿")]
+        public string MdBoxCode { get; set; }
+
+        /// <summary>
+        /// 鍗曠鏁伴噺<br/>
+        /// </summary>
+        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍗曠鏁伴噺")]
+        public int BoxQtys { get; set; }
+
+        /// <summary>
+        /// 鐗╂枡鍗曚綅
+        /// </summary>
+        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡鍗曚綅")]
+        public string MaterialUnit { get; set; }
+
+    }
+}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/WIDESEA_Model.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/WIDESEA_Model.csproj"
index efb20bf..a838071 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/WIDESEA_Model.csproj"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_Model/WIDESEA_Model.csproj"
@@ -16,4 +16,10 @@
 		<ProjectReference Include="..\WIDESEA_Core\WIDESEA_Core.csproj" />
 	</ItemGroup>
 
+	<ItemGroup>
+	  <Folder Include="Models\Check\" />
+	  <Folder Include="Models\Inbound\" />
+	  <Folder Include="Models\Outbound\" />
+	</ItemGroup>
+
 </Project>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ErpProTransferOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ErpProTransferOrderRepository.cs"
deleted file mode 100644
index 832378b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ErpProTransferOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class ErpProTransferOrderRepository : RepositoryBase<Dt_ErpProTransferOrder>, IErpProTransferOrderRepository
-    {
-        public ErpProTransferOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/MesOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/MesOutboundOrderRepository.cs"
deleted file mode 100644
index 276f503..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/MesOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class MesOutboundOrderRepository : RepositoryBase<Dt_MesOutboundOrder>, IMesOutboundOrderRepository
-    {
-        public MesOutboundOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/MesRworkOutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/MesRworkOutboundOrderRepository.cs"
deleted file mode 100644
index 4c266a2..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/MesRworkOutboundOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class MesRworkOutboundOrderRepository : RepositoryBase<Dt_MesRworkOutboundOrder>, IMesRworkOutboundOrderRepository
-    {
-        public MesRworkOutboundOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutProStockInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutProStockInfoRepository.cs"
deleted file mode 100644
index 767cd01..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutProStockInfoRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class OutProStockInfoRepository : RepositoryBase<Dt_OutProStockInfo>, IOutProStockInfoRepository
-    {
-        public OutProStockInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutStockLockInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutStockLockInfoRepository.cs"
deleted file mode 100644
index dadc43c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutStockLockInfoRepository.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱璇︽儏淇℃伅浠撳偍瀹炵幇灞�
-    /// </summary>
-    public class OutStockLockInfoRepository : RepositoryBase<Dt_OutStockLockInfo>, IOutStockLockInfoRepository
-    {
-        public OutStockLockInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderDetailRepository.cs"
deleted file mode 100644
index d1ce7ba..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderDetailRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱鍗曟槑缁嗕粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class OutboundOrderDetailRepository : RepositoryBase<Dt_OutboundOrderDetail>, IOutboundOrderDetailRepository
-    {
-        public OutboundOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderDetail_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderDetail_HtyRepository.cs"
deleted file mode 100644
index 7e046c0..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderDetail_HtyRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱鍗曟槑缁嗗巻鍙蹭粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class OutboundOrderDetail_HtyRepository : RepositoryBase<Dt_OutboundOrderDetail_Hty>, IOutboundOrderDetail_HtyRepository
-    {
-        public OutboundOrderDetail_HtyRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderRepository.cs"
deleted file mode 100644
index a3e437d..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrderRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱鍗曚粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class OutboundOrderRepository : RepositoryBase<Dt_OutboundOrder>, IOutboundOrderRepository
-    {
-        public OutboundOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrder_HtyRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrder_HtyRepository.cs"
deleted file mode 100644
index 044e4d9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundOrder_HtyRepository.cs"
+++ /dev/null
@@ -1,21 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    /// <summary>
-    /// 鍑哄簱鍗曞巻鍙蹭粨鍌ㄥ疄鐜板眰
-    /// </summary>
-    public class OutboundOrder_HtyRepository : RepositoryBase<Dt_OutboundOrder_Hty>, IOutboundOrder_HtyRepository
-    {
-        public OutboundOrder_HtyRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundRepository.cs"
deleted file mode 100644
index 0030bff..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/OutboundRepository.cs"
+++ /dev/null
@@ -1,32 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_IOutboundRepository;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class OutboundRepository : IOutboundRepository
-    {
-        public IOutboundOrderDetailRepository OutboundOrderDetailRepository { get; }
-
-        public IOutboundOrderRepository OutboundOrderRepository { get; }
-
-        public IOutStockLockInfoRepository OutboundStockLockInfoRepository { get; }
-
-        public IProOutOrderRepository ProOutOrderRepository { get; }
-        public IProOutOrderDetailRepository ProOutOrderDetailRepository { get; }
-        public IMesRworkOutboundOrderRepository RworkOutboundOrderRepository { get; }
-
-        public OutboundRepository(IOutboundOrderDetailRepository outboundOrderDetailRepository, IOutboundOrderRepository outboundOrderRepository, IOutStockLockInfoRepository outboundStockLockInfoRepository, IProOutOrderRepository proOutOrderRepository, IProOutOrderDetailRepository proOutOrderDetailRepository, IMesRworkOutboundOrderRepository rworkOutboundOrderRepository)
-        {
-            OutboundOrderDetailRepository = outboundOrderDetailRepository;
-            OutboundOrderRepository = outboundOrderRepository;
-            OutboundStockLockInfoRepository = outboundStockLockInfoRepository;
-            ProOutOrderRepository = proOutOrderRepository;
-            ProOutOrderDetailRepository = proOutOrderDetailRepository;
-            RworkOutboundOrderRepository = rworkOutboundOrderRepository;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ProOutOrderDetailRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ProOutOrderDetailRepository.cs"
deleted file mode 100644
index 9740eff..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ProOutOrderDetailRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class ProOutOrderDetailRepository : RepositoryBase<Dt_ProOutOrderDetail>, IProOutOrderDetailRepository
-    {
-        public ProOutOrderDetailRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ProOutOrderRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ProOutOrderRepository.cs"
deleted file mode 100644
index d08941c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundRepository/ProOutOrderRepository.cs"
+++ /dev/null
@@ -1,18 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundRepository
-{
-    public class ProOutOrderRepository : RepositoryBase<Dt_ProOutOrder>, IProOutOrderRepository
-    {
-        public ProOutOrderRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ErpProTransferOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ErpProTransferOrderService.cs"
deleted file mode 100644
index 2258ebc..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ErpProTransferOrderService.cs"
+++ /dev/null
@@ -1,70 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-using WIDESEA_DTO.ERP;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Common.WareHouseEnum;
-using AutoMapper;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class ErpProTransferOrderService : ServiceBase<Dt_ErpProTransferOrder, IErpProTransferOrderRepository>, IErpProTransferOrderService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-
-        public IErpProTransferOrderRepository Repository => BaseDal;
-        public IBasicRepository _basicRepository;
-        public IMapper _mapper;
-        public ErpProTransferOrderService(IErpProTransferOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IBasicRepository basicRepository,IMapper mapper) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicRepository = basicRepository;
-            _mapper = mapper;
-        }
-        /// <summary>
-        /// 鎴愬搧璋冩嫧鍑猴紙鐮斿彂锛�
-        /// </summary>
-        public WebResponseContent ProductTransferOrder(ErpProductTransferOrderDTO  productTransferOrderDTO)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鍒ゆ柇鍗曟嵁鏄惁宸插瓨鍦�
-                Dt_ErpProTransferOrder erpProInOrderOld = BaseDal.QueryFirst(x => x.UpperOrderNo == productTransferOrderDTO.TransferNo);
-                if (erpProInOrderOld != null)
-                {
-                    return content.Error($"鍗曟嵁{productTransferOrderDTO.TransferNo}宸插瓨鍦�");
-                }
-                //鍒ゆ柇鎵�浼犲鎴锋槸鍚﹀瓨鍦�
-                Dt_CustomerInfo customerInfo = _basicRepository.CustomerInfoRepository.QueryFirst(x => x.Code == productTransferOrderDTO.Customer);
-                if (customerInfo == null)
-                {
-                    return content.Error($"瀹㈡埛{productTransferOrderDTO.Customer}淇℃伅涓嶅瓨鍦�");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                Dt_ErpProTransferOrder erpProTransferOrder = _mapper.Map<Dt_ErpProTransferOrder>(productTransferOrderDTO);
-                erpProTransferOrder.WarehouseId = warehouse.WarehouseId;
-                BaseDal.AddData(erpProTransferOrder);
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/MesOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/MesOutboundOrderService.cs"
deleted file mode 100644
index 2f7bfe9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/MesOutboundOrderService.cs"
+++ /dev/null
@@ -1,199 +0,0 @@
-锘�
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.MES;
-using WIDESEA_DTO;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Core.Helper;
-using WIDESEA_IBasicRepository;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_IStockService;
-using WIDESEA_IBasicService;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_IRecordService;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Common.TaskEnum;
-
-namespace WIDESEA_OutboundService
-{
-    public class MesOutboundOrderService : ServiceBase<Dt_MesOutboundOrder, IMesOutboundOrderRepository>, IMesOutboundOrderService
-    {
-        private readonly IBasicRepository _basicRepository;
-        private readonly IStockService _stockService;
-        private readonly IOutStockLockInfoService _outStockLockInfoService;
-        private readonly IBasicService _basicService;
-        private readonly IRecordService _recordService;
-
-        public IMesOutboundOrderRepository Repository => BaseDal;
-
-        public MesOutboundOrderService(IMesOutboundOrderRepository BaseDal, IBasicRepository basicRepository, IStockService stockService, IOutStockLockInfoService outStockLockInfoService, IBasicService basicService, IRecordService recordService) : base(BaseDal)
-        {
-            _basicRepository = basicRepository;
-            _stockService = stockService;
-            _outStockLockInfoService = outStockLockInfoService;
-            _basicService = basicService;
-            _recordService = recordService;
-        }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="mesOutboundOrder"></param>
-        /// <returns></returns>
-        /// <exception cref="Exception"></exception>
-        public (List<Dt_StockInfo>, Dt_MesOutboundOrder, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(Dt_MesOutboundOrder mesOutboundOrder)
-        {
-            List<Dt_StockInfo> outStocks = new List<Dt_StockInfo>();
-
-            List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-            List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-
-            float originalNeedQuantity = mesOutboundOrder.OrderQuantity;
-
-            float needQuantity = originalNeedQuantity;
-
-            List<Dt_StockInfo> stockInfos = _stockService.StockInfoService.GetUseableStocks(mesOutboundOrder.MaterialCode, "", mesOutboundOrder.WarehouseId);
-            if (!stockInfos.Any())
-            {
-                throw new Exception($"鏈壘鍒板彲鍒嗛厤搴撳瓨");
-            }
-            List<Dt_StockInfo> autoAssignStocks = _stockService.StockInfoService.GetOutboundStocks(stockInfos, mesOutboundOrder.MaterialCode, needQuantity, out float residueQuantity);
-            mesOutboundOrder.LockQuantity += needQuantity - residueQuantity;
-            autoAssignStocks.OrderBy(x => x.Details.FirstOrDefault()?.StockQuantity).ToList();
-            outStocks.AddRange(autoAssignStocks);
-            float assignQuantity = needQuantity - residueQuantity;
-
-            float orderQuantity = mesOutboundOrder.OrderQuantity;
-            for (int j = 0; j < autoAssignStocks.Count; j++)
-            {
-                float detailAssignQuantity = outStockLockInfos.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).Sum(x => x.AssignQuantity);//鍑哄簱璁㈠崟鏄庣粏宸插垎閰嶆暟閲�
-
-                float palletAssignQuantity = outStockLockInfos.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode && x.PalletCode == autoAssignStocks[j].PalletCode).Sum(x => x.AssignQuantity);//鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-
-                float palletOutboundQuantity = autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity);
-                if (palletAssignQuantity < palletOutboundQuantity)//濡傛灉鍑哄簱璇︽儏宸插垎閰嶆暟閲忓皬浜庢墭鐩樺凡鍒嗛厤鏁伴噺锛屽垯鍙互缁х画娣诲姞璇ユ墭鐩樺嚭搴撲俊鎭�
-                {
-                    float orderDetailNeedQuantity = mesOutboundOrder.OrderQuantity - detailAssignQuantity;
-                    if (orderDetailNeedQuantity > autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity) - palletAssignQuantity)
-                    {
-                        mesOutboundOrder.LockQuantity += autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity) - palletAssignQuantity;
-                        Dt_OutStockLockInfo outStockLockInfo = _outStockLockInfoService.GetOutStockLockInfo(mesOutboundOrder, autoAssignStocks[j], autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity) - palletAssignQuantity);
-                        outStockLockInfos.Add(outStockLockInfo);
-                    }
-                    else
-                    {
-                        Dt_OutStockLockInfo outStockLockInfo = _outStockLockInfoService.GetOutStockLockInfo(mesOutboundOrder, autoAssignStocks[j], mesOutboundOrder.OrderQuantity - mesOutboundOrder.LockQuantity);
-                        outStockLockInfos.Add(outStockLockInfo);
-                        mesOutboundOrder.LockQuantity = mesOutboundOrder.OrderQuantity;
-                        break;
-                    }
-                }
-            }
-            locationInfos.AddRange(_basicService.LocationInfoService.Repository.GetLocationInfos(outStocks.Select(x => x.LocationCode).ToList()));
-
-            return (outStocks, mesOutboundOrder, outStockLockInfos, locationInfos);
-        }
-
-        public WebResponseContent LockOutboundStockDataUpdate(List<Dt_StockInfo> stockInfos, List<Dt_OutStockLockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null)
-        {
-            try
-            {
-                stockInfos.ForEach(x => {
-                    x.StockStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt();
-                });
-                _stockService.StockInfoService.Repository.UpdateData(stockInfos);
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                foreach (var item in stockInfos)
-                {
-                    stockInfoDetails.AddRange(item.Details);
-                }
-                _stockService.StockInfoDetailService.Repository.UpdateData(stockInfoDetails);
-
-                List<Dt_OutStockLockInfo> addOutStockLockInfos = outStockLockInfos.Where(x => x.Id == 0).ToList();
-                if (addOutStockLockInfos != null && addOutStockLockInfos.Any())
-                {
-                    if (tasks != null)
-                    {
-                        addOutStockLockInfos.ForEach(x =>
-                        {
-                            x.TaskNum = tasks.FirstOrDefault(v => v.PalletCode == x.PalletCode)?.TaskNum;
-                        });
-                    }
-
-                    _outStockLockInfoService.Repository.AddData(addOutStockLockInfos);
-                }
-                List<Dt_OutStockLockInfo> updateOutStockLockInfos = outStockLockInfos.Where(x => x.Id > 0).ToList();
-                if (updateOutStockLockInfos != null && updateOutStockLockInfos.Any())
-                {
-                    _outStockLockInfoService.Repository.UpdateData(updateOutStockLockInfos);
-                }
-
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfos, locationStatus, LocationChangeType.OutboundAssignLocation, "", tasks?.Select(x => x.TaskNum).ToList());
-                _basicService.LocationInfoService.Repository.UpdateLocationStatus(locationInfos, locationStatus);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent AddMesOrder(SubstrateOutModel substrateOutModel)
-        {
-            try
-            {
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA57.ToString());
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"浠撳簱鍩虹淇℃伅鏈厤缃�");
-                }
-
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == substrateOutModel.MaterialCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡淇℃伅");
-                }
-                int orderType = 0;
-                if(substrateOutModel.Line == "1011")
-                {
-                    orderType = MesOutboundOrderTypeEnum.HandSubstrateOutPick.ObjToInt();
-                }
-                else
-                {
-                    orderType = MesOutboundOrderTypeEnum.HandSubstrateOut.ObjToInt();
-                }
-
-                Dt_MesOutboundOrder mesOutboundOrder = new Dt_MesOutboundOrder()
-                {
-                    CreateType = OrderCreateTypeEnum.CreateInSystem.ObjToInt(),
-                    Line = substrateOutModel.Line,
-                    MaterialCode = substrateOutModel.MaterialCode,
-                    MaterialName = materielInfo.MaterielName,
-                    OrderQuantity = substrateOutModel.RequiredQuantity,
-                    TaskNo = DateTime.Now.ToString("yyyyMMddHHmmss"),
-                    Unit = substrateOutModel.Unit,
-                    OrderType = orderType,
-                    OrderStatus = OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                    WarehouseId = warehouse.WarehouseId
-                };
-
-                AddData(mesOutboundOrder);
-                
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/MesRworkOutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/MesRworkOutboundOrderService.cs"
deleted file mode 100644
index 332fcd7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/MesRworkOutboundOrderService.cs"
+++ /dev/null
@@ -1,353 +0,0 @@
-锘縰sing Newtonsoft.Json.Serialization;
-using Newtonsoft.Json;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO;
-using WIDESEA_DTO.MES;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-using WIDESEA_OutboundRepository;
-using WIDESEA_Common.APIEnum;
-using WIDESEA_Common.OrderEnum;
-
-namespace WIDESEA_OutboundService
-{
-    public class MesRworkOutboundOrderService : ServiceBase<Dt_MesRworkOutboundOrder, IMesRworkOutboundOrderRepository>, IMesRworkOutboundOrderService
-    {
-        private readonly IBasicRepository _basicRepository;
-        private readonly IStockService _stockService;
-        private readonly IOutStockLockInfoService _outStockLockInfoService;
-        private readonly IBasicService _basicService;
-        private readonly IRecordService _recordService;
-        private readonly IOutProStockInfoService _outProStockInfoService;
-        private readonly IStockRepository _stockRepository;
-        private readonly IOutProStockInfoRepository _outProStockInfoRepository;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IApiInfoRepository _apiInfoRepository;
-
-        public IMesRworkOutboundOrderRepository Repository => BaseDal;
-
-        public MesRworkOutboundOrderService(IMesRworkOutboundOrderRepository BaseDal, IBasicRepository basicRepository, IStockService stockService, IOutStockLockInfoService outStockLockInfoService, IBasicService basicService, IRecordService recordService, IOutProStockInfoService outProStockInfoService, IStockRepository stockRepository, IOutProStockInfoRepository outProStockInfoRepository,IUnitOfWorkManage unitOfWorkManage, IApiInfoRepository apiInfoRepository) : base(BaseDal)
-        {
-            _basicRepository = basicRepository;
-            _stockService = stockService;
-            _outStockLockInfoService = outStockLockInfoService;
-            _basicService = basicService;
-            _recordService = recordService;
-            _outProStockInfoService = outProStockInfoService;
-            _stockRepository = stockRepository;
-            _outProStockInfoRepository = outProStockInfoRepository;
-            _unitOfWorkManage = unitOfWorkManage;
-            _apiInfoRepository = apiInfoRepository;
-        }
-        /// <summary>
-        /// 鎻愬簱浠诲姟鍒嗛厤搴撳瓨
-        /// </summary>
-        public (List<Dt_ProStockInfo>?,Dt_MesRworkOutboundOrder?,List<Dt_OutProStockInfo>?,List<Dt_LocationInfo>) AssignMesStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrder)
-        {
-            List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
-            Dt_MesRworkOutboundOrder assignOutOrder= new Dt_MesRworkOutboundOrder();
-            List<Dt_OutProStockInfo> outProStockInfos=new List<Dt_OutProStockInfo>();
-            List<Dt_LocationInfo> locationInfos=new List<Dt_LocationInfo>();
-            float originalNeedQuantity = mesRworkOutboundOrder.RequiredQuantity;
-
-            float needQuantity = originalNeedQuantity;
-
-            //鏌ユ壘鍙敤搴撳瓨
-            List<Dt_ProStockInfo> stockInfoss = _stockService.ProStockInfoService.GetUseableStocks(mesRworkOutboundOrder);
-            if (!stockInfoss.Any())
-            {
-                throw new Exception("鏈壘鍒板彲鍒嗛厤搴撳瓨");
-            }
-            List<Dt_ProStockInfo> autoAssignStocks = _stockService.ProStockInfoService.GetOutboundStocks(stockInfoss,mesRworkOutboundOrder, needQuantity,out float residueQuantity);
-            mesRworkOutboundOrder.LockQuantity += needQuantity - residueQuantity;
-            autoAssignStocks.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.StockPcsQty).ToList();
-            proStockInfos.AddRange(autoAssignStocks);
-            float assignQuantity = needQuantity - residueQuantity;
-
-            float orderQuantity = mesRworkOutboundOrder.RequiredQuantity;
-            bool isCanDate = string.IsNullOrEmpty(mesRworkOutboundOrder.DateCode);
-            for (int j = 0; j < autoAssignStocks.Count; j++)
-            {
-                //鍑哄簱璁㈠崟鏄庣粏宸插垎閰嶆暟閲�
-                float detailAssignQuantity = outProStockInfos
-                    .Where(x => x.SaleOrder == mesRworkOutboundOrder.SaleOrder 
-                    && x.PCode == mesRworkOutboundOrder.ProductCode 
-                    && x.PVer == mesRworkOutboundOrder.ProductVersion
-                    && (isCanDate ? isCanDate : x.DateCode == mesRworkOutboundOrder.DateCode))
-                    .Sum(x => x.AssignQuantity);
-
-                //鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-                float palletAssignQuantity = outProStockInfos
-                    .Where(x => x.SaleOrder == mesRworkOutboundOrder.SaleOrder 
-                    && x.PCode == mesRworkOutboundOrder.ProductCode 
-                    && x.PVer == mesRworkOutboundOrder.ProductVersion 
-                    && x.PalletCode == autoAssignStocks[j].PalletCode
-                    && (isCanDate ? isCanDate : x.DateCode == mesRworkOutboundOrder.DateCode))
-                    .Sum(x => x.AssignQuantity);
-
-                float palletOutboundQuantity = autoAssignStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity);
-                if (palletAssignQuantity < palletOutboundQuantity)//濡傛灉鍑哄簱璇︽儏宸插垎閰嶆暟閲忓皬浜庢墭鐩樺凡鍒嗛厤鏁伴噺锛屽垯鍙互缁х画娣诲姞璇ユ墭鐩樺嚭搴撲俊鎭�
-                {
-                    float orderDetailNeedQuantity = mesRworkOutboundOrder.RequiredQuantity - detailAssignQuantity;
-                    if (orderDetailNeedQuantity > autoAssignStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity) - palletAssignQuantity)
-                    {
-                        mesRworkOutboundOrder.LockQuantity += autoAssignStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity) - palletAssignQuantity;
-                        Dt_OutProStockInfo outStockLockInfo = _outProStockInfoService.GetOutStockLockInfo(mesRworkOutboundOrder, autoAssignStocks[j], autoAssignStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity) - palletAssignQuantity);
-                        outProStockInfos.Add(outStockLockInfo);
-                    }
-                    else
-                    {
-                        Dt_OutProStockInfo outStockLockInfo = _outProStockInfoService.GetOutStockLockInfo(mesRworkOutboundOrder, autoAssignStocks[j], mesRworkOutboundOrder.RequiredQuantity-mesRworkOutboundOrder.LockQuantity);
-                        outProStockInfos.Add(outStockLockInfo);
-                        mesRworkOutboundOrder.LockQuantity = mesRworkOutboundOrder.RequiredQuantity;
-                        break;
-                    }
-                }
-            }
-            locationInfos.AddRange(_basicService.LocationInfoService.Repository.GetLocationInfos(proStockInfos.Select(x => x.LocationCode).ToList()));
-
-            return (proStockInfos, mesRworkOutboundOrder, outProStockInfos, locationInfos);
-        }
-        public WebResponseContent LockOutboundStockDataUpdate(List<Dt_ProStockInfo> stockInfos, List<Dt_OutProStockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null)
-        {
-            try
-            {
-                stockInfos.ForEach(x => {
-                    x.StockStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt();
-                });
-                _stockService.ProStockInfoService.Repository.UpdateData(stockInfos);
-                List<Dt_ProStockInfoDetail> stockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in stockInfos)
-                {
-                    stockInfoDetails.AddRange(item.proStockInfoDetails);
-                }
-                _stockService.ProStockInfoDetailService.Repository.UpdateData(stockInfoDetails);
-
-                List<Dt_OutProStockInfo> addOutStockLockInfos = outStockLockInfos.Where(x => x.Id == 0).ToList();
-                if (addOutStockLockInfos != null && addOutStockLockInfos.Any())
-                {
-                    if (tasks != null)
-                    {
-                        addOutStockLockInfos.ForEach(x =>
-                        {
-                            x.TaskNum = tasks.FirstOrDefault(v => v.PalletCode == x.PalletCode)?.TaskNum;
-                        });
-                    }
-
-                    _outProStockInfoService.Repository.AddData(addOutStockLockInfos);
-                }
-                List<Dt_OutProStockInfo> updateOutStockLockInfos = outStockLockInfos.Where(x => x.Id > 0).ToList();
-                if (updateOutStockLockInfos != null && updateOutStockLockInfos.Any())
-                {
-                    _outProStockInfoService.Repository.UpdateData(updateOutStockLockInfos);
-                }
-
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfos, locationStatus, LocationChangeType.OutboundAssignLocation, "", tasks?.Select(x => x.TaskNum).ToList());
-                _basicService.LocationInfoService.Repository.UpdateLocationStatus(locationInfos, locationStatus);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 鎴愬搧MES鎻愬簱鍑哄簱瀹屽悗涓�鍖呬竴鍖呮嫞閫�
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent MesRworkOutPick(int OrderId,string InrPKCode,int Count=0)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇褰撳墠鐨凪es鎻愬簱鍗�
-                Dt_MesRworkOutboundOrder rworkOutboundOrder = BaseDal.QueryFirst(x => x.Id == OrderId);
-                if (rworkOutboundOrder == null)
-                {
-                    return content.Error("鏈壘鍒板綋鍓峂es鎻愬簱鍗�");
-                }
-                if (rworkOutboundOrder.OrderStatus>=OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return content.Error("褰撳墠Mes鎻愬簱鍗曞凡瀹屾垚鎴栧叧闂�");
-                }
-                //鏍规嵁鎵弿鍐呭寘鍙疯幏鍙栧簱瀛�
-                Dt_ProStockInfoDetail? proStockInfoDetail = _stockRepository.ProStockInfoDetailRepository.QueryFirst(x => x.BagNo == InrPKCode && x.ProOutDetailStatus == StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt());
-                if (proStockInfoDetail == null)
-                {
-                    return content.Error($"鏈壘鍒板唴鍖厈InrPKCode}淇℃伅");
-                }
-                //鑾峰彇搴撳瓨淇℃伅
-                Dt_ProStockInfo? proStockInfo = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.Id == proStockInfoDetail.ProStockId).Includes(x => x.proStockInfoDetails).First();
-                if (proStockInfo == null)
-                {
-                    return content.Error($"鏈壘鍒板唴鍖厈InrPKCode}搴撳瓨淇℃伅");
-                }
-                //鏌ヨ璇ユ墭鐩樻槸鍚﹀瓨鍦ㄨ鍗曟嵁鐨勫嚭搴撹鎯�
-                Dt_OutProStockInfo outProStockInfo = _outProStockInfoRepository.QueryFirst(x => x.OrderNo == rworkOutboundOrder.TaskNo && x.PalletCode == proStockInfo.PalletCode);
-                if (outProStockInfo == null)
-                {
-                    return content.Error($"鍐呭寘{InrPKCode}闈炲崟鎹畕rworkOutboundOrder.TaskNo}鍐呭");
-                }
-                //鍒ゆ柇鏄惁鏁村寘鏁伴噺
-                if (Count > 0)
-                {
-                    if (Count> proStockInfoDetail.StockPcsQty)
-                    {
-                        return content.Error($"鍐呭寘鏁伴噺{(int)proStockInfoDetail.StockPcsQty}<鍑哄簱鏁伴噺{Count}");
-                    }
-                    int setinterval = (int)proStockInfoDetail.StockPcsQty / (int)proStockInfoDetail.SETQty;
-                    if (Count % setinterval!=0)
-                    {
-                        return content.Error($"鑾峰彇SET鏁伴噺澶辫触,1SET:{setinterval}PCS");
-                    }
-                    proStockInfoDetail.OutSETQty = Count / setinterval;
-                    proStockInfoDetail.OutboundQuantity = Count;
-                }
-                else
-                {
-                    proStockInfoDetail.OutSETQty = proStockInfoDetail.SETQty;
-                    proStockInfoDetail.OutboundQuantity = proStockInfoDetail.StockPcsQty;
-                }
-                rworkOutboundOrder.OverOutQuantity += proStockInfoDetail.OutboundQuantity;
-                if (rworkOutboundOrder.OverOutQuantity> rworkOutboundOrder.RequiredQuantity)
-                {
-                    return content.Error($"鍗曟嵁{rworkOutboundOrder.TaskNo}婧㈠嚭{rworkOutboundOrder.OverOutQuantity - rworkOutboundOrder.RequiredQuantity}");
-                }
-                if (rworkOutboundOrder.OverOutQuantity== rworkOutboundOrder.RequiredQuantity)
-                {
-                    rworkOutboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                }
-
-                int SetCount = (int)proStockInfoDetail.OutSETQty;
-                int EligiblePcsCount = (int)proStockInfoDetail.OutboundQuantity;
-                _unitOfWorkManage.BeginTran();
-                if (proStockInfoDetail.SETQty == proStockInfoDetail.OutSETQty && proStockInfoDetail.StockPcsQty== proStockInfoDetail.OutboundQuantity)
-                {
-                    proStockInfo.proStockInfoDetails.Remove(proStockInfoDetail);
-                    if (proStockInfo.proStockInfoDetails.Count==0)
-                    {
-                        _stockRepository.ProStockInfoRepository.DeleteAndMoveIntoHty(proStockInfo, OperateTypeEnum.鑷姩鍒犻櫎);
-                    }
-                    _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(proStockInfoDetail, OperateTypeEnum.鑷姩鍒犻櫎);
-                }
-                else
-                {
-                    proStockInfoDetail.SETQty -= proStockInfoDetail.OutSETQty;
-                    proStockInfoDetail.StockPcsQty -= proStockInfoDetail.OutboundQuantity;
-                    proStockInfoDetail.OutSETQty = 0;
-                    proStockInfoDetail.OutboundQuantity = 0;
-                    _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfoDetail);
-                }
-                BaseDal.UpdateData(rworkOutboundOrder);
-                //MES鎴愬搧搴撳瓨鏉垮嚭搴撳悓姝�
-                WebResponseContent responseContent = ProductOutBoundSync(MesProOutBound(rworkOutboundOrder, new List<Dt_ProStockInfoDetail> { proStockInfoDetail }, SetCount, EligiblePcsCount));
-                if (responseContent.Status)
-                {
-                    throw new Exception("鍚屾MES搴撳瓨鏉垮嚭搴撳け璐�,閿欒:" + responseContent.Message);
-                }
-                _unitOfWorkManage.CommitTran();
-                if (rworkOutboundOrder.OrderStatus==OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    content.OK($"鍗曞彿{rworkOutboundOrder.TaskNo}宸插畬鎴�");
-                }
-                else
-                {
-                    content.OK($"鍗曞彿{rworkOutboundOrder.TaskNo},鍓╀綑:{rworkOutboundOrder.RequiredQuantity-rworkOutboundOrder.OverOutQuantity}PCS");
-                }
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 搴撳瓨鏉挎暟鎹浆鎹�
-        /// </summary>
-        /// <returns></returns>
-        public MesProductOutBound MesProOutBound(Dt_MesRworkOutboundOrder mesRworkOutboundOrder, List<Dt_ProStockInfoDetail> proStockInfoDetails,int SetCount,int EligiblePcsCount)
-        {
-            //鑾峰彇浠撳簱淇℃伅
-            Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == mesRworkOutboundOrder.WarehouseId);
-            List<MesInventoryInfo> inventoryInfos = new List<MesInventoryInfo>();
-            foreach (var item in proStockInfoDetails)
-            {
-                MesInventoryInfo mesInventoryInfo = new MesInventoryInfo()
-                {
-                    Warhouseno = warehouse.WarehouseCode,
-                    InternalPackageNumber = item.BagNo,
-                    SetCount = SetCount,
-                    EligiblePcsCount = EligiblePcsCount
-                };
-                inventoryInfos.Add(mesInventoryInfo);
-            }
-            MesProductOutBound mesProductOutBound = new MesProductOutBound()
-            {
-                TaskNo = mesRworkOutboundOrder.TaskNo,
-                ProductCode = mesRworkOutboundOrder.ProductCode,
-                ProductVersion = mesRworkOutboundOrder.ProductVersion,
-                DateCode = mesRworkOutboundOrder.DateCode,
-                SaleOrder = mesRworkOutboundOrder.SaleOrder,
-                InventoryInfo = inventoryInfos
-            };
-            return mesProductOutBound;
-        }
-        /// <summary>
-        /// 鎴愬搧搴撳瓨鏉垮悓姝ユ帴鍙�
-        /// </summary>
-        public WebResponseContent ProductOutBoundSync(MesProductOutBound model)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.WMS_MES_ProductOutBound.ToString());
-                MESRoot<MesProductOutBound> root = new MESRoot<MesProductOutBound>()
-                {
-                    From = "WMS",
-                    DateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    Content = model
-                };
-                JsonSerializerSettings settings = new JsonSerializerSettings
-                {
-                    ContractResolver = new CamelCasePropertyNamesContractResolver()
-                };
-                string request = JsonConvert.SerializeObject(root, settings);
-                string response = HttpMesHelper.Post(apiInfo.ApiAddress, request);
-                MesResponseContent mesResponseContent = response.DeserializeObject<MesResponseContent>();
-                //璋冪敤鎺ュ彛
-                if (mesResponseContent.BSucc == true)
-                {
-                    content.OK(mesResponseContent.StrMsg);
-                }
-                else
-                {
-                    content.Error(mesResponseContent.StrMsg);
-                }
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutProStockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutProStockInfoService.cs"
deleted file mode 100644
index 07bbbb5..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutProStockInfoService.cs"
+++ /dev/null
@@ -1,85 +0,0 @@
-锘縰sing SqlSugar.Extensions;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class OutProStockInfoService : ServiceBase<Dt_OutProStockInfo, IOutProStockInfoRepository>, IOutProStockInfoService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-
-        public IOutProStockInfoRepository Repository => BaseDal;
-
-        public OutProStockInfoService(IOutProStockInfoRepository BaseDal,IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-        }
-        public Dt_OutProStockInfo GetOutStockLockInfo(Dt_ProOutOrder proOutOrder, Dt_ProOutOrderDetail proOutOrderDetail, Dt_ProStockInfo proStockInfo, float assignQty, int? taskNum = null)
-        {
-            Dt_OutProStockInfo outProStockInfo = new Dt_OutProStockInfo()
-            {
-                OrderNo = proOutOrder.ProOutOrderNo,
-                OrderDetailId = proOutOrderDetail.Id,
-                OrderType = proOutOrder.ProOrderType,
-                BatchNo = proOutOrderDetail.PLot,
-                SaleOrder = proOutOrderDetail.SaleOrder,
-                Customer = proOutOrderDetail.Customer,
-                PCode = proOutOrderDetail.PCode,
-                PVer = proOutOrderDetail.PVer,
-                PLot = proStockInfo.proStockInfoDetails.FirstOrDefault()?.LotNumber ?? "",
-                DateCode = proStockInfo.proStockInfoDetails.FirstOrDefault()?.DateCode ?? "",
-                StockId = proStockInfo.Id,
-                OrderQuantity = proOutOrderDetail.QtyPcs,
-                OriginalQuantity = proStockInfo.proStockInfoDetails.Sum(x => x.StockPcsQty),
-                AssignQuantity = assignQty,
-                LocationCode = proStockInfo.LocationCode,
-                PalletCode = proStockInfo.PalletCode,
-                Unit = proOutOrderDetail.Unit,
-                TaskNum = taskNum,
-                Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt()
-            };
-            return outProStockInfo;
-        }
-        public Dt_OutProStockInfo GetOutStockLockInfo(Dt_MesRworkOutboundOrder mesOutboundOrder, Dt_ProStockInfo outStock, float assignQuantity, int? taskNum = null)
-        {
-
-            Dt_OutProStockInfo outProStockInfo = new Dt_OutProStockInfo()
-            {
-                OrderNo = mesOutboundOrder.OrderNo,
-                OrderDetailId = mesOutboundOrder.Id,
-                OrderType = mesOutboundOrder.OrderType,
-                BatchNo = outStock.proStockInfoDetails.FirstOrDefault()?.LotNumber,
-                SaleOrder = mesOutboundOrder.SaleOrder,
-                Customer = "",
-                PCode = mesOutboundOrder.ProductCode,
-                PVer = mesOutboundOrder.ProductVersion,
-                PLot = outStock.proStockInfoDetails.FirstOrDefault()?.LotNumber,
-                DateCode = mesOutboundOrder.DateCode,
-                StockId = outStock.Id,
-                OrderQuantity = mesOutboundOrder.RequiredQuantity,
-                OriginalQuantity = outStock.proStockInfoDetails.Sum(x => x.StockPcsQty),
-                AssignQuantity = assignQuantity,
-                LocationCode = outStock.LocationCode,
-                PalletCode = outStock.PalletCode,
-                Unit = "PCS",
-                TaskNum = taskNum,
-                Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt()
-            };
-
-            return outProStockInfo;
-        }
-        public List<Dt_OutProStockInfo> GetByOrderDetailId(int orderDetailId, OutLockStockStatusEnum? outStockStatus)
-        {
-            return BaseDal.QueryData(x => x.OrderDetailId == orderDetailId && outStockStatus == null ? true : x.Status == outStockStatus.ObjToInt());
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutStockLockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutStockLockInfoService.cs"
deleted file mode 100644
index cde09cd..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutStockLockInfoService.cs"
+++ /dev/null
@@ -1,170 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public partial class OutStockLockInfoService : ServiceBase<Dt_OutStockLockInfo, IOutStockLockInfoRepository>, IOutStockLockInfoService
-    {
-
-        private readonly IStockService _stockService;
-        private readonly IRecordService _recordService;
-
-        public IOutStockLockInfoRepository Repository => BaseDal;
-        public IUnitOfWorkManage _unitOfWorkManage;
-
-        public OutStockLockInfoService(IOutStockLockInfoRepository BaseDal, IStockService stockService, IRecordService recordService, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
-        {
-            _recordService = recordService;
-            _stockService = stockService;
-            _unitOfWorkManage = unitOfWorkManage;
-        }
-
-        public List<Dt_OutStockLockInfo> GetOutStockLockInfos(Dt_OutboundOrder outboundOrder, Dt_OutboundOrderDetail outboundOrderDetail, List<Dt_StockInfo> outStocks, int? taskNum = null)
-        {
-            List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-
-            foreach (var item in outStocks)
-            {
-                Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
-                {
-                    PalletCode = item.PalletCode,
-                    AssignQuantity = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.OutboundQuantity),
-                    MaterielCode = outboundOrderDetail.MaterielCode,
-                    BatchNo = outboundOrderDetail.BatchNo,
-                    LocationCode = item.LocationCode,
-                    MaterielName = outboundOrderDetail.MaterielName,
-                    OrderDetailId = outboundOrderDetail.Id,
-                    OrderNo = outboundOrder.OrderNo,
-                    OrderType = outboundOrder.OrderType,
-                    OriginalQuantity = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity),
-                    Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(),
-                    StockId = item.Id,
-                    TaskNum = taskNum,
-                    ProductionDate = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate,
-                    EffectiveDate = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate
-
-                };
-                outStockLockInfos.Add(outStockLockInfo);
-            }
-
-            return outStockLockInfos;
-        }
-
-        public Dt_OutStockLockInfo GetOutStockLockInfo(Dt_OutboundOrder outboundOrder, Dt_OutboundOrderDetail outboundOrderDetail, Dt_StockInfo outStock, float assignQuantity, int? taskNum = null)
-        {
-
-            Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
-            {
-                PalletCode = outStock.PalletCode,
-                AssignQuantity = assignQuantity,
-                MaterielCode = outboundOrderDetail.MaterielCode,
-                BatchNo = outboundOrderDetail.BatchNo ?? outStock.Details.FirstOrDefault()?.BatchNo,
-                LocationCode = outStock.LocationCode,
-                MaterielName = outboundOrderDetail.MaterielName,
-                OrderDetailId = outboundOrderDetail.Id,
-                OrderNo = outboundOrder.OrderNo,
-                OrderType = outboundOrder.OrderType,
-                OriginalQuantity = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity),
-                Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(),
-                StockId = outStock.Id,
-                TaskNum = taskNum,
-                OrderQuantity = outboundOrderDetail.OrderQuantity,
-                Unit = outboundOrderDetail.Unit,
-                ProductionDate = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate,
-                EffectiveDate = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate
-            };
-
-            return outStockLockInfo;
-        }
-        /// <summary>
-        /// PP澶у嵎鍑哄簱
-        /// </summary>
-        /// <param name="mesOutboundOrder"></param>
-        /// <param name="outStock"></param>
-        /// <param name="assignQuantity"></param>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        public Dt_OutStockLockInfo GetOutStockLockInfo(Dt_MesOutboundOrder mesOutboundOrder, Dt_StockInfo outStock, float assignQuantity, int? taskNum = null)
-        {
-
-            Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
-            {
-                PalletCode = outStock.PalletCode,
-                AssignQuantity = assignQuantity,
-                MaterielCode = mesOutboundOrder.MaterialCode,
-                BatchNo = outStock.Details.FirstOrDefault()?.BatchNo ?? "",
-                LocationCode = outStock.LocationCode,
-                MaterielName = mesOutboundOrder.MaterialName,
-                OrderDetailId = mesOutboundOrder.Id,
-                OrderNo = mesOutboundOrder.OrderNo,
-                OrderType = mesOutboundOrder.OrderType,
-                OriginalQuantity = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).Sum(x => x.StockQuantity),
-                Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(),
-                StockId = outStock.Id,
-                TaskNum = taskNum,
-                OrderQuantity = mesOutboundOrder.OrderQuantity,
-                Unit = mesOutboundOrder.Unit,
-                ProductionDate = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).FirstOrDefault()?.ProductionDate,
-                EffectiveDate = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).FirstOrDefault()?.EffectiveDate
-
-            };
-
-            return outStockLockInfo;
-        }
-        public List<Dt_OutStockLockInfo> OutStockLockInfos(string OrderNo)
-        {
-            return BaseDal.QueryData(x => x.OrderNo == OrderNo);
-        }
-
-        public List<Dt_OutStockLockInfo> GetByOrderDetailId(int orderDetailId, OutLockStockStatusEnum? outStockStatus)
-        {
-            return BaseDal.QueryData(x => x.OrderDetailId == orderDetailId && outStockStatus == null ? true : x.Status == outStockStatus.ObjToInt());
-        }
-        public List<Dt_OutStockLockInfo> GetByMesOrderDetail(string taskNo)
-        {
-            return BaseDal.QueryData(x => x.OrderNo == taskNo);
-        }
-
-        public List<Dt_OutStockLockInfo> GetStockOutboundOrder(SaveModel saveModel)
-        {
-            try
-            {
-                var palletCode = saveModel.MainData["barcode"].ToString();
-                var warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                Dt_StockInfo stockInfo = BaseDal.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode && x.WarehouseId == warehouseId).Includes(x => x.Details).First();
-                if (stockInfo.StockStatus != StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    throw new Exception($"璇ユ墭鐩樿繕鏈嚭搴撳畬鎴�");
-                }
-                if (stockInfo == null)
-                {
-                    throw new Exception($"鏈壘鍒板簱瀛樹俊鎭�");
-                }
-                Dt_StockInfoDetail stockInfoDetail = stockInfo.Details.FirstOrDefault();
-                if (stockInfoDetail == null)
-                {
-                    throw new Exception($"鏈壘鍒板簱瀛樿鎯�");
-                }
-                List<Dt_OutStockLockInfo> stockLockInfos = BaseDal.QueryData(x => x.StockId == stockInfo.Id && x.Status == OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
-                return stockLockInfos;
-            }
-            catch (Exception ex)
-            {
-                return null;
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs"
deleted file mode 100644
index 342a677..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutStockLockInfoService_Pick.cs"
+++ /dev/null
@@ -1,100 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_IOutboundService
-{
-    public partial class OutStockLockInfoService
-    {
-
-        /// <summary>
-        /// 鍒嗘嫞
-        /// </summary>
-        /// <param name="palletCode">鎵樼洏鍙�</param>
-        /// <returns></returns>
-        public WebResponseContent MaterialPick(string palletCode)
-        {
-            try
-            {
-                Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(palletCode);
-                if (stockInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鎵樼洏搴撳瓨淇℃伅");
-                }
-                if (stockInfo.StockStatus != StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樿繕鏈嚭搴撳畬鎴�");
-                }
-                List<Dt_OutStockLockInfo> outStockLockInfos = Repository.QueryData(x => x.PalletCode == palletCode && x.Status == OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
-                if (outStockLockInfos == null || outStockLockInfos.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error("璇ユ墭鐩樺凡鍏ㄩ儴鍒嗘嫞瀹屾垚");
-                }
-                for (int i = 0; i < outStockLockInfos.Count; i++)
-                {
-                    outStockLockInfos[i].Status = OutLockStockStatusEnum.鎷i�夊畬鎴�.ObjToInt();
-                }
-                List<Dt_StockInfoDetail> beforeDetaile = stockInfo.Details.GroupBy(x => x.MaterielCode).Select(x => new Dt_StockInfoDetail { MaterielCode = x.Key, StockQuantity = x.Sum(v => v.StockQuantity) }).ToList();
-                List<Dt_StockInfoDetail> updateDetailList = new List<Dt_StockInfoDetail>();
-                List<Dt_StockInfoDetail> deleteDetailList = new List<Dt_StockInfoDetail>();
-                List<Dt_StockInfoDetail> residueDetailList = new List<Dt_StockInfoDetail>();
-                for (int i = 0; i < stockInfo.Details.Count; i++)
-                {
-                    if (stockInfo.Details[i].OutboundQuantity > 0)
-                    {
-                        if (stockInfo.Details[i].StockQuantity > stockInfo.Details[i].OutboundQuantity)
-                        {
-                            stockInfo.Details[i].StockQuantity -= stockInfo.Details[i].OutboundQuantity;
-                            updateDetailList.Add(stockInfo.Details[i]);
-                        }
-                        else
-                        {
-                            deleteDetailList.Add(stockInfo.Details[i]);
-                        }
-                    }
-                    else
-                    {
-                        residueDetailList.Add(stockInfo.Details[i]);
-                    }
-                }
-                stockInfo.StockStatus = StockStatusEmun.鎷i�夊畬鎴�.ObjToInt();
-                List<string> mCodes = stockInfo.Details.GroupBy(x => x.MaterielCode).Select(x => x.Key).ToList();
-                _unitOfWorkManage.BeginTran();
-                foreach (string code in mCodes)
-                {
-                    _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, residueDetailList, updateDetailList, deleteDetailList, StockChangeTypeEnum.Outbound);
-                }
-                updateDetailList.ForEach(x =>
-                {
-                    x.OutboundQuantity = 0;
-                });
-                if (stockInfo.Details.Count > deleteDetailList.Count)
-                    _stockService.StockInfoService.Repository.UpdateData(stockInfo);
-                else
-                    _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(stockInfo, OperateTypeEnum.鑷姩瀹屾垚);
-                _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(deleteDetailList, OperateTypeEnum.鑷姩瀹屾垚);
-                _stockService.StockInfoDetailService.Repository.UpdateData(updateDetailList);
-                //_stockService.StockInfoDetailService.Repository.DeleteData(deleteDetailList);
-                BaseDal.UpdateData(outStockLockInfos);
-                _unitOfWorkManage.CommitTran();
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderDetailService.cs"
deleted file mode 100644
index 74ab2e9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderDetailService.cs"
+++ /dev/null
@@ -1,522 +0,0 @@
-锘縰sing MailKit.Search;
-using OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-using WIDESEA_OutboundRepository;
-using WIDESEA_StockRepository;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class OutboundOrderDetailService : ServiceBase<Dt_OutboundOrderDetail, IOutboundOrderDetailRepository>, IOutboundOrderDetailService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IStockService _stockService;
-        private readonly IOutboundRepository _outboundRepository;
-        private readonly IOutStockLockInfoService _outStockLockInfoService;
-        private readonly IBasicService _basicService;
-        private readonly IRecordService _recordService;
-
-        public IOutboundOrderDetailRepository Repository => BaseDal;
-
-        public OutboundOrderDetailService(IOutboundOrderDetailRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IStockService stockService, IOutboundRepository outboundRepository, IOutStockLockInfoService outStockLockInfoService, IBasicService basicService, IRecordService recordService) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _stockService = stockService;
-            _outboundRepository = outboundRepository;
-            _outStockLockInfoService = outStockLockInfoService;
-            _basicService = basicService;
-            _recordService = recordService;
-        }
-        public WebResponseContent GetOutboundOrderDetails(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                string orderNo = saveModel.MainData["orderNo"].ToString();
-                Dt_OutboundOrder inboundOrder = Db.Queryable<Dt_OutboundOrder>().Where(x => x.OrderNo == orderNo).Includes(x => x.Details).First();
-                content.OK(data: inboundOrder.Details);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 閿佸畾搴撳瓨锛岀敱绯荤粺鍒嗛厤(浠呴�昏緫杩愮畻锛屼笉鐢熸垚浠诲姟锛屼笉淇敼鏁版嵁搴撴暟鎹�)
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <returns></returns>
-        public WebResponseContent LockOutboundStock(int orderDetailId)
-        {
-            Dt_OutboundOrderDetail outboundOrderDetail = BaseDal.QueryFirst(x => x.Id == orderDetailId);
-            if (outboundOrderDetail == null)
-            {
-                return WebResponseContent.Instance.Error("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-            }
-            if (outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt())
-            {
-                return WebResponseContent.Instance.Error("璇ユ槑缁嗕笉鍙搷浣�");
-            }
-            Dt_OutboundOrder outboundOrder = _outboundRepository.OutboundOrderRepository.QueryFirst(x => x.Id == outboundOrderDetail.OrderId);
-
-            float needQuantity = outboundOrderDetail.OrderQuantity - outboundOrderDetail.LockQuantity;
-
-            List<Dt_StockInfo> outStock = new List<Dt_StockInfo>();
-
-            List<Dt_StockInfo> stockInfos = _stockService.StockInfoService.GetUseableStocks(outboundOrderDetail.MaterielCode, outboundOrderDetail.BatchNo, outboundOrder.WarehouseId);
-            float stockTotalQuantity = stockInfos.Select(x => x.Details.Sum(v => v.StockQuantity - v.OutboundQuantity)).Sum(x => x);
-            if (stockTotalQuantity >= needQuantity)//搴撳瓨澶�
-            {
-                int index = 0;
-                while (needQuantity > 0)
-                {
-                    Dt_StockInfo stockInfo = stockInfos[index];
-                    float useableStockQuantity = stockInfo.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity - x.OutboundQuantity);
-                    if (useableStockQuantity < needQuantity)
-                    {
-                        outboundOrderDetail.LockQuantity += useableStockQuantity;
-                        stockInfo.Details.ForEach(x => x.OutboundQuantity = x.StockQuantity);
-                        needQuantity -= useableStockQuantity;
-                    }
-                    else
-                    {
-                        outboundOrderDetail.LockQuantity += needQuantity;
-                        stockInfo.Details.ForEach(x =>
-                        {
-                            if (x.StockQuantity > x.OutboundQuantity && x.MaterielCode == outboundOrderDetail.MaterielCode)
-                            {
-                                if (x.StockQuantity - x.OutboundQuantity >= needQuantity)
-                                {
-                                    x.OutboundQuantity += needQuantity;
-                                    needQuantity = 0;
-                                }
-                                else
-                                {
-                                    needQuantity -= (x.StockQuantity - x.OutboundQuantity);
-                                    x.OutboundQuantity = x.StockQuantity;
-                                }
-                            }
-                        });
-                    }
-                    outStock.Add(stockInfo);
-                    index++;
-                }
-                return WebResponseContent.Instance.OK(data: new { stockInfos, outboundOrderDetail });
-            }
-            else
-            {
-                for (int i = 0; i < stockInfos.Count; i++)
-                {
-                    Dt_StockInfo stockInfo = stockInfos[i];
-                    float useableStockQuantity = stockInfo.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity - x.OutboundQuantity);
-                    if (useableStockQuantity < needQuantity)
-                    {
-                        outboundOrderDetail.LockQuantity += useableStockQuantity;
-                        stockInfo.Details.ForEach(x => x.OutboundQuantity = x.StockQuantity);
-                        needQuantity -= useableStockQuantity;
-                    }
-                    else
-                    {
-                        outboundOrderDetail.LockQuantity += needQuantity;
-                        stockInfo.Details.ForEach(x =>
-                        {
-                            if (x.StockQuantity > x.OutboundQuantity && x.MaterielCode == outboundOrderDetail.MaterielCode)
-                            {
-                                if (x.StockQuantity - x.OutboundQuantity >= needQuantity)
-                                {
-                                    x.OutboundQuantity += needQuantity;
-                                    needQuantity = 0;
-                                }
-                                else
-                                {
-                                    needQuantity -= (x.StockQuantity - x.OutboundQuantity);
-                                    x.OutboundQuantity = x.StockQuantity;
-                                }
-                            }
-                        });
-                    }
-                    outStock.Add(stockInfo);
-                }
-                return WebResponseContent.Instance.OK(data: new { stockInfos, outboundOrderDetail });
-            }
-        }
-
-        /// <summary>
-        /// 鍗曚釜鍑哄簱鍗曟槑缁嗗簱瀛樺垎閰�
-        /// </summary>
-        /// <param name="outboundOrderDetail"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        /// <exception cref="Exception"></exception>
-        public (List<Dt_StockInfo>, Dt_OutboundOrderDetail, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(Dt_OutboundOrderDetail outboundOrderDetail, List<StockSelectViewDTO> stockSelectViews)
-        {
-            (bool, string) checkResult = CheckSelectStockDeital(outboundOrderDetail, stockSelectViews);
-            if (!checkResult.Item1) throw new Exception(checkResult.Item2);
-
-            Dt_OutboundOrder outboundOrder = _outboundRepository.OutboundOrderRepository.QueryFirst(x => x.Id == outboundOrderDetail.OrderId);
-            float originalNeedQuantity = outboundOrderDetail.OrderQuantity - outboundOrderDetail.LockQuantity;
-
-            float needQuantity = originalNeedQuantity;
-
-            List<Dt_StockInfo> outStocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(stockSelectViews.Select(x => x.PalletCode).ToList());
-            float assignQuantity = 0;
-            outStocks.ForEach(x =>
-            {
-                x.Details.ForEach(v =>
-                {
-                    assignQuantity += v.StockQuantity - v.OutboundQuantity;
-                });
-            });
-
-            outboundOrderDetail.LockQuantity += assignQuantity;
-            outStocks.ForEach(x =>
-            {
-                x.Details.ForEach(v =>
-                {
-                    v.OutboundQuantity = v.StockQuantity;
-                });
-            });
-            needQuantity -= assignQuantity;
-            if (outboundOrderDetail.OrderQuantity > outboundOrderDetail.LockQuantity)
-            {
-                List<Dt_StockInfo> stockInfos = _stockService.StockInfoService.GetUseableStocks(outboundOrderDetail.MaterielCode, outboundOrderDetail.BatchNo, outboundOrder.WarehouseId);
-                stockInfos = stockInfos.Where(x => !stockSelectViews.Select(v => v.PalletCode).Contains(x.PalletCode)).ToList();
-                List<Dt_StockInfo> autoAssignStocks = _stockService.StockInfoService.GetOutboundStocks(stockInfos, outboundOrderDetail.MaterielCode, needQuantity, out float residueQuantity);
-                outboundOrderDetail.LockQuantity += needQuantity - residueQuantity;
-                outStocks.AddRange(autoAssignStocks);
-                outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.AssignOver.ObjToInt();
-                if (residueQuantity > 0)
-                {
-                    outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.AssignOverPartial.ObjToInt();
-                }
-            }
-
-            List<Dt_OutStockLockInfo> outStockLockInfos = _outStockLockInfoService.GetOutStockLockInfos(outboundOrder, outboundOrderDetail, outStocks);
-
-            List<Dt_LocationInfo> locationInfos = _basicService.LocationInfoService.Repository.GetLocationInfos(outStocks.Select(x => x.LocationCode).ToList());
-
-            return (outStocks, outboundOrderDetail, outStockLockInfos, locationInfos);
-        }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="outboundOrderDetails"></param>
-        /// <returns></returns>
-        public (List<Dt_StockInfo>, List<Dt_OutboundOrderDetail>, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(List<Dt_OutboundOrderDetail> outboundOrderDetails)
-        {
-            if (!outboundOrderDetails.Any())
-            {
-                throw new Exception($"鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-            }
-
-            if (outboundOrderDetails.GroupBy(x => x.OrderId).Count() > 1)
-            {
-                throw new Exception($"璇峰嬁鍚屾椂鎿嶄綔澶氫釜鍗曟嵁鏄庣粏");
-            }
-            Dt_OutboundOrder outboundOrder = _outboundRepository.OutboundOrderRepository.QueryFirst(x => x.Id == outboundOrderDetails.FirstOrDefault().OrderId);
-            List<Dt_StockInfo> outStocks = new List<Dt_StockInfo>();
-            List<Dt_OutboundOrderDetail> groupDetails = outboundOrderDetails.GroupBy(x => new { x.MaterielCode, x.BatchNo }).Select(x => new Dt_OutboundOrderDetail { OrderQuantity = x.Sum(v => v.OrderQuantity) - x.Sum(v => v.LockQuantity), MaterielCode = x.Key.MaterielCode, BatchNo = x.Key.BatchNo }).ToList();
-            Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x=>x.WarehouseId== outboundOrder.WarehouseId);
-            List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-            List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-            foreach (var item in groupDetails)
-            {
-                float originalNeedQuantity = item.OrderQuantity;
-
-                float needQuantity = originalNeedQuantity;
-
-                List<Dt_StockInfo> stockInfos = _stockService.StockInfoService.GetUseableStocks(item.MaterielCode, item.BatchNo, outboundOrder.WarehouseId);
-                if (!stockInfos.Any())
-                {
-                    throw new Exception($"鏈壘鍒板彲鍒嗛厤搴撳瓨");
-                }
-                List<Dt_StockInfo> autoAssignStocks = _stockService.StockInfoService.GetOutboundStocks(stockInfos, item.MaterielCode, needQuantity, out float residueQuantity);
-                if (warehouse.WarehouseCode==WarehouseEnum.HA152.ToString())
-                {
-                    if (needQuantity< autoAssignStocks.Count)
-                    {
-                        throw new Exception($"绯荤粺瓒呮椂,璇风◢鍚庡啀璇�");
-                    }
-                }
-                item.LockQuantity += needQuantity - residueQuantity;
-                outStocks.AddRange(autoAssignStocks);
-                float assignQuantity = needQuantity - residueQuantity;
-
-                List<Dt_OutboundOrderDetail> details = outboundOrderDetails.Where(x => !string.IsNullOrEmpty(x.BatchNo) ? x.BatchNo == item.BatchNo : true && x.MaterielCode == item.MaterielCode).ToList();
-
-                for (int i = 0; i < details.Count; i++)
-                {
-                    float orderQuantity = details[i].OrderQuantity;
-                    for (int j = 0; j < autoAssignStocks.Count; j++)
-                    {
-                        float detailAssignQuantity = outStockLockInfos.Where(x => !string.IsNullOrEmpty(x.BatchNo) ? x.BatchNo == item.BatchNo : true && x.MaterielCode == item.MaterielCode && x.OrderDetailId == details[i].Id).Sum(x => x.AssignQuantity);//鍑哄簱璁㈠崟鏄庣粏宸插垎閰嶆暟閲�
-
-                        float palletAssignQuantity = outStockLockInfos.Where(x => x.BatchNo == item.BatchNo && x.MaterielCode == item.MaterielCode && x.PalletCode == autoAssignStocks[j].PalletCode).Sum(x => x.AssignQuantity);//鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-                        if (string.IsNullOrEmpty(item.BatchNo))
-                        {
-                            palletAssignQuantity = outStockLockInfos.Where(x => x.MaterielCode == item.MaterielCode && x.PalletCode == autoAssignStocks[j].PalletCode).Sum(x => x.AssignQuantity);//鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-                        }
-                        float palletOutboundQuantity = autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity);
-                        if (palletAssignQuantity < palletOutboundQuantity)//濡傛灉鍑哄簱璇︽儏宸插垎閰嶆暟閲忓皬浜庢墭鐩樺凡鍒嗛厤鏁伴噺锛屽垯鍙互缁х画娣诲姞璇ユ墭鐩樺嚭搴撲俊鎭�
-                        {
-                            float orderDetailNeedQuantity = details[i].OrderQuantity - detailAssignQuantity;
-                            if (orderDetailNeedQuantity > autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity) - palletAssignQuantity)
-                            {
-                                details[i].LockQuantity += autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity) - palletAssignQuantity;
-                                Dt_OutStockLockInfo outStockLockInfo = _outStockLockInfoService.GetOutStockLockInfo(outboundOrder, details[i], autoAssignStocks[j], autoAssignStocks[j].Details.Sum(x => x.OutboundQuantity) - palletAssignQuantity);
-                                outStockLockInfos.Add(outStockLockInfo);
-                            }
-                            else
-                            {
-                                Dt_OutStockLockInfo outStockLockInfo = _outStockLockInfoService.GetOutStockLockInfo(outboundOrder, details[i], autoAssignStocks[j], details[i].OrderQuantity - details[i].LockQuantity);
-                                outStockLockInfos.Add(outStockLockInfo);
-                                details[i].LockQuantity = details[i].OrderQuantity;
-                                break;
-                            }
-
-                        }
-                    }
-                }
-
-
-                locationInfos.AddRange(_basicService.LocationInfoService.Repository.GetLocationInfos(outStocks.Select(x => x.LocationCode).ToList()));
-            }
-
-            return (outStocks, outboundOrderDetails, outStockLockInfos, locationInfos);
-        }
-
-        /// <summary>
-        ///  閿佸畾搴撳瓨锛岀敱浜哄伐鎸囧畾锛屾垨鍔犱笂绯荤粺鍒嗛厤(鍖呭惈閫昏緫杩愮畻锛屼笖淇敼鏁版嵁搴撴暟鎹�)
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        public WebResponseContent LockOutboundStock(int orderDetailId, List<StockSelectViewDTO> stockSelectViews)
-        {
-            try
-            {
-                Dt_OutboundOrderDetail outboundOrderDetail = BaseDal.QueryFirst(x => x.Id == orderDetailId);
-                (bool, string) checkResult = CheckSelectStockDeital(outboundOrderDetail, stockSelectViews);
-                if (!checkResult.Item1) throw new Exception(checkResult.Item2);
-
-                (List<Dt_StockInfo>, Dt_OutboundOrderDetail, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = AssignStockOutbound(outboundOrderDetail, stockSelectViews);
-
-                _unitOfWorkManage.BeginTran();
-                WebResponseContent content = LockOutboundStockDataUpdate(result.Item1, new List<Dt_OutboundOrderDetail> { result.Item2 }, result.Item3, result.Item4);
-                if (content.Status)
-                {
-                    _unitOfWorkManage.CommitTran();
-                }
-                else
-                {
-                    _unitOfWorkManage.RollbackTran();
-                }
-                return content;
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
-        ///  閿佸畾搴撳瓨锛岀敱绯荤粺鍒嗛厤(鍖呭惈閫昏緫杩愮畻锛屼笖淇敼鏁版嵁搴撴暟鎹�)
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        public WebResponseContent LockOutboundStock(int[] keys)
-        {
-            try
-            {
-                List<StockSelectViewDTO> stockSelectViews = new List<StockSelectViewDTO>();
-                List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
-                List<Dt_OutboundOrderDetail> outboundOrderDetails = new List<Dt_OutboundOrderDetail>();
-                List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-                List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-                foreach (var item in keys)
-                {
-                    Dt_OutboundOrderDetail outboundOrderDetail = BaseDal.QueryFirst(x => x.Id == item);
-                    (bool, string) checkResult = CheckSelectStockDeital(outboundOrderDetail, stockSelectViews);
-                    if (!checkResult.Item1) throw new Exception(checkResult.Item2);
-
-                    (List<Dt_StockInfo>, Dt_OutboundOrderDetail, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = AssignStockOutbound(outboundOrderDetail, stockSelectViews);
-                    if (result.Item1.Count > 0)
-                    {
-                        stockInfos.AddRange(result.Item1);
-                        outboundOrderDetails.Add(result.Item2);
-                        outStockLockInfos.AddRange(result.Item3);
-                        locationInfos.AddRange(result.Item4);
-                    }
-                }
-
-                _unitOfWorkManage.BeginTran();
-                WebResponseContent content = LockOutboundStockDataUpdate(stockInfos, outboundOrderDetails, outStockLockInfos, locationInfos);
-                if (content.Status)
-                {
-                    _unitOfWorkManage.CommitTran();
-                }
-                else
-                {
-                    _unitOfWorkManage.RollbackTran();
-                }
-                return content;
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
-        /// 鍑哄簱搴撳瓨鍒嗛厤鍚庯紝鏇存柊鏁版嵁搴撴暟鎹�
-        /// </summary>
-        /// <param name="stockInfos"></param>
-        /// <param name="outboundOrderDetails"></param>
-        /// <param name="outStockLockInfos"></param>
-        /// <param name="locationInfos"></param>
-        /// <param name="locationStatus"></param>
-        /// <param name="tasks"></param>
-        /// <returns></returns>
-        public WebResponseContent LockOutboundStockDataUpdate(List<Dt_StockInfo> stockInfos, List<Dt_OutboundOrderDetail> outboundOrderDetails, List<Dt_OutStockLockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null)
-        {
-            try
-            {
-                _stockService.StockInfoService.Repository.UpdateData(stockInfos);
-                List<Dt_StockInfoDetail> stockInfoDetails = new List<Dt_StockInfoDetail>();
-                foreach (var item in stockInfos)
-                {
-                    stockInfoDetails.AddRange(item.Details);
-                }
-                _stockService.StockInfoDetailService.Repository.UpdateData(stockInfoDetails);
-                BaseDal.UpdateData(outboundOrderDetails);
-
-                List<Dt_OutStockLockInfo> addOutStockLockInfos = outStockLockInfos.Where(x => x.Id == 0).ToList();
-                if (addOutStockLockInfos != null && addOutStockLockInfos.Any())
-                {
-                    if (tasks != null)
-                    {
-                        addOutStockLockInfos.ForEach(x =>
-                        {
-                            x.TaskNum = tasks.FirstOrDefault(v => v.PalletCode == x.PalletCode)?.TaskNum;
-                        });
-                    }
-
-                    _outStockLockInfoService.Repository.AddData(addOutStockLockInfos);
-                }
-                List<Dt_OutStockLockInfo> updateOutStockLockInfos = outStockLockInfos.Where(x => x.Id > 0).ToList();
-                if (updateOutStockLockInfos != null && updateOutStockLockInfos.Any())
-                {
-                    _outStockLockInfoService.Repository.UpdateData(updateOutStockLockInfos);
-                }
-
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfos, locationStatus, LocationChangeType.OutboundAssignLocation, "", tasks?.Select(x => x.TaskNum).ToList());
-                _basicService.LocationInfoService.Repository.UpdateLocationStatus(locationInfos, locationStatus);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        private (bool, string) CheckSelectStockDeital(Dt_OutboundOrderDetail outboundOrderDetail, List<StockSelectViewDTO> stockSelectViews)
-        {
-            if (outboundOrderDetail == null)
-            {
-                return (false, "鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-            }
-            if (outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt() && outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.AssignOverPartial.ObjToInt())
-            {
-                return (false, "璇ユ槑缁嗕笉鍙搷浣�");
-            }
-            if (stockSelectViews.Sum(x => x.UseableQuantity) > outboundOrderDetail.OrderQuantity - outboundOrderDetail.LockQuantity)
-            {
-                return (false, "閫夋嫨鏁伴噺瓒呭嚭鍗曟嵁鏁伴噺");
-            }
-            return (true, "鎴愬姛");
-        }
-
-        /// <summary>
-        /// 鎾ら攢閿佸畾搴撳瓨
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <returns></returns>
-        public WebResponseContent RevokeLockOutboundStock(int orderDetailId)
-        {
-            Dt_OutboundOrderDetail outboundOrderDetail = BaseDal.QueryFirst(x => x.Id == orderDetailId);
-            (bool, string) result = CheckRevoke(outboundOrderDetail);
-            if (!result.Item1) return WebResponseContent.Instance.Error(result.Item2);
-
-            List<Dt_OutStockLockInfo> outStockLockInfos = _outStockLockInfoService.GetByOrderDetailId(orderDetailId, OutLockStockStatusEnum.宸插垎閰�);
-            if (outStockLockInfos.Count > 0)
-            {
-                List<Dt_StockInfo> stocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(outStockLockInfos.Select(x => x.PalletCode).ToList());
-                if (stocks.Count > 0)
-                {
-                    stocks.ForEach(x =>
-                    {
-                        x.Details.ForEach(v =>
-                        {
-                            v.OutboundQuantity = 0;
-                        });
-                    });
-
-                    outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt();
-                    outboundOrderDetail.LockQuantity = outboundOrderDetail.OverOutQuantity;
-
-                    outStockLockInfos.ForEach(x =>
-                    {
-                        x.Status = OutLockStockStatusEnum.鎾ら攢.ObjToInt();
-                    });
-
-                    List<Dt_LocationInfo> locationInfos = _basicService.LocationInfoService.Repository.GetLocationInfos(stocks.Select(x => x.LocationCode).ToList());
-
-                    return LockOutboundStockDataUpdate(stocks, new List<Dt_OutboundOrderDetail> { outboundOrderDetail }, outStockLockInfos, locationInfos, LocationStatusEnum.InStock);
-                }
-                return WebResponseContent.Instance.Error("鏈壘鍒板簱瀛樹俊鎭�");
-            }
-            return WebResponseContent.Instance.Error("鏈壘鍒板凡鍒嗛厤鐨勫嚭搴撲俊鎭�");
-
-        }
-
-        private (bool, string) CheckRevoke(Dt_OutboundOrderDetail outboundOrderDetail)
-        {
-            if (outboundOrderDetail == null)
-            {
-                return (false, "鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-            }
-            if (outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt() && outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.AssignOverPartial.ObjToInt() && outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.AssignOver.ObjToInt())
-            {
-                return (false, "璇ユ槑缁嗕笉鍙搷浣�");
-            }
-            return (true, "鎴愬姛");
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderDetail_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderDetail_HtyService.cs"
deleted file mode 100644
index ccc2b13..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderDetail_HtyService.cs"
+++ /dev/null
@@ -1,37 +0,0 @@
-锘縰sing OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-using WIDESEA_StockRepository;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class OutboundOrderDetail_HtyService : ServiceBase<Dt_OutboundOrderDetail_Hty, IOutboundOrderDetail_HtyRepository>, IOutboundOrderDetail_HtyService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-
-        public IOutboundOrderDetail_HtyRepository Repository => BaseDal;
-
-        public OutboundOrderDetail_HtyService(IOutboundOrderDetail_HtyRepository BaseDal, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderService.cs"
deleted file mode 100644
index 830712a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderService.cs"
+++ /dev/null
@@ -1,743 +0,0 @@
-锘縰sing AutoMapper;
-using MailKit.Search;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Serialization;
-using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
-using SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Linq.Expressions;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.DB;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.Seed;
-using WIDESEA_Core.Utilities;
-using WIDESEA_DTO.Basic;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_External.ERPService;
-using WIDESEA_External.Model;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundService
-{
-    public class OutboundOrderService : ServiceBase<Dt_OutboundOrder, IOutboundOrderRepository>, IOutboundOrderService
-    {
-        private readonly IMapper _mapper;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IBasicService _basicService;
-        private readonly IOutboundOrderDetailRepository _outboundOrderDetailRepository;
-        private readonly IStockService _stockService;
-        public IOutboundOrderRepository Repository => BaseDal;
-        private readonly IInvokeERPService _invokeERPService;
-        private readonly IOutStockLockInfoService _outStockLockInfoService;
-        private readonly IOutboundOrderRepository _outboundOrderRepository;
-
-        public OutboundOrderService(IOutboundOrderRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IBasicService basicService, IOutboundOrderDetailRepository outboundOrderDetailRepository, IStockService stockService, IInvokeERPService invokeERPService, IOutStockLockInfoService outStockLockInfoService,
-          IOutboundOrderRepository outboundOrderRepository) : base(BaseDal)
-        {
-            _mapper = mapper;
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicService = basicService;
-            _outboundOrderDetailRepository = outboundOrderDetailRepository;
-            _stockService = stockService;
-            _invokeERPService = invokeERPService;
-            _outStockLockInfoService = outStockLockInfoService;
-            _outboundOrderRepository = outboundOrderRepository;
-        }
-        public override WebResponseContent AddData(SaveModel saveModel)
-        {
-            if (saveModel.MainData.TryGetValue(nameof(Dt_OutboundOrder.UpperOrderNo).FirstLetterToLower(), out object? upperOrderNo) && upperOrderNo != null && !string.IsNullOrEmpty(upperOrderNo.ToString()))
-            {
-                Dt_OutboundOrder outboundOrder = BaseDal.QueryFirst(x => x.UpperOrderNo == upperOrderNo.ToString() && x.WarehouseId == Convert.ToInt32(saveModel.MainData[nameof(Dt_OutboundOrder.WarehouseId).FirstLetterToLower()]));
-                if (outboundOrder != null)
-                {
-                    return WebResponseContent.Instance.Error($"{upperOrderNo}棰嗘枡鍗曞彿宸插瓨鍦�");
-                }
-            }
-            if (saveModel.DetailData.Count>0)
-            {
-                for (int i = 0; i < saveModel.DetailData.Count; i++)
-                {
-                    saveModel.DetailData[i].Add("orderDetailStatus", OrderDetailStatusEnum.New.ObjToInt());
-                }
-            }
-            return base.AddData(saveModel);
-        }
-        public WebResponseContent GetOutboundOrders(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                int pageNo = saveModel.MainData["pageNo"].ObjToInt();
-                string? orderNo = saveModel.MainData["orderNo"].ToString();
-                int warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                List<Dt_OutboundOrder> _OutboundOrders = new List<Dt_OutboundOrder>();
-                if (string.IsNullOrEmpty(orderNo))
-                {
-                    _OutboundOrders = Db.Queryable<Dt_OutboundOrder>().Where(x => x.OrderStatus < OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt() && x.WarehouseId == warehouseId).OrderByDescending(x => x.CreateDate).ToPageList(pageNo, 5);
-                }
-                else
-                {
-                    _OutboundOrders = Db.Queryable<Dt_OutboundOrder>().Where(x => (x.OrderNo.Contains(orderNo)) && x.OrderStatus < OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt() && x.WarehouseId == warehouseId).OrderByDescending(x => x.CreateDate).ToPageList(pageNo, 5);
-                }
-
-                content.OK(data: _OutboundOrders);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent outpinku(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                var orderNo = saveModel.MainData["orderNo"].ToString();
-                var warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                var serNum = saveModel.MainData["sn"].ToString();
-                Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseId == warehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-
-                Dt_OutboundOrder outboundOrder = BaseDal.Db.Queryable<Dt_OutboundOrder>().Where(x => x.OrderNo == orderNo && x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).First();
-                if (outboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板嚭搴撳崟淇℃伅");
-                }
-                if (outboundOrder.Details == null || outboundOrder.Details.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-                }
-
-                MatSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<MatSerNumAnalysisModel>(AnalysisCodeEnum.MatSerNumAnalysis, serNum);
-                Dt_MaterielInfo materielInfo = _basicService.MaterielInfoService.Repository.QueryFirst(x => x.MaterielCode == model.MaterielCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡鐨勪俊鎭�");
-                }
-                if (materielInfo.WarehouseId != outboundOrder.WarehouseId)
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ墿鏂欎笉灞炰簬鏈粨");
-                }
-
-                Dt_OutboundOrderDetail outboundOrderDetail = outboundOrder.Details.FirstOrDefault(x => x.MaterielCode == model.MaterielCode);
-                if (outboundOrderDetail == null) return WebResponseContent.Instance.Error($"璇ョ墿鏂欎笉灞炰簬鏈嚭搴撳崟");
-                if (outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt())
-                    return WebResponseContent.Instance.Error($"鏈嚭搴撳崟褰撳墠鐗╂枡宸插嚭搴撳畬鎴�");
-
-                if (outboundOrderDetail.OrderQuantity - outboundOrderDetail.OverOutQuantity < model.Quantity)
-                    return WebResponseContent.Instance.Error($"鍑哄簱鏁伴噺瓒呭嚭鍑哄簱鍗�");
-
-                Dt_StockInfoDetail stockInfoDetail = _stockService.StockInfoDetailService.Repository.QueryFirst(x => x.MaterielCode == model.MaterielCode && x.BatchNo == model.LotNo);
-
-                if (stockInfoDetail == null) return WebResponseContent.Instance.Error($"鏈壘鍒板簱瀛�");
-                if (stockInfoDetail.StockQuantity < model.Quantity) return WebResponseContent.Instance.Error($"搴撳瓨涓嶈冻");
-                Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.Id == stockInfoDetail.StockId);
-                if (stockInfo == null) return WebResponseContent.Instance.Error($"鏈壘鍒板簱瀛樹富琛�");
-                if (stockInfo.LocationCode != "骞冲簱浣�") return WebResponseContent.Instance.Error($"搴撳瓨涓嶅睘浜庡钩搴撲綅");
-
-                Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
-                {
-                    PalletCode = stockInfo.PalletCode,
-                    AssignQuantity = model.Quantity,
-                    MaterielCode = model.MaterielCode,
-                    BatchNo = model.LotNo,
-                    LocationCode = stockInfo.LocationCode,
-                    MaterielName = materielInfo.MaterielName,
-                    OrderDetailId = outboundOrderDetail.Id,
-                    OrderNo = outboundOrder.OrderNo,
-                    OrderType = outboundOrder.OrderType,
-                    OriginalQuantity = stockInfoDetail.StockQuantity,
-                    Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt(),
-                    StockId = stockInfo.Id,
-                    TaskNum = 0,
-                    OrderQuantity = outboundOrderDetail.OrderQuantity,
-                    Unit = outboundOrderDetail.Unit,
-                    ProductionDate = stockInfoDetail.ProductionDate,
-                    EffectiveDate = stockInfoDetail.EffectiveDate
-                };
-
-                #region 淇敼鍑哄簱鍗�
-                outboundOrderDetail.OverOutQuantity += outStockLockInfo.AssignQuantity;
-                if (outboundOrderDetail.OrderQuantity > outboundOrderDetail.OverOutQuantity)
-                    outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                else
-                    outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                int overCount = outboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-                if (outboundOrder.Details.Count == overCount)
-                    outboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                else
-                    outboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱涓�.ObjToInt();
-                #endregion
-
-                #region 淇敼搴撳瓨
-                stockInfoDetail.StockQuantity -= stockInfoDetail.StockQuantity - outStockLockInfo.AssignQuantity;
-                #endregion
-
-
-                _unitOfWorkManage.BeginTran();
-                _outStockLockInfoService.Repository.AddData(outStockLockInfo);
-                BaseDal.UpdateData(outboundOrder);
-                _outboundOrderDetailRepository.UpdateData(outboundOrderDetail);
-                if (stockInfoDetail.StockQuantity > 0)
-                {
-                    _stockService.StockInfoDetailService.Repository.UpdateData(stockInfoDetail);
-                }
-                else
-                {
-                    _stockService.StockInfoDetailService.Repository.DeleteData(stockInfoDetail);
-                    if (stockInfo.Details.Count <= 1) _stockService.StockInfoService.Repository.DeleteData(stockInfo);
-                }
-                _unitOfWorkManage.CommitTran();
-
-                #region 鍑哄簱瀹屾垚涓婃姤ERP
-                //鐢熶骇棰嗘枡,鐮斿彂棰嗘枡锛屾爣鍑嗛鏂欙紝鎺ㄩ�丒RP鍑哄簱
-                if (outboundOrder.OrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt() && outboundOrder.OrderType==OutOrderTypeEnum.Issue.ObjToInt())
-                    _invokeERPService.InvokeOutStandardsApi(GetERPIssueModel(outboundOrder, warehouse.WarehouseCode));
-                #endregion
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public ERPIssueModel GetERPIssueModel(Dt_OutboundOrder outboundOrder, string WarehouseCode)
-        {
-            ERPIssueModel issueModel = new ERPIssueModel();
-            try
-            {
-                List<Dt_OutStockLockInfo> stockLockInfos = _outStockLockInfoService.OutStockLockInfos(outboundOrder.OrderNo);
-                List<ERPPickModel> eRPPickModels = new List<ERPPickModel>();
-                foreach (var item in stockLockInfos)
-                {
-                    ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                    {
-                        Lotno = item.BatchNo,
-                        Qty = item.AssignQuantity.ToString(),
-                        Location = WarehouseCode
-                    };
-                    //鑾峰彇鍑哄簱鍗曟槑缁�
-                    Dt_OutboundOrderDetail outboundOrderDetail = outboundOrder.Details.FirstOrDefault(x => x.Id == item.OrderDetailId);
-                    ERPPickModel pickModel = new ERPPickModel()
-                    {
-                        Rowindex = outboundOrderDetail.RowNo,
-                        Material = outboundOrderDetail.MaterielCode,
-                        Qty = pickItemModel.Qty,
-                        Dataitem = new List<ERPPickItemModel> { pickItemModel }
-                    };
-                    eRPPickModels.Add(pickModel);
-                }
-                ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                {
-                    Pickcode = outboundOrder.UpperOrderNo,
-                    PickList = eRPPickModels
-                };
-                string Createuser = "";
-                if (!string.IsNullOrEmpty(App.User.UserName)) Createuser = App.User.UserName;
-                else Createuser = stockLockInfos.FirstOrDefault().Creater;
-                issueModel = new ERPIssueModel()
-                {
-                    UniqueTag = outboundOrder.Id.ToString(),
-                    Code = CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule)),
-                    WarehouseCode = WarehouseCode,
-                    Docremark = "",
-                    Deptno = outboundOrder.DepartmentCode,
-                    Deptname = outboundOrder.DepartmentName,
-                    Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    Createuser = Createuser,
-                    Issitem = new List<ERPIssueItemModel>() { issueItemModel },
-                };
-                //鏇存柊鍙戞枡鍗曞彿
-                outboundOrder.UpFLOrderNo = issueModel.Code;
-                BaseDal.UpdateData(outboundOrder);
-            }
-            catch (Exception ex)
-            {
-                throw new Exception(ex.Message);
-            }
-            return issueModel;
-        }
-        public WebResponseContent ReceiveOutOrder(ErpOutOrderDTO model)
-        {
-            try
-            {
-                Dt_OutboundOrder oldOutboundOrder = BaseDal.Db.Queryable<Dt_OutboundOrder>().Where(x => x.UpperOrderNo == model.OrderNo && x.OrderStatus < OutOrderStatusEnum.鍏抽棴.ObjToInt()).Includes(x => x.Details).OrderBy(x => x.CreateDate).First();
-                Dt_MaterielInfo materielInfo = _basicService.MaterielInfoService.Repository.QueryFirst(x => x.MaterielCode == model.MCode);
-
-                if (materielInfo == null)
-                {
-                    DelOutOrder(oldOutboundOrder);
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡淇℃伅");
-                }
-
-                Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseCode == model.WaId);
-                if (warehouse == null)
-                {
-                    DelOutOrder(oldOutboundOrder);
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-
-                if (model.Way == 1)
-                {
-                    if (oldOutboundOrder != null)
-                    {
-                        if (oldOutboundOrder.Details.FirstOrDefault(x => x.RowNo == Convert.ToInt32(model.RowNo)) != null)
-                        {
-                            DelOutOrder(oldOutboundOrder);
-                            return WebResponseContent.Instance.Error($"璇ユ槑缁嗚鍙峰凡瀛樺湪");
-                        }
-                        if (oldOutboundOrder.WarehouseId != warehouse.WarehouseId)
-                        {
-                            DelOutOrder(oldOutboundOrder);
-                            return WebResponseContent.Instance.Error($"浠撳簱涓嶄竴鑷�");
-                        }
-                        else
-                        {
-                            Dt_OutboundOrderDetail outboundOrderDetail = new Dt_OutboundOrderDetail()
-                            {
-                                RowNo = Convert.ToInt32(model.RowNo),
-                                BatchNo = model.MLot,
-                                MaterielCode = model.MCode,
-                                MaterielName = materielInfo.MaterielName,
-                                MaterielSpec=materielInfo.MaterielSpec,
-                                OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                                OrderQuantity = model.Qty,
-                                OrderId = oldOutboundOrder.Id
-                            };
-                            _outboundOrderDetailRepository.AddData(outboundOrderDetail);
-                        }
-                    }
-                    else
-                    {
-                        Dt_OutboundOrderDetail outboundOrderDetail = new Dt_OutboundOrderDetail()
-                        {
-                            RowNo = Convert.ToInt32(model.RowNo),
-                            BatchNo = model.MLot,
-                            MaterielCode = model.MCode,
-                            MaterielSpec = materielInfo.MaterielSpec,
-                            MaterielName = materielInfo.MaterielName,
-                            OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                            OrderQuantity = model.Qty,
-                            Unit = materielInfo.MaterielUnit
-                        };
-                        Dt_OutboundOrder outboundOrder = new Dt_OutboundOrder()
-                        {
-                            UpperOrderNo = model.OrderNo,
-                            OrderStatus = OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                            OrderType = OutOrderTypeEnum.Issue.ObjToInt(),
-                            CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                            WarehouseId = warehouse.WarehouseId,
-                            DepartmentCode = model.DepartmentCode,
-                            DepartmentName = model.DepartmentName,
-                            Details = new List<Dt_OutboundOrderDetail> { outboundOrderDetail },
-                            Remark = model.Node
-                        };
-                        outboundOrder.OrderType = model.OType switch
-                        {
-                            1 or 2 or 3=> OutOrderTypeEnum.Issue.ObjToInt(),
-                            4=>OutOrderTypeEnum.Quality.ObjToInt(),
-                            5=>OutOrderTypeEnum.Allocate.ObjToInt(),
-                            6=>OutOrderTypeEnum.MaintenanceIssue.ObjToInt(),
-                            7=>OutOrderTypeEnum.SaleOut.ObjToInt(),
-                            8=>OutOrderTypeEnum.Rework.ObjToInt(),
-                            _=>0
-                        };
-                        Db.InsertNav(outboundOrder).Include(x => x.Details).ExecuteCommand();
-                    }
-                }
-                else if (model.Way == 2)
-                {
-                    if (oldOutboundOrder == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鍑哄簱鍗�");
-                    }
-                    Dt_OutboundOrderDetail? outboundOrderDetail = oldOutboundOrder.Details.FirstOrDefault(x => x.RowNo == Convert.ToInt32(model.RowNo));
-                    if (outboundOrderDetail == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鏄庣粏琛屽彿淇℃伅");
-                    }
-                    if (outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt())
-                    {
-                        return WebResponseContent.Instance.Error($"璇ユ槑缁嗕笉鍙慨鏀�");
-                    }
-                    outboundOrderDetail = new Dt_OutboundOrderDetail()
-                    {
-                        RowNo = Convert.ToInt32(model.RowNo),
-                        BatchNo = model.MLot,
-                        MaterielCode = model.MCode,
-                        MaterielSpec = materielInfo.MaterielSpec,
-                        MaterielName = materielInfo.MaterielName,
-                        OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                        OrderQuantity = model.Qty,
-                        Unit = model.Unit,
-                    };
-
-                    _outboundOrderDetailRepository.UpdateData(outboundOrderDetail);
-                }
-                else if (model.Way == 3)
-                {
-                    if (oldOutboundOrder == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鍑哄簱鍗�");
-                    }
-                    _unitOfWorkManage.BeginTran();
-                    BaseDal.DeleteData(oldOutboundOrder);
-                    _outboundOrderDetailRepository.DeleteData(oldOutboundOrder.Details);
-                    _unitOfWorkManage.CommitTran();
-                }
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 璇ュ崟鎹け璐ヨ繘琛屽垹闄�
-        /// </summary>
-        /// <returns></returns>
-        public void DelOutOrder(Dt_OutboundOrder outboundOrder)
-        {
-            try
-            {
-                if (outboundOrder != null && outboundOrder.Details.Count > 0)
-                {
-                    _unitOfWorkManage.BeginTran();
-                    _outboundOrderRepository.DeleteAndMoveIntoHty(outboundOrder, OperateTypeEnum.鑷姩鍒犻櫎);
-                    _outboundOrderDetailRepository.DeleteAndMoveIntoHty(outboundOrder.Details, OperateTypeEnum.鑷姩鍒犻櫎);
-                    _unitOfWorkManage.CommitTran();
-                }
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                throw new Exception(ex.Message);
-            }
-        }
-        //涓婃姤鍑哄簱瀹屾垚
-        public WebResponseContent TestOutUpload(int id, List<Dt_OutStockLockInfo>? outStockLockInfos)
-        {
-            try
-            {
-                Dt_OutboundOrder outboundOrder = Db.Queryable<Dt_OutboundOrder>().Where(x => x.Id == id).Includes(x => x.Details).First();
-                Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseId == outboundOrder.WarehouseId);
-                ERPIssueModel issueModel = new ERPIssueModel();
-                List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
-                List<Dt_OutStockLockInfo> _OutStockLockInfos = new List<Dt_OutStockLockInfo>();
-                int overCount = outboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-                if (outboundOrder.Details.Count == overCount)
-                {
-                    outboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                    _outboundOrderRepository.UpdateData(outboundOrder);
-                }
-                if (outboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error("鍑哄簱鍗曚笉瀛樺湪");
-                }
-                if (outboundOrder.CreateType == OrderCreateTypeEnum.CreateInSystem.ObjToInt())
-                {
-                    return WebResponseContent.Instance.OK();
-                }
-                //娴嬭瘯鏋跺簱缁橢RP涓婃姤鍑哄簱瀹屾垚
-                if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                {
-                    List<ERPPickModel> eRPPicks = new List<ERPPickModel>();
-                    foreach (var item in outboundOrder.Details)
-                    {
-                        if (item.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()) continue;
-                        stockInfos = TestOutStocksUpdate(warehouse, item).Data as List<Dt_StockInfo> ?? null;
-                        if (stockInfos == null) continue;
-                        List<ERPPickItemModel> eRPOutPick = new List<ERPPickItemModel>();
-                        for (int i = 0; i < stockInfos.Count; i++)
-                        {
-                            ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                            {
-                                Lotno = stockInfos[i].Details[0].BatchNo,
-                                Qty = stockInfos[i].Details[0].StockQuantity.ObjToInt().ToString(),
-                                Location = warehouse.WarehouseCode
-                            };
-                            eRPOutPick.Add(pickItemModel);
-                        }
-
-                        ERPPickModel pickModel = new ERPPickModel()
-                        {
-                            Rowindex = item.RowNo,
-                            Material = item.MaterielCode,
-                            Qty = (item.OrderQuantity.ObjToInt()).ToString(),
-                            Dataitem = eRPOutPick
-                        };
-                        eRPPicks.Add(pickModel);
-                    }
-                    ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                    {
-                        Pickcode = outboundOrder.UpperOrderNo,
-                        PickList = eRPPicks
-                    };
-                    issueModel = new ERPIssueModel()
-                    {
-                        UniqueTag = id.ToString(),
-                        Code = CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule)),
-                        WarehouseCode = warehouse.WarehouseCode,
-                        Docremark = "",
-                        Deptno = outboundOrder.DepartmentCode,
-                        Deptname = outboundOrder.DepartmentName,
-                        Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                        Createuser = outboundOrder.Creater,
-                        Issitem = new List<ERPIssueItemModel>() { issueItemModel },
-                    };
-                    //鏇存柊鍙戞枡鍗曞彿
-                    outboundOrder.UpFLOrderNo = issueModel.Code;
-                    BaseDal.UpdateData(outboundOrder);
-                    _invokeERPService.InvokeOutStandardsApi(issueModel);
-                }
-                else
-                {
-                    #region MyRegion
-                    foreach (var item in outStockLockInfos)
-                    {
-                        if (item.OrderQuantity == item.AssignQuantity)
-                        {
-                            item.Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                        }
-                        _OutStockLockInfos.Add(item);
-                    }
-                    #endregion
-
-                    #region MyRegion
-                    //List<ERPPickModel> eRPPickModels = new List<ERPPickModel>();
-
-                    ////鑾峰彇鍑哄簱璇︽儏鍗�
-                    //foreach (var item in outStockLockInfos)
-                    //{
-                    //    ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                    //    {
-                    //        Lotno = item.BatchNo,
-                    //        Qty = item.AssignQuantity.ObjToInt().ToString(),
-                    //        Location = warehouse.WarehouseCode
-                    //    };
-                    //    //鑾峰彇鍑哄簱鍗曟槑缁�
-                    //    Dt_OutboundOrderDetail outboundOrderDetail = outboundOrder.Details.FirstOrDefault(x => x.Id == item.OrderDetailId);
-                    //    ERPPickModel pickModel = new ERPPickModel()
-                    //    {
-                    //        Rowindex = outboundOrderDetail.RowNo,
-                    //        Material = outboundOrderDetail.MaterielCode,
-                    //        Qty = pickItemModel.Qty,
-                    //        Dataitem = new List<ERPPickItemModel> { pickItemModel }
-                    //    };
-                    //    if (item.OrderQuantity == item.AssignQuantity)
-                    //    {
-                    //        item.Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                    //    }
-                    //    eRPPickModels.Add(pickModel);
-                    //    _OutStockLockInfos.Add(item);
-                    //}
-                    //ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                    //{
-                    //    Pickcode = outboundOrder.UpperOrderNo,
-                    //    PickList = eRPPickModels
-                    //};
-                    //issueModel = new ERPIssueModel()
-                    //{
-                    //    UniqueTag = id.ToString(),
-                    //    Code = CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule)),
-                    //    WarehouseCode = warehouse.WarehouseCode,
-                    //    Docremark = "",
-                    //    Deptno = outboundOrder.DepartmentCode,
-                    //    Deptname = outboundOrder.DepartmentName,
-                    //    Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    //    Createuser = outStockLockInfos.FirstOrDefault().Creater,
-                    //    Issitem = new List<ERPIssueItemModel>() { issueItemModel },
-                    //};
-                    #endregion
-                    if (stockInfos.Count > 0)
-                    {
-                        _stockService.StockInfoService.Repository.UpdateData(stockInfos);
-                    }
-                    else
-                    {
-                        _outStockLockInfoService.Repository.UpdateData(_OutStockLockInfos);
-                    }
-                    //鍑哄簱瀹屾垚涓婃姤ERP 娴嬭瘯娉ㄩ噴
-                    if (outboundOrder.OrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                    {
-                        issueModel = GetERPIssueModel(outboundOrder, warehouse.WarehouseCode);
-                        _invokeERPService.InvokeOutStandardsApi(issueModel);
-                    }
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        static object lock_code = new object();
-        public string CreateCodeByRule(string ruleCode)
-        {
-            lock (lock_code)
-            {
-
-                string code = string.Empty;
-                DateTime dateTime = DateTime.Now;
-                DateTime now = DateTime.Now;
-                try
-                {
-                    if (string.IsNullOrEmpty(ruleCode))
-                        throw new ArgumentNullException(nameof(ruleCode));
-                    SqlSugarClient sugarClient = new SqlSugarClient(new ConnectionConfig
-                    {
-                        IsAutoCloseConnection = true,
-                        DbType = DbType.SqlServer,
-                        ConnectionString = DBContext.ConnectionString
-                    });
-                    Dt_CodeRuleConfig codeRuleConfig = sugarClient.Queryable<Dt_CodeRuleConfig>().Where(x => x.RuleCode == ruleCode).First();
-                    if (codeRuleConfig == null)
-                        throw new ArgumentNullException(nameof(codeRuleConfig));
-                    if (codeRuleConfig.ModifyDate != null)
-                    {
-                        dateTime = Convert.ToDateTime(codeRuleConfig.ModifyDate);
-                    }
-                    else
-                    {
-                        dateTime = Convert.ToDateTime(codeRuleConfig.CreateDate);
-                    }
-
-                    if (now.Year == dateTime.Year && now.Month == dateTime.Month && now.Day == dateTime.Day)
-                    {
-                        now = dateTime;
-                        codeRuleConfig.CurrentVal = Convert.ToInt32(codeRuleConfig.CurrentVal) + 1;
-                    }
-                    else
-                    {
-                        codeRuleConfig.CurrentVal = 1;
-                    }
-                    codeRuleConfig.ModifyDate = DateTime.Now;
-                    code = codeRuleConfig.Format;
-                    code = code.Replace($"[{CodeFormatTypeEnum.YYYY}]", now.Year.ToString().PadLeft(4, '0'));
-                    code = code.Replace($"[{CodeFormatTypeEnum.MM}]", now.Month.ToString().PadLeft(2, '0'));
-                    code = code.Replace($"[{CodeFormatTypeEnum.DD}]", now.Day.ToString().PadLeft(2, '0'));
-                    code = code.Replace($"[{CodeFormatTypeEnum.ST}]", codeRuleConfig.StartStr?.ToString() ?? "");
-                    code = code.Replace($"[{CodeFormatTypeEnum.NUM}]", codeRuleConfig.CurrentVal.ToString().PadLeft(codeRuleConfig.Length, '0'));
-                    Dictionary<string, object> keyValuePairs = new Dictionary<string, object>() { { nameof(codeRuleConfig.CurrentVal), codeRuleConfig.CurrentVal }, { nameof(codeRuleConfig.Id), codeRuleConfig.Id }, { nameof(codeRuleConfig.ModifyDate), DateTime.Now } };
-                    sugarClient.Updateable(keyValuePairs).AS(MainDb.CodeRuleConfig).WhereColumns(nameof(codeRuleConfig.Id)).ExecuteCommand();
-                    sugarClient.Updateable(codeRuleConfig);
-
-                }
-                catch (Exception ex)
-                {
-
-                }
-                return code;
-            }
-        }
-        /// <summary>
-        /// 鏇存敼鍑哄簱鍗曞簱瀛樼姸鎬�
-        /// </summary>
-        /// <param name="warehouse"></param>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        public WebResponseContent TestOutStocksUpdate(Dt_Warehouse warehouse, Dt_OutboundOrderDetail outboundOrderDetails)
-        {
-            try
-            {
-                //鑾峰彇鍑哄簱鍗曞簱瀛�
-                List<Dt_StockInfo> stockInfos = BaseDal.Db.Queryable<Dt_StockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).Where(x => x.Details.Any(j => j.MaterielCode == outboundOrderDetails.MaterielCode)).Take((int)outboundOrderDetails.OrderQuantity).ToList();
-                if (stockInfos.Count <= 0)
-                {
-                    return WebResponseContent.Instance.OK();
-                }
-                //鏇存敼鐘舵��
-                stockInfos.ForEach(x =>
-                {
-                    x.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                });
-                return WebResponseContent.Instance.OK("鎴愬姛", stockInfos);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 鏍规嵁鍑哄簱鍗曟帹閫丒RP绯荤粺
-        /// </summary>
-        /// <param name="outId"></param>
-        /// <param name="WarehouseCode"></param>
-        /// <returns></returns>
-        public WebResponseContent PushERPOutBound(int outId, string WarehouseCode)
-        {
-            WebResponseContent content=new WebResponseContent();
-            try
-            {
-                //鑾峰彇鍑哄簱鍗�
-                Dt_OutboundOrder outboundOrder = Db.Queryable<Dt_OutboundOrder>().Where(x => x.Id == outId).Includes(x => x.Details).First();
-                if (outboundOrder == null)
-                {
-                    return content.Error("鍑哄簱鍗曚笉瀛樺湪");
-                }
-                if (outboundOrder.Details.Count!=(outboundOrder.Details.Where(x=>x.OrderDetailStatus==OrderDetailStatusEnum.Over.ObjToInt()).ToList().Count)||outboundOrder.OrderStatus!=OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return content.Error("璇ュ嚭搴撳崟鏈畬鎴�");
-                }
-                ERPIssueModel issueModel = GetERPIssueModel(outboundOrder, WarehouseCode);
-                string response=_invokeERPService.InvokeOutStandardsApi(issueModel);
-                return content.OK(response);
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent OutUpOrderGetFLOrder()
-        {
-            WebResponseContent  content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇鍑哄簱鍗�
-                List<Dt_OutboundOrder> outboundOrders = BaseDal.QueryData(x => x.OrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt() && x.UpFLOrderNo == null);
-                List<Sys_Log> logs = BaseDal.Db.Queryable<Sys_Log>().Where(x => x.RequestParam.Contains("棰嗘枡鍑哄簱閫氱煡鍗�") &&  x.Id > 14606).ToList();
-                foreach (var item in outboundOrders)
-                {
-                    Sys_Log? log = logs.FirstOrDefault(x=>x.RequestParam.Contains(item.UpperOrderNo));
-                    if (log == null) { continue; }
-                    ERPBaseModel <ERPIssueModel>  baseModel= log.RequestParam.DeserializeObject<ERPBaseModel<ERPIssueModel>>();
-                    item.UpFLOrderNo = baseModel.Data.Code;
-                }
-                BaseDal.UpdateData(outboundOrders);
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderService2.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderService2.cs"
deleted file mode 100644
index ca693e1..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrderService2.cs"
+++ /dev/null
@@ -1,399 +0,0 @@
-锘�/*using AutoMapper;
-using MailKit.Search;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Serialization;
-using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Linq.Expressions;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.Utilities;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_External.ERPService;
-using WIDESEA_External.Model;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundService
-{
-    public class OutboundOrderService : ServiceBase<Dt_OutboundOrder, IOutboundOrderRepository>, IOutboundOrderService
-    {
-        private readonly IMapper _mapper;
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IBasicService _basicService;
-        private readonly IOutboundOrderDetailRepository _outboundOrderDetailRepository;
-        private readonly IStockInfoService _stockInfoService;
-        private readonly IStockInfoRepository _stockInfoRepository;
-        public IOutboundOrderRepository Repository => BaseDal;
-        private readonly IInvokeERPService _invokeERPService;
-        private readonly IOutStockLockInfoService _outStockLockInfoService;
-
-        public OutboundOrderService(IOutboundOrderRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IBasicService basicService, IOutboundOrderDetailRepository outboundOrderDetailRepository, IStockInfoService stockInfoService,
-          IStockInfoRepository stockInfoRepository, IInvokeERPService invokeERPService, IOutStockLockInfoService outStockLockInfoService) : base(BaseDal)
-        {
-            _mapper = mapper;
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicService = basicService;
-            _outboundOrderDetailRepository = outboundOrderDetailRepository;
-            _stockInfoService = stockInfoService;
-            _stockInfoRepository = stockInfoRepository;
-            _invokeERPService = invokeERPService;
-            _outStockLockInfoService = outStockLockInfoService;
-        }
-
-        public WebResponseContent ReceiveOutOrder(ErpOutOrderDTO model)
-        {
-            try
-            {
-                Dt_MaterielInfo materielInfo = _basicService.MaterielInfoService.Repository.QueryFirst(x => x.MaterielCode == model.MCode);
-                if (materielInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡淇℃伅");
-                }
-
-                Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseCode == model.WaId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠撳簱淇℃伅");
-                }
-
-                Dt_OutboundOrder oldOutboundOrder = BaseDal.Db.Queryable<Dt_OutboundOrder>().Where(x => x.UpperOrderNo == model.OrderNo).Includes(x => x.Details).First();
-
-                if (model.Way == 1)
-                {
-                    if (oldOutboundOrder != null)
-                    {
-                        if (oldOutboundOrder.Details.FirstOrDefault(x => x.RowNo == Convert.ToInt32(model.RowNo)) != null)
-                        {
-                            return WebResponseContent.Instance.Error($"璇ユ槑缁嗚鍙峰凡瀛樺湪");
-                        }
-                        if (oldOutboundOrder.WarehouseId != warehouse.WarehouseId)
-                        {
-                            return WebResponseContent.Instance.Error($"浠撳簱涓嶄竴鑷�");
-                        }
-                        else
-                        {
-                            Dt_OutboundOrderDetail outboundOrderDetail = new Dt_OutboundOrderDetail()
-                            {
-                                RowNo = Convert.ToInt32(model.RowNo),
-                                BatchNo = model.MLot,
-                                MaterielCode = model.MCode,
-                                MaterielName = materielInfo.MaterielName,
-                                OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                                OrderQuantity = model.Qty,
-                                OrderId = oldOutboundOrder.Id
-                            };
-
-                            if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                            {
-                                Dt_StockInfo stockInfo = _stockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).Where(x => x.Details.Any(v => v.BatchNo == model.MLot)).First();
-                                if (stockInfo == null)
-                                {
-                                    return WebResponseContent.Instance.Error($"搴撳瓨涓嶈冻");
-                                }
-                                //鏇存敼鐘舵��
-                                stockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                                stockInfo.Details.ForEach(x => { x.Remark = oldOutboundOrder.OrderNo; });
-
-                                Db.Updateable(stockInfo.Details);
-                                _stockInfoRepository.UpdateData(stockInfo);
-                            }
-                            _outboundOrderDetailRepository.AddData(outboundOrderDetail);
-                        }
-                    }
-                    else
-                    {
-                        Dt_OutboundOrderDetail outboundOrderDetail = new Dt_OutboundOrderDetail()
-                        {
-                            RowNo = Convert.ToInt32(model.RowNo),
-                            BatchNo = model.MLot,
-                            MaterielCode = model.MCode,
-                            MaterielName = materielInfo.MaterielName,
-                            OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                            OrderQuantity = model.Qty,
-                        };
-                        Dt_OutboundOrder outboundOrder = new Dt_OutboundOrder()
-                        {
-                            OrderNo = model.OrderNo,
-                            UpperOrderNo = model.OrderNo,
-                            OrderStatus = OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                            OrderType = OutOrderTypeEnum.Issue.ObjToInt(),
-                            CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                            WarehouseId = warehouse.WarehouseId,
-                            DepartmentCode = model.DepartmentCode,
-                            DepartmentName = model.DepartmentName,
-                            Details = new List<Dt_OutboundOrderDetail> { outboundOrderDetail }
-                        };
-
-                        _unitOfWorkManage.BeginTran();
-                        Db.InsertNav(outboundOrder).Include(x => x.Details).ExecuteCommand();
-
-                        if (warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                        {
-                            Dt_StockInfo stockInfo = _stockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).Where(x => x.Details.Any(v => v.BatchNo == model.MLot)).First();
-                            if (stockInfo == null)
-                            {
-                                return WebResponseContent.Instance.Error($"搴撳瓨涓嶈冻");
-                            }
-
-                            //鏇存敼鐘舵��
-                            stockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                            stockInfo.Details.ForEach(x => { x.Remark = outboundOrder.OrderNo; });
-                            _stockInfoRepository.UpdateData(stockInfo);
-                            Db.Updateable(stockInfo.Details);
-                        }
-                        _unitOfWorkManage.CommitTran();
-                    }
-                }
-                else if (model.Way == 2)
-                {
-                    if (oldOutboundOrder == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鍑哄簱鍗�");
-                    }
-                    Dt_OutboundOrderDetail? outboundOrderDetail = oldOutboundOrder.Details.FirstOrDefault(x => x.RowNo == Convert.ToInt32(model.RowNo));
-                    if (outboundOrderDetail == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鏄庣粏琛屽彿淇℃伅");
-                    }
-                    if (outboundOrderDetail.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt())
-                    {
-                        return WebResponseContent.Instance.Error($"璇ユ槑缁嗕笉鍙慨鏀�");
-                    }
-                    outboundOrderDetail = new Dt_OutboundOrderDetail()
-                    {
-                        RowNo = Convert.ToInt32(model.RowNo),
-                        BatchNo = model.MLot,
-                        MaterielCode = model.MCode,
-                        MaterielName = materielInfo.MaterielName,
-                        OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
-                        OrderQuantity = model.Qty,
-                    };
-
-                    _outboundOrderDetailRepository.UpdateData(outboundOrderDetail);
-                }
-                else if (model.Way == 3)
-                {
-                    if (oldOutboundOrder == null)
-                    {
-                        return WebResponseContent.Instance.Error($"鏈壘鍒拌鍑哄簱鍗�");
-                    }
-                }
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public WebResponseContent TestOutUpload(Dt_OutboundOrder outboundOrder, Dt_StockInfo stockInfo, string warehouseCode)
-        {
-            try
-            {
-                List<ERPPickItemModel> eRPOutPick = new List<ERPPickItemModel>();
-                ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                {
-                    Lotno = stockInfo.Details[0].BatchNo,
-                    Qty = stockInfo.Details[0].StockQuantity.ObjToInt().ToString(),
-                    Location = warehouseCode
-                };
-                eRPOutPick.Add(pickItemModel);
-
-                ERPPickModel pickModel = new ERPPickModel()
-                {
-                    Rowindex = outboundOrder.Details[0].RowNo,
-                    Material = outboundOrder.Details[0].MaterielCode,
-                    Qty = (outboundOrder.Details[0].OrderQuantity.ObjToInt()).ToString(),
-                    Dataitem = eRPOutPick
-                };
-
-                ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                {
-                    Pickcode = outboundOrder.UpperOrderNo,
-                    PickList = new List<ERPPickModel>() { pickModel }
-                };
-                ERPIssueModel issueModel = new ERPIssueModel()
-                {
-                    UniqueTag = outboundOrder.Id.ToString(),
-                    Code = outboundOrder.OrderNo,//娴嬭瘯
-                    WarehouseCode = warehouseCode,
-                    Docremark = "",
-                    Deptno = outboundOrder.DepartmentCode,
-                    Deptname = outboundOrder.DepartmentName,
-                    Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    Createuser = outboundOrder.Creater,
-                    Issitem = new List<ERPIssueItemModel>() { issueItemModel },
-                };
-
-                string response = _invokeERPService.InvokeOutStandardsApi(issueModel);
-                ErpRequestContent requestContent = response.DeserializeObject<ErpRequestContent>();
-                if (requestContent.res == 1)
-                {
-                    return WebResponseContent.Instance.OK();
-                }
-                else
-                {
-                    return WebResponseContent.Instance.Error(requestContent.Data);
-                }
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        //涓婃姤鍑哄簱瀹屾垚
-        public WebResponseContent TestOutUpload(int id, Dt_StockInfo stockInfo)
-        {
-            try
-            {
-                Dt_OutboundOrder outboundOrder = Db.Queryable<Dt_OutboundOrder>().Where(x => x.Id == id).Includes(x => x.Details).First();
-                Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseId == outboundOrder.WarehouseId);
-                //娴嬭瘯鏋跺簱缁橢RP涓婃姤鍑哄簱瀹屾垚
-                ERPIssueModel issueModel = new ERPIssueModel();
-                List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
-                if (stockInfo == null)
-                {
-                    stockInfos = TestOutStocksUpdate(warehouse).Data as List<Dt_StockInfo> ?? new List<Dt_StockInfo>();
-                    List<ERPPickItemModel> eRPOutPick = new List<ERPPickItemModel>();
-                    for (int i = 0; i < stockInfos.Count; i++)
-                    {
-                        ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                        {
-                            Lotno = stockInfos[i].Details[0].BatchNo,
-                            Qty = stockInfos[i].Details[0].StockQuantity.ObjToInt().ToString(),
-                            Location = warehouse.WarehouseCode
-                        };
-                        eRPOutPick.Add(pickItemModel);
-                    }
-
-                    ERPPickModel pickModel = new ERPPickModel()
-                    {
-                        Rowindex = outboundOrder.Details[0].RowNo,
-                        Material = outboundOrder.Details[0].MaterielCode,
-                        Qty = (outboundOrder.Details[0].OrderQuantity.ObjToInt()).ToString(),
-                        Dataitem = eRPOutPick
-                    };
-
-                    ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                    {
-                        Pickcode = outboundOrder.UpperOrderNo,
-                        PickList = new List<ERPPickModel>() { pickModel }
-                    };
-                    issueModel = new ERPIssueModel()
-                    {
-                        UniqueTag = id.ToString(),
-                        WarehouseCode = warehouse.WarehouseCode,
-                        Docremark = "",
-                        Deptno = outboundOrder.DepartmentCode,
-                        Deptname = outboundOrder.DepartmentName,
-                        Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                        Createuser = outboundOrder.Creater,
-                        Issitem = new List<ERPIssueItemModel>() { issueItemModel },
-                    };
-                }
-                else
-                {
-                    Dt_OutboundOrderDetail orderDetail = outboundOrder.Details.FirstOrDefault(x => x.MaterielCode == stockInfo.Details[0].MaterielCode);
-
-                    ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                    {
-                        Lotno = stockInfo.Details[0].BatchNo,
-                        Qty = stockInfo.Details[0].StockQuantity.ObjToInt().ToString(),
-                        Location = stockInfo.LocationCode
-                    };
-                    ERPPickModel pickModel = new ERPPickModel()
-                    {
-                        Rowindex = outboundOrder.Details[0].RowNo,
-                        Material = outboundOrder.Details[0].MaterielCode,
-                        Qty = (outboundOrder.Details[0].OrderQuantity.ObjToInt()).ToString(),
-                        Dataitem = new List<ERPPickItemModel> { pickItemModel }
-                    };
-                    ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                    {
-                        Pickcode = outboundOrder.UpperOrderNo,
-                        PickList = new List<ERPPickModel>() { pickModel }
-                    };
-                    issueModel = new ERPIssueModel()
-                    {
-                        UniqueTag = id.ToString(),
-                        Code = outboundOrder.OrderNo,//娴嬭瘯
-                        WarehouseCode = warehouse.WarehouseCode,
-                        Docremark = "",
-                        Deptno = outboundOrder.DepartmentCode,
-                        Deptname = outboundOrder.DepartmentName,
-                        Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                        Createuser = outboundOrder.Creater,
-                        Issitem = new List<ERPIssueItemModel>() { issueItemModel },
-                    };
-                }
-
-                string response = _invokeERPService.InvokeOutStandardsApi(issueModel);
-                ErpRequestContent requestContent = response.DeserializeObject<ErpRequestContent>();
-                if (requestContent.res == 1)
-                {
-                    if (stockInfos.Count > 0)
-                    {
-                        _stockInfoRepository.UpdateData(stockInfos);
-                    }
-                    return WebResponseContent.Instance.OK(requestContent.Data);
-                }
-                else
-                {
-                    return WebResponseContent.Instance.Error(requestContent.Data);
-                }
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 鏇存敼鍑哄簱鍗曞簱瀛樼姸鎬�
-        /// </summary>
-        /// <param name="warehouse"></param>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        public WebResponseContent TestOutStocksUpdate(Dt_Warehouse warehouse)
-        {
-            try
-            {
-                //鑾峰彇鍑哄簱鍗曞簱瀛�
-                List<Dt_StockInfo> stockInfos = _stockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.Details).ToList();
-                if (stockInfos.Count <= 0)
-                {
-                    return WebResponseContent.Instance.Error($"搴撳瓨涓嶈冻");
-                }
-                //鏇存敼鐘舵��
-                stockInfos.ForEach(x =>
-                {
-                    x.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                });
-                return WebResponseContent.Instance.OK("鎴愬姛", stockInfos);
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-    }
-}*/
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrder_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrder_HtyService.cs"
deleted file mode 100644
index 1df7138..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundOrder_HtyService.cs"
+++ /dev/null
@@ -1,34 +0,0 @@
-锘縰sing AutoMapper;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Serialization;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.Utilities;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class OutboundOrder_HtyService : ServiceBase<Dt_OutboundOrder_Hty, IOutboundOrder_HtyRepository>, IOutboundOrder_HtyService
-    {
-        private readonly IMapper _mapper;
-        public IOutboundOrder_HtyRepository Repository => BaseDal;
-
-        public OutboundOrder_HtyService(IOutboundOrder_HtyRepository BaseDal, IMapper mapper) : base(BaseDal)
-        {
-            _mapper = mapper;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundService.cs"
deleted file mode 100644
index 5b0f623..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutboundService.cs"
+++ /dev/null
@@ -1,38 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_IOutboundService;
-
-namespace WIDESEA_OutboundService
-{
-    public class OutboundService : IOutboundService
-    {
-        public IMesOutboundOrderService MesOutboundOrderService { get; }
-
-        public IOutboundOrderDetailService OutboundOrderDetailService { get; }
-
-        public IOutboundOrderService OutboundOrderService { get; }
-
-        public IOutStockLockInfoService OutboundStockLockInfoService { get; }
-        public IProOutOrderService ProOutOrderService { get; }
-        public IProOutOrderDetailService ProOutOrderDetailService { get; }
-
-        public IMesRworkOutboundOrderService RworkOutboundOrderService { get; }
-        public IErpProTransferOrderService ErpProTransferOrderService { get; }
-
-
-        public OutboundService(IOutboundOrderDetailService outboundOrderDetailService, IMesRworkOutboundOrderService rworkOutboundOrderService, IOutboundOrderService outboundOrderService, IOutStockLockInfoService outboundStockLockInfoService, IMesOutboundOrderService mesOutboundOrderService,IProOutOrderService proOutOrderService, IProOutOrderDetailService proOutOrderDetailService,IErpProTransferOrderService erpProTransferOrderService)
-        {
-            OutboundOrderDetailService = outboundOrderDetailService;
-            OutboundOrderService = outboundOrderService;
-            OutboundStockLockInfoService = outboundStockLockInfoService;
-            MesOutboundOrderService = mesOutboundOrderService;
-            ProOutOrderService = proOutOrderService;
-            ProOutOrderDetailService = proOutOrderDetailService;
-            RworkOutboundOrderService = rworkOutboundOrderService;
-            ErpProTransferOrderService = erpProTransferOrderService;
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ProOutOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ProOutOrderDetailService.cs"
deleted file mode 100644
index 44e41a9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ProOutOrderDetailService.cs"
+++ /dev/null
@@ -1,249 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.Helper;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-using WIDESEA_OutboundRepository;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class ProOutOrderDetailService : ServiceBase<Dt_ProOutOrderDetail, IProOutOrderDetailRepository>, IProOutOrderDetailService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-
-        public IProOutOrderDetailRepository Repository => BaseDal;
-        private readonly IStockService _stockInfoService;
-        private readonly IBasicService _basicService;
-        private readonly IOutProStockInfoService _outProStockInfoService;
-        private readonly IProOutOrderRepository _proOutOrderRepository;
-        private readonly IRecordService _recordService;
-        public ProOutOrderDetailService(IProOutOrderDetailRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IStockService stockInfoService, IBasicService basicService,IOutProStockInfoService outProStockInfoService, IRecordService recordService, IProOutOrderRepository proOutOrderRepository) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _stockInfoService = stockInfoService;
-            _basicService = basicService;
-            _outProStockInfoService = outProStockInfoService;
-            _recordService = recordService;
-            _proOutOrderRepository=proOutOrderRepository;
-        }
-        /// <summary>
-        /// 鍑哄簱搴撳瓨鍒嗛厤鍚庯紝鏇存柊鏁版嵁搴撴暟鎹�
-        /// </summary>
-        public WebResponseContent LockOutboundStockDataUpdate(List<Dt_ProStockInfo> proStockInfos, List<Dt_ProOutOrderDetail> proOutOrderDetails, List<Dt_OutProStockInfo> outProStockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null)
-        {
-            try
-            {
-                //鏇存柊搴撳瓨灞炴��
-                _stockInfoService.ProStockInfoService.Repository.UpdateData(proStockInfos);
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in proStockInfos)
-                {
-                    proStockInfoDetails.AddRange(item.proStockInfoDetails);
-                }
-                //鏇存柊搴撳瓨鏄庣粏
-                proStockInfoDetails.ForEach(x => x.ProOutDetailStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt());
-                _stockInfoService.ProStockInfoDetailService.Repository.UpdateData(proStockInfoDetails);
-                Dt_ProOutOrder proOutOrder = _proOutOrderRepository.QueryFirst(x => x.Id == proOutOrderDetails.FirstOrDefault().ProOrderId);
-                if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鏈紑濮�.ObjToInt())
-                {
-                    proOutOrder.ProOrderStatus = OutOrderStatusEnum.鍑哄簱涓�.ObjToInt();
-                    _proOutOrderRepository.UpdateData(proOutOrder);
-                }
-                BaseDal.UpdateData(proOutOrderDetails);
-
-                List<Dt_OutProStockInfo> addOutStockLockInfos = outProStockInfos.Where(x => x.Id == 0).ToList();
-                if (addOutStockLockInfos != null && addOutStockLockInfos.Any())
-                {
-                    if (tasks != null)
-                    {
-                        addOutStockLockInfos.ForEach(x =>
-                        {
-                            x.TaskNum = tasks.FirstOrDefault(v => v.PalletCode == x.PalletCode)?.TaskNum;
-                        });
-                    }
-
-                    _outProStockInfoService.Repository.AddData(addOutStockLockInfos);
-                }
-                List<Dt_OutProStockInfo> updateOutStockLockInfos = outProStockInfos.Where(x => x.Id > 0).ToList();
-                if (updateOutStockLockInfos != null && updateOutStockLockInfos.Any())
-                {
-                    _outProStockInfoService.Repository.UpdateData(updateOutStockLockInfos);
-                }
-
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfos, locationStatus, LocationChangeType.OutboundAssignLocation, "", tasks?.Select(x => x.TaskNum).ToList());
-                _basicService.LocationInfoService.Repository.UpdateLocationStatus(locationInfos, locationStatus);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
-        /// 鍒嗛厤搴撳瓨澶勭悊璐т綅鏁版嵁
-        /// </summary>
-        public (List<Dt_ProStockInfo>, List<Dt_ProOutOrderDetail>, List<Dt_OutProStockInfo>, List<Dt_LocationInfo>) AssignProStockOut(List<Dt_ProOutOrderDetail> proOutOrderDetails)
-        {
-            List<Dt_ProStockInfo> outStocks = new List<Dt_ProStockInfo>();
-            List<Dt_OutProStockInfo> outProStockInfos = new List<Dt_OutProStockInfo>();
-            List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-            //鑾峰彇鎴愬搧璁㈠崟
-            Dt_ProOutOrder proOutOrder = _proOutOrderRepository.QueryFirst(x=>x.Id==proOutOrderDetails.FirstOrDefault().ProOrderId);
-            if (proOutOrder==null)
-            {
-                throw new Exception("鏈壘鍒版垚鍝佽鍗�");
-            }
-            //List<Dt_ProOutOrderDetail> groupDetails = proOutOrderDetails.GroupBy(x => new { x.SaleOrder, x.PCode, x.PVer, x.PLot, x.DateCode }).Select(x => new Dt_ProOutOrderDetail()
-            //{
-            //    QtyPcs = x.Sum(x => x.QtyPcs) - x.Sum(x => x.OverQtyPcs),
-            //    SaleOrder = x.Key.SaleOrder,
-            //    PCode = x.Key.PCode,
-            //    PVer = x.Key.PVer,
-            //    PLot = x.Key.PLot,
-            //    DateCode = x.Key.DateCode,
-            //}).ToList();
-            //foreach (var item in groupDetails)
-            //{
-            //    float needQty = item.QtyPcs;
-            //    //鏌ユ壘鍙敤搴撳瓨
-            //    List<Dt_ProStockInfo> stockInfoss = _stockInfoService.ProStockInfoService.GetUseableStocks(proOutOrder.WarehouseId, item);
-            //    if (!stockInfoss.Any())
-            //    {
-            //        throw new Exception("鏈壘鍒板彲鍒嗛厤搴撳瓨");
-            //    }
-            //    //鑾峰彇鍑哄簱搴撳瓨
-            //    List<Dt_ProStockInfo> assignOutStocks = _stockInfoService.ProStockInfoService.GetOutboundStocks(stockInfoss, item, needQty, out float residueQuantity);
-            //    item.LockQtyPcs += needQty - residueQuantity;
-            //    if (item.QtyPcs> item.LockQtyPcs)
-            //    {
-            //        throw new Exception($"浜у搧缂栫爜{item.PCode}鍙垎閰嶆暟閲忎笉瓒�,鍙敤鏁伴噺{item.LockQtyPcs}");
-            //    }
-            //    outStocks.AddRange(assignOutStocks);
-            //    float assignQuantity = needQty - residueQuantity;
-            //    bool isCanLot = string.IsNullOrEmpty(item.PLot);
-            //    bool isCanDate = string.IsNullOrEmpty(item.DateCode);
-            //    List<Dt_ProOutOrderDetail> details = proOutOrderDetails
-            //        .Where(x =>x.PCode == item.PCode && x.PVer == item.PVer
-            //        && (isCanLot ? isCanLot : x.PLot == item.PLot)
-            //        && (isCanDate ? isCanDate : x.DateCode == item.DateCode))
-            //        .ToList();
-
-            //    for (int i = 0; i < details.Count; i++)
-            //    {
-            //        float orderQuantity = details[i].QtyPcs;
-            //        for (int j = 0; j < assignOutStocks.Count; j++)
-            //        {
-            //            //鍑哄簱璁㈠崟鏄庣粏宸插垎閰嶆暟閲�
-            //            float detailAssignQuantity = outProStockInfos.Where(x => x.PCode == item.PCode && x.PVer == item.PVer
-            //                && (isCanLot ? isCanLot : x.PLot == item.PLot)
-            //                && (isCanDate ? isCanDate : x.DateCode == item.DateCode)
-            //                && x.OrderDetailId == details[i].Id).Sum(x => x.AssignQuantity);
-
-            //            float palletAssignQuantity = outProStockInfos.Where(x => x.PCode == item.PCode && x.PVer == item.PVer
-            //                && (isCanLot ? isCanLot : x.PLot == item.PLot)
-            //                && (isCanDate ? isCanDate : x.DateCode == item.DateCode)
-            //                && x.PalletCode == assignOutStocks[j].PalletCode).Sum(x => x.AssignQuantity);
-            //            //鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-            //            palletAssignQuantity = outProStockInfos.Where(x => x.PCode == item.PCode && x.PVer == item.PVer
-            //                && (isCanLot ? isCanLot : x.PLot == item.PLot)
-            //                && (isCanDate ? isCanDate : x.DateCode == item.DateCode) 
-            //                && x.PalletCode == assignOutStocks[j].PalletCode).Sum(x => x.AssignQuantity);//鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-            //            float palletOutboundQuantity = assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity);
-            //            if (palletAssignQuantity < palletOutboundQuantity)//濡傛灉鍑哄簱璇︽儏宸插垎閰嶆暟閲忓皬浜庢墭鐩樺凡鍒嗛厤鏁伴噺锛屽垯鍙互缁х画娣诲姞璇ユ墭鐩樺嚭搴撲俊鎭�
-            //            {
-            //                float orderDetailNeedQuantity = details[i].QtyPcs - detailAssignQuantity;
-            //                if (orderDetailNeedQuantity > assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity) - palletAssignQuantity)
-            //                {
-            //                    details[i].LockQtyPcs += assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity) - palletAssignQuantity;
-            //                    Dt_OutProStockInfo outStockLockInfo = _outProStockInfoService.GetOutStockLockInfo(proOutOrder, details[i], assignOutStocks[j], assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity) - palletAssignQuantity);
-            //                    outProStockInfos.Add(outStockLockInfo);
-            //                }
-            //                else
-            //                {
-            //                    Dt_OutProStockInfo outStockLockInfo = _outProStockInfoService.GetOutStockLockInfo(proOutOrder, details[i], assignOutStocks[j], details[i].QtyPcs - details[i].LockQtyPcs);
-            //                    outProStockInfos.Add(outStockLockInfo);
-            //                    details[i].LockQtyPcs = details[i].QtyPcs;
-            //                    break;
-            //                }
-
-            //            }
-            //        }
-            //    }
-            //    List<string> locationArr = outStocks.Select(x => x.LocationCode).ToList();
-
-            //    locationInfos.AddRange(_basicService.LocationInfoService.Repository.GetLocationInfos(locationArr));
-
-            //}
-            foreach (var item in proOutOrderDetails)
-            {
-                float needQty = item.QtyPcs;
-                //鏌ユ壘鍙敤搴撳瓨
-                List<Dt_ProStockInfo> stockInfoss = _stockInfoService.ProStockInfoService.GetUseableStocks(proOutOrder.WarehouseId, item);
-                if (!stockInfoss.Any())
-                {
-                    throw new Exception("鏈壘鍒板彲鍒嗛厤搴撳瓨");
-                }
-                //鑾峰彇鍑哄簱搴撳瓨
-                List<Dt_ProStockInfo> assignOutStocks = _stockInfoService.ProStockInfoService.GetOutboundStocks(stockInfoss, item, needQty, out float residueQuantity);
-                item.LockQtyPcs += needQty - residueQuantity;
-                if (item.QtyPcs > item.LockQtyPcs)
-                {
-                    throw new Exception($"浜у搧缂栫爜{item.PCode},鐗堟湰{item.PVer.Substring(0, 1)}鍙垎閰嶆暟閲忎笉瓒�,鍙敤鏁伴噺{item.LockQtyPcs}");
-                }
-                outStocks.AddRange(assignOutStocks);
-                float assignQuantity = needQty - residueQuantity;
-                bool isCanLot = string.IsNullOrEmpty(item.PLot);
-                bool isCanDate = string.IsNullOrEmpty(item.DateCode);
-                float orderQuantity = item.QtyPcs;
-                for (int j = 0; j < assignOutStocks.Count; j++)
-                {
-                    //鍑哄簱璁㈠崟鏄庣粏宸插垎閰嶆暟閲�
-                    float detailAssignQuantity = outProStockInfos.Where(x => x.OrderDetailId == item.Id).Sum(x => x.AssignQuantity);
-                    ////鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-                    //float palletAssignQuantity = outProStockInfos.Where(x => x.PCode == item.PCode && x.PVer == item.PVer
-                    //    && (isCanLot ? isCanLot : x.PLot == item.PLot)
-                    //    && (isCanDate ? isCanDate : x.DateCode == item.DateCode)
-                    //    && x.PalletCode == assignOutStocks[j].PalletCode).Sum(x => x.AssignQuantity);
-                    ////鍑哄簱璇︽儏宸插垎閰嶆暟閲�
-                    //float palletOutboundQuantity = assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity);
-                    //if (palletAssignQuantity < palletOutboundQuantity)//濡傛灉鍑哄簱璇︽儏宸插垎閰嶆暟閲忓皬浜庢墭鐩樺凡鍒嗛厤鏁伴噺锛屽垯鍙互缁х画娣诲姞璇ユ墭鐩樺嚭搴撲俊鎭�
-                    //{
-                        float orderDetailNeedQuantity = item.QtyPcs - detailAssignQuantity;
-                        if (orderDetailNeedQuantity > assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity))
-                        {
-                            item.LockQtyPcs += assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity);
-                            Dt_OutProStockInfo outStockLockInfo = _outProStockInfoService.GetOutStockLockInfo(proOutOrder, item, assignOutStocks[j], assignOutStocks[j].proStockInfoDetails.Sum(x => x.OutboundQuantity));
-                            outProStockInfos.Add(outStockLockInfo);
-                        }
-                        else
-                        {
-                            Dt_OutProStockInfo outStockLockInfo = _outProStockInfoService.GetOutStockLockInfo(proOutOrder, item, assignOutStocks[j], item.QtyPcs - item.LockQtyPcs);
-                            outProStockInfos.Add(outStockLockInfo);
-                            item.LockQtyPcs = item.QtyPcs;
-                            break;
-                        }
-
-                    //}
-                }
-                List<string> locationArr = outStocks.Select(x => x.LocationCode).ToList();
-
-                locationInfos.AddRange(_basicService.LocationInfoService.Repository.GetLocationInfos(locationArr));
-
-            }
-            return (outStocks, proOutOrderDetails, outProStockInfos, locationInfos);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ProOutOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ProOutOrderService.cs"
deleted file mode 100644
index c700679..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/ProOutOrderService.cs"
+++ /dev/null
@@ -1,1146 +0,0 @@
-锘縰sing AutoMapper;
-using Castle.Core.Resource;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading;
-using System.Threading.Tasks;
-using WIDESEA_Common.OrderEnum;
-using WIDESEA_Common.StockEnum;
-using WIDESEA_Common.WareHouseEnum;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.BaseServices;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core.Helper;
-using WIDESEA_DTO.ERP;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_External.ERPService;
-using WIDESEA_External.Model;
-using WIDESEA_IBasicRepository;
-using WIDESEA_IBasicService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
-using WIDESEA_IRecordService;
-using WIDESEA_IStockRepository;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_OutboundService
-{
-    public partial class ProOutOrderService : ServiceBase<Dt_ProOutOrder, IProOutOrderRepository>, IProOutOrderService
-    {
-        private readonly IUnitOfWorkManage _unitOfWorkManage;
-        private readonly IBasicRepository _basicRepository;
-        private readonly IMapper _mapper;
-        private readonly IStockRepository _stockRepository;
-        private readonly IOutboundRepository _outboundRepository;
-        private readonly IOutboundOrderService _outboundOrderService;
-        private readonly IInvokeERPService _invokeERPService; 
-
-        public IProOutOrderRepository Repository => BaseDal;
-
-        public ProOutOrderService(IProOutOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, IBasicRepository basicRepository, IMapper mapper, IStockRepository stockRepository, IOutboundRepository outboundRepository, IOutboundOrderService outboundOrderService,IInvokeERPService invokeERPService) : base(BaseDal)
-        {
-            _unitOfWorkManage = unitOfWorkManage;
-            _basicRepository = basicRepository;
-            _mapper = mapper;
-            _stockRepository = stockRepository;
-            _outboundRepository = outboundRepository;
-            _outboundOrderService = outboundOrderService;
-            _invokeERPService = invokeERPService;
-        }
-        /// <summary>
-        /// 鎺ユ敹ERP鎴愬搧鍑哄簱鍗曚俊鎭�(璁㈠崟鍑哄簱/瀵勫敭鍑哄簱)
-        /// </summary>
-        /// <returns></returns>
-        public async Task<WebResponseContent> ProductDeliveryOrder(ErpProOutOrderDTO outOrderDTO)
-        {
-            try
-            {
-                return outOrderDTO.Way switch
-                {
-                    1 => await Task.FromResult(AddDeliveryOrder(outOrderDTO)),
-                    2 => await Task.FromResult(UpdateDeliveryOrder(outOrderDTO)),
-                    3 => await Task.FromResult(DeleteDeliveryOrder(outOrderDTO)),
-                    _ => await Task.FromResult(WebResponseContent.Instance.Error($"鎿嶄綔绫诲瀷涓嶅瓨鍦�,Way:{outOrderDTO.Way}")),
-                };
-            }
-            catch (Exception ex)
-            {
-                return await Task.FromResult(WebResponseContent.Instance.Error(ex.Message));
-            }
-        }
-        /// <summary>
-        /// 鏂板鎴愬搧鍑哄簱鍗�
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent AddDeliveryOrder(ErpProOutOrderDTO outOrderDTO)
-        {
-            WebResponseContent content=new WebResponseContent();
-            try
-            {
-                if (BaseDal.QueryFirst(x => x.ProOutOrderNo == outOrderDTO.OrderNo) != null) 
-                {
-                    return content.Error($"鍑哄簱鍗曞彿{outOrderDTO.OrderNo}宸插瓨鍦�!");
-                }
-                Dt_Warehouse warehouse=null;
-                List<Dt_CustomerInfo> customerInfos = _basicRepository.CustomerInfoRepository.QueryData();
-                if (outOrderDTO.OType==1 && string.IsNullOrEmpty(outOrderDTO.WaType))
-                {
-                    warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseCode==WarehouseEnum.HA71.ToString());
-                }
-                else if (outOrderDTO.OType==2)
-                {
-                    warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                }
-                List<Dt_ProOutOrderDetail> proOutOrderDetails = new List<Dt_ProOutOrderDetail>();
-                Dictionary<string,string> keyValuePairs =new Dictionary<string, string>();
-                foreach (var item in outOrderDTO.OrderDetails)
-                {
-                    //鍒ゆ柇瀹㈡埛鏄惁瀛樺湪
-                    Dt_CustomerInfo? customerInfo = customerInfos.Where(x=>x.Code== item.Customer).FirstOrDefault();
-                    if (customerInfo==null) 
-                    {
-                        return content.Error($"瀹㈡埛{item.Customer}涓嶅瓨鍦�!");
-                    }
-                    Dt_ProOutOrderDetail proOutOrderDetail = _mapper.Map<Dt_ProOutOrderDetail>(item);
-                    if (!string.IsNullOrEmpty(item.SaleOrder))
-                    {
-                        if (keyValuePairs!=null && keyValuePairs.ContainsKey(item.SaleOrder))
-                        {
-                            proOutOrderDetail.EndCustomer = keyValuePairs[item.SaleOrder];
-                        }
-                        else
-                        {
-                            string request = _invokeERPService.InvokeProSaleCustomer(item.SaleOrder);
-                            ErpSaleCustomResponseContent responseContent=request.DeserializeObject<ErpSaleCustomResponseContent>();
-                            if (responseContent.Code!=200)
-                            {
-                                return content.Error($"璁㈠崟{item.SaleOrder}缁堢瀹㈡埛鑾峰彇澶辫触!");
-                            }
-                            //鍒ゆ柇缁堢瀹㈡埛鏄惁瀛樺湪
-                            Dt_CustomerInfo? customerInfoEnd = customerInfos.Where(x => x.Code == responseContent.Data[0].Endcustomer).FirstOrDefault();
-                            if (customerInfoEnd == null)
-                            {
-                                return content.Error($"缁堢瀹㈡埛{responseContent.Data[0].Endcustomer}涓嶅瓨鍦�!");
-                            }
-                            proOutOrderDetail.EndCustomer = responseContent.Data[0].Endcustomer;
-                            keyValuePairs.Add(item.SaleOrder, responseContent.Data[0].Endcustomer);
-                        }
-                    }
-                    proOutOrderDetails.Add(proOutOrderDetail);
-                }
-                Dt_ProOutOrder  proOutOrder= new Dt_ProOutOrder()
-                {
-                    ProOutOrderNo= outOrderDTO.OrderNo,
-                    WarehouseId= warehouse.WarehouseId,
-                    ProOrderType= outOrderDTO.OType,
-                    ProOrderStatus=OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                    PlantShipDate= outOrderDTO.PlantShipDate.ObjToDate(),
-                    Remark= outOrderDTO.Note,
-                    Details= proOutOrderDetails
-                };
-                Db.InsertNav(proOutOrder).Include(x => x.Details).ExecuteCommand();
-                content.OK("鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鏇存柊鎴愬搧鍑哄簱鍗�
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent UpdateDeliveryOrder(ErpProOutOrderDTO outOrderDTO)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鍒犻櫎鎴愬搧鍑哄簱鍗�
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent DeleteDeliveryOrder(ErpProOutOrderDTO outOrderDTO)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOutOrderNo == outOrderDTO.OrderNo).Includes(x => x.Details).First();
-                if (proOutOrder==null)
-                {
-                    return content.Error($"鏈壘鍒板嚭搴撳崟{outOrderDTO.OrderNo}");
-                }
-                if (proOutOrder.ProOrderStatus==OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt() || proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱涓�.ObjToInt())
-                {
-                    return content.Error("鍑哄簱鍗曟墽琛屼腑");
-                }
-                _unitOfWorkManage.BeginTran();
-                _outboundRepository.ProOutOrderRepository.DeleteData(proOutOrder);
-                _outboundRepository.ProOutOrderDetailRepository.DeleteData(proOutOrder.Details);
-                _unitOfWorkManage.CommitTran();
-                content.OK("鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 閿�鍞寚娲�
-        /// </summary>
-        /// <returns></returns>
-        public async Task<WebResponseContent> ProductSpecifyVer(ErpProductSpecifyVerDTO erpProductSpecifyVerDTO)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseCode==erpProductSpecifyVerDTO.WaType);
-                if (warehouse == null)
-                    return await Task.FromResult(content.Error($"鏈壘鍒皗erpProductSpecifyVerDTO.WaType}浠撳簱淇℃伅"));
-                //鏌ヨ鍙寚娲惧簱瀛�
-                List<Dt_ProStockInfo> proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => x.ProStockAttribute == ProStockAttributeEnum.鎴愬搧.ObjToInt())
-                .Includes(x => x.proStockInfoDetails)
-                .Where(x => x.proStockInfoDetails
-                .Any(v =>
-                     v.SaleOrder == erpProductSpecifyVerDTO.OrderNo
-                    && v.ProductCode == erpProductSpecifyVerDTO.PCode
-                    && v.ProductVersion == erpProductSpecifyVerDTO.PVer
-                    && v.LotNumber == erpProductSpecifyVerDTO.PLot
-                    && v.DateCode == erpProductSpecifyVerDTO.DateCode
-                    && (v.SpecifyVer==null||v.SpecifyVer=="")
-                ))
-                .ToList();
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                List<Dt_ProStockInfoDetail> specifyVerDetails = new List<Dt_ProStockInfoDetail>();
-                if (proStockInfos==null)
-                    return await Task.FromResult(content.Error("鍙寚娲惧簱瀛樹笉瀛樺湪"));
-                proStockInfos = proStockInfos.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.DateCode).ThenBy(x => x.CreateDate).ThenBy(x => x.proStockInfoDetails.Sum(x => x.StockPcsQty)).ToList();
-                foreach (var item in proStockInfos)
-                {
-                    proStockInfoDetails.AddRange(item.proStockInfoDetails);
-                }
-                if (proStockInfoDetails.Sum(x=>x.StockPcsQty)< erpProductSpecifyVerDTO.QtyPcs)
-                    return await Task.FromResult(content.Error($"鍙寚娲惧簱瀛樻暟閲忎笉瓒�,鍙敤:{proStockInfoDetails.Sum(x => x.StockPcsQty)}"));
-                float overQty = 0;
-                foreach (var item in proStockInfoDetails)
-                {
-                    specifyVerDetails.Add(item);
-                    overQty += item.StockPcsQty;
-                    //宸叉弧瓒宠幏鍙栨暟閲忎笉鍐嶆洿鏀�
-                    if (overQty>= erpProductSpecifyVerDTO.QtyPcs)
-                    {
-                        break;
-                    }
-                }
-                specifyVerDetails.ForEach(x =>
-                {
-                    x.SpecifyVer = erpProductSpecifyVerDTO.Ver;
-                });
-                _unitOfWorkManage.BeginTran();
-                _stockRepository.ProStockInfoDetailRepository.UpdateData(specifyVerDetails);
-                _unitOfWorkManage.CommitTran();
-                content.OK("鎸囨淳鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return await Task.FromResult(content);
-        }
-        /// <summary>
-        /// 鎴愬搧鍑哄緟鍙戣揣鍖�(骞冲簱)+鍚屾ERP鍑哄簱(缁戝畾浜嗗嚭搴撳崟搴撳瓨)
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent OutProductPK(SaveModel saveModel, string ProOutNo)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                List<string> OutPKCodes = saveModel.DelKeys.Select(x => x.ToString()).ToList();
-                if (OutPKCodes.IsNullOrEmpty())
-                {
-                    return content.Error("涓嶈兘涓虹┖");
-                }
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOutOrderNo == ProOutNo).Includes(x => x.Details).First();
-                if (proOutOrder == null)
-                {
-                    return content.Error($"鍑哄簱鍗晎ProOutNo}涓嶅瓨鍦�");
-                }
-                if (proOutOrder.ProOrderStatus==OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return content.Error($"鍑哄簱鍗晎ProOutNo}宸插畬鎴�");
-                }
-                string? userName = App.User.UserName;//GSWMS
-                //鑾峰彇鎵�鏈夊绠辩殑鏁版嵁
-                List<Dt_ProStockInfo> AllproStockInfos = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>()
-                    .Where(x => OutPKCodes.Contains(x.PalletCode) && x.ShipmentOrder == proOutOrder.ProOutOrderNo && x.StockStatus == StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt())
-                    .Includes(x => x.proStockInfoDetails).ToList();
-                if (AllproStockInfos.Count<=0)
-                {
-                    return content.Error($"鍑哄簱鍗晎ProOutNo}宸叉棤缁戝畾搴撳瓨");
-                }
-                List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                List<Dt_Warehouse> warehouses = _basicRepository.WarehouseRepository.QueryData(x => x.WarehouseType == WarehouseTypEnum.鎴愬搧.ToString());
-                foreach (var item in OutPKCodes)
-                {
-                    //鑾峰彇搴撳瓨
-                    Dt_ProStockInfo? proStockInfo = AllproStockInfos.Where(x => x.PalletCode == item).FirstOrDefault();
-                    if (proStockInfo == null)
-                    {
-                        return content.Error($"鏈壘鍒皗item}搴撳瓨");
-                    }
-                    Dt_Warehouse? dt_Warehouse = warehouses.Where(x=>x.WarehouseId== proStockInfo.WarehouseId).FirstOrDefault();
-                    if (dt_Warehouse==null)
-                    {
-                        return content.Error($"澶栫鍙穥item},涓嶅睘浜庢垚鍝佷粨");
-                    }
-                    if (proStockInfo.ShipmentOrder!= proOutOrder.ProOutOrderNo)
-                    {
-                        return content.Error($"澶栫鍙穥item},涓嶅睘浜庡嚭搴撹鍗晎proOutOrder.ProOutOrderNo}");
-                    }
-                    proStockInfos.Add(proStockInfo);
-                    proStockInfoDetails.AddRange(proStockInfo.proStockInfoDetails);
-                }
-                
-                if (proOutOrder.Details.Sum(x=>x.LockQtyPcs-x.OverQtyPcs)< proStockInfoDetails.Sum(x=>x.StockPcsQty))
-                {
-                    return content.Error($"鍑哄簱鏁伴噺{proStockInfoDetails.Sum(x => x.StockPcsQty)}>鎵�鍓╄鍗曟暟閲弡proOutOrder.Details.Sum(x => x.LockQtyPcs - x.OverQtyPcs)}");
-                }
-                List<StockOutItemsItem> stockOutItems = new List<StockOutItemsItem>();
-                List<Dt_ProOutOrderDetail> proOutOrderDetails = proOutOrder.Details.Where(x=> proStockInfoDetails.Select(x=>x.ProductCode).Contains(x.PCode) && proStockInfoDetails.Select(x => x.ProductVersion).Contains(x.PVer)).ToList();
-                if (proOutOrderDetails==null || proOutOrderDetails.Count<=0)
-                {
-                    return content.Error("瀵瑰簲鍑哄簱璁㈠崟鏄庣粏涓虹┖");
-                }
-                int OldOverCount = proOutOrder.Details.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-                List<Dt_ProOutOrderDetail> newProDetails=new List<Dt_ProOutOrderDetail>();
-                foreach (var item in proStockInfoDetails)
-                {
-                    //鑾峰彇瀵瑰簲鏄庣粏澶勭悊鍑哄簱鏁版嵁
-                    Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrderDetails.Where(x => x.Id==item.OutDetailId && x.PVer == item.ProductVersion && x.PCode == item.ProductCode).FirstOrDefault();
-                    if (proOutOrderDetail==null)
-                    {
-                        return content.Error("鏈壘鍒板搴斿嚭搴撹鍗曟槑缁�");
-                    }
-                    proOutOrderDetail.OverQtyPcs += item.StockPcsQty;
-                    item.OutboundQuantity = item.StockPcsQty;
-                    item.OutSETQty = item.SETQty;
-                    if (proOutOrderDetail.OverQtyPcs> proOutOrderDetail.QtyPcs)
-                    {
-                        return content.Error($"鍑哄簱璁㈠崟鏄庣粏琛寋proOutOrderDetail.RowId},婧㈠嚭{proOutOrderDetail.QtyPcs - proOutOrderDetail.OverQtyPcs}");
-                    }
-                    if (proOutOrderDetail.OverQtyPcs == proOutOrderDetail.QtyPcs)
-                    {
-                        proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                        newProDetails.Add(proOutOrderDetail);
-                    }
-                    
-                }
-                
-                int AddOverCount = newProDetails.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-                if (proOutOrder.Details.Count == (AddOverCount + OldOverCount))
-                {
-                    proOutOrder.ProOrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                    //鑾峰彇鎵�鏈夊凡鎵爜寰呭彂璐х殑搴撳瓨
-                    List<Dt_ProStockInfo> AllOutStocks = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>()
-                    .Where(x => x.ShipmentOrder== ProOutNo && x.StockStatus == StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt())
-                    .Includes(x => x.proStockInfoDetails).ToList();
-                    AllOutStocks.ForEach(x =>
-                    {
-                        proStockInfoDetails.AddRange(x.proStockInfoDetails);
-                    });
-                    proStockInfos.AddRange(AllOutStocks);
-                    foreach (var item in proStockInfoDetails)
-                    {
-                        StockOutItemsItem outItemsItem = new StockOutItemsItem()
-                        {
-                            PartNum = item.ProductCode,
-                            Rev = item.ProductVersion,
-                            SoNumber = item.OutDetailSaleNo,
-                            BatchNumber = item.BagNo,
-                            QtyPcs = item.OutboundQuantity,
-                            QtySet = item.OutSETQty
-                        };
-                        stockOutItems.Add(outItemsItem);
-                    }
-                }
-                _unitOfWorkManage.BeginTran();
-                Dt_Warehouse warehouse = warehouses.Where(x => x.WarehouseId == proOutOrder.WarehouseId).FirstOrDefault();
-                //澶勭悊搴撳瓨鏁版嵁鍜屼笂浼燛RP
-                if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    //鎴愬搧搴撳瓨璁板綍鍙樺姩寰呭姞鍏�
-                    ERPProOutOrderModel proOutOrderModel = new ERPProOutOrderModel()
-                    {
-                        Way = 1,
-                        StockOutCode = _outboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.ProOutCOdeRule)),
-                        ConfirmedUserNo = App.User.UserName,
-                        AssignUserNo = App.User.UserName,
-                        WarehouseCode = warehouse.WarehouseCode,
-                        ShipDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                        DeliverplanCode = proOutOrder.ProOutOrderNo,
-                        Remark = proOutOrder.Remark,
-                        StockOutItems = stockOutItems
-                    };
-                    _stockRepository.ProStockInfoRepository.DeleteAndMoveIntoHty(proStockInfos, OperateTypeEnum.鑷姩瀹屾垚);
-                    _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(proStockInfoDetails, OperateTypeEnum.鑷姩瀹屾垚);
-                    //WebResponseContent contentSaveInfos = SaveOutProPKInfos(proStockInfos);
-                    //if (!contentSaveInfos.Status)
-                    //{
-                    //    throw new Exception(contentSaveInfos.Message);
-                    //};
-                    string response = _invokeERPService.InvokeProOutApi(proOutOrderModel);
-                    ErpRequestContent erpRequestContent = response.DeserializeObject<ErpRequestContent>();
-                    if (erpRequestContent.res != 1)
-                    {
-                        throw new Exception("鍚屾ERP澶辫触,閿欒淇℃伅:" + erpRequestContent.Data);
-                    }
-                }
-                else
-                {
-                    proStockInfos.ForEach(x =>
-                    {
-                        x.StockStatus = StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt();
-                    });
-                    proStockInfoDetails.ForEach(x =>
-                    {
-                        x.ProOutDetailStatus = StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt();
-                    });
-                    _stockRepository.ProStockInfoRepository.UpdateData(proStockInfos);
-                    _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfoDetails);
-                }
-                _outboundRepository.ProOutOrderDetailRepository.UpdateData(proOutOrderDetails);
-                BaseDal.UpdateData(proOutOrder);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鑾峰彇鍑哄簱鎵�鏈夌殑澶栧唴鍖呮槑缁�
-        /// </summary>
-        /// <param name="proStockInfos"></param>
-        /// <returns></returns>
-        public WebResponseContent SaveOutProPKInfos(List<Dt_ProStockInfo> proStockInfos)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                List<Dt_OutProPKStockInfo> outProPKStockInfos = new List<Dt_OutProPKStockInfo>();
-                foreach (var fromItem in proStockInfos)
-                {
-                    foreach (var lordItem in fromItem.proStockInfoDetails)
-                    {
-                        Dt_OutProPKStockInfo outProPKStockInfo = new Dt_OutProPKStockInfo()
-                        {
-                            PCode = lordItem.ProductCode,
-                            PVer=lordItem.ProductVersion,
-                            PLot=lordItem.ProductVersion,
-                            DateCode=lordItem.DateCode,
-                            StockId=fromItem.Id,
-                            OriginalQuantity=lordItem.StockPcsQty,
-                            AssignQuantity=lordItem.StockPcsQty,
-                            PalletCode=fromItem.PalletCode,
-                            Unit="PCS"
-                        };
-                        outProPKStockInfos.Add(outProPKStockInfo);
-                    }
-                }
-                Db.InsertNav(outProPKStockInfos).Include(x=>x).ExecuteCommand();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        //鏍规嵁鍐呭寘鍑哄簱
-        public WebResponseContent BagProductPK(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                var outOrder = saveModel.MainData["proOutNo"].ToString();
-                var outBags = saveModel.DelKeys.Select(x => x.ToString()).ToList();
-                if (outBags.Count<=0)
-                {
-                    return content.Error("鍐呭寘淇℃伅鑾峰彇澶辫触");
-                }
-
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鎴愬搧鍑哄緟鍙戣揣鍖�(骞冲簱)+鍚屾ERP鍑哄簱(鏈粦瀹氬嚭搴撳崟搴撳瓨)
-        /// </summary>
-        /// <returns></returns>
-        //public WebResponseContent OutProductNoPK(string[] OutPKCodes, string ProOutNo)
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        if (OutPKCodes.IsNullOrEmpty())
-        //        {
-        //            return content.Error("涓嶈兘涓虹┖");
-        //        }
-        //        Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOutOrderNo == ProOutNo).Includes(x => x.Details).First();
-        //        if (proOutOrder == null)
-        //        {
-        //            return content.Error($"鍑哄簱鍗晎ProOutNo}涓嶅瓨鍦�");
-        //        }
-        //        if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-        //        {
-        //            return content.Error($"鍑哄簱鍗晎ProOutNo}宸插畬鎴�");
-        //        }
-        //        string? userName = App.User.UserName;//GSWMS
-        //        //鑾峰彇鎵�鏈夊绠辩殑鏁版嵁
-        //        List<Dt_ProStockInfo> AllproStockInfos = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>()
-        //            .Where(x => OutPKCodes.Contains(x.PalletCode) && x.StockStatus == StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt())
-        //            .Includes(x => x.proStockInfoDetails).ToList();
-        //        List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
-        //        List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-        //        List<Dt_Warehouse> warehouses = _basicRepository.WarehouseRepository.QueryData(x => x.WarehouseType == WarehouseTypEnum.鎴愬搧.ToString());
-        //        foreach (var item in OutPKCodes)
-        //        {
-        //            //鑾峰彇搴撳瓨
-        //            Dt_ProStockInfo? proStockInfo = AllproStockInfos.Where(x => x.PalletCode == item).FirstOrDefault();
-        //            if (proStockInfo == null)
-        //            {
-        //                return content.Error($"鏈壘鍒皗item}搴撳瓨");
-        //            }
-        //            if (proStockInfo.ShipmentOrder!=null)
-        //            {
-        //                return content.Error($"澶栫鍙穥item}涓哄嚭搴撳崟{proStockInfo.ShipmentOrder}鎸囧畾搴撳瓨!");
-        //            }
-        //            Dt_Warehouse? dt_Warehouse = warehouses.Where(x => x.WarehouseId == proStockInfo.WarehouseId).FirstOrDefault();
-        //            if (dt_Warehouse == null)
-        //            {
-        //                return content.Error($"澶栫鍙穥item},涓嶅睘浜庢垚鍝佷粨");
-        //            }
-        //            proStockInfos.Add(proStockInfo);
-        //            proStockInfoDetails.AddRange(proStockInfo.proStockInfoDetails);
-        //        }
-
-        //        if (proOutOrder.Details.Sum(x => x.QtyPcs - x.OverQtyPcs) < proStockInfoDetails.Sum(x => x.StockPcsQty))
-        //        {
-        //            return content.Error($"鍑哄簱鏁伴噺{proStockInfoDetails.Sum(x => x.StockPcsQty)}>鎵�鍓╄鍗曟暟閲弡proOutOrder.Details.Sum(x => x.QtyPcs - x.OverQtyPcs)}");
-        //        }
-        //        List<StockOutItemsItem> stockOutItems = new List<StockOutItemsItem>();
-        //        List<Dt_ProOutOrderDetail> proOutOrderDetails = proOutOrder.Details.Where(x => proStockInfoDetails.Select(x => x.SaleOrder).Contains(x.SaleOrder) && proStockInfoDetails.Select(x => x.ProductCode).Contains(x.PCode) && proStockInfoDetails.Select(x => x.ProductVersion).Contains(x.PVer)).ToList();
-        //        if (proOutOrderDetails == null || proOutOrderDetails.Count <= 0)
-        //        {
-        //            return content.Error("瀵瑰簲鍑哄簱璁㈠崟鏄庣粏涓虹┖");
-        //        }
-        //        int OldOverCount = proOutOrder.Details.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-        //        foreach (var item in proStockInfoDetails)
-        //        {
-        //            //鑾峰彇瀵瑰簲鏄庣粏澶勭悊鍑哄簱鏁版嵁
-        //            Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrderDetails.Where(x => x.SaleOrder == item.SaleOrder && x.PVer == item.ProductVersion && x.PCode == item.ProductCode).FirstOrDefault();
-        //            if (proOutOrderDetail == null)
-        //            {
-        //                return content.Error("鏈壘鍒板搴斿嚭搴撹鍗曟槑缁�");
-        //            }
-        //            proOutOrderDetail.OverQtyPcs += item.StockPcsQty;
-        //            item.OutboundQuantity = item.StockPcsQty;
-        //            item.OutSETQty = item.SETQty;
-        //            if (proOutOrderDetail.OverQtyPcs > proOutOrderDetail.QtyPcs)
-        //            {
-        //                return content.Error($"鍑哄簱璁㈠崟鏄庣粏琛寋proOutOrderDetail.RowId},婧㈠嚭{proOutOrderDetail.QtyPcs - proOutOrderDetail.OverQtyPcs}");
-        //            }
-        //            if (proOutOrderDetail.OverQtyPcs == proOutOrderDetail.QtyPcs)
-        //            {
-        //                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-        //            }
-
-        //        }
-        //        proStockInfos.ForEach(x =>
-        //        {
-        //            x.StockStatus = StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt();
-        //        });
-        //        proStockInfoDetails.ForEach(x =>
-        //        {
-        //            x.ProOutDetailStatus = StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt();
-        //        });
-        //        int AddOverCount = proOutOrderDetails.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-        //        if (proOutOrder.Details.Count == (AddOverCount + OldOverCount))
-        //        {
-        //            proOutOrder.ProOrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-        //            //鑾峰彇鎵�鏈夊凡鎵爜寰呭彂璐х殑搴撳瓨
-        //            List<Dt_ProStockInfo> AllOutStocks = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>()
-        //            .Where(x => x.ShipmentOrder == ProOutNo && x.StockStatus == StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt())
-        //            .Includes(x => x.proStockInfoDetails).ToList();
-        //            AllOutStocks.ForEach(x =>
-        //            {
-        //                proStockInfoDetails.AddRange(x.proStockInfoDetails);
-        //            });
-        //            proStockInfos.AddRange(AllOutStocks);
-        //            foreach (var item in proStockInfoDetails)
-        //            {
-        //                StockOutItemsItem outItemsItem = new StockOutItemsItem()
-        //                {
-        //                    PartNum = item.ProductCode,
-        //                    Rev = item.ProductVersion,
-        //                    SoNumber = item.SaleOrder,
-        //                    BatchNumber = item.BagNo,
-        //                    QtyPcs = item.OutboundQuantity,
-        //                    QtySet = item.OutSETQty
-        //                };
-        //                stockOutItems.Add(outItemsItem);
-        //            }
-        //        }
-        //        Dt_Warehouse warehouse = warehouses.Where(x => x.WarehouseId == proOutOrder.WarehouseId).FirstOrDefault();
-        //        _unitOfWorkManage.BeginTran();
-        //        //澶勭悊搴撳瓨鏁版嵁鍜屼笂浼燛RP
-        //        if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-        //        {
-        //            //鎴愬搧搴撳瓨璁板綍鍙樺姩寰呭姞鍏�
-        //            ERPProOutOrderModel proOutOrderModel = new ERPProOutOrderModel()
-        //            {
-        //                Way = 1,
-        //                StockOutCode = _outboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.ProOutCOdeRule)),
-        //                ConfirmedUserNo = App.User.UserName,
-        //                AssignUserNo = App.User.UserName,
-        //                WarehouseCode = warehouse.WarehouseCode,
-        //                ShipDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-        //                DeliverplanCode = proOutOrder.ProOutOrderNo,
-        //                Remark = proOutOrder.Remark,
-        //                StockOutItems = stockOutItems
-        //            };
-        //            _stockRepository.ProStockInfoRepository.DeleteAndMoveIntoHty(proStockInfos, OperateTypeEnum.鑷姩瀹屾垚);
-        //            _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(proStockInfoDetails, OperateTypeEnum.鑷姩瀹屾垚);
-        //            string response = _invokeERPService.InvokeProOutApi(proOutOrderModel);
-        //            ErpRequestContent erpRequestContent = response.DeserializeObject<ErpRequestContent>();
-        //            if (erpRequestContent.res != 1)
-        //            {
-        //                throw new Exception("鍚屾ERP澶辫触,閿欒淇℃伅:" + erpRequestContent.Data);
-        //            }
-        //        }
-        //        else
-        //        {
-        //            _stockRepository.ProStockInfoRepository.UpdateData(proStockInfos);
-        //            _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfoDetails);
-        //        }
-        //        _outboundRepository.ProOutOrderDetailRepository.UpdateData(proOutOrderDetails);
-        //        BaseDal.UpdateData(proOutOrder);
-        //        _unitOfWorkManage.CommitTran();
-        //        content.OK();
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
-        /// <summary>
-        /// PDA鑾峰彇鍑哄簱鍗曟嵁
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        public WebResponseContent GetProOutOrders(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                int pageNo = saveModel.MainData["pageNo"].ObjToInt();
-                int warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                string orderNo = saveModel.MainData["orderNo"].ToString();
-                List<Dt_ProOutOrder> proOutOrders = new List<Dt_ProOutOrder>();
-                if (string.IsNullOrEmpty(orderNo))
-                {
-                    proOutOrders = Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOrderStatus <= OutOrderStatusEnum.鍑哄簱涓�.ObjToInt() && x.WarehouseId == warehouseId).Includes(x=>x.Details).OrderByDescending(x => x.Id).ToPageList(pageNo, 5);
-                }
-                else
-                {
-                    proOutOrders = Db.Queryable<Dt_ProOutOrder>().Where(x => (x.ProOutOrderNo.Contains(orderNo) || x.ProOutOrderNo.Contains(orderNo)) && x.ProOrderStatus <= OutOrderStatusEnum.鍑哄簱涓�.ObjToInt() && x.WarehouseId == warehouseId).OrderByDescending(x => x.Id).Includes(x => x.Details).ToPageList(pageNo, 5);
-                }
-
-                content.OK(data: proOutOrders);
-            }
-            catch (Exception)
-            {
-
-                throw;
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鑾峰彇鎵爜鑾峰彇璁㈠崟鏄庣粏淇℃伅
-        /// </summary>
-        public WebResponseContent GetOrderDetails(int keyId)
-        {
-            WebResponseContent content=new WebResponseContent();
-            try
-            {
-                //鑾峰彇鍑哄簱鍗曞彿
-                Dt_ProOutOrder proOutOrder = BaseDal.QueryFirst(x => x.Id == keyId);
-                if (proOutOrder == null)
-                {
-                    return content.Error($"鏈壘鍒板嚭搴撳崟{proOutOrder.ProOutOrderNo}");
-                }
-                //鑾峰彇鏄庣粏
-                List<Dt_ProOutOrderDetail> proOutOrderDetails = _outboundRepository.ProOutOrderDetailRepository.QueryData(x => x.ProOrderId == keyId).OrderBy(x => x.ProOrderDetailStatus).ThenBy(x => x.Id).ToList();
-                content.OK("鎴愬姛", new { proOutOrderDetails });
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鏌ヨERP璁㈠崟鎵i櫎搴撳瓨鏁伴噺
-        /// </summary>
-        public async Task<WebResponseContent> OutProErpSync(string outProOrderNo)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鏍规嵁鍑哄簱鍗曞彿鑾峰彇璇ュ嚭搴撹鍗曠殑ERP鍑哄簱搴撳瓨淇℃伅
-                Dt_ProOutOrder proOutOrder = BaseDal.Db.Queryable<Dt_ProOutOrder>().Where(x=>x.ProOutOrderNo== outProOrderNo).Includes(x => x.Details).First();
-                if (proOutOrder==null)
-                {
-                    return await Task.FromResult(content.Error($"鏈壘鍒版垚鍝佸嚭搴撹鍗晎outProOrderNo}"));
-                }
-                if (proOutOrder.ProOrderStatus>=OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return await Task.FromResult(content.Error($"鍑哄簱璁㈠崟宸插畬鎴愭垨鍏抽棴"));
-                }
-                //璋冪敤erp鍑哄簱璁㈠崟搴撳瓨鏌ヨ鎺ュ彛
-                string response = _invokeERPService.InvokeOutProErpSync(outProOrderNo);
-                ErpOutProSyncResponseContent erpOutProSyncResponse= response.DeserializeObject<ErpOutProSyncResponseContent>();
-                if (erpOutProSyncResponse.Code!=200)
-                {
-                    return await Task.FromResult(content.Error($"ERP鍑哄簱璁㈠崟鏌ヨ鎺ュ彛璋冪敤澶辫触,閿欒淇℃伅:{erpOutProSyncResponse.Msg}"));
-                }
-                List<OutProStock> outProStocks = erpOutProSyncResponse.Data;
-                if (outProStocks.Count<=0 || outProStocks==null)
-                {
-                    return await Task.FromResult(content.Error($"鎴愬搧鍑哄簱璁㈠崟{outProOrderNo}ERP褰撳墠鏈湁鍑哄簱搴撳瓨淇℃伅"));
-                }
-                //鑾峰彇骞冲簱搴撳尯
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                if (warehouse==null)
-                {
-                    return await Task.FromResult(content.Error("鏈壘鍒板簱鍖轰俊鎭�"));
-                }
-                //鑾峰彇鎵�鏈夊钩搴撳簱瀛�
-                List<Dt_ProStockInfo> proStockInfos = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.WarehouseId == warehouse.WarehouseId).Includes(x => x.proStockInfoDetails).ToList();
-                List<Dt_ProStockInfoDetail> proStockInfoDetails= new List<Dt_ProStockInfoDetail>();
-                foreach (var item in proStockInfos)
-                {
-                    proStockInfoDetails.AddRange(item.proStockInfoDetails);
-                }
-                proStockInfoDetails = proStockInfoDetails.OrderBy(x => x.DateCode).ThenBy(x => x.CreateDate).ToList() ;
-                List<Dt_ProStockInfo> delProStockInfos = new List<Dt_ProStockInfo>();
-                List<Dt_ProStockInfoDetail> delStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in outProStocks)
-                {
-                    //鏌ヨ搴撳瓨璁板綍
-                    if (item.ShippingNumber != outProOrderNo)
-                    {
-                        return await Task.FromResult(content.Error($"ERP杩斿洖浜嗗嚭搴撹鍗晎item.ShippingNumber}搴撳瓨淇℃伅"));
-                    }
-                    //鑾峰彇搴撳瓨
-                    List<Dt_ProStockInfoDetail> outStocks = proStockInfoDetails.Where(x=>x.ProductCode==item.Partnum).ToList();
-                    if (outStocks.Count==0 || outStocks==null)
-                    {
-                        return await Task.FromResult(content.Error($"{item.Partnum}浜у搧鍨嬪彿搴撳瓨涓嶅瓨鍦�"));
-                    }
-                    foreach (var itemOut in outStocks)
-                    {
-                        if (item.Quantity==0)
-                        {
-                            break;
-                        }
-                        if (item.Quantity >= itemOut.StockPcsQty)
-                        {
-                            Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.SaleOrder == item.SoNumber && x.PCode == item.Partnum);
-                            if (proOutOrderDetail == null)
-                            {
-                                return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}鏈壘鍒伴攢鍞鍗晎item.SoNumber}鏄庣粏,璇锋鏌�"));
-                            }
-                            //鏇存柊鍑哄簱鏄庣粏鍗曟暟閲�
-                            proOutOrderDetail.OverQtyPcs += itemOut.StockPcsQty;
-                            item.Quantity -= (int)itemOut.StockPcsQty;
-                            delStockInfoDetails.Add(itemOut);
-                            proStockInfoDetails.Remove(itemOut);
-                            if (proOutOrderDetail.OverQtyPcs > proOutOrderDetail.QtyPcs)
-                            {
-                                return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}閿�鍞鍗晎item.SoNumber}鏁伴噺婧㈠嚭{proOutOrderDetail.OverQtyPcs - proOutOrderDetail.QtyPcs}"));
-                            }
-                            if (proOutOrderDetail.ProOrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                            }
-                            if (proOutOrderDetail.OverQtyPcs == proOutOrderDetail.QtyPcs)
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                            }
-                        }
-                        else if (item.Quantity < itemOut.StockPcsQty)
-                        {
-                            Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.SaleOrder == item.SoNumber && x.PCode == item.Partnum);
-                            if (proOutOrderDetail == null)
-                            {
-                                return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}鏈壘鍒伴攢鍞鍗晎item.SoNumber}鏄庣粏,璇锋鏌�"));
-                            }
-                            //鏇存柊鍑哄簱鏄庣粏鍗曟暟閲�
-                            proOutOrderDetail.OverQtyPcs += item.Quantity;
-                            item.Quantity -= item.Quantity;
-                            float Range = itemOut.StockPcsQty / itemOut.SETQty;
-                            itemOut.SETQty = item.Quantity / Range;
-                            itemOut.StockPcsQty -= item.Quantity;
-                            if (proOutOrderDetail.OverQtyPcs > proOutOrderDetail.QtyPcs)
-                            {
-                                return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}閿�鍞鍗晎item.SoNumber}鏁伴噺婧㈠嚭{proOutOrderDetail.OverQtyPcs - proOutOrderDetail.QtyPcs}"));
-                            }
-                            if (proOutOrderDetail.ProOrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                            }
-                            if (proOutOrderDetail.OverQtyPcs == proOutOrderDetail.QtyPcs)
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                            }
-                        }
-                    }
-                }
-                if (proOutOrder.Details.Count == proOutOrder.Details.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count())
-                {
-                    proOutOrder.ProOrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                }
-                else
-                {
-                    Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.ProOrderDetailStatus <= OrderDetailStatusEnum.Over.ObjToInt());
-                    return await Task.FromResult(content.Error($"{proOutOrderDetail?.SaleOrder}閿�鍞鍗曟暟閲忛渶鍑簕proOutOrderDetail?.QtyPcs},鍙嚭{proOutOrderDetail?.OverQtyPcs}"));
-                }
-                //鏇存柊鏁版嵁
-                _unitOfWorkManage.BeginTran();
-                if (delStockInfoDetails.Count > 0)
-                {
-                    _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(delStockInfoDetails, OperateTypeEnum.鑷姩鍒犻櫎);
-                }
-                await _stockRepository.ProStockInfoDetailRepository.UpdateDataAsync(proStockInfoDetails);
-                await BaseDal.UpdateDataAsync(proOutOrder);
-                await _outboundRepository.ProOutOrderDetailRepository.UpdateDataAsync(proOutOrder.Details);
-                _unitOfWorkManage.CommitTran();
-                return await Task.FromResult(content.OK());
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return await Task.FromResult(content.Error(ex.Message));
-            }
-        }
-        /// <summary>
-        /// 鍑哄簱鍗曟壂鐮佸悓姝RP
-        /// </summary>
-        /// <returns></returns>
-        public async Task<WebResponseContent> OutProScanCodeSync(SaveModel saveModel)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                string? ProOutNo = saveModel.MainData["outProOrderNo"].ToString();
-                var Codes = saveModel.DelKeys.Select(x=>x.ToString().Trim()).ToList();
-                if (Codes.Count<=0)
-                {
-                    return await Task.FromResult(content.Error("鎵弿鍐呭涓嶈兘涓虹┖"));
-                }
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOutOrderNo == ProOutNo).Includes(x => x.Details).First();
-                if (proOutOrder == null)
-                {
-                    return await Task.FromResult(content.Error($"鍑哄簱鍗晎ProOutNo}涓嶅瓨鍦�"));
-                }
-                if (proOutOrder.ProOrderStatus >= OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return await Task.FromResult(content.Error($"鍑哄簱鍗晎ProOutNo}宸插畬鎴愭垨鍏抽棴"));
-                }
-                string? userName = App.User.UserName;//GSWMS
-                List<OutProInfoDTO> outProInfos= new List<OutProInfoDTO>();
-                foreach (var item in Codes)
-                {
-                    string[] proInfoInputs = item.Split(',');
-                    if (proInfoInputs.Length!=5)
-                    {
-                        return await Task.FromResult(content.Error($"澶栧寘{item}鎵弿涓嶅叏"));
-                    }
-                    OutProInfoDTO outProInfo=new OutProInfoDTO()
-                    {
-                        ProductCode= proInfoInputs[1],
-                        OutQtys = proInfoInputs[4].ObjToInt()
-                    };
-                    outProInfos.Add(outProInfo);
-                }
-                //鑾峰彇骞冲簱搴撳尯
-                Dt_Warehouse warehouse = await _basicRepository.WarehouseRepository.QueryFirstAsync(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                if (warehouse == null)
-                {
-                    return await Task.FromResult(content.Error("鏈壘鍒板簱鍖轰俊鎭�"));
-                }
-                //鑾峰彇鎵�鏈夊钩搴撶殑鏁版嵁
-                List<Dt_ProStockInfo> AllproStockInfos = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>()
-                    .Where(x => x.WarehouseId == warehouse.WarehouseId)
-                    .Includes(x => x.proStockInfoDetails).ToList();
-                List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in AllproStockInfos)
-                {
-                    proStockInfoDetails.AddRange(item.proStockInfoDetails);
-                }
-                proStockInfoDetails = proStockInfoDetails.OrderBy(x => x.DateCode).ThenBy(x => x.CreateDate).ThenBy(x=>x.StockPcsQty).ToList();
-                List<Dt_Warehouse> warehouses = await _basicRepository.WarehouseRepository.QueryDataAsync(x => x.WarehouseType == WarehouseTypEnum.鎴愬搧.ToString());
-                //灏嗗叾鍒嗙粍
-                outProInfos = outProInfos.GroupBy(x => x.ProductCode).Select(x=>new OutProInfoDTO()
-                {
-                    ProductCode=x.Key,
-                    OutQtys=x.Sum(x=>x.OutQtys)
-                }).ToList();
-                List<Dt_ProStockInfoDetail> UpStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in outProInfos)
-                {
-                    //鑾峰彇搴撳瓨
-                    List<Dt_ProStockInfoDetail> outStocks = proStockInfoDetails.Where(x => x.ProductCode == item.ProductCode && x.OutProNo == null).ToList();
-                    if (outStocks.Count <= 0 || outProInfos==null)
-                    {
-                        return await Task.FromResult(content.Error($"鏈壘鍒颁骇鍝亄item.ProductCode}搴撳瓨"));
-                    }
-                    foreach (var outStock in outStocks)
-                    {
-                        //濡傛灉鎵e噺涓�0璺冲嚭閫昏緫
-                        if (item.OutQtys == 0)
-                        {
-                            break;
-                        }
-                        //鍒ゆ柇鍑哄簱鏁伴噺鏄惁澶т簬鎴栫瓑浜庡簱瀛樻暟閲�
-                        if (item.OutQtys >= outStock.StockPcsQty)
-                        {
-                            Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.PCode == item.ProductCode && x.ProOrderDetailStatus < OrderDetailStatusEnum.Over.ObjToInt());
-                            //鍒ゆ柇鏄惁瀛樺湪鍚屼竴鍨嬪彿涓ゆ潯鏄庣粏
-                            if (proOutOrderDetail == null)
-                            {
-                                return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}鏈壘鍒颁骇鍝亄item.ProductCode}鏄庣粏,璇锋鏌�"));
-                            }
-                            List<Dt_ProOutOrderDetail>? outOrderDetails = proOutOrder.Details.Where(x => x.PCode == item.ProductCode && x.ProOrderDetailStatus < OrderDetailStatusEnum.Over.ObjToInt() && x.Id != proOutOrderDetail.Id).ToList();
-                            float BeyondQtys = proOutOrderDetail.QtyPcs - proOutOrderDetail.OverQtyPcs;
-                            //鏇存柊鍑哄簱鏄庣粏鍗曟暟閲�
-                            proOutOrderDetail.OverQtyPcs += outStock.StockPcsQty;
-                            
-                            //鏄惁瓒呭嚭
-                            if (proOutOrderDetail.OverQtyPcs > proOutOrderDetail.QtyPcs)
-                            {
-                                if (outOrderDetails.Count>=1)
-                                {
-                                    proOutOrderDetail.OverQtyPcs -= outStock.StockPcsQty;
-                                    proOutOrderDetail.OverQtyPcs += BeyondQtys;
-                                    outStock.OutboundQuantity = BeyondQtys;
-                                    outStock.OutDetailSaleNo = proOutOrderDetail.SaleOrder;
-                                    outStock.OutProNo = proOutOrder.ProOutOrderNo;
-                                    float Range = outStock.StockPcsQty / outStock.SETQty;
-                                    if (outStock.OutboundQuantity== outStock.StockPcsQty)
-                                    {
-                                        outStock.OutSETQty = outStock.SETQty;
-                                        outStock.AssignDel = 1;
-                                    }
-                                    else
-                                    {
-                                        outStock.OutSETQty = outStock.OutboundQuantity / Range;
-                                    }
-                                    item.OutQtys -= (int)BeyondQtys;
-                                    UpStockInfoDetails.Add(outStock);
-                                    proStockInfoDetails.Remove(outStock);
-                                }
-                                else
-                                {
-                                    return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}琛屽彿{proOutOrderDetail.RowId}浜у搧鍨嬪彿{item.ProductCode}鏁伴噺婧㈠嚭{proOutOrderDetail.OverQtyPcs - proOutOrderDetail.QtyPcs}"));
-                                }
-                            }
-                            else
-                            {
-                                outStock.OutboundQuantity = outStock.StockPcsQty;
-                                outStock.OutDetailSaleNo = proOutOrderDetail.SaleOrder;
-                                outStock.OutProNo = proOutOrder.ProOutOrderNo;
-                                outStock.OutSETQty = outStock.SETQty;
-                                outStock.AssignDel = 1;
-                                item.OutQtys -= (int)outStock.StockPcsQty;
-                                UpStockInfoDetails.Add(outStock);
-                                proStockInfoDetails.Remove(outStock);
-                            }
-                            if (proOutOrderDetail.ProOrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                            }
-                            if (proOutOrderDetail.OverQtyPcs == proOutOrderDetail.QtyPcs)
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                            }
-                        }
-                        else if (item.OutQtys < outStock.StockPcsQty) //鍓╀綑鏁伴噺灏忎簬
-                        {
-                            Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.PCode == item.ProductCode && x.ProOrderDetailStatus < OrderDetailStatusEnum.Over.ObjToInt());
-                            if (proOutOrderDetail == null)
-                            {
-                                return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}鏈壘鍒颁骇鍝亄item.ProductCode}鏄庣粏,璇锋鏌�"));
-                            }
-                            List<Dt_ProOutOrderDetail>? outOrderDetails = proOutOrder.Details.Where(x => x.PCode == item.ProductCode && x.ProOrderDetailStatus < OrderDetailStatusEnum.Over.ObjToInt() && x.Id != proOutOrderDetail.Id).ToList();
-                            //鏇存柊鍑哄簱鏄庣粏鍗曟暟閲�
-                            float BeyondQtys = proOutOrderDetail.QtyPcs - proOutOrderDetail.OverQtyPcs;
-                            proOutOrderDetail.OverQtyPcs += item.OutQtys;
-                            
-                            //鏄惁瓒呭嚭
-                            if (proOutOrderDetail.OverQtyPcs > proOutOrderDetail.QtyPcs)
-                            {
-                                if (outOrderDetails.Count >= 1)
-                                {
-                                    proOutOrderDetail.OverQtyPcs -= outStock.StockPcsQty;
-                                    proOutOrderDetail.OverQtyPcs += BeyondQtys;
-                                    outStock.OutDetailSaleNo = proOutOrderDetail.SaleOrder;
-                                    outStock.OutProNo = proOutOrder.ProOutOrderNo;
-                                    outStock.OutboundQuantity = BeyondQtys;
-                                    float Range = outStock.StockPcsQty / outStock.SETQty;
-                                    outStock.OutSETQty = outStock.OutboundQuantity / Range;
-                                    item.OutQtys -= (int)BeyondQtys;
-                                    UpStockInfoDetails.Add(outStock);
-                                    proStockInfoDetails.Remove(outStock);
-                                }
-                                else
-                                {
-                                    return await Task.FromResult(content.Error($"鍑哄簱鍗晎proOutOrder.ProOutOrderNo}琛屽彿{proOutOrderDetail.RowId}浜у搧鍨嬪彿{item.ProductCode}鏁伴噺婧㈠嚭{proOutOrderDetail.OverQtyPcs - proOutOrderDetail.QtyPcs}"));
-                                }
-                            }
-                            else
-                            {
-                                outStock.OutDetailSaleNo = proOutOrderDetail.SaleOrder;
-                                outStock.OutProNo = proOutOrder.ProOutOrderNo;
-                                outStock.OutboundQuantity = item.OutQtys;
-                                float Range = outStock.StockPcsQty / outStock.SETQty;
-                                outStock.OutSETQty = outStock.OutboundQuantity / Range;
-                                item.OutQtys -= item.OutQtys;
-                                UpStockInfoDetails.Add(outStock);
-                                proStockInfoDetails.Remove(outStock);
-                            }
-                            if (proOutOrderDetail.ProOrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                            }
-                            if (proOutOrderDetail.OverQtyPcs == proOutOrderDetail.QtyPcs)
-                            {
-                                proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                            }
-                        }
-                    }
-                }
-                if (proOutOrder.Details.Count == proOutOrder.Details.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count())
-                {
-                    proOutOrder.ProOrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                }
-                else
-                {
-                    Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.ProOrderDetailStatus < OrderDetailStatusEnum.Over.ObjToInt());
-                    return await Task.FromResult(content.Error($"{proOutOrderDetail?.SaleOrder}閿�鍞鍗曟暟閲忛渶鍑簕proOutOrderDetail?.QtyPcs},鍙嚭{proOutOrderDetail?.OverQtyPcs}"));
-                }
-                List<StockOutItemsItem> stockOutItems = new List<StockOutItemsItem>();
-                if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    //鑾峰彇鎵�鏈夊凡鎵爜寰呭彂璐х殑搴撳瓨
-                    List<Dt_ProStockInfoDetail> assOutStocks = _stockRepository.ProStockInfoDetailRepository.Db.Queryable<Dt_ProStockInfoDetail>()
-                    .Where(x => x.OutProNo == ProOutNo).ToList();
-                    UpStockInfoDetails.AddRange(assOutStocks);
-                    foreach (var item in UpStockInfoDetails)
-                    {
-                        StockOutItemsItem outItemsItem = new StockOutItemsItem()
-                        {
-                            PartNum = item.ProductCode,
-                            Rev = item.ProductVersion,
-                            SoNumber = item.OutDetailSaleNo,
-                            BatchNumber = item.ProductCode,
-                            QtyPcs = item.OutboundQuantity,
-                            QtySet = item.OutSETQty
-                        };
-                        stockOutItems.Add(outItemsItem);
-                    }
-                }
-                Dt_Warehouse warehouseOut = warehouses.Where(x => x.WarehouseId == proOutOrder.WarehouseId).FirstOrDefault();
-                _unitOfWorkManage.BeginTran();
-                //澶勭悊搴撳瓨鏁版嵁鍜屼笂浼燛RP
-                if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    //鎴愬搧搴撳瓨璁板綍鍙樺姩寰呭姞鍏�
-                    ERPProOutOrderModel proOutOrderModel = new ERPProOutOrderModel()
-                    {
-                        Way = 1,
-                        StockOutCode = _outboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.ProOutCOdeRule)),
-                        ConfirmedUserNo = App.User.UserName,
-                        AssignUserNo = App.User.UserName,
-                        WarehouseCode = warehouseOut.WarehouseCode,
-                        ShipDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                        DeliverplanCode = proOutOrder.ProOutOrderNo,
-                        Remark = proOutOrder.Remark,
-                        StockOutItems = stockOutItems
-                    };
-                    //鑾峰彇鍒犻櫎搴撳瓨
-                    List<Dt_ProStockInfoDetail> delDetails = UpStockInfoDetails.Where(x=>x.AssignDel==1).ToList();
-                    List<Dt_ProStockInfoDetail> UpDetails = UpStockInfoDetails.Where(x => x.AssignDel != 1).ToList();
-                    //鏇存柊鏁版嵁
-                    UpDetails.ForEach(x =>
-                    {
-                        x.StockPcsQty -= x.OutboundQuantity;
-                        x.SETQty -= x.OutSETQty;
-                        x.OutDetailId = 0;
-                        x.OutDetailSaleNo = null;
-                        x.OutProNo = null;
-                    });
-                    _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(delDetails, OperateTypeEnum.鑷姩瀹屾垚);
-                    await _stockRepository.ProStockInfoDetailRepository.UpdateDataAsync(UpDetails);
-                    //鍚屾ERP
-                    string response = _invokeERPService.InvokeProOutApi(proOutOrderModel);
-                    ErpRequestContent erpRequestContent = response.DeserializeObject<ErpRequestContent>();
-                    if (erpRequestContent.res != 1)
-                    {
-                        throw new Exception("鍚屾ERP澶辫触,閿欒淇℃伅:" + erpRequestContent.Data);
-                    }
-                }
-                else
-                {
-                    await _stockRepository.ProStockInfoDetailRepository.UpdateDataAsync(UpStockInfoDetails);
-                }
-                await _outboundRepository.ProOutOrderDetailRepository.UpdateDataAsync(proOutOrder.Details);
-                await BaseDal.UpdateDataAsync(proOutOrder);
-                _unitOfWorkManage.CommitTran();
-                return await Task.FromResult(content.OK());
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return await Task.FromResult(content.Error(ex.Message));
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockRepository/ProStockInfoRepository.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockRepository/ProStockInfoRepository.cs"
index 2675255..b78cdfd 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockRepository/ProStockInfoRepository.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockRepository/ProStockInfoRepository.cs"
@@ -21,70 +21,5 @@
         {
             _basicRepository = basicRepository;
         }
-        //鏍规嵁鏄庣粏鏁版嵁鏌ユ壘鍙敤搴撳瓨搴撳瓨
-        public List<Dt_ProStockInfo> GetProStocks(Dt_ProOutOrderDetail proOutOrderDetail,List<string> locationInfos)
-        {
-            List<Dt_ProStockInfo>? proStockInfos = null;
-            bool isCanLot= string.IsNullOrEmpty(proOutOrderDetail.PLot);
-            bool isCanDate = string.IsNullOrEmpty(proOutOrderDetail.DateCode);
-            bool isCanVer = string.IsNullOrEmpty(proOutOrderDetail.OutSpecifyVer);
-            ////鍒ゆ柇瀹㈡埛鍑哄叆瑙勫垯
-            //Dt_CustomerInfo customerInfo = _basicRepository.CustomerInfoRepository.QueryFirst(x=>x.Code== proOutOrderDetail.Customer);
-            //if (customerInfo==null)
-            //{
-            //    throw new Exception("鏈壘鍒板鎴蜂俊鎭�");
-            //}
-            //if (customerInfo.OutRule==CustomerOutRuleEnum.SaleOrderRule.ObjToInt())
-            //{
-            //    proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode) && x.ProStockAttribute == ProStockAttributeEnum.鎴愬搧.ObjToInt())
-            //    .Includes(x => x.proStockInfoDetails)
-            //    .Where(x => x.proStockInfoDetails
-            //    .Any(v =>
-            //        v.SaleOrder==proOutOrderDetail.SaleOrder
-            //        && v.ProductCode == proOutOrderDetail.PCode
-            //        && v.ProductVersion == proOutOrderDetail.PVer
-            //        && (isCanLot ? isCanLot : v.BagNo == proOutOrderDetail.PLot)
-            //        && (isCanDate ? isCanDate : v.DateCode == proOutOrderDetail.DateCode)
-            //    ))
-            //    .ToList();
-            //}
-            //else
-            //{
-                proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode) && x.ProStockAttribute == ProStockAttributeEnum.鎴愬搧.ObjToInt())
-                .Includes(x => x.proStockInfoDetails)
-                .Where(x => x.proStockInfoDetails
-                .Any(v =>
-                    v.ProductCode == proOutOrderDetail.PCode
-                    && v.ProductVersion.StartsWith(proOutOrderDetail.PVer.Substring(0,1)) 
-                    && (isCanLot ? isCanLot : v.BagNo == proOutOrderDetail.PLot)
-                    && (isCanDate ? isCanDate : v.DateCode == proOutOrderDetail.DateCode)
-                ))
-                .ToList();
-            //}
-            proStockInfos = proStockInfos?.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.DateCode).ThenBy(x=>x.CreateDate).ThenBy(x=>x.proStockInfoDetails.Sum(x=>x.StockPcsQty)).ToList();
-            return proStockInfos;
-        }
-        /// <summary>
-        /// 鑾峰彇MES鎻愬簱搴撳瓨(灏炬暟浠�)
-        /// </summary>
-        /// <param name="mesRworkOutboundOrder"></param>
-        /// <param name="locationInfos"></param>
-        /// <returns></returns>
-        public List<Dt_ProStockInfo> GetProStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrder, List<string> locationInfos)
-        {
-            List<Dt_ProStockInfo>? proStockInfos = null;
-            bool isCanDate = string.IsNullOrEmpty(mesRworkOutboundOrder.DateCode);
-            proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode) && x.ProStockAttribute==ProStockAttributeEnum.灏炬暟.ObjToInt())
-                .Includes(x => x.proStockInfoDetails)
-                .Where(x => x.proStockInfoDetails
-                .Any(v => v.SaleOrder == mesRworkOutboundOrder.SaleOrder
-                && v.ProductCode == mesRworkOutboundOrder.ProductCode
-                && v.ProductVersion == mesRworkOutboundOrder.ProductVersion
-                && (isCanDate ? isCanDate : v.DateCode == mesRworkOutboundOrder.DateCode)
-                ))
-            .ToList();
-            proStockInfos = proStockInfos.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.DateCode).ThenBy(x => x.proStockInfoDetails.Sum(x => x.StockPcsQty)).ToList();
-            return proStockInfos;
-        }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/MaterielnfoStatisticsService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/MaterielnfoStatisticsService.cs"
deleted file mode 100644
index d8d262c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/MaterielnfoStatisticsService.cs"
+++ /dev/null
@@ -1,308 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseRepository;
-using WIDESEA_Core.DB.Models;
-using WIDESEA_Core.Helper;
-using WIDESEA_Core.HostedService;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IStockService;
-using WIDESEA_Model.Models;
-using System.Linq;
-using WIDESEA_Common.WareHouseEnum;
-using Magicodes.ExporterAndImporter.Core;
-using Magicodes.ExporterAndImporter.Excel;
-using WIDESEA_Common.LocationEnum;
-using WIDESEA_Core.Utilities;
-
-namespace WIDESEA_StockService
-{
-    public partial class MaterielnfoStatisticsService : IMaterielnfoStatisticsService
-    {
-        public readonly IUnitOfWorkManage _unitOfWorkManage;
-        public readonly SqlSugarClient _dbBase;
-
-        public MaterielnfoStatisticsService(IUnitOfWorkManage unitOfWorkManage) {
-            _unitOfWorkManage = unitOfWorkManage;
-            _dbBase = unitOfWorkManage.GetDbClient();
-        }
-
-        public virtual PageGridData<MaterielnfoStatisticsDTO> GetPageGridData(PageDataOptions options)
-        {
-            try
-            {
-
-                List<MaterielnfoStatisticsDTO> materielnfoStatistics = new List<MaterielnfoStatisticsDTO>();
-                ISugarQueryable<Dt_StockInfoDetail> sugarQueryable1 = _dbBase.Queryable<Dt_StockInfoDetail>();
-
-                string whereStoDe = GetDataRole(typeof(Dt_StockInfoDetail));
-                sugarQueryable1 = sugarQueryable1.Where(whereStoDe);
-
-
-                string whereSto = GetDataRole(typeof(Dt_StockInfo));
-                ISugarQueryable<Dt_StockInfo> sugarQueryable = _dbBase.Queryable<Dt_StockInfo>().Where(whereSto);
-                if (!string.IsNullOrEmpty(options.Wheres))
-                {
-                    try
-                    {
-                        List<SearchParameters> searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
-                        if (searchParametersList.Count > 0)
-                        {
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfoDetail.MaterielCode).FirstLetterToLower());
-                                if (searchParameters != null)
-                                {
-                                    sugarQueryable1 = sugarQueryable1.Where(x => x.MaterielCode.Contains(searchParameters.Value));
-                                }
-                            }
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfo.WarehouseId).FirstLetterToLower());
-                                if (searchParameters != null) {
-                                    sugarQueryable = sugarQueryable.Where(x => x.WarehouseId.Equals(searchParameters.Value));                             
-                                }
-                            }
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfo.StockStatus).FirstLetterToLower());
-                                if(searchParameters!= null)
-                                {
-                                    sugarQueryable = sugarQueryable.Where(x => x.StockStatus.Equals(searchParameters.Value));
-                                }
-                            }
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfoDetail.MaterielName).FirstLetterToLower());
-                                if (searchParameters != null)
-                                {
-                                    sugarQueryable1 = sugarQueryable1.Where(x => x.MaterielName.Contains(searchParameters.Value));
-                                }
-                            }
-
-                        }
-
-                    }
-                    catch(Exception ex)
-                    {
-                    
-                    }
-                }
-                    
-
-                ISugarQueryable<MaterielnfoStatisticsDTO> sugarQueryable2 = sugarQueryable1.InnerJoin(sugarQueryable, (b, a) => b.StockId == a.Id).Where((b,a)=>a.LocationCode!="" && a.LocationCode!=null).Select((b, a)
-                    => new MaterielnfoStatisticsDTO
-                    {
-                        WarehouseId = a.WarehouseId,
-                        MaterielCode = b.MaterielCode,
-                        MaterielName = b.MaterielName,
-                        StockQuantity = b.StockQuantity,
-                        OutboundQuantity = b.OutboundQuantity,
-                        StockStatus = a.StockStatus,
-                        Unit = b.Unit,
-                        Remark = a.Remark,
-                        
-                    });
-                // 鑾峰彇鎵�鏈夋暟鎹�
-                var allData = sugarQueryable2.ToList();
-
-                // 浣跨敤瀛楀吀杩涜鍒嗙粍姹囨��
-                var groupedData = new Dictionary<string, MaterielnfoStatisticsDTO>();
-                foreach (var item in allData)
-                {
-                    if (groupedData.ContainsKey(item.MaterielCode))
-                    {
-                        groupedData[item.MaterielCode].StockQuantity += item.StockQuantity;
-                        groupedData[item.MaterielCode].OutboundQuantity += item.OutboundQuantity;
-                    }
-                    else
-                    {
-                        groupedData[item.MaterielCode] = new MaterielnfoStatisticsDTO
-                        {
-                            WarehouseId = item.WarehouseId,
-                            MaterielCode = item.MaterielCode,
-                            MaterielName = item.MaterielName,
-                            StockQuantity = item.StockQuantity,
-                            OutboundQuantity = item.OutboundQuantity,
-                            StockStatus = item.StockStatus,
-                            Unit = item.Unit,
-                            Remark = item.Remark
-                        };
-                    }
-                }
-
-                // 杞崲涓哄垪琛�
-                materielnfoStatistics = groupedData.Values.ToList();
-
-                // 鍒嗛〉澶勭悊
-                int startIndex = (options.Page - 1) * options.Rows;
-                int endIndex = Math.Min(startIndex + options.Rows, materielnfoStatistics.Count);
-                materielnfoStatistics = materielnfoStatistics.GetRange(startIndex, endIndex - startIndex);
-
-                int count = groupedData.Count;
-
-                return new PageGridData<MaterielnfoStatisticsDTO>(count, materielnfoStatistics);
-                
-            }
-            catch(Exception ex) 
-            {
-            
-            }
-            return new PageGridData<MaterielnfoStatisticsDTO>();
-        }
-
-        public virtual WebResponseContent Export(PageDataOptions options)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                Type t = typeof(MaterielnfoStatisticsDTO);
-
-                string savePath = AppDomain.CurrentDomain.BaseDirectory + $"ExcelExport";
-                IExporter exporter = new ExcelExporter();
-                options.Page = 1;
-                options.Rows = 30;
-                options.Order = "desc";
-                options.Sort = "MaterielCode";
-                List<MaterielnfoStatisticsDTO> materielnfoStatistics = new List<MaterielnfoStatisticsDTO>();
-                ISugarQueryable<Dt_StockInfoDetail> sugarQueryable1 = _dbBase.Queryable<Dt_StockInfoDetail>();
-
-                string whereStoDe = GetDataRole(typeof(Dt_StockInfoDetail));
-                sugarQueryable1 = sugarQueryable1.Where(whereStoDe);
-
-
-                string whereSto = GetDataRole(typeof(Dt_StockInfo));
-                ISugarQueryable<Dt_StockInfo> sugarQueryable = _dbBase.Queryable<Dt_StockInfo>().Where(whereSto);
-                if (!string.IsNullOrEmpty(options.Wheres))
-                {
-                    try
-                    {
-                        List<SearchParameters> searchParametersList = options.Wheres.DeserializeObject<List<SearchParameters>>();
-                        if (searchParametersList.Count > 0)
-                        {
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfoDetail.MaterielCode).FirstLetterToLower());
-                                if (searchParameters != null)
-                                {
-                                    sugarQueryable1 = sugarQueryable1.Where(x => x.MaterielCode.Contains(searchParameters.Value));
-                                }
-                            }
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfo.WarehouseId).FirstLetterToLower());
-                                if (searchParameters != null)
-                                {
-                                    sugarQueryable = sugarQueryable.Where(x => x.WarehouseId.Equals(searchParameters.Value));
-                                }
-                            }
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfo.StockStatus).FirstLetterToLower());
-                                if (searchParameters != null)
-                                {
-                                    sugarQueryable = sugarQueryable.Where(x => x.StockStatus.Equals(searchParameters.Value));
-                                }
-                            }
-                            {
-                                SearchParameters? searchParameters = searchParametersList.FirstOrDefault(x => x.Name == nameof(Dt_StockInfoDetail.MaterielName).FirstLetterToLower());
-                                if (searchParameters != null)
-                                {
-                                    sugarQueryable1 = sugarQueryable1.Where(x => x.MaterielName.Contains(searchParameters.Value));
-                                }
-                            }
-
-                        }
-
-                    }
-                    catch (Exception ex)
-                    {
-
-                    }
-                }
-
-
-                ISugarQueryable<MaterielnfoStatisticsDTO> sugarQueryable2 = sugarQueryable1.InnerJoin(sugarQueryable, (b, a) => b.StockId == a.Id).Where((b, a) => a.LocationCode != "" && a.LocationCode != null).Select((b, a)
-                    => new MaterielnfoStatisticsDTO
-                    {
-                        WarehouseId = a.WarehouseId,
-                        MaterielCode = b.MaterielCode,
-                        MaterielName = b.MaterielName,
-                        StockQuantity = b.StockQuantity,
-                        OutboundQuantity = b.OutboundQuantity,
-                        StockStatus = a.StockStatus,
-                        Unit = b.Unit,
-                        Remark = a.Remark,
-
-                    });
-                // 鑾峰彇鎵�鏈夋暟鎹�
-                var allData = sugarQueryable2.ToList();
-
-                // 浣跨敤瀛楀吀杩涜鍒嗙粍姹囨��
-                var groupedData = new Dictionary<string, MaterielnfoStatisticsDTO>();
-                foreach (var item in allData)
-                {
-                    if (groupedData.ContainsKey(item.MaterielCode))
-                    {
-                        groupedData[item.MaterielCode].StockQuantity += item.StockQuantity;
-                        groupedData[item.MaterielCode].OutboundQuantity += item.OutboundQuantity;
-                    }
-                    else
-                    {
-                        groupedData[item.MaterielCode] = new MaterielnfoStatisticsDTO
-                        {
-                            WarehouseId = item.WarehouseId,
-                            MaterielCode = item.MaterielCode,
-                            MaterielName = item.MaterielName,
-                            StockQuantity = item.StockQuantity,
-                            OutboundQuantity = item.OutboundQuantity,
-                            StockStatus = item.StockStatus,
-                            Unit = item.Unit,
-                            Remark = item.Remark
-                        };
-                    }
-                }
-
-                // 杞崲涓哄垪琛�
-                materielnfoStatistics = groupedData.Values.ToList();
-
-                byte[] data = exporter.ExportAsByteArray(materielnfoStatistics).Result;
-
-                string fileName = "鐗╂枡鍒嗙被缁熻.xlsx";
-
-                FileHelper.WriteFile(savePath, fileName, data);
-
-                content = WebResponseContent.Instance.OK(data: savePath + "\\" + fileName);
-            }
-            catch (Exception ex)
-            {
-                content = WebResponseContent.Instance.Error(ex.Message);
-            }
-            return content;
-        }
-        private string GetDataRole(Type type)
-        {
-            try
-            {
-                UserRole? userRole = PermissionDataHostService.UserRoles.FirstOrDefault(x => x.UserId == App.User.UserId);
-                if (userRole == null)
-                    throw new Exception($"鏃犳潈闄�");
-
-                if (type.IsAssignableFrom(typeof(BaseWarehouseEntity)) || type.GetProperty(nameof(BaseWarehouseEntity.WarehouseId)) != null)
-                {
-                    if (userRole.WarehouseIds.Count > 0)
-                    {
-                        return $"{nameof(BaseWarehouseEntity.WarehouseId)} in ({userRole.WarehouseIds.Serialize().Replace("[", "").Replace("]", "")})";
-                    }
-
-                    else
-                        return $"1 != 1";
-                }
-                else
-                {
-                    return "1 = 1";
-                }
-            }
-            catch (Exception ex)
-            {
-                throw new Exception($"鏃犳潈闄愶紝{ex.Message}");
-            }
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockInfoService.cs"
index 99a9bb7..b15fe63 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockInfoService.cs"
@@ -96,246 +96,5 @@
             }
             return content;
         }
-        //鏌ユ壘鍙敤搴撳瓨
-        public List<Dt_ProStockInfo> GetUseableStocks(int warehoseId,Dt_ProOutOrderDetail proOutOrderDetail)
-        {
-            List<string> locationCodes = _basicRepository.LocationInfoRepository.GetCanOutLocationCodes(warehoseId);
-            return BaseDal.GetProStocks(proOutOrderDetail,locationCodes);
-        }
-        /// <summary>
-        /// MES鎻愬簱鍙敤搴撳瓨
-        /// </summary>
-        /// <returns></returns>
-        public List<Dt_ProStockInfo> GetUseableStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrder)
-        {
-            //杞崲鎴� 鎴愬搧浠撲粨搴撲俊鎭幏鍙栧熬鏁板睘鎬х殑璐т綅
-            Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseCode==WarehouseEnum.HA71.ToString());
-            List<string> locationCodes = _basicRepository.LocationInfoRepository.GetCanOutLocationCodes(warehouse.WarehouseId);
-            return BaseDal.GetProStocks(mesRworkOutboundOrder, locationCodes);
-        }
-        /// <summary>
-        /// 鑾峰彇鍑哄簱搴撳瓨
-        /// </summary>
-        public List<Dt_ProStockInfo> GetOutboundStocks(List<Dt_ProStockInfo> stockInfos, Dt_ProOutOrderDetail outOrderDetail, float needQuantity, out float residueQuantity)
-        {
-            List<Dt_ProStockInfo> assignOutStocks =new List<Dt_ProStockInfo>();
-            float stockTotalQuantity = stockInfos.Select(x => x.proStockInfoDetails.Sum(v => v.StockPcsQty - v.OutboundQuantity)).Sum(x => x);
-            //stockInfos = stockInfos.OrderBy(x => x.Id).ToList();
-            bool isCanLot = string.IsNullOrEmpty(outOrderDetail.PLot);
-            bool isCanDate = string.IsNullOrEmpty(outOrderDetail.DateCode);
-            if (stockTotalQuantity >= needQuantity)//搴撳瓨澶�
-            {
-                int index = 0;
-                while (needQuantity > 0)
-                {
-                    Dt_ProStockInfo stockInfo = stockInfos[index];
-                    float useableStockQuantity = stockInfo.proStockInfoDetails
-                        .Where(x => x.ProductCode == outOrderDetail.PCode && x.ProductVersion.StartsWith(outOrderDetail.PVer.Substring(0,1))
-                            && (isCanLot ? isCanLot : x.BagNo == outOrderDetail.PLot)
-                            && (isCanDate ? isCanDate : x.DateCode == outOrderDetail.DateCode))
-                        .Sum(x => x.StockPcsQty - x.OutboundQuantity);
-                    if (useableStockQuantity < needQuantity)
-                    {
-                        stockInfo.proStockInfoDetails.Where(x => x.ProductCode == outOrderDetail.PCode && x.ProductVersion.StartsWith(outOrderDetail.PVer.Substring(0, 1))
-                            && (isCanLot ? isCanLot : x.BagNo == outOrderDetail.PLot)
-                            && (isCanDate ? isCanDate : x.DateCode == outOrderDetail.DateCode)).ToList().ForEach(x => x.OutboundQuantity = x.StockPcsQty);
-                        needQuantity -= useableStockQuantity;
-                    }
-                    else
-                    {
-                        stockInfo.proStockInfoDetails.ForEach(x =>
-                        {
-                            //婊¤冻鏉′欢杩涜鍒嗛厤
-                            if ((x.StockPcsQty > x.OutboundQuantity)
-                                && x.ProductCode == outOrderDetail.PCode && x.ProductVersion.StartsWith(outOrderDetail.PVer.Substring(0, 1)) 
-                                && (isCanLot ? isCanLot : x.BagNo == outOrderDetail.PLot)
-                                && (isCanDate ? isCanDate : x.DateCode == outOrderDetail.DateCode))
-                            {
-                                if (x.StockPcsQty - x.OutboundQuantity >= needQuantity)
-                                {
-                                    x.OutboundQuantity += needQuantity;
-                                    needQuantity = 0;
-                                    x.OutDetailSaleNo = outOrderDetail.SaleOrder;
-                                    x.OutDetailId = outOrderDetail.Id;
-                                }
-                                else
-                                {
-                                    needQuantity -= (x.StockPcsQty - x.OutboundQuantity);
-                                    x.OutboundQuantity = x.StockPcsQty;
-                                    x.OutDetailSaleNo = outOrderDetail.SaleOrder;
-                                    x.OutDetailId = outOrderDetail.Id;
-                                }
-                            }
-                        });
-                    }
-                    assignOutStocks.Add(stockInfo);
-                    index++;
-                }
-            }
-            #region 鎴愬搧鍙敤搴撳瓨涓嶈冻涓嶈繘琛屽垎閰�
-            //else
-            //{
-            //    for (int i = 0; i < stockInfos.Count; i++)
-            //    {
-            //        Dt_ProStockInfo stockInfo = stockInfos[i];
-            //        float useableStockQuantity = stockInfo.proStockInfoDetails
-            //            .Where(x => x.ProductCode == outOrderDetail.PCode && x.ProductVersion == outOrderDetail.PVer
-            //                && (isCanLot ? isCanLot : x.BagNo == outOrderDetail.PLot)
-            //                && (isCanDate ? isCanDate : x.DateCode == outOrderDetail.DateCode))
-            //            .Sum(x => x.StockPcsQty - x.OutboundQuantity);
-            //        if (useableStockQuantity < needQuantity)
-            //        {
-            //            stockInfo.proStockInfoDetails.ForEach(x => x.OutboundQuantity = x.StockPcsQty);
-            //            needQuantity -= useableStockQuantity;
-            //        }
-            //        else
-            //        {
-            //            stockInfo.proStockInfoDetails.ForEach(x =>
-            //            {
-            //                if (x.StockPcsQty > x.OutboundQuantity && x.ProductCode == outOrderDetail.PCode && x.ProductVersion == outOrderDetail.PVer
-            //                    && (isCanLot ? isCanLot : x.BagNo == outOrderDetail.PLot)
-            //                    && (isCanDate ? isCanDate : x.DateCode == outOrderDetail.DateCode))
-            //                {
-            //                    if (x.StockPcsQty - x.OutboundQuantity >= needQuantity)
-            //                    {
-            //                        x.OutboundQuantity += needQuantity;
-            //                        needQuantity = 0;
-            //                    }
-            //                    else
-            //                    {
-            //                        needQuantity -= (x.StockPcsQty - x.OutboundQuantity);
-            //                        x.OutboundQuantity = x.StockPcsQty;
-            //                    }
-            //                }
-            //            });
-            //        }
-            //        stockInfo.proStockInfoDetails.ForEach(x =>
-            //        {
-            //            x.OutDetailSaleNo = outOrderDetail.SaleOrder;
-            //            x.OutDetailId = outOrderDetail.Id;
-            //        });
-            //        assignOutStocks.Add(stockInfo);
-            //    }
-            //}
-            #endregion
-            residueQuantity = needQuantity;
-            return assignOutStocks;
-        }
-        /// <summary>
-        /// 鑾峰彇MES鎻愬簱搴撳瓨
-        /// </summary>
-        public List<Dt_ProStockInfo> GetOutboundStocks(List<Dt_ProStockInfo> stockInfos, Dt_MesRworkOutboundOrder mesRworkOutboundOrder, float needQuantity, out float residueQuantity)
-        {
-            List<Dt_ProStockInfo> assignOutStocks = new List<Dt_ProStockInfo>();
-            float stockTotalQuantity = stockInfos.Select(x => x.proStockInfoDetails.Sum(v => v.StockPcsQty - v.OutboundQuantity)).Sum(x => x);
-            //stockInfos = stockInfos.OrderBy(x => x.Id).ToList();
-            bool isCanDate = string.IsNullOrEmpty(mesRworkOutboundOrder.DateCode);
-            if (stockTotalQuantity >= needQuantity)//搴撳瓨澶�
-            {
-                int index = 0;
-                while (needQuantity > 0)
-                {
-                    Dt_ProStockInfo stockInfo = stockInfos[index];
-                    float useableStockQuantity = stockInfo.proStockInfoDetails
-                        .Where(x => x.SaleOrder == mesRworkOutboundOrder.SaleOrder 
-                            && x.ProductCode == mesRworkOutboundOrder.ProductCode 
-                            && x.ProductVersion == mesRworkOutboundOrder.ProductVersion
-                            && (isCanDate? isCanDate: x.DateCode == mesRworkOutboundOrder.DateCode))
-                        .Sum(x => x.StockPcsQty - x.OutboundQuantity);
-                    if (useableStockQuantity < needQuantity)
-                    {
-                        stockInfo.proStockInfoDetails.ForEach(x => x.OutboundQuantity = x.StockPcsQty);
-                        needQuantity -= useableStockQuantity;
-                    }
-                    else
-                    {
-                        stockInfo.proStockInfoDetails.ForEach(x =>
-                        {
-                            if ((x.StockPcsQty > x.OutboundQuantity) && x.SaleOrder == mesRworkOutboundOrder.SaleOrder 
-                                && x.ProductCode == mesRworkOutboundOrder.ProductCode 
-                                && x.ProductVersion == mesRworkOutboundOrder.ProductVersion
-                                && (isCanDate ? isCanDate : x.DateCode == mesRworkOutboundOrder.DateCode))
-                            {
-                                if (x.StockPcsQty - x.OutboundQuantity >= needQuantity)
-                                {
-                                    x.OutboundQuantity += needQuantity;
-                                    needQuantity = 0;
-                                }
-                                else
-                                {
-                                    needQuantity -= (x.StockPcsQty - x.OutboundQuantity);
-                                    x.OutboundQuantity = x.StockPcsQty;
-                                }
-                            }
-                        });
-                    }
-                    assignOutStocks.Add(stockInfo);
-                    index++;
-                }
-            }
-            else
-            {
-                for (int i = 0; i < stockInfos.Count; i++)
-                {
-                    Dt_ProStockInfo stockInfo = stockInfos[i];
-                    float useableStockQuantity = stockInfo.proStockInfoDetails
-                        .Where(x => x.SaleOrder == mesRworkOutboundOrder.SaleOrder
-                            && x.ProductCode == mesRworkOutboundOrder.ProductCode
-                            && x.ProductVersion == mesRworkOutboundOrder.ProductVersion
-                            && (isCanDate ? isCanDate : x.DateCode == mesRworkOutboundOrder.DateCode))
-                        .Sum(x => x.StockPcsQty - x.OutboundQuantity);
-                    if (useableStockQuantity < needQuantity)
-                    {
-                        stockInfo.proStockInfoDetails.ForEach(x => x.OutboundQuantity = x.StockPcsQty);
-                        needQuantity -= useableStockQuantity;
-                    }
-                    else
-                    {
-                        stockInfo.proStockInfoDetails.ForEach(x =>
-                        {
-                            if (x.StockPcsQty > x.OutboundQuantity && x.SaleOrder == mesRworkOutboundOrder.SaleOrder 
-                                && x.ProductCode == mesRworkOutboundOrder.ProductCode 
-                                && x.ProductVersion == mesRworkOutboundOrder.ProductVersion
-                                && (isCanDate ? isCanDate : x.DateCode == mesRworkOutboundOrder.DateCode))
-                            {
-                                if (x.StockPcsQty - x.OutboundQuantity >= needQuantity)
-                                {
-                                    x.OutboundQuantity += needQuantity;
-                                    needQuantity = 0;
-                                }
-                                else
-                                {
-                                    needQuantity -= (x.StockPcsQty - x.OutboundQuantity);
-                                    x.OutboundQuantity = x.StockPcsQty;
-                                }
-                            }
-                        });
-                    }
-                    assignOutStocks.Add(stockInfo);
-                }
-            }
-            residueQuantity = needQuantity;
-            return assignOutStocks;
-        }
-        ////澶勭悊鍑哄簱搴撳瓨
-        //public (List<Dt_ProStockInfoDetail>?, List<Dt_ProStockInfoDetail>?) HandleOutProStock(Dt_ProStockInfo proStockInfo)
-        //{
-        //    List<Dt_ProStockInfoDetail>? deleteStockDetails = null;
-        //    List<Dt_ProStockInfoDetail>? updateStockDetails = null;
-        //    foreach (var item in proStockInfo.proStockInfoDetails)
-        //    {
-        //        if (item.StockPcsQty==item.OutboundQuantity)
-        //        {
-        //            item.ProOutDetailStatus = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-        //            deleteStockDetails.Add(item);
-        //        }
-        //        else if(item.StockPcsQty> item.OutboundQuantity && item.OutboundQuantity>0)
-        //        {
-        //            item.StockPcsQty-=item.OutboundQuantity;
-        //            updateStockDetails.Add(item);
-        //        }
-        //    }
-        //    return (deleteStockDetails, updateStockDetails);
-        //}
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockViewService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockViewService.cs"
index a36a18b..c9faeef 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockViewService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/ProStockViewService.cs"
@@ -17,7 +17,6 @@
 using Magicodes.ExporterAndImporter.Core;
 using WIDESEA_Core.HostedService;
 using WIDESEA_Core.DB.Models;
-using WIDESEA_IOutboundRepository;
 using WIDESEA_IStockRepository;
 using WIDESEA_Common.StockEnum;
 using WIDESEA_IBasicRepository;
@@ -29,15 +28,13 @@
     {
         private readonly IUnitOfWorkManage _unitOfWorkManage;
         private readonly SqlSugarClient _dbBase;
-        private readonly IOutboundRepository _outboundRepository;
         private readonly IStockRepository  _stockRepository;
         private readonly IBasicRepository _basicRepository;
 
-        public ProStockViewService(IUnitOfWorkManage unitOfWorkManage, IOutboundRepository outboundRepository, IStockRepository stockRepository,IBasicRepository basicRepository)
+        public ProStockViewService(IUnitOfWorkManage unitOfWorkManage,IStockRepository stockRepository,IBasicRepository basicRepository)
         {
             _unitOfWorkManage = unitOfWorkManage;
             _dbBase = unitOfWorkManage.GetDbClient();
-            _outboundRepository = outboundRepository;
             _stockRepository = stockRepository;
             _basicRepository = basicRepository;
         }
@@ -362,83 +359,6 @@
             catch (Exception ex)
             {
                 throw new Exception($"鏃犳潈闄愶紝{ex.Message}");
-            }
-        }
-        public List<ProStockViewDTO> GetProPKSelectStocks(int orderId)
-        {
-            try
-            {
-                Dt_ProOutOrderDetail outOrderDetail = _outboundRepository.ProOutOrderDetailRepository.QueryFirst(x => x.Id == orderId);
-                if (outOrderDetail == null)
-                {
-                    throw new Exception($"鏈壘鍒板嚭搴撳崟鏄庣粏");
-                }
-                List<ProStockViewDTO> stockViewDTOs = new List<ProStockViewDTO>();
-                ISugarQueryable<Dt_ProStockInfo> sugarQueryable1 = _dbBase.Queryable<Dt_ProStockInfo>().Includes(x => x.proStockInfoDetails);
-                var pklist = sugarQueryable1.Where(b => b.LocationCode == "鎴愬搧寰呭彂璐у尯" && b.StockStatus==StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt() && (b.ShipmentOrder==null|| b.ShipmentOrder =="")).Where(x=>x.proStockInfoDetails.Any(v=>v.ProductCode== outOrderDetail.PCode)).Select(b => new ProStockViewDTO
-                {
-                    ProStockAttribute = b.ProStockAttribute,
-                    LocationCode = b.LocationCode,
-                    WarehouseId = b.WarehouseId,
-                    CreateDate = b.CreateDate,
-                    Creater = b.Creater,
-                    LocationName = b.LocationCode,
-                    Modifier = b.Modifier,
-                    ModifyDate = b.ModifyDate,
-                    PalletCode = b.PalletCode,
-                    StockRemark = b.Remark,
-                    ProStockId = b.Id,
-                    StockStatus = b.StockStatus,
-                    Details = b.proStockInfoDetails,
-                });
-                stockViewDTOs.AddRange(pklist.ToList());
-                stockViewDTOs.ForEach(x =>
-                    {
-                        x.ProductCode = string.Join(",", x.Details.Select(x => x.ProductCode).Distinct());
-                        x.ProductVersion = string.Join(",", x.Details.Select(x => x.ProductVersion).Distinct());
-                        x.SpecifyVer = string.Join(",", x.Details.Select(x => x.SpecifyVer).Distinct());
-                        x.DateCode = x.Details.FirstOrDefault()?.DateCode ?? "";
-                        x.LotNumber = x.Details.FirstOrDefault()?.LotNumber ?? "";
-                        x.ERPOrder = x.Details.FirstOrDefault()?.ERPOrder ?? "";
-                        x.SaleOrder = x.Details.FirstOrDefault()?.SaleOrder ?? "";
-                        x.MoNumber = x.Details.FirstOrDefault()?.MoNumber ?? "";
-                        x.SumStocks = x.Details.Sum(x => x.StockPcsQty);
-                    }
-                );
-                return stockViewDTOs.OrderBy(x => x.DateCode).ThenBy(x => x.CreateDate).ToList();
-                //return _stockRepository.ProStockInfoRepository.QueryTabs<Dt_ProStockInfo, Dt_ProStockInfoDetail, ProStockViewDTO>((a, b) => a.Id == b.ProStockId, (a, b) => new ProStockViewDTO
-                //{
-                //    LocationCode = a.LocationCode,
-                //    ProductCode = b.ProductCode,
-                //    ProStockAttribute = a.ProStockAttribute,
-                //    ProductVersion=b.ProductVersion,
-                //    DateCode=b.DateCode,
-                //    ProStockId=a.Id,
-                //    SumStocks=b.StockPcsQty,
-                //    SaleOrder=b.SaleOrder,
-                //    PalletCode = a.PalletCode,
-                //    CreateDate=a.CreateDate,
-                //    ERPOrder=b.ERPOrder,
-                //    MoNumber=b.MoNumber
-                //}, a => a.LocationCode == "鎴愬搧寰呭彂璐у尯", b => b.ProductCode == outOrderDetail.PCode, x => true).GroupBy(x => x.PalletCode).Select(x => new ProStockViewDTO
-                //{
-                //    LocationCode = x.FirstOrDefault()?.LocationCode ?? "",
-                //    ProductCode = x.FirstOrDefault()?.ProductCode ?? "",
-                //    ProductVersion = x.FirstOrDefault()?.ProductVersion ?? "",
-                //    DateCode = x.FirstOrDefault()?.DateCode ?? "",
-                //    ProStockId = x.FirstOrDefault().ProStockId,
-                //    SumStocks=x.FirstOrDefault().SumStocks,
-                //    SaleOrder = x.FirstOrDefault()?.SaleOrder ?? "",
-                //    ProStockAttribute=x.FirstOrDefault()?.ProStockAttribute ?? 0,
-                //    PalletCode = x.Key,
-                //    ERPOrder=x.FirstOrDefault()?.ERPOrder ?? "",
-                //    MoNumber=x.FirstOrDefault()?.MoNumber ?? "",
-                //    CreateDate=x.FirstOrDefault()?.CreateDate ?? new DateTime()
-                //}).ToList();
-            }
-            catch (Exception ex)
-            {
-                throw new Exception(ex.Message);
             }
         }
     }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/StockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/StockInfoService.cs"
index a00e2d9..ca9e52c 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/StockInfoService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_StockService/StockInfoService.cs"
@@ -14,7 +14,6 @@
 using WIDESEA_Core.Helper;
 using WIDESEA_DTO.Stock;
 using WIDESEA_IBasicRepository;
-using WIDESEA_IOutboundRepository;
 using WIDESEA_IRecordRepository;
 using WIDESEA_IRecordService;
 using WIDESEA_IStockRepository;
@@ -28,93 +27,15 @@
     {
         private readonly IMapper _mapper;
         private readonly IBasicRepository _basicRepository;
-        private readonly IOutboundRepository _outboundRepository;
 
         public IStockInfoRepository Repository => BaseDal;
 
-        public StockInfoService(IStockInfoRepository BaseDal, IMapper mapper, IBasicRepository basicRepository, IOutboundRepository outboundRepository) : base(BaseDal)
+        public StockInfoService(IStockInfoRepository BaseDal, IMapper mapper, IBasicRepository basicRepository) : base(BaseDal)
         {
             _mapper = mapper;
             _basicRepository = basicRepository;
-            _outboundRepository = outboundRepository;
         }
 
-        /// <summary>
-        /// 鏌ヨ璁㈠崟绔嬪簱搴撳瓨瑙嗗浘
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <param name="materielCode"></param>
-        /// <returns></returns>
-        public List<StockSelectViewDTO> GetStockSelectViews(int orderId, string materielCode)
-        {
-            try
-            {
-                Dt_OutboundOrder outboundOrder = _outboundRepository.OutboundOrderRepository.QueryFirst(x => x.Id == orderId);
-                if (outboundOrder == null)
-                {
-                    throw new Exception($"鏈壘鍒板嚭搴撳崟淇℃伅");
-                }
-
-                List<string> locationCodes = _basicRepository.LocationInfoRepository.PPGetCanOutLocationCodes(outboundOrder.WarehouseId);
-
-                return BaseDal.QueryTabs<Dt_StockInfo, Dt_StockInfoDetail, StockSelectViewDTO>((a, b) => a.Id == b.StockId, (a, b) => new StockSelectViewDTO
-                {
-                    LocationCode = a.LocationCode,
-                    MaterielCode = b.MaterielCode,
-                    MaterielName = b.MaterielName,
-                    PalletCode = a.PalletCode,
-                    UseableQuantity = b.StockQuantity - b.OutboundQuantity
-                }, a => locationCodes.Contains(a.LocationCode), b => b.StockQuantity > b.OutboundQuantity && b.MaterielCode == materielCode, x => true).GroupBy(x => x.PalletCode).Select(x => new StockSelectViewDTO
-                {
-                    LocationCode = x.FirstOrDefault()?.LocationCode ?? "",
-                    MaterielCode = x.FirstOrDefault()?.MaterielCode ?? "",
-                    MaterielName = x.FirstOrDefault()?.MaterielName ?? "",
-                    PalletCode = x.Key,
-                    UseableQuantity = x.Sum(x => x.UseableQuantity)
-                }).ToList();
-            }
-            catch (Exception ex)
-            {
-                return null;
-            }
-
-        }
-        /// <summary>
-        /// 鏌ヨ璁㈠崟骞冲簱搴撳瓨瑙嗗浘
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <param name="materielCode"></param>
-        /// <returns></returns>
-        public List<StockSelectViewDTO> GetPKStockSelectViews(int orderId, string materielCode)
-        {
-            try
-            {
-                Dt_OutboundOrder outboundOrder = _outboundRepository.OutboundOrderRepository.QueryFirst(x => x.Id == orderId);
-                if (outboundOrder == null)
-                {
-                    throw new Exception($"鏈壘鍒板嚭搴撳崟淇℃伅");
-                }
-                return BaseDal.QueryTabs<Dt_StockInfo, Dt_StockInfoDetail, StockSelectViewDTO>((a, b) => a.Id == b.StockId && a.WarehouseId == outboundOrder.WarehouseId, (a, b) => new StockSelectViewDTO
-                {
-                    LocationCode = a.LocationCode,
-                    MaterielCode = b.MaterielCode,
-                    MaterielName = b.MaterielName,
-                    PalletCode = a.PalletCode,
-                    UseableQuantity = b.StockQuantity - b.OutboundQuantity
-                }, a => a.LocationCode == "骞冲簱浣�", b => b.StockQuantity > b.OutboundQuantity && b.MaterielCode == materielCode, x => true).GroupBy(x => x.PalletCode).Select(x => new StockSelectViewDTO
-                {
-                    LocationCode = x.FirstOrDefault()?.LocationCode ?? "",
-                    MaterielCode = x.FirstOrDefault()?.MaterielCode ?? "",
-                    MaterielName = x.FirstOrDefault()?.MaterielName ?? "",
-                    PalletCode = x.Key,
-                    UseableQuantity = x.Sum(x => x.UseableQuantity)
-                }).ToList();
-            }
-            catch (Exception ex)
-            {
-                return null;
-            }
-        }
 
 
 
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_SystemService/Sys_DictionaryService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_SystemService/Sys_DictionaryService.cs"
index 114d968..f776039 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_SystemService/Sys_DictionaryService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_SystemService/Sys_DictionaryService.cs"
@@ -35,16 +35,14 @@
         private readonly IUnitOfWorkManage _unitOfWorkManage;
         private readonly ICacheService _cacheService;
         private readonly IBasicRepository _basicRepository;
-        private readonly ISupplierInfoRepository _supplierInfoRepository;
         private readonly ISys_RoleDataPermissionRepository _roleDataPermissionRepository;
 
-        public Sys_DictionaryService(ISys_DictionaryRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, IBasicRepository basicRepository, ISys_RoleDataPermissionRepository roleDataPermissionRepository, ISupplierInfoRepository supplierInfoRepository) : base(BaseDal)
+        public Sys_DictionaryService(ISys_DictionaryRepository BaseDal, IUnitOfWorkManage unitOfWorkManage, ICacheService cacheService, IBasicRepository basicRepository, ISys_RoleDataPermissionRepository roleDataPermissionRepository) : base(BaseDal)
         {
             _unitOfWorkManage = unitOfWorkManage;
             _cacheService = cacheService;
             _basicRepository = basicRepository;
             _roleDataPermissionRepository = roleDataPermissionRepository;
-            _supplierInfoRepository = supplierInfoRepository;
         }
 
         public ISys_DictionaryRepository Repository => BaseDal;
@@ -187,23 +185,6 @@
                                 foreach (var item in warehouses)
                                 {
                                     data.Add(new { key = item.WarehouseId, value = item.WarehouseName });
-                                    index++;
-                                }
-                            }
-
-                            result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data };
-                        }
-                        break;
-                    case "suppliers":
-                        {
-                            List<object> data = new List<object>();
-
-                            {
-                                List<Dt_SupplierInfo> supplierInfos = _supplierInfoRepository.QueryData();
-                                int index = 0;
-                                foreach (var item in supplierInfos)
-                                {
-                                    data.Add(new { key = item.SupplierCode, value = item.SupplierCode });
                                     index++;
                                 }
                             }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs"
index 3b97fd6..bbd4433 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/AssignInboundTaskLocation_BC.cs"
@@ -70,122 +70,6 @@
             }
         }
 
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="roadwayNos"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="heightType"></param>
-        /// <returns></returns>
-        public WebResponseContent AssignRoadwayByHeightAndCode(List<string> roadwayNos, string palletCode, int heightType = 0)
-        {
-            try
-            {
-                if (heightType == 0 || heightType > 3)
-                {
-                    return WebResponseContent.Instance.Error($"楂樺害閿欒");
-                }
-                if (roadwayNos == null || roadwayNos.Count == 0)
-                {
-                    return WebResponseContent.Instance.Error($"宸烽亾涓嶈兘涓虹┖");
-                }
-                Dt_LocationInfo locationInfo = _basicRepository.LocationInfoRepository.QueryFirst(x => x.RoadwayNo == roadwayNos[0]);
-                if (locationInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板贩閬撳搴旇揣浣�");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == locationInfo.WarehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板贩閬撳搴斾粨搴撲俊鎭�");
-                }
-
-                int palletType = _inboundOrderService.GetPalletType(warehouse, palletCode);
-                if (palletType == -1)
-                {
-                    return WebResponseContent.Instance.Error($"鎵樼洏鍙疯В鏋愭墭鐩樼被鍨嬮敊璇�");
-                }
-
-                string roadwayNo = "";
-                if (heightType == 1)
-                {
-                    List<LocationCount> locationCounts = Db.Queryable<Dt_LocationInfo>().Where(x => (x.LocationType == palletType || x.LocationType == LocationTypeEnum.Undefined.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && (x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt() || x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && roadwayNos.Contains(x.RoadwayNo) && x.Layer <= 3).GroupBy(x => x.RoadwayNo).Select(x => new LocationCount { RoadwayNo = x.RoadwayNo, Count = SqlFunc.AggregateCount(x) }).ToList();
-                    roadwayNo = locationCounts.OrderBy(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
-                }
-                else if (heightType == 2)
-                {
-                    List<LocationCount> locationCounts = Db.Queryable<Dt_LocationInfo>().Where(x => (x.LocationType == palletType || x.LocationType == LocationTypeEnum.Undefined.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && (x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt() || x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && roadwayNos.Contains(x.RoadwayNo) && x.Layer == 4).GroupBy(x => x.RoadwayNo).Select(x => new LocationCount { RoadwayNo = x.RoadwayNo, Count = SqlFunc.AggregateCount(x) }).ToList();
-                    roadwayNo = locationCounts.OrderBy(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
-                }
-                else if (heightType == 3)
-                {
-                    List<LocationCount> locationCounts = Db.Queryable<Dt_LocationInfo>().Where(x => (x.LocationType == palletType || x.LocationType == LocationTypeEnum.Undefined.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && (x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt() || x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && roadwayNos.Contains(x.RoadwayNo) && x.Layer == 5).GroupBy(x => x.RoadwayNo).Select(x => new LocationCount { RoadwayNo = x.RoadwayNo, Count = SqlFunc.AggregateCount(x) }).ToList();
-                    roadwayNo = locationCounts.OrderBy(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
-                }
-
-                return !string.IsNullOrEmpty(roadwayNo) ? WebResponseContent.Instance.OK(data: roadwayNo) : WebResponseContent.Instance.Error("鏈壘鍒板彲鍒嗛厤宸烽亾");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        public string AssignRoadwayNo(List<string> roadwayNos, string palletCode, int heightType = 0)
-        {
-            try
-            {
-                if (heightType == 0 || heightType > 3)
-                {
-                    throw new Exception($"楂樺害閿欒");
-                }
-                if (roadwayNos == null || roadwayNos.Count == 0)
-                {
-                    throw new Exception($"宸烽亾涓嶈兘涓虹┖");
-                }
-                Dt_LocationInfo locationInfo = _basicRepository.LocationInfoRepository.QueryFirst(x => x.RoadwayNo == roadwayNos[0]);
-                if (locationInfo == null)
-                {
-                    throw new Exception($"鏈壘鍒板贩閬撳搴旇揣浣�");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == locationInfo.WarehouseId);
-                if (warehouse == null)
-                {
-                    throw new Exception($"鏈壘鍒板贩閬撳搴斾粨搴撲俊鎭�");
-                }
-
-                int palletType = _inboundOrderService.GetPalletType(warehouse, palletCode);
-                if (palletType == -1)
-                {
-                    throw new Exception($"鎵樼洏鍙疯В鏋愭墭鐩樼被鍨嬮敊璇�");
-                }
-
-                string roadwayNo = "";
-                if (heightType == 1)
-                {
-                    List<LocationCount> locationCounts = Db.Queryable<Dt_LocationInfo>().Where(x => (x.LocationType == palletType || x.LocationType == LocationTypeEnum.Undefined.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && (x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt() || x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && roadwayNos.Contains(x.RoadwayNo) && x.Layer <= 3).GroupBy(x => x.RoadwayNo).Select(x => new LocationCount { RoadwayNo = x.RoadwayNo, Count = SqlFunc.AggregateCount(x) }).ToList();
-                    roadwayNo = locationCounts.OrderBy(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
-                }
-                else if (heightType == 2)
-                {
-                    List<LocationCount> locationCounts = Db.Queryable<Dt_LocationInfo>().Where(x => (x.LocationType == palletType || x.LocationType == LocationTypeEnum.Undefined.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && (x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt() || x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && roadwayNos.Contains(x.RoadwayNo) && x.Layer == 4).GroupBy(x => x.RoadwayNo).Select(x => new LocationCount { RoadwayNo = x.RoadwayNo, Count = SqlFunc.AggregateCount(x) }).ToList();
-                    roadwayNo = locationCounts.OrderBy(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
-                }
-                else if (heightType == 3)
-                {
-                    List<LocationCount> locationCounts = Db.Queryable<Dt_LocationInfo>().Where(x => (x.LocationType == palletType || x.LocationType == LocationTypeEnum.Undefined.ObjToInt()) && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && (x.EnableStatus == EnableStatusEnum.OnlyIn.ObjToInt() || x.EnableStatus == EnableStatusEnum.Normal.ObjToInt()) && roadwayNos.Contains(x.RoadwayNo) && x.Layer == 5).GroupBy(x => x.RoadwayNo).Select(x => new LocationCount { RoadwayNo = x.RoadwayNo, Count = SqlFunc.AggregateCount(x) }).ToList();
-                    roadwayNo = locationCounts.OrderBy(x => x.Count).FirstOrDefault()?.RoadwayNo ?? "";
-                }
-
-                return !string.IsNullOrEmpty(roadwayNo) ? ( roadwayNo) : throw new Exception("鏈壘鍒板彲鍒嗛厤宸烽亾");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                throw new Exception(ex.Message);
-            }
-        }
 
         /// <summary>
         /// 鍏ュ簱浠诲姟鐢宠鍒嗛厤璐т綅
@@ -260,94 +144,6 @@
                 return WebResponseContent.Instance.Error(ex.Message);
             }
         }
-
-        public WebResponseContent HandSubstrateOut(int orderId)
-        {
-            try
-            {
-                Dt_MesOutboundOrder mesOutboundOrder = _outboundService.MesOutboundOrderService.Repository.QueryFirst(x => x.Id == orderId);
-                if (mesOutboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌璁㈠崟");
-                }
-
-                if (mesOutboundOrder.OrderStatus != OutOrderStatusEnum.鏈紑濮�.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ヨ鍗曚笉鍙啀鍑哄簱");
-                }
-
-                List<Dt_Task> tasks = new List<Dt_Task>();
-
-                List<Dt_StockInfo>? stockInfos = null;
-                List<Dt_OutStockLockInfo>? outStockLockInfos = null;
-                List<Dt_LocationInfo>? locationInfos = null;
-                {
-                    (List<Dt_StockInfo>, Dt_MesOutboundOrder, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.MesOutboundOrderService.AssignStockOutbound(mesOutboundOrder);
-                    if (result.Item1 != null && result.Item1.Count > 0)
-                    {
-                        tasks = GetTasks(result.Item1, TaskTypeEnum.MesOutbound);
-                        result.Item2.OrderStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                        result.Item3.ForEach(x =>
-                        {
-                            x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-                        });
-
-                        stockInfos = result.Item1;
-                        mesOutboundOrder = result.Item2;
-                        outStockLockInfos = result.Item3;
-                        locationInfos = result.Item4;
-                    }
-                    else
-                    {
-                        throw new Exception("鏃犲簱瀛�");
-                    }
-                }
-
-                tasks.ForEach(x =>
-                {
-                    if (mesOutboundOrder.OrderType == MesOutboundOrderTypeEnum.HandSubstrateOut.ObjToInt())
-                    {
-                        x.TaskType = TaskTypeEnum.MesHandOutbound.ObjToInt();
-                    }
-                    else if (mesOutboundOrder.OrderType == MesOutboundOrderTypeEnum.HandSubstrateOutPick.ObjToInt())
-                    {
-                        x.TaskType = TaskTypeEnum.MesHandPickOutbound.ObjToInt();
-                    }
-                });
-
-                mesOutboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱涓�.ObjToInt();
-
-                _unitOfWorkManage.BeginTran();
-
-                int id = BaseDal.AddData(tasks);
-                outStockLockInfos.ForEach(x =>
-                {
-                    x.OrderNo = mesOutboundOrder.TaskNo;
-                    x.OrderDetailId = id;
-                });
-                _outboundService.MesOutboundOrderService.Repository.UpdateData(mesOutboundOrder);
-                if (stockInfos != null && stockInfos.Count > 0 && outStockLockInfos != null && outStockLockInfos.Count > 0 && locationInfos != null && locationInfos.Count > 0)
-                {
-                    WebResponseContent content = _outboundService.MesOutboundOrderService.LockOutboundStockDataUpdate(stockInfos, outStockLockInfos, locationInfos, tasks: tasks);
-
-                    if (!content.Status)
-                    {
-                        _unitOfWorkManage.RollbackTran();
-                        return WebResponseContent.Instance.Error(content.Message);
-                    }
-                }
-                _unitOfWorkManage.CommitTran();
-                PushTasksToWCS(tasks);
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-
     }
 
     public class LocationCount
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesProductService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesProductService.cs"
index d6adcc8..52ad0d5 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesProductService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesProductService.cs"
@@ -27,423 +27,6 @@
     public partial class TaskService
     {
         /// <summary>
-        /// MES鎴愬搧鍏ュ簱鍗曟帴鏀�
-        /// </summary>
-        /// <returns></returns>
-        public MesResponseContent BagInfoSync(MesBagInfoModel bagInfoModel)
-        {
-            MesResponseContent content = new MesResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == bagInfoModel.WarehouseCode);
-                if (warehouse == null)
-                {
-                    return content.Error("鏈壘鍒颁粨搴撲俊鎭�");
-                }
-                ////闄愬埗浠诲姟
-                //Dt_Task task = BaseDal.QueryFirst(x => x.SourceAddress == bagInfoModel.WorkCenter && (x.TaskStatus == TaskStatusEnum.New.ObjToInt() || x.TaskStatus == TaskStatusEnum.Line_Execute.ObjToInt() || x.TaskStatus == TaskStatusEnum.Line_Executing.ObjToInt()));
-                //if (task!=null)
-                //{
-                //    return content.Error($"绾夸綋瀛樺湪浠诲姟鎴栨墽琛屼腑,鑳舵鍙穥task.PalletCode}");
-                //}
-                Dt_Warehouse warehouseLocation = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA71.ToString());
-                Dt_LocationInfo locationInfo = _basicRepository.LocationInfoRepository.QueryFirst(x => x.WarehouseId == warehouseLocation.WarehouseId);
-                if (locationInfo == null)
-                {
-                    return content.Error($"鏈壘鍒皗warehouse.WarehouseCode}璐т綅淇℃伅");
-                }
-                Dt_ProStockInfo proStockInfoOld = _stockRepository.ProStockInfoRepository.QueryFirst(x=>x.PalletCode==bagInfoModel.BatchNo);
-                if (proStockInfoOld != null)
-                {
-                    return content.Error($"鑳舵{bagInfoModel.BatchNo}搴撳瓨淇℃伅宸插瓨鍦�");
-                }
-                //鍒ゆ柇璇ヨ兌妗嗗彿鐨勫唴鍖呬俊鎭槸鍚﹀瓨鍦�
-                Dt_MesProInOrder mesProInOrderOld = BaseDal.Db.Queryable<Dt_MesProInOrder>().Where(x => x.BatchNo == bagInfoModel.BatchNo && x.MesProStatus == InOrderStatusEnum.鍏ュ簱涓�.ObjToInt()).Includes(x => x.Details).First();
-                if (mesProInOrderOld!=null)
-                {
-                    return content.Error($"鑳舵{bagInfoModel.BatchNo}鍐呭寘淇℃伅鏈畬鎴�");
-                }
-                List<string> proDetailsExists = _stockRepository.ProStockInfoDetailRepository.QueryData().Select(x=>x.BagNo).ToList();
-                //鍐呭寘淇℃伅缁勭洏
-                List<Dt_MesProInOrderDetail> mesProInOrderDetails = new List<Dt_MesProInOrderDetail>();
-                string palletCode = @"^C\d{5}$";  // 姝e垯琛ㄨ揪寮�
-                bool isValid = Regex.IsMatch(bagInfoModel.BatchNo, palletCode);
-                if (!isValid && bagInfoModel.BatchNo.Substring(0,3).ToUpper()!= "CPK")
-                {
-                    return content.Error($"妗嗙爜鏍煎紡閿欒{bagInfoModel.BatchNo}");
-                }
-                if (bagInfoModel.BatchNo.Substring(0, 3).ToUpper() == "CPK")
-                {
-                    WebResponseContent inProRespone = InPKProStock(bagInfoModel, proDetailsExists, warehouse);
-                    if (!inProRespone.Status)
-                    {
-                        return content.Error(inProRespone.Message);
-                    }
-                    _proInStatisticsService.SaveStatic(bagInfoModel);
-                    return content.OK(inProRespone.Message);
-                }
-                
-                foreach (var item in bagInfoModel.BagDetails)
-                {
-                    if (proDetailsExists.Contains(item.BagNo))
-                    {
-                        return content.Error($"鍐呭寘{item.BagNo}宸插瓨鍦�");
-                    }
-                    foreach (var child in item.BagItems)
-                    {
-                        Dt_MesProInOrderDetail mesProInOrderDetail = new Dt_MesProInOrderDetail()
-                        {
-                            BagNo = item.BagNo,
-                            ProductCode = item.ProductCode,
-                            ProductVersion = item.ProductVersion,
-                            SETQty = child.SETQty,
-                            OKPCSQTY = child.OKPCSQTY,
-                            DateCode = item.DateCode,
-                            XQty = child.XQty,
-                            XSite = child.XSite,
-                            Weight = item.Weight,
-                            PackingDate = item.PackingDate,
-                            LotNumber = child.LotNumber,
-                            ERPOrder = child.ERPOrder,
-                            SaleOrder = child.SaleOrder,
-                            MoNumber = child.MoNumber,
-                        };
-                        mesProInOrderDetails.Add(mesProInOrderDetail);
-                    }
-                }
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in mesProInOrderDetails)
-                {
-                    proStockInfoDetails.Add(_mapper.Map<Dt_ProStockInfoDetail>(item));
-                }
-                Dt_MesProInOrder mesProInOrder = new Dt_MesProInOrder()
-                {
-                    WarehouseId = warehouse.WarehouseId,
-                    ProInOrderNo = _outboundService.OutboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.ProInCodeRule)),
-                    BatchNo = bagInfoModel.BatchNo,
-                    WorkCenter = bagInfoModel.WorkCenter,
-                    MesProStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt(),
-                    UnPackStock = bagInfoModel.UnPackStock,
-                    CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                    Details = mesProInOrderDetails
-                };
-                ProStockAttributeEnum attributeEnum = new ProStockAttributeEnum();
-                switch (warehouse.WarehouseCode)
-                {
-                    case "HA71":
-                        attributeEnum = ProStockAttributeEnum.鎴愬搧;
-                        break;
-                    case "HA72":
-                        attributeEnum = ProStockAttributeEnum.灏炬暟;
-                        break;
-                    case "HA73":
-                        attributeEnum = ProStockAttributeEnum.鐮斿彂;
-                        break;
-                    default:
-                        throw new Exception("鏈壘鍒拌搴撳瓨灞炴��");
-                }
-                Dt_ProStockInfo proStockInfo = new Dt_ProStockInfo()
-                {
-                    PalletCode = bagInfoModel.BatchNo,
-                    PalletType = 1,
-                    ProStockAttribute= attributeEnum.ObjToInt(),
-                    WarehouseId = warehouse.WarehouseId,
-                    StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt(),
-                    proStockInfoDetails = proStockInfoDetails
-                };
-                Dt_Task newTask = new Dt_Task()
-                {
-                    CurrentAddress = bagInfoModel.WorkCenter,
-                    Grade = 0,
-                    NextAddress = "",
-                    PalletCode = proStockInfo.PalletCode,
-                    Roadway = locationInfo.RoadwayNo,
-                    SourceAddress = bagInfoModel.WorkCenter,
-                    TargetAddress = "",
-                    TaskType = TaskTypeEnum.InProduct.ObjToInt(),
-                    TaskStatus = TaskStatusEnum.New.ObjToInt(),
-                    WarehouseId = warehouse.WarehouseId,
-                    PalletType = proStockInfo.PalletType,
-                    MaterielCode = proStockInfo.proStockInfoDetails.Where(x => x.ProStockId == proStockInfo.Id).FirstOrDefault()?.ProductCode,
-                    Quantity = (float)proStockInfo.proStockInfoDetails.Where(x => x.ProStockId == proStockInfo.Id).Sum(x => x.StockPcsQty)
-                };
-                _unitOfWorkManage.BeginTran();
-                int taskId = BaseDal.AddData(newTask);
-                newTask.TaskId = taskId;
-                Db.InsertNav(proStockInfo).Include(x => x.proStockInfoDetails).ExecuteCommand();
-                //涓婁紶ERP
-                WebResponseContent responseContent = _inboundOrderService.FeedbackProIn(mesProInOrder);
-                _proInStatisticsService.SaveStatic(bagInfoModel);
-                if (!responseContent.Status)
-                {
-                    mesProInOrder.UpErpStatus = WhetherEnum.False.ObjToInt();
-                    mesProInOrder.Remark = responseContent.Message;
-                }
-                else
-                {
-                    mesProInOrder.UpErpStatus = WhetherEnum.True.ObjToInt();
-                }
-                Db.InsertNav(mesProInOrder).Include(x => x.Details).ExecuteCommand();
-                _unitOfWorkManage.CommitTran();
-                //鎺ㄩ�佷换鍔�
-                PushTasksToWCS(new List<Dt_Task> { newTask });
-                content.OK("鎺ユ敹鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        public WebResponseContent InPKProStock(MesBagInfoModel bagInfoModel, List<string> proDetailsExists,Dt_Warehouse wareSource)
-        {
-            Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x=>x.WarehouseCode==WarehouseEnum.HA101.ToString());
-            if (warehouse==null)
-            {
-                return WebResponseContent.Instance.Error("鏈壘鍒板钩搴撲粨搴撲俊鎭�");
-            }
-            //鍐呭寘淇℃伅缁勭洏
-            List<Dt_MesProInOrderDetail> mesProInOrderDetails = new List<Dt_MesProInOrderDetail>();
-            foreach (var item in bagInfoModel.BagDetails)
-            {
-                if (proDetailsExists.Contains(item.BagNo))
-                {
-                    return WebResponseContent.Instance.Error($"鍐呭寘{item.BagNo}宸插瓨鍦�");
-                }
-                foreach (var child in item.BagItems)
-                {
-                    Dt_MesProInOrderDetail mesProInOrderDetail = new Dt_MesProInOrderDetail()
-                    {
-                        BagNo = item.BagNo,
-                        ProductCode = item.ProductCode,
-                        ProductVersion = item.ProductVersion,
-                        SETQty = child.SETQty,
-                        OKPCSQTY = child.OKPCSQTY,
-                        DateCode = item.DateCode,
-                        XQty = child.XQty,
-                        XSite = child.XSite,
-                        Weight = item.Weight,
-                        PackingDate = item.PackingDate,
-                        LotNumber = child.LotNumber,
-                        ERPOrder = child.ERPOrder,
-                        SaleOrder = child.SaleOrder,
-                        MoNumber = child.MoNumber,
-                        OverInQuantity= child.OKPCSQTY
-                    };
-                    mesProInOrderDetails.Add(mesProInOrderDetail);
-                }
-            }
-            List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-            foreach (var item in mesProInOrderDetails)
-            {
-                proStockInfoDetails.Add(_mapper.Map<Dt_ProStockInfoDetail>(item));
-            }
-            Dt_MesProInOrder mesProInOrder = new Dt_MesProInOrder()
-            {
-                WarehouseId = warehouse.WarehouseId,
-                ProInOrderNo = _outboundService.OutboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.ProInCodeRule)),
-                BatchNo = bagInfoModel.BatchNo,
-                WorkCenter = bagInfoModel.WorkCenter,
-                MesProStatus = InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt(),
-                UnPackStock = bagInfoModel.UnPackStock,
-                CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                Details = mesProInOrderDetails
-            };
-            ProStockAttributeEnum attributeEnum = new ProStockAttributeEnum();
-            switch (wareSource.WarehouseCode)
-            {
-                case "HA71":
-                    attributeEnum = ProStockAttributeEnum.鎴愬搧;
-                    break;
-                case "HA72":
-                    attributeEnum = ProStockAttributeEnum.灏炬暟;
-                    break;
-                case "HA73":
-                    attributeEnum = ProStockAttributeEnum.鐮斿彂;
-                    break;
-                default:
-                    throw new Exception("鏈壘鍒拌搴撳瓨灞炴��");
-            }
-            proStockInfoDetails.ForEach(x =>
-            {
-                x.ProOutDetailStatus = StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt();
-            });
-            Dt_ProStockInfo proStockInfo = new Dt_ProStockInfo()
-            {
-                PalletCode = bagInfoModel.BatchNo,
-                PalletType = 1,
-                LocationCode= "鎴愬搧寰呭彂璐у尯",
-                ProStockAttribute = attributeEnum.ObjToInt(),
-                WarehouseId = warehouse.WarehouseId,
-                StockStatus = StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt(),
-                proStockInfoDetails = proStockInfoDetails
-            };
-            
-            _unitOfWorkManage.BeginTran();
-            Db.InsertNav(proStockInfo).Include(x => x.proStockInfoDetails).ExecuteCommand();
-            //涓婁紶ERP
-            WebResponseContent responseContent = _inboundOrderService.FeedbackProIn(mesProInOrder);
-            if (!responseContent.Status)
-            {
-                mesProInOrder.UpErpStatus = WhetherEnum.False.ObjToInt();
-                mesProInOrder.Remark = responseContent.Message;
-            }
-            else
-            {
-                mesProInOrder.UpErpStatus = WhetherEnum.True.ObjToInt();
-            }
-            Db.InsertNav(mesProInOrder).Include(x => x.Details).ExecuteCommand();
-            _unitOfWorkManage.CommitTran();
-            return WebResponseContent.Instance.OK("鎺ユ敹鎴愬姛");
-        }
-        /// <summary>
-        /// 澶栧寘淇℃伅鎺ユ敹
-        /// </summary>
-        public MesResponseContent BoxStockin(MesBoxInfoModel boxInfoModel)
-        {
-            MesResponseContent content = new MesResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                //鎴彇鍑哄簱鍗曞彿
-                string shipmentOrder = boxInfoModel.ShipmentOrder.Substring(0, boxInfoModel.ShipmentOrder.IndexOf("-"));
-                //鍒ゆ柇MES浼犲叆鐨勫嚭搴撳崟鍙锋槸鍚﹀瓨鍦�
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOutOrderNo == shipmentOrder).Includes(x => x.Details).First();
-                if (proOutOrder == null)
-                {
-                    return content.Error($"鍗曞彿{shipmentOrder}涓嶅瓨鍦�");
-                }
-                //鍒ゆ柇澶栫鍙锋槸鍚﹀凡瀛樺湪
-                Dt_ProStockInfo ProStockOld = _stockRepository.ProStockInfoRepository.QueryFirst(x => x.PalletCode == boxInfoModel.BoxNo);
-                if (ProStockOld!=null)
-                {
-                    return content.Error($"澶栫鍙穥ProStockOld.PalletCode}瀛樺簱淇℃伅宸插瓨鍦�");
-                }
-                //鑾峰彇鎵�鏈夋垚鍝佸嚭搴撳唴鍖呬俊鎭�
-                List<Dt_ProStockInfoDetail> dt_ProStockInfos = _stockRepository.ProStockInfoDetailRepository.QueryData(x => x.ProOutDetailStatus == StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt());
-                //鑾峰彇MES鍐呭寘淇℃伅
-                List<Dt_MesProInOrderDetail> mesProInOrderDetails = new List<Dt_MesProInOrderDetail>();
-                foreach (var item in boxInfoModel.Bags)
-                {
-                    foreach (var child in item.BagItems)
-                    {
-                        Dt_ProStockInfoDetail? proStockInfoDetail = dt_ProStockInfos.Where(x => x.BagNo == item.BagNo)?.FirstOrDefault();
-                        if (proStockInfoDetail == null)
-                        {
-                            return content.Error($"鍐呭寘{item.BagNo}璐х墿鐘舵�佸紓甯�");
-                        }
-                        if (proStockInfoDetail.OutboundQuantity<=0)
-                        {
-                            return content.Error($"鍐呭寘{item.BagNo}鍑哄簱鏁伴噺鏈垎閰�");
-                        }
-                        Dt_MesProInOrderDetail mesProInOrderDetail = new Dt_MesProInOrderDetail()
-                        {
-                            BagNo = item.BagNo,
-                            ProductCode = item.ProductCode,
-                            ProductVersion = item.ProductVersion,
-                            SETQty = child.SETQty,
-                            OKPCSQTY = child.OKPCSQTY,
-                            DateCode = item.DateCode,
-                            XQty = child.XQty,
-                            XSite = child.XSite,
-                            Weight = item.Weight,
-                            PackingDate = item.PackingDate,
-                            LotNumber = child.LotNumber,
-                            ERPOrder = child.ERPOrder,
-                            SaleOrder = child.SaleOrder,
-                            MoNumber = child.MoNumber,
-                        };
-                        mesProInOrderDetails.Add(mesProInOrderDetail);
-                    }
-                }
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = new List<Dt_ProStockInfoDetail>();
-                foreach (var item in mesProInOrderDetails)
-                {
-                    proStockInfoDetails.Add(_mapper.Map<Dt_ProStockInfoDetail>(item));
-                }
-                proStockInfoDetails.ForEach(x =>
-                {
-                    x.ProOutDetailStatus = StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt();
-                });
-
-                
-                _unitOfWorkManage.BeginTran();
-                WebResponseContent UnBindContent = _stockService.ProStockInfoService.UnBindStock(proStockInfoDetails);
-                if (!UnBindContent.Status)
-                {
-                    throw new Exception(UnBindContent.Message);
-                }
-                if (UnBindContent.Data!=null)
-                {
-                    Dt_ProStockInfo proStockInfo = new Dt_ProStockInfo()
-                    {
-                        PalletCode = boxInfoModel.BoxNo,
-                        PalletType = 0,
-                        LocationCode = "鎴愬搧寰呭彂璐у尯",
-                        WarehouseId = warehouse.WarehouseId,
-                        ShipmentOrder = shipmentOrder,
-                        StockStatus = StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt(),
-                        proStockInfoDetails = UnBindContent.Data as List<Dt_ProStockInfoDetail>,
-                        ProStockAttribute = ProStockAttributeEnum.鎴愬搧.ObjToInt()
-                    };
-                    //鏍规嵁澶栧寘淇℃伅瑙g粦鍐呭寘涓庤兌妗嗗簱瀛樺叧绯�
-                    Db.InsertNav(proStockInfo).Include(x => x.proStockInfoDetails).ExecuteCommand();
-                }
-                _unitOfWorkManage.CommitTran();
-                return content.OK("澶栧寘鎺ユ敹鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// MES鎴愬搧鍑哄簱鍗曞悓姝ユ暟鎹鐞�
-        /// </summary>
-        public MesShipmentOrderSync MesOutSync(Dt_OutProStockInfo outProStockInfo, Dt_ProOutOrderDetail proOutOrderDetail,List<Dt_ProStockInfoDetail> proStockInfoDetails)
-        {
-            List<MesShipOrderDetail> mesShipOrderDetails = new List<MesShipOrderDetail>();
-            //鑾峰彇鍑哄簱鍗�
-            Dt_ProOutOrder proOutOrder = _outboundService.ProOutOrderService.Repository.QueryFirst(x => x.Id == proOutOrderDetail.ProOrderId);
-            //鑾峰彇瀹㈡埛
-            Dt_CustomerInfo customerInfo = _basicRepository.CustomerInfoRepository.QueryFirst(x => x.Code == proOutOrderDetail.EndCustomer);
-            List<string> outBags = proStockInfoDetails.Where(x => x.OutboundQuantity > 0).Select(x => x.BagNo).ToList();
-            outBags.ForEach(x =>
-            {
-                x = string.Format($"{0},{1},{2},0,{3}",x,outProStockInfo.PCode,outProStockInfo.DateCode,outProStockInfo.AssignQuantity.ObjToInt());
-            });
-            MesShipOrderDetail orderDetail = new MesShipOrderDetail()
-            {
-                ProductCode = proOutOrderDetail.PCode,
-                ProductVersion = proOutOrderDetail.PVer,
-                Qty = outProStockInfo.AssignQuantity,
-                DateCode = outProStockInfo.DateCode,
-                SaleOrder = proOutOrderDetail.SaleOrder,
-                Sequence = outProStockInfo.Id,
-                WorkCenter = "SPCK_OUTER-001",
-                PlasticBox = new List<PlasticBox> { new PlasticBox()
-                    {
-                        PlasticBoxNumber= outProStockInfo.PalletCode,
-                        Insourcings = outBags
-                    } 
-                }
-            };
-            mesShipOrderDetails.Add(orderDetail);
-            MesShipmentOrderSync shipmentOrderSync = new MesShipmentOrderSync()
-            {
-                ShipmentOrder = proOutOrder.ProOutOrderNo+"-"+ outProStockInfo.TaskNum,
-                PlantShipDate = proOutOrder.PlantShipDate.ToString("yyyy-MM-dd HH:mm:ss"),
-                Customer = proOutOrderDetail.EndCustomer,
-                FactoryCode = proOutOrderDetail.FactoryCode,
-                ShipName = customerInfo.Name,
-                ShippingAddress = customerInfo.NickName,
-                OrderDetails = mesShipOrderDetails
-            };
-            return shipmentOrderSync;
-        }
-        /// <summary>
         /// WMS鍚屾鎴愬搧鍑哄簱鑷矼ES
         /// </summary>
         public WebResponseContent ShipmentOrderSync(MesShipmentOrderSync model)
@@ -481,132 +64,5 @@
             }
             return content;
         }
-
-        /// <summary>
-        /// MES鎴愬搧杩斿伐鎻愬簱
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        public MesResponseContent RworkTask(RworkTaskModel model)
-        {
-            MesResponseContent content = new MesResponseContent();
-            try
-            {
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA72.ToString());
-                if (warehouse == null)
-                {
-                    return content.Error($"灏炬暟浠撲俊鎭湭閰嶇疆");
-                }
-                Dt_MesRworkOutboundOrder rworkOutboundOrderOld = _outboundRepository.RworkOutboundOrderRepository.QueryFirst(x => x.TaskNo == model.TaskNo);
-                if (rworkOutboundOrderOld != null)
-                {
-                    return content.Error($"鎻愬簱浠诲姟鍗晎model.TaskNo}宸插瓨鍦�");
-                }
-                Dt_MesRworkOutboundOrder mesRworkOutboundOrder = new Dt_MesRworkOutboundOrder()
-                {
-                    WarehouseId = warehouse.WarehouseId,
-                    TaskNo = model.TaskNo,
-                    OrderStatus = OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                    CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                    ProductCode = model.ProductCode,
-                    ProductName = model.ProductName,
-                    ProductVersion = model.ProductVersion,
-                    DateCode = model.DateCode,
-                    RequiredQuantity = model.RequiredQuantity,
-                    FactoryCode = model.FactoryCode,
-                    SaleOrder = model.SaleOrder,
-                    OrderType = model.InventoryType
-                };
-                List<Dt_Task> tasks = new List<Dt_Task>();
-                List<Dt_ProStockInfo>? proStockInfos = null;
-                List<Dt_OutProStockInfo>? outProStockInfos = null;
-                List<Dt_LocationInfo>? locationInfos = null;
-                //鍒嗛厤搴撳瓨鐢熸垚鎻愬簱浠诲姟
-                (List<Dt_ProStockInfo>?, Dt_MesRworkOutboundOrder?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>) result = _outboundService.RworkOutboundOrderService.AssignMesStocks(mesRworkOutboundOrder);
-                if (result.Item1 != null && result.Item1.Count > 0)
-                {
-                    tasks = GetTasks(result.Item1, TaskTypeEnum.OutMesRworkProduct);
-                    result.Item2.OrderStatus = OutOrderStatusEnum.鍑哄簱涓�.ObjToInt();
-                    result.Item3.ForEach(x =>
-                    {
-                        x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-                    });
-
-                    proStockInfos = result.Item1;
-                    mesRworkOutboundOrder = result.Item2;
-                    outProStockInfos = result.Item3;
-                    locationInfos = result.Item4;
-                }
-                else
-                {
-                    throw new Exception("鏃犲簱瀛樺垎閰�");
-                }
-                tasks.ForEach(x =>
-                {
-                    x.TargetAddress = "5236";
-                    x.OrderNo = mesRworkOutboundOrder.TaskNo;
-                });
-                _unitOfWorkManage.BeginTran();
-
-                int id = BaseDal.AddData(tasks);
-                outProStockInfos.ForEach(x =>
-                {
-                    x.OrderNo = mesRworkOutboundOrder.TaskNo;
-                    x.OrderDetailId = id;
-                });
-                if (proStockInfos != null && proStockInfos.Count > 0 && outProStockInfos != null && outProStockInfos.Count > 0 && locationInfos != null && locationInfos.Count > 0)
-                {
-                    WebResponseContent updateContent = _outboundService.RworkOutboundOrderService.LockOutboundStockDataUpdate(proStockInfos, outProStockInfos, locationInfos, tasks: tasks);
-
-                    if (!updateContent.Status)
-                    {
-                        _unitOfWorkManage.RollbackTran();
-                        return content.Error(updateContent.Message);
-                    }
-                }
-                _outboundService.RworkOutboundOrderService.Repository.AddData(mesRworkOutboundOrder);
-                _unitOfWorkManage.CommitTran();
-                return content.OK("鎻愪緵杩斿簱鍗曟帴鏀舵垚鍔�");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        #region 寮冪敤
-        /// <summary>
-        /// 搴撳瓨鏉挎暟鎹浆鎹�
-        /// </summary>
-        /// <returns></returns>
-        //public MesProductOutBound MesProOutBound(Dt_MesRworkOutboundOrder mesRworkOutboundOrder,List<Dt_ProStockInfoDetail> proStockInfoDetails)
-        //{
-        //    //鑾峰彇浠撳簱淇℃伅
-        //    Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == mesRworkOutboundOrder.WarehouseId);
-        //    List<MesInventoryInfo> inventoryInfos = new List<MesInventoryInfo>();
-        //    foreach (var item in proStockInfoDetails)
-        //    {
-        //        MesInventoryInfo mesInventoryInfo = new MesInventoryInfo()
-        //        {
-        //            Warhouseno = warehouse.WarehouseCode,
-        //            InternalPackageNumber = item.BagNo,
-        //            SetCount = (int)item.SETQty,
-        //            EligiblePcsCount = (int)item.StockPcsQty
-        //        };
-        //        inventoryInfos.Add(mesInventoryInfo);
-        //    }
-        //    MesProductOutBound mesProductOutBound = new MesProductOutBound()
-        //    {
-        //        TaskNo = mesRworkOutboundOrder.TaskNo,
-        //        ProductCode = mesRworkOutboundOrder.ProductCode,
-        //        ProductVersion = mesRworkOutboundOrder.ProductVersion,
-        //        DateCode = mesRworkOutboundOrder.DateCode,
-        //        SaleOrder = mesRworkOutboundOrder.SaleOrder,
-        //        InventoryInfo = inventoryInfos
-        //    };
-        //    return mesProductOutBound;
-        //}
-        #endregion
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs"
index 42b7f49..68dbbb7 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs"
@@ -330,112 +330,6 @@
         }
 
         /// <summary>
-        /// 鍩烘澘鍑哄簱
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        public MesResponseContent SubstrateOut(SubstrateOutModel model)
-        {
-            try
-            {
-                string line = string.Empty;
-                if (!model.Line.Contains("SCUTL"))
-                {
-                    line = WarehouseEnum.HA58.ToString();
-                }
-                else
-                {
-                    line = WarehouseEnum.HA57.ToString();
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == line);
-                if (warehouse == null)
-                {
-                    return MesResponseContent.Instance.Error($"浠撳簱鍩虹淇℃伅鏈厤缃�");
-                }
-
-                Dt_MaterielInfo materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == model.MaterialCode);
-                if (materielInfo == null)
-                {
-                    return MesResponseContent.Instance.Error($"鏈壘鍒拌鐗╂枡淇℃伅");
-                }
-
-                Dt_MesOutboundOrder mesOutboundOrder = new Dt_MesOutboundOrder()
-                {
-                    CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
-                    Line = model.Line,
-                    MaterialCode = model.MaterialCode,
-                    MaterialName = model.MaterialName,
-                    OrderQuantity = model.RequiredQuantity,
-                    TaskNo = model.TaskNo,
-                    Unit = model.Unit,
-                    OrderType = MesOutboundOrderTypeEnum.SubstrateOut.ObjToInt(),
-                    OrderStatus = OutOrderStatusEnum.鏈紑濮�.ObjToInt(),
-                    WarehouseId = warehouse.WarehouseId
-                };
-
-                List<Dt_Task> tasks = new List<Dt_Task>();
-
-                List<Dt_StockInfo>? stockInfos = null;
-                List<Dt_OutStockLockInfo>? outStockLockInfos = null;
-                List<Dt_LocationInfo>? locationInfos = null;
-                {
-                    (List<Dt_StockInfo>, Dt_MesOutboundOrder, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.MesOutboundOrderService.AssignStockOutbound(mesOutboundOrder);
-                    if (result.Item1 != null && result.Item1.Count > 0)
-                    {
-                        tasks = GetTasks(result.Item1, TaskTypeEnum.MesOutbound);
-                        result.Item2.OrderStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                        result.Item3.ForEach(x =>
-                        {
-                            x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-                        });
-
-                        stockInfos = result.Item1;
-                        mesOutboundOrder = result.Item2;
-                        outStockLockInfos = result.Item3;
-                        locationInfos = result.Item4;
-                    }
-                    else
-                    {
-                        throw new Exception("鏃犲簱瀛�");
-                    }
-                }
-                tasks.ForEach(x =>
-                {
-                    x.TargetAddress = model.Line;
-                    x.OrderNo = mesOutboundOrder.TaskNo;
-                });
-                _unitOfWorkManage.BeginTran();
-
-                int id = BaseDal.AddData(tasks);
-                outStockLockInfos.ForEach(x =>
-                {
-                    x.OrderNo = mesOutboundOrder.TaskNo;
-                    x.OrderDetailId = id;
-                });
-                _outboundService.MesOutboundOrderService.Repository.AddData(mesOutboundOrder);
-                if (stockInfos != null && stockInfos.Count > 0 && outStockLockInfos != null && outStockLockInfos.Count > 0 && locationInfos != null && locationInfos.Count > 0)
-                {
-                    WebResponseContent content = _outboundService.MesOutboundOrderService.LockOutboundStockDataUpdate(stockInfos, outStockLockInfos, locationInfos, tasks: tasks);
-
-                    if (!content.Status)
-                    {
-                        _unitOfWorkManage.RollbackTran();
-                        return MesResponseContent.Instance.Error(content.Message);
-                    }
-                }
-                _unitOfWorkManage.CommitTran();
-                PushTasksToWCS(tasks);
-
-
-                return MesResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return MesResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
         /// 鍩烘澘浣欐枡閫�搴�
         /// </summary>
         /// <param name="model"></param>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
index 2d67961..8805d0a 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService.cs"
@@ -41,17 +41,12 @@
 using WIDESEA_External.Model;
 using WIDESEA_IBasicRepository;
 using WIDESEA_IBasicService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
 using WIDESEA_IRecordService;
 using WIDESEA_IStockRepository;
 using WIDESEA_IStockService;
 using WIDESEA_ITaskInfoRepository;
 using WIDESEA_ITaskInfoService;
 using WIDESEA_Model.Models;
-using WIDESEA_OutboundRepository;
 using WIDESEA_TaskInfoRepository;
 
 namespace WIDESEA_TaskInfoService
@@ -63,18 +58,11 @@
         private readonly IStockRepository _stockRepository;
         private readonly IBasicService _basicService;
         private readonly IRecordService _recordService;
-        private readonly IOutboundService _outboundService;
         private readonly IStockService _stockService;
         private readonly IBasicRepository _basicRepository;
         private readonly IApiInfoRepository _apiInfoRepository;
         private readonly IInvokeERPService _invokeERPService;
-        private readonly IInboundRepository _inboundRepository;
-        private readonly IInboundOrderService _inboundOrderService;
         private readonly IPalletTypeInfoRepository _palletTypeInfoRepository;
-        private readonly IOutProStockInfoRepository _outProStockInfoRepository;
-        private readonly IOutboundRepository _outboundRepository;
-        private readonly IProInStatisticsRepository _proInStatisticsRepository;
-        private readonly IProInStatisticsService _proInStatisticsService;
         public ITaskRepository Repository => BaseDal;
 
         private Dictionary<string, OrderByType> _taskOrderBy = new()
@@ -87,25 +75,18 @@
 
         public List<int> TaskOutboundTypes => typeof(TaskTypeEnum).GetEnumIndexList();
 
-        public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IStockRepository stockRepository, IBasicService basicService, IRecordService recordService, IOutboundService outboundService, IStockService stockService, IBasicRepository basicRepository, IApiInfoRepository apiInfoRepository, IInvokeERPService invokeERPService, IInboundRepository inboundRepository, IInboundOrderService inboundOrderService, IPalletTypeInfoRepository palletTypeInfoRepository, IOutProStockInfoRepository outProStockInfoRepository, IOutboundRepository outboundRepository, IProInStatisticsRepository proInStatisticsRepository, IProInStatisticsService proInStatisticsService) : base(BaseDal)
+        public TaskService(ITaskRepository BaseDal, IMapper mapper, IUnitOfWorkManage unitOfWorkManage, IStockRepository stockRepository, IBasicService basicService, IRecordService recordService, IStockService stockService, IBasicRepository basicRepository, IApiInfoRepository apiInfoRepository, IInvokeERPService invokeERPService, IPalletTypeInfoRepository palletTypeInfoRepository) : base(BaseDal)
         {
             _mapper = mapper;
             _unitOfWorkManage = unitOfWorkManage;
             _stockRepository = stockRepository;
             _basicService = basicService;
             _recordService = recordService;
-            _outboundService = outboundService;
             _stockService = stockService;
             _basicRepository = basicRepository;
             _apiInfoRepository = apiInfoRepository;
             _invokeERPService = invokeERPService;
-            _inboundRepository = inboundRepository;
-            _inboundOrderService = inboundOrderService;
             _palletTypeInfoRepository = palletTypeInfoRepository;
-            _outProStockInfoRepository = outProStockInfoRepository;
-            _outboundRepository = outboundRepository;
-            _proInStatisticsRepository = proInStatisticsRepository;
-            _proInStatisticsService = proInStatisticsService;
         }
 
         /// <summary>
@@ -224,198 +205,6 @@
         }
 
         /// <summary>
-        /// 鍏ュ簱浠诲姟瀹屾垚
-        /// </summary>
-        /// <param name="taskNum">浠诲姟鍙�</param>
-        /// <returns></returns>
-        public WebResponseContent InboundTaskCompleted(int taskNum)
-        {
-            try
-            {
-                Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
-                if (task == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌浠诲姟淇℃伅");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == task.WarehouseId);
-                if (warehouse.WarehouseType==WarehouseTypEnum.鎴愬搧.ToString())
-                {
-                    return InProductCompleted(task);
-                }
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == task.PalletCode && x.WarehouseId == task.WarehouseId).Includes(x => x.Details).First();
-                if (stockInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒版墭鐩樺搴旂殑缁勭洏淇℃伅");
-                }
-
-                if (!string.IsNullOrEmpty(stockInfo.LocationCode))
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡缁戝畾璐т綅");
-                }
-
-                if (stockInfo.Details.Count == 0 && stockInfo.PalletType != PalletTypeEnum.Empty.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌鎵樼洏搴撳瓨鏄庣粏淇℃伅");
-                }
-                #region 绌烘墭閫�搴�
-                if (task.TaskType == TaskTypeEnum.MesPalletLargeReturn.ObjToInt() || task.TaskType == TaskTypeEnum.MesPalletSmallReturn.ObjToInt())
-                {
-                    task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                    _unitOfWorkManage.BeginTran();
-                    BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
-                    _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(stockInfo, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                    _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(stockInfo.Details, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                    _unitOfWorkManage.CommitTran();
-                    return WebResponseContent.Instance.OK();
-                }
-                #endregion
-                Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress);
-                if (locationInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒扮洰鏍囪揣浣嶄俊鎭�");
-                }
-
-                if (locationInfo.LocationStatus == LocationStatusEnum.InStock.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璐т綅鐘舵�佷笉姝g‘");
-                }
-
-                LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus;
-                locationInfo.LocationStatus = LocationStatusEnum.InStock.ObjToInt();
-                
-                stockInfo.LocationCode = locationInfo.LocationCode;
-                #region 绌虹鍏ュ簱/鎷i�夊洖搴�/鐢熶骇閫�鏂�
-                if (task.TaskType == TaskTypeEnum.InEmpty.ObjToInt() || task.TaskType == TaskTypeEnum.InPick.ObjToInt() || (task.TaskType == TaskTypeEnum.ProductionReturn.ObjToInt() && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString()))
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                    task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                    stockInfo.Details.ForEach(x =>
-                    {
-                        x.Status = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                    });
-                    _unitOfWorkManage.BeginTran();
-                    BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
-                    _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.InStock, stockInfo.WarehouseId);
-                    _stockRepository.StockInfoRepository.UpdateData(stockInfo);
-                    _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details);
-                    _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted);
-                    _unitOfWorkManage.CommitTran();
-                    return WebResponseContent.Instance.OK();
-                }
-                #endregion
-
-                Dt_InboundOrder? inboundOrder = _inboundRepository.InboundOrderRepository.Db.Queryable<Dt_InboundOrder>().Where(x => x.InboundOrderNo == stockInfo.Details.FirstOrDefault().OrderNo).Includes(x => x.Details).First();
-                Dt_InboundOrderDetail? inboundOrderDetail = null;
-                Dt_ReturnOrder? returnOrder = null;
-                //鏍囧噯鍏ュ簱娴佺▼鏌ユ壘鍏ュ簱鍗曟嵁
-                if (inboundOrder != null && stockInfo.StockStatus == StockStatusEmun.鍏ュ簱纭.ObjToInt())
-                {
-                    //鏌ヨ鍘熷畬鎴愮殑鍏ュ簱鏄庣粏鏁伴噺
-                    int overCount = inboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).ToList().Count;
-                    inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.RowNo == stockInfo.Details.FirstOrDefault()?.InboundOrderRowNo);
-                    foreach (var item in stockInfo.Details)
-                    {
-                        if (inboundOrderDetail == null)
-                        {
-                            continue;
-                        }
-                        inboundOrderDetail.OverInQuantity += item.StockQuantity;
-                        if (inboundOrderDetail.OverInQuantity == inboundOrderDetail.OrderQuantity)
-                        {
-                            inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                            overCount += 1;
-                        }
-                        else if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-                        {
-                            inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Inbounding.ObjToInt();
-                        }
-                    }
-                    if (inboundOrder.Details.Count == overCount)
-                    {
-                        inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt();
-                        //鍒ゆ柇鏄惁涓洪��鏂欏叆搴撳崟
-                        if (inboundOrder.OrderType == InOrderTypeEnum.Return.ObjToInt())
-                        {
-                            returnOrder = _inboundRepository.ReturnOrderRepository.Db.Queryable<Dt_ReturnOrder>().Where(x => x.OrderNo == inboundOrder.UpperOrderNo).Includes(x => x.Details).First();
-                            returnOrder.ReturnOrderStatus = ReturnOrderStatusEnum.Returned.ObjToInt();
-                            foreach (var item in inboundOrder.Details)
-                            {
-                                Dt_ReturnOrderDetail returnOrderDetail = returnOrder.Details?.FirstOrDefault(x => x.MCode == item.MaterielCode);
-                                if (returnOrderDetail != null)
-                                {
-                                    returnOrderDetail.OverReturnQty = item.OverInQuantity;
-                                    returnOrderDetail.OrderDetailStatus = ReturnOrderStatusEnum.Returned.ObjToInt();
-                                }
-                            }
-                        }
-                    }
-                    else if (inboundOrder.OrderStatus == InOrderStatusEnum.鏈紑濮�.ObjToInt())
-                    {
-                        inboundOrder.OrderStatus = InOrderStatusEnum.鍏ュ簱涓�.ObjToInt();
-                    }
-                }
-                if ((stockInfo.StockStatus == StockStatusEmun.鍏ュ簱纭.ObjToInt() || stockInfo.StockStatus == StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt()) && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString())
-                {
-                    foreach (var model in stockInfo.Details)
-                    {
-                        TestSynStock(new TestToolSynInfo() { ToolCode = model.BatchNo, MaterialName = model.MaterielName, Life = int.TryParse(model.Remark, out int val) ? val : 1000 });
-                    }
-                }
-                //娴嬭瘯鏋跺叆搴撳簱瀛樼姸鎬�
-                if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt() && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt())
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚鏈缓鍑哄簱鍗�.ObjToInt();
-                }
-                else
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                }
-                stockInfo.Details.ForEach(x =>
-                {
-                    x.Status = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                });
-                //鏇存柊浠诲姟鐘舵��
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                FeedBackWCSTaskCompleted(taskNum);
-                _unitOfWorkManage.BeginTran();
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.InStock, stockInfo.WarehouseId);
-                _stockRepository.StockInfoRepository.UpdateData(stockInfo);
-                _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details);
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted);
-                _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfo.Details, stockInfo.Details.Sum(x => x.StockQuantity), stockInfo.Details.Sum(x => x.StockQuantity), StockChangeTypeEnum.Inbound, taskNum);
-                if (inboundOrder != null && inboundOrderDetail != null)
-                {
-                    _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder);
-                    _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetail);
-                }
-                if (returnOrder != null)
-                {
-                    _inboundRepository.ReturnOrderRepository.UpdateData(returnOrder);
-                    _inboundRepository.ReturnOrderDetailRepository.UpdateData(returnOrder.Details);
-                }
-                _unitOfWorkManage.CommitTran();
-                //瀛樺湪鍏ュ簱鍗曞苟鐘舵�佷负瀹屾垚鐘舵�佹帹閫佽嚦ERP
-                if (inboundOrder != null && inboundOrder.OrderStatus == InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt() && inboundOrder.OrderType != InOrderTypeEnum.Allocat.ObjToInt())
-                {
-                    if (inboundOrder.OrderType == InOrderTypeEnum.Return.ObjToInt() && returnOrder!=null)
-                    {
-                        _inboundOrderService.FeedbackReturnOrder(inboundOrder, returnOrder);
-                    }
-                    else if(inboundOrderDetail != null)
-                    {
-                        _inboundOrderService.FeedbackInboundOrder(inboundOrder.Id);
-                    }
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        /// <summary>
         /// 鎴愬搧浠撳叆搴撲换鍔″畬鎴�
         /// </summary>
         public WebResponseContent InProductCompleted(Dt_Task task)
@@ -427,9 +216,6 @@
                 {
                     case (int)TaskTypeEnum.EmptyProductBack:
                         content = EmptyProBackCompleted(task);
-                        break;
-                    case (int)TaskTypeEnum.InProduct:
-                        content = InProCompleted(task);
                         break;
                     case (int)TaskTypeEnum.InProductBack:
                         content = InProBackCompleted(task);
@@ -456,73 +242,6 @@
                 _unitOfWorkManage.BeginTran();
                 BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
                 _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// MES鍐呭寘鍏ュ簱浠诲姟瀹屾垚
-        /// </summary>
-        /// <param name="task"></param>
-        /// <returns></returns>
-        public WebResponseContent InProCompleted(Dt_Task task)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇缁勭洏淇℃伅
-                Dt_ProStockInfo proStockInfo = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.PalletCode == task.PalletCode).Includes(x => x.proStockInfoDetails).First();
-                if (proStockInfo == null)
-                {
-                    return content.Error($"鏈壘鍒拌兌妗嗕负{task.PalletCode}缁勭洏淇℃伅");
-                }
-                Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress);
-                if (locationInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒扮洰鏍囪揣浣嶄俊鎭�");
-                }
-                if (locationInfo.LocationStatus == LocationStatusEnum.InStock.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璐т綅鐘舵�佷笉姝g‘");
-                }
-                LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus;
-                locationInfo.LocationStatus = LocationStatusEnum.InStock.ObjToInt();
-                proStockInfo.LocationCode = locationInfo.LocationCode;
-                //鑾峰彇MES鍏ュ簱鍗曟嵁
-                Dt_MesProInOrder mesProInOrder = _inboundRepository.MesProInOrderRepository.Db.Queryable<Dt_MesProInOrder>().Where(x => x.BatchNo == task.PalletCode && x.MesProStatus == InOrderStatusEnum.鍏ュ簱涓�.ObjToInt()).Includes(x => x.Details).OrderByDescending(x => x.Id).First();
-                if (mesProInOrder == null || mesProInOrder.Details == null || mesProInOrder.Details.Count <= 0)
-                {
-                    return content.Error("鏈壘鍒癕ES鍐呭寘鍗曟嵁淇℃伅");
-                }
-                //杩涜鍗曟嵁澶勭悊
-                mesProInOrder.MesProStatus = InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt();
-                mesProInOrder.Details.ForEach(x =>
-                {
-                    x.OverInQuantity = x.OKPCSQTY;
-                });
-                proStockInfo.StockStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                proStockInfo.proStockInfoDetails.ForEach(x =>
-                {
-                    x.ProOutDetailStatus = StockStatusEmun.鍏ュ簱瀹屾垚.ObjToInt();
-                });
-                //鏇存柊鍏ュ簱鐘舵��
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.浜哄伐瀹屾垚 : OperateTypeEnum.鑷姩瀹屾垚);
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, proStockInfo.PalletType, LocationStatusEnum.InStock, locationInfo.WarehouseId);
-                _stockRepository.ProStockInfoRepository.UpdateData(proStockInfo);
-                _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfo.proStockInfoDetails);
-                _inboundRepository.MesProInOrderRepository.UpdateData(mesProInOrder);
-                _inboundRepository.MesProInOrderDetailRepository.UpdateData(mesProInOrder.Details);
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted);
-                _unitOfWorkManage.CommitTran();
-                ////涓婁紶ERP
-                //_inboundOrderService.FeedbackProIn(mesProInOrder);
                 content.OK();
             }
             catch (Exception ex)
@@ -577,346 +296,6 @@
                 _stockRepository.ProStockInfoRepository.UpdateData(proStockInfo);
                 _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfo.proStockInfoDetails);
                 _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted);
-                _unitOfWorkManage.CommitTran();
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鍑哄簱浠诲姟瀹屾垚
-        /// </summary>
-        /// <param name="taskNum">浠诲姟鍙�</param>
-        /// <returns></returns>
-        public WebResponseContent OutboundTaskCompleted(int taskNum)
-        {
-            try
-            {
-                Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
-                if (task == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒颁换鍔′俊鎭�");
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == task.WarehouseId);
-                //鎴愬搧鍑哄簱浠诲姟瀹屾垚
-                if (warehouse.WarehouseType==WarehouseTypEnum.鎴愬搧.ToString())
-                {
-                    return OutProCompleted(task);
-                }
-                Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(task.PalletCode);
-
-                Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.SourceAddress);
-                if (stockInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板簱瀛樹俊鎭�");
-                }
-                if (locationInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒拌揣浣嶄俊鎭�");
-                }
-                List<Dt_OutStockLockInfo> outStockLockInfos = _outboundService.OutboundStockLockInfoService.Repository.QueryData(x => x.TaskNum == taskNum);
-                List<Dt_OutboundOrderDetail> outboundOrderDetails = new List<Dt_OutboundOrderDetail>();
-                List<Dt_MesOutboundOrder> mesOutboundOrders = new List<Dt_MesOutboundOrder>();
-                if ((outStockLockInfos == null || outStockLockInfos.Count == 0) && warehouse.WarehouseCode != WarehouseEnum.HA64.ToString() && (task.TaskType != TaskTypeEnum.OutEmpty.ObjToInt()))
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板嚭搴撹鎯呬俊鎭�");
-                }
-                else
-                {
-                    foreach (var item in outStockLockInfos)
-                    {
-                        if (task.TaskType == TaskTypeEnum.MesOutbound.ObjToInt())
-                        {
-                            Dt_MesOutboundOrder mesOutboundOrder = _outboundService.MesOutboundOrderService.Repository.QueryFirst(x => x.TaskNo == item.OrderNo);
-                            if (mesOutboundOrder != null)
-                            {
-                                mesOutboundOrder.OverOutQuantity = item.AssignQuantity;
-                                if (mesOutboundOrder.OverOutQuantity == mesOutboundOrder.OrderQuantity)
-                                {
-                                    mesOutboundOrder.OrderStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                                }
-                                mesOutboundOrders.Add(mesOutboundOrder);
-                            }
-                        }
-                        else
-                        {
-                            Dt_OutboundOrderDetail outboundOrderDetail = _outboundService.OutboundOrderDetailService.Repository.QueryFirst(x => x.Id == item.OrderDetailId);
-                            if (outboundOrderDetail != null)
-                            {
-                                outboundOrderDetail.OverOutQuantity += item.AssignQuantity;
-                                if (outboundOrderDetail.OverOutQuantity == outboundOrderDetail.OrderQuantity)
-                                {
-                                    outboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                                }
-                                outboundOrderDetails.Add(outboundOrderDetail);
-                            }
-                        }
-                        item.Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                    }
-                }
-
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                FeedBackWCSTaskCompleted(taskNum);
-                _unitOfWorkManage.BeginTran();
-
-                if (task.TaskType == TaskTypeEnum.Outbound.ObjToInt() || task.TaskType == TaskTypeEnum.OutAllocate.ObjToInt() || task.TaskType == TaskTypeEnum.MesHandPickOutbound.ObjToInt() || task.TaskType == TaskTypeEnum.MesHandOutbound.ObjToInt())
-                {
-                    //澶勭悊鍑哄簱璇︽儏
-                    if (outboundOrderDetails.Count > 0)
-                    {
-                        _outboundService.OutboundOrderDetailService.Repository.UpdateData(outboundOrderDetails);
-                    }
-                    stockInfo.LocationCode = "";
-                    stockInfo.StockStatus = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-                    stockInfo.Details.ForEach(x =>
-                    {
-                        x.Status = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-                    });
-                    if (stockInfo.StockLength>0)
-                    {
-                        stockInfo.StockLength = 0;
-                    }
-                    _stockRepository.StockInfoRepository.UpdateData(stockInfo);
-                    _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details);
-                }
-                else if (task.TaskType == TaskTypeEnum.OutEmpty.ObjToInt())
-                {
-                    _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.Free, stockInfo.WarehouseId);
-                    _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(stockInfo, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                }
-                else if (task.TaskType == TaskTypeEnum.MesOutbound.ObjToInt())
-                {
-                    _outboundService.MesOutboundOrderService.Repository.UpdateData(mesOutboundOrders);
-                    _stockService.StockInfoService.Repository.DeleteAndMoveIntoHty(stockInfo, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                    _stockService.StockInfoDetailService.Repository.DeleteAndMoveIntoHty(stockInfo.Details, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                }
-                _outboundService.OutboundStockLockInfoService.Repository.UpdateData(outStockLockInfos);
-
-                int beforeStatus = locationInfo.LocationStatus;
-                locationInfo.LocationStatus = LocationStatusEnum.Free.ObjToInt();
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.Free, stockInfo.WarehouseId);
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, (LocationStatusEnum)beforeStatus, LocationStatusEnum.Free, LocationChangeType.OutboundCompleted, stockInfo.Details.FirstOrDefault()?.OrderNo ?? "", task.TaskNum);
-                _unitOfWorkManage.CommitTran();
-
-                if (warehouse.WarehouseCode != WarehouseEnum.HA64.ToString() && task.TaskType == TaskTypeEnum.Outbound.ObjToInt())
-                {
-                    _outboundService.OutboundOrderService.TestOutUpload(outboundOrderDetails.FirstOrDefault().OrderId, outStockLockInfos);
-                }
-                if (task.TaskType == TaskTypeEnum.MesOutbound.ObjToInt())
-                {
-                    MesMaterialLotaAceptModel model = GetMesMaterialLotaAceptModel(stockInfo, stockInfo.Details.FirstOrDefault(), mesOutboundOrders.FirstOrDefault().TaskNo, warehouse.WarehouseCode, stockInfo.Details.Where(x => x.MaterielCode == mesOutboundOrders.FirstOrDefault().MaterialCode).Sum(x => x.StockQuantity));
-                    UploadMesMaterialLotaAcept(model);
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-        //鎴愬搧鍑哄簱浠诲姟瀹屾垚
-        public WebResponseContent OutProCompleted(Dt_Task task)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                switch (task.TaskType)
-                {
-                    case (int)TaskTypeEnum.OutProduct:
-                        content = OutProductCompleted(task);
-                        break;
-                    case (int)TaskTypeEnum.OutMesRworkProduct:
-                        content = OutMesRworkCompleted(task);
-                        break;
-                    default:
-                        content.Error("鏈煡浠诲姟绫诲瀷");
-                        break;
-                }
-            }
-            catch (Exception ex)
-            {
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        //鎴愬搧璁㈠崟鍑哄簱浠诲姟瀹屾垚
-        public WebResponseContent OutProductCompleted(Dt_Task task)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇璐т綅
-                Dt_LocationInfo locationInfo = _basicRepository.LocationInfoRepository.QueryFirst(x => x.LocationCode == task.SourceAddress);
-                if (locationInfo == null)
-                {
-                    return content.Error("鏈壘鍒拌揣浣嶄俊鎭�");
-                }
-                //鏍规嵁浠诲姟鑾峰彇鎴愬搧鍑哄簱璇︽儏浠诲姟鍙婄墿鏂欎俊鎭�
-                Dt_OutProStockInfo outProStockInfo = _outProStockInfoRepository.QueryFirst(x => x.TaskNum == task.TaskNum);
-                if (outProStockInfo == null)
-                {
-                    return content.Error("鏈壘鍒版垚鍝佸嚭搴撹鎯�");
-                }
-                //鑾峰彇鎴愬搧鍑哄簱璁㈠崟
-                Dt_ProOutOrder proOutOrder = _outboundService.ProOutOrderService.Repository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.ProOutOrderNo == outProStockInfo.OrderNo).Includes(x => x.Details).First();
-
-                if (proOutOrder == null)
-                {
-                    return content.Error("鏈壘鍒版垚鍝佸嚭搴撹鍗�");
-                }
-                //鑾峰彇鎴愬搧搴撳瓨
-                Dt_ProStockInfo proStockInfo = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.PalletCode == task.PalletCode).Includes(x => x.proStockInfoDetails).First();
-                if (proStockInfo == null)
-                {
-                    return content.Error($"鏈壘鍒皗task.PalletCode}鎴愬搧搴撳瓨淇℃伅");
-                }
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = proStockInfo.proStockInfoDetails;
-                if (proStockInfoDetails.Count <= 0)
-                {
-                    return content.Error($"{proStockInfo.PalletCode}鎴愬搧搴撳瓨鏄庣粏涓虹┖");
-                }
-                proStockInfoDetails.ForEach(x =>
-                {
-                    x.ProOutDetailStatus = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-                });
-                //澶勭悊搴撳瓨鏁版嵁
-                //List<Dt_ProStockInfoDetail>? deleteStockDetails = null;
-                //List<Dt_ProStockInfoDetail>? updateStockDetails = null;
-                //(List<Dt_ProStockInfoDetail>?, List<Dt_ProStockInfoDetail>?) result = _stockService.ProStockInfoService.HandleOutProStock(proStockInfo);
-                //if (result.Item1!=null && result.Item1.Count>0)
-                //{
-                //    deleteStockDetails.AddRange(result.Item1);
-                //}
-                //if (result.Item1 != null && result.Item1.Count > 0)
-                //{
-                //    updateStockDetails.AddRange(updateStockDetails);
-                //}
-                //鑾峰彇鎴愬搧鍑哄簱鍗曟槑缁�
-                Dt_ProOutOrderDetail? proOutOrderDetail = proOutOrder.Details.FirstOrDefault(x => x.Id == outProStockInfo.OrderDetailId);
-                if (proOutOrderDetail == null)
-                {
-                    return content.Error("鏈壘鍒板搴斾换鍔℃垚鍝佽鍗曟槑缁�");
-                }
-                //if (deleteStockDetails?.Sum(x=>x.StockPcsQty)== proStockInfo.proStockInfoDetails.Sum(x=>x.StockPcsQty))
-                //{
-                proStockInfo.StockStatus = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-                //鑾峰彇鎴愬搧骞冲簱
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                proStockInfo.WarehouseId = warehouse.WarehouseId;
-                proStockInfo.LocationCode = "鎴愬搧鍖呰鎷h揣鍖�";
-                //}
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                outProStockInfo.Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                //璐т綅鍙樺姩璁板綍
-                int beforeStatus = locationInfo.LocationStatus;
-                locationInfo.LocationStatus = LocationStatusEnum.Free.ObjToInt();
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, proStockInfo.PalletType, LocationStatusEnum.Free, locationInfo.WarehouseId);
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, (LocationStatusEnum)beforeStatus, LocationStatusEnum.Free, LocationChangeType.OutboundCompleted, proOutOrder?.ProOutOrderNo ?? "", task.TaskNum);
-
-                //if (deleteStockDetails!=null && deleteStockDetails.Count>0)
-                //{
-                //    _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(deleteStockDetails, OperateTypeEnum.鑷姩瀹屾垚);
-                //}
-                //if (updateStockDetails!=null && updateStockDetails.Count>0)
-                //{
-                _stockRepository.ProStockInfoRepository.UpdateData(proStockInfo);
-                _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfoDetails);
-                _outProStockInfoRepository.UpdateData(outProStockInfo);
-                //}
-                //else
-                //{
-                //_stockRepository.ProStockInfoRepository.DeleteAndMoveIntoHty(proStockInfo, OperateTypeEnum.鑷姩瀹屾垚);
-                //}
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                _unitOfWorkManage.CommitTran();
-                //MES鎴愬搧鍑哄簱鍚屾
-                ShipmentOrderSync(MesOutSync(outProStockInfo, proOutOrderDetail, proStockInfoDetails));
-                content.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 鎴愬搧MES鎻愬簱浠诲姟瀹屾垚
-        /// </summary>
-        public WebResponseContent OutMesRworkCompleted(Dt_Task task)
-        {
-            WebResponseContent content=new WebResponseContent();
-            try
-            {
-                //鑾峰彇璐т綅
-                Dt_LocationInfo locationInfo = _basicRepository.LocationInfoRepository.QueryFirst(x => x.LocationCode == task.SourceAddress);
-                if (locationInfo == null)
-                {
-                    return content.Error("鏈壘鍒拌揣浣嶄俊鎭�");
-                }
-                //鏍规嵁浠诲姟鑾峰彇鎴愬搧鍑哄簱璇︽儏浠诲姟鍙婄墿鏂欎俊鎭�
-                Dt_OutProStockInfo outProStockInfo = _outProStockInfoRepository.QueryFirst(x => x.TaskNum == task.TaskNum);
-                if (outProStockInfo == null)
-                {
-                    return content.Error("鏈壘鍒版垚鍝佸嚭搴撹鎯�");
-                }
-                //鑾峰彇MES鎻愬簱鍗�
-                Dt_MesRworkOutboundOrder mesRworkOutboundOrder = _outboundRepository.RworkOutboundOrderRepository.QueryFirst(x=>x.TaskNo==task.OrderNo);
-                if (mesRworkOutboundOrder==null)
-                {
-                    return content.Error("鏈壘鍒癕ES鎴愬搧鎻愬簱鍗�");
-                }
-                if (mesRworkOutboundOrder.OrderStatus==OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return content.Error($"MES鎴愬搧鎻愬簱鍗晎mesRworkOutboundOrder.TaskNo}宸插畬鎴�");
-                }
-                //鑾峰彇褰撳墠搴撳瓨
-                Dt_ProStockInfo proStockInfo = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.PalletCode ==task.PalletCode).Includes(x=>x.proStockInfoDetails).First();
-                if (proStockInfo==null)
-                {
-                    return content.Error($"鏈壘鍒皗task.PalletCode}搴撳瓨淇℃伅");
-                }
-                List<Dt_ProStockInfoDetail> proStockInfoDetails = proStockInfo.proStockInfoDetails;
-                if (proStockInfoDetails.Count <= 0)
-                {
-                    return content.Error("鎴愬搧搴撳瓨鏄庣粏涓虹┖");
-                }
-                proStockInfoDetails.ForEach(x =>
-                {
-                    x.OutboundQuantity = 0;
-                    x.ProOutDetailStatus = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-                });
-                proStockInfo.StockStatus = StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt();
-                //鑾峰彇鎴愬搧骞冲簱
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA101.ToString());
-                proStockInfo.WarehouseId = warehouse.WarehouseId;
-                proStockInfo.LocationCode = "鎴愬搧鍖呰鎷h揣鍖�";
-                task.TaskStatus = TaskStatusEnum.Finish.ObjToInt();
-                outProStockInfo.Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                _unitOfWorkManage.BeginTran();
-                //璐т綅鍙樺姩璁板綍
-                int beforeStatus = locationInfo.LocationStatus;
-                locationInfo.LocationStatus = LocationStatusEnum.Free.ObjToInt();
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, proStockInfo.PalletType, LocationStatusEnum.Free, locationInfo.WarehouseId);
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, (LocationStatusEnum)beforeStatus, LocationStatusEnum.Free, LocationChangeType.OutboundCompleted, mesRworkOutboundOrder?.TaskNo ?? "", task.TaskNum);
-                _stockRepository.ProStockInfoRepository.UpdateData(proStockInfo);
-                _stockRepository.ProStockInfoDetailRepository.UpdateData(proStockInfoDetails);
-                _outProStockInfoRepository.UpdateData(outProStockInfo);
-                BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? OperateTypeEnum.鑷姩瀹屾垚 : OperateTypeEnum.浜哄伐瀹屾垚);
-                //MES鎴愬搧搴撳瓨鏉垮嚭搴撳悓姝�
-                //WebResponseContent responseContent = ProductOutBoundSync(MesProOutBound(mesRworkOutboundOrder, proStockInfoDetails));
-                //if (!responseContent.Status)
-                //{
-                //    throw new Exception("鍚屾MES搴撳瓨鏉垮嚭搴撳け璐�,閿欒:"+ responseContent.Message);
-                //}
                 _unitOfWorkManage.CommitTran();
                 content.OK();
             }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Completed.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Completed.cs"
index 7c452cc..bf050aa 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Completed.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Completed.cs"
@@ -28,14 +28,6 @@
                 {
                     return await Task.FromResult(WebResponseContent.Instance.Error($"鏈壘鍒颁换鍔′俊鎭�"));
                 }
-                if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.InboundGroup)
-                {
-                    return await Task.FromResult(InboundTaskCompleted(taskNum));
-                }
-                else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup)
-                {
-                    return await Task.FromResult(OutboundTaskCompleted(taskNum));
-                }
                 else if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.RelocationGroup)
                 {
                     return await Task.FromResult(RelocationTaskCompleted(task));
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
index 8a041a3..3a26c86 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Inbound.cs"
@@ -23,139 +23,6 @@
     public partial class TaskService
     {
         /// <summary>
-        /// 鐢宠鍏ュ簱浠诲姟(PDA浣跨敤锛屼粎鎵樼洏缁戝畾鍏ュ簱绔欏彴锛屼笉鍒嗛厤璐т綅)
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        public WebResponseContent RequestInboundTask(SaveModel saveModel)
-        {
-            try
-            {
-                var palletCode = saveModel.MainData["barcode"].ToString();
-                var warehouseId = saveModel.MainData["warehouseId"].ObjToInt();
-                var stationCode = saveModel.MainData["startPoint"].ToString();
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == warehouseId);
-                if (warehouse == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板簱鍖�");
-                }
-
-                Dt_Task task = Repository.QueryFirst(x => x.PalletCode == palletCode && x.WarehouseId == warehouseId);
-                if (task != null)
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡鐢熸垚浠诲姟");
-                }
-
-                if (Repository.QueryFirst(x => x.SourceAddress == stationCode && x.TaskStatus == TaskStatusEnum.New.ObjToInt()) != null && warehouse.WarehouseCode != WarehouseEnum.HA60.ToString())
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ珯鐐瑰凡鏈夋湭鎵ц鐨勪换鍔�");
-                }
-
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x=>x.PalletCode== palletCode).Includes(x=>x.Details).First();
-                if (stockInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒扮粍鐩樹俊鎭�");
-                }
-                if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎷i�夊畬鎴�.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樼姸鎬佷笉姝g‘,涓嶅彲鐢宠鍏ュ簱");
-                }
-                if (!string.IsNullOrEmpty(stockInfo.LocationCode))
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡缁戝畾璐т綅");
-                }
-                if (warehouseId != stockInfo.WarehouseId)
-                {
-                    return WebResponseContent.Instance.Error($"浠撳簱涓嶆纭�");
-                }
-                if (warehouse.WarehouseCode == WarehouseEnum.HA60.ToString())
-                {
-                    Dt_LocationInfo locationInfo = _basicRepository.LocationInfoRepository.QueryFirst(x => x.WarehouseId == warehouseId);
-                    if (locationInfo == null) return WebResponseContent.Instance.Error($"鏈壘鍒板綋鍓嶅簱鍖鸿揣浣嶄俊鎭�");
-                    return DeviceRequestInboundTask(stationCode, locationInfo.RoadwayNo, palletCode);
-                }
-                else
-                {
-                    Dt_Task newTask = new Dt_Task()
-                    {
-                        CurrentAddress = stationCode,
-                        Grade = 0,
-                        NextAddress = "",
-                        PalletCode = palletCode,
-                        Roadway = "",
-                        SourceAddress = stationCode,
-                        TargetAddress = "",
-                        TaskType = TaskTypeEnum.Inbound.ObjToInt(),
-                        TaskStatus = TaskStatusEnum.New.ObjToInt(),
-                        WarehouseId = stockInfo.WarehouseId,
-                        PalletType = stockInfo.PalletType,
-                        MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode,
-                        Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.StockQuantity,
-                    };
-                    //鑾峰彇鏄惁瀛樺湪鍏ュ簱鍗�
-                    Dt_InboundOrder? inboundOrder =  null;
-                    if (stockInfo!=null && stockInfo.Details.Count>0)
-                    {
-                        string? orderNo = stockInfo.Details.FirstOrDefault()?.OrderNo ?? "";
-                        inboundOrder =_inboundOrderService.Repository.QueryFirst(x => x.InboundOrderNo == orderNo && x.OrderStatus < InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt());
-                        if (inboundOrder!=null)
-                        {
-                            newTask.OrderNo = inboundOrder.InboundOrderNo;
-                        }
-                    }
-                    
-                    if (inboundOrder != null)
-                    {
-                        if (inboundOrder.OrderType == InOrderTypeEnum.Allocat.ObjToInt())
-                        {
-                            newTask.TaskType = TaskTypeEnum.InAllocate.ObjToInt();
-                            newTask.OrderNo = inboundOrder.InboundOrderNo;
-                        }
-                        else if (inboundOrder.OrderType == InOrderTypeEnum.Return.ObjToInt())
-                        {
-                            newTask.TaskType = TaskTypeEnum.ProductionReturn.ObjToInt();
-                            newTask.OrderNo = inboundOrder.InboundOrderNo;
-                        }
-                    }
-                    if (stockInfo.StockStatus == StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
-                    {
-                        stockInfo.StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt();
-                    }
-                    else if (stockInfo.StockStatus == StockStatusEmun.鎷i�夊畬鎴�.ObjToInt())
-                    {
-                        stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
-                        newTask.TaskType = TaskTypeEnum.InPick.ObjToInt();
-                    }
-                    else
-                    {
-                        stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
-                    }
-
-                    if (warehouse.WarehouseCode==WarehouseEnum.HA57.ToString())
-                    {
-                        Dt_Task dt_TaskMesReturn = BaseDal.QueryFirst(x=>x.TaskType==TaskTypeEnum.MesMatReturn.ObjToInt() && x.TaskStatus!=TaskStatusEnum.SC_Executing.ObjToInt());
-                        if (dt_TaskMesReturn!=null)
-                        {
-                            return WebResponseContent.Instance.Error($"閫�鏂欎换鍔℃鎵ц");
-                        }
-                    }
-                    _unitOfWorkManage.BeginTran();
-                    int taskId = BaseDal.AddData(newTask);
-                    newTask.TaskId = taskId;
-                    _stockRepository.StockInfoRepository.UpdateData(stockInfo);
-                    _unitOfWorkManage.CommitTran();
-                    PushTasksToWCS(new List<Dt_Task> { newTask });
-                    return WebResponseContent.Instance.OK(data: newTask);
-                }
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
         /// 鍏ョ┖绠�
         /// </summary>
         /// <param name="barcode"></param>
@@ -272,187 +139,6 @@
                 return WebResponseContent.Instance.Error(ex.Message);
             }
         }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="stationCode"></param>
-        /// <param name="roadwayNo"></param>
-        /// <param name="palletCode"></param>
-        /// <returns></returns>
-        public WebResponseContent DeviceRequestInboundTask(string stationCode, string roadwayNo, string palletCode,string materielBoxCode = "")
-        {
-            try
-            {
-                Dt_Task task = Repository.QueryFirst(x => x.PalletCode == palletCode);
-                if (task != null)
-                {
-                    PushTasksToWCS(new List<Dt_Task> { task });
-                    return WebResponseContent.Instance.OK($"璇ユ墭鐩樺凡鐢熸垚浠诲姟", _mapper.Map<WMSTaskDTO>(task));
-                }
-
-                if (Repository.QueryFirst(x => x.SourceAddress == stationCode && x.TaskStatus == TaskStatusEnum.New.ObjToInt()) != null && stationCode != "8005")//杈呮枡浠撲笉闄愬埗鍏ュ簱浠诲姟
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ珯鐐瑰凡鏈夋湭鎵ц鐨勪换鍔�");
-                }
-                if (!string.IsNullOrEmpty(materielBoxCode))
-                {
-                    _unitOfWorkManage.BeginTran();
-                    WebResponseContent responseGroup = _inboundOrderService.MaterielPPorGM(materielBoxCode);
-                    if (!responseGroup.Status)
-                    {
-                        return WebResponseContent.Instance.Error($"{responseGroup.Message}");
-                    }
-                    Dt_StockInfo stockInfoPPorGM = responseGroup.Data as Dt_StockInfo ?? null;
-                    if (stockInfoPPorGM==null)
-                    {
-                        return WebResponseContent.Instance.Error($"缁勭洏鏁版嵁杞崲澶辫触");
-                    }
-                    Dt_LocationInfo? locationInfoPPorGM = _basicService.LocationInfoService.AssignLocation(roadwayNo, stockInfoPPorGM.PalletType, stockInfoPPorGM.WarehouseId);
-                    if (locationInfoPPorGM == null)
-                    {
-                        return WebResponseContent.Instance.Error($"璐т綅鍒嗛厤澶辫触,鏈壘鍒板彲鍒嗛厤璐т綅");
-                    }
-                    Dt_Task newTaskPPorGM = new Dt_Task()
-                    {
-                        CurrentAddress = stationCode,
-                        Grade = 0,
-                        NextAddress = locationInfoPPorGM.LocationCode,
-                        PalletCode = stockInfoPPorGM.PalletCode,
-                        Roadway = roadwayNo,
-                        SourceAddress = stationCode,
-                        TargetAddress = locationInfoPPorGM.LocationCode,
-                        TaskType = TaskTypeEnum.Inbound.ObjToInt(),
-                        TaskStatus = TaskStatusEnum.New.ObjToInt(),
-                        WarehouseId = stockInfoPPorGM.WarehouseId,
-                        PalletType = stockInfoPPorGM.PalletType,
-                        TaskLength= stockInfoPPorGM.StockLength
-                    };
-
-                    //鑾峰彇鏄惁瀛樺湪鍏ュ簱鍗�
-                    Dt_InboundOrder? inboundOrderPPorGM = null;
-                    if (stockInfoPPorGM != null && stockInfoPPorGM.Details.Count > 0)
-                    {
-                        string? orderNo = stockInfoPPorGM.Details.FirstOrDefault()?.OrderNo ?? "";
-                        inboundOrderPPorGM = _inboundOrderService.Repository.QueryFirst(x => x.InboundOrderNo == orderNo && x.OrderStatus < InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt());
-                    }
-
-                    if (inboundOrderPPorGM != null)
-                    {
-                        if (inboundOrderPPorGM.OrderType == InOrderTypeEnum.Allocat.ObjToInt())
-                        {
-                            newTaskPPorGM.TaskType = TaskTypeEnum.InAllocate.ObjToInt();
-                        }
-                        else if (inboundOrderPPorGM.OrderType == InOrderTypeEnum.Return.ObjToInt())
-                        {
-                            newTaskPPorGM.TaskType = TaskTypeEnum.ProductionReturn.ObjToInt();
-                        }
-                    }
-                    stockInfoPPorGM.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
-                    LocationStatusEnum lastStatusPPorGM = (LocationStatusEnum)locationInfoPPorGM.LocationStatus;
-                    _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfoPPorGM, lastStatusPPorGM, LocationStatusEnum.Lock, LocationChangeType.InboundAssignLocation);
-                    _basicService.LocationInfoService.UpdateLocationStatus(locationInfoPPorGM, newTaskPPorGM.PalletType, LocationStatusEnum.Lock, newTaskPPorGM.WarehouseId);
-                    int taskIdPPorGM = BaseDal.AddData(newTaskPPorGM);
-                    newTaskPPorGM.TaskId = taskIdPPorGM;
-                    _stockRepository.StockInfoRepository.Db.InsertNav(stockInfoPPorGM).Include(x => x.Details).ExecuteCommand();
-                    _unitOfWorkManage.CommitTran();
-                    WMSTaskDTO wMSTaskDTOPPorGM = _mapper.Map<WMSTaskDTO>(newTaskPPorGM);
-
-                    PushTasksToWCS(new List<Dt_Task> { newTaskPPorGM });
-                    return WebResponseContent.Instance.OK(data: wMSTaskDTOPPorGM);
-                }
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => x.PalletCode == palletCode).Includes(x => x.Details).First();
-                if (stockInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒扮粍鐩樹俊鎭�");
-                }
-                if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎷i�夊畬鎴�.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.閫�搴�.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.MES閫�搴�.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樼姸鎬佷笉姝g‘,涓嶅彲鐢宠鍏ュ簱");
-                }
-                if (!string.IsNullOrEmpty(stockInfo.LocationCode))
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡缁戝畾璐т綅");
-                }
-
-                Dt_LocationInfo? locationInfo = _basicService.LocationInfoService.AssignLocation(roadwayNo, stockInfo.PalletType, stockInfo.WarehouseId);
-                if (locationInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"璐т綅鍒嗛厤澶辫触,鏈壘鍒板彲鍒嗛厤璐т綅");
-                }
-
-                Dt_Task newTask = new Dt_Task()
-                {
-                    CurrentAddress = stationCode,
-                    Grade = 0,
-                    NextAddress = locationInfo.LocationCode,
-                    PalletCode = palletCode,
-                    Roadway = roadwayNo,
-                    SourceAddress = stationCode,
-                    TargetAddress = locationInfo.LocationCode,
-                    TaskType = TaskTypeEnum.Inbound.ObjToInt(),
-                    TaskStatus = TaskStatusEnum.New.ObjToInt(),
-                    WarehouseId = stockInfo.WarehouseId,
-                    PalletType = stockInfo.PalletType,
-                };
-
-                //鑾峰彇鏄惁瀛樺湪鍏ュ簱鍗�
-                Dt_InboundOrder? inboundOrder = null;
-                if (stockInfo != null && stockInfo.Details.Count > 0)
-                {
-                    string? orderNo = stockInfo.Details.FirstOrDefault()?.OrderNo ?? "";
-                    inboundOrder = _inboundOrderService.Repository.QueryFirst(x => x.InboundOrderNo == orderNo && x.OrderStatus < InOrderStatusEnum.鍏ュ簱瀹屾垚.ObjToInt());
-                }
-
-                if (inboundOrder != null)
-                {
-                    if (inboundOrder.OrderType == InOrderTypeEnum.Allocat.ObjToInt())
-                    {
-                        newTask.TaskType = TaskTypeEnum.InAllocate.ObjToInt();
-                    }
-                    else if (inboundOrder.OrderType == InOrderTypeEnum.Return.ObjToInt())
-                    {
-                        newTask.TaskType = TaskTypeEnum.ProductionReturn.ObjToInt();
-                    }
-                }
-                if (stockInfo.StockStatus == StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt();
-                }
-                else if (stockInfo.StockStatus == StockStatusEmun.MES閫�搴�.ObjToInt())
-                {
-                    newTask.TaskType = TaskTypeEnum.MesMatReturn.ObjToInt();
-                }
-                else if (stockInfo.StockStatus == StockStatusEmun.鎷i�夊畬鎴�.ObjToInt())
-                {
-                    newTask.TaskType = TaskTypeEnum.InPick.ObjToInt();
-                }
-                else
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
-                }
-                
-                LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus;
-                _unitOfWorkManage.BeginTran();
-                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.Lock, LocationChangeType.InboundAssignLocation);
-                _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, newTask.PalletType, LocationStatusEnum.Lock, newTask.WarehouseId);
-                int taskId = BaseDal.AddData(newTask);
-                newTask.TaskId = taskId;
-                _stockRepository.StockInfoRepository.UpdateData(stockInfo);
-                _unitOfWorkManage.CommitTran();
-                WMSTaskDTO wMSTaskDTO = _mapper.Map<WMSTaskDTO>(newTask);
-
-                PushTasksToWCS(new List<Dt_Task> { newTask });
-                if (newTask.WarehouseId == 5) PutFinish(stationCode.ToString(),newTask.PalletCode, newTask.TaskNum.ToString());
-                return WebResponseContent.Instance.OK(data: wMSTaskDTO);
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
         /// <summary>
         /// 浠呯敵璇蜂换鍔★紝璁¦CS鏍规嵁璺敱纭畾涓嬩竴鍦板潃
         /// </summary>
@@ -547,93 +233,6 @@
                 return WebResponseContent.Instance.Error(ex.Message);
             }
         }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="stationCode"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="staions"></param>
-        /// <param name="heightType"></param>
-        /// <returns></returns>
-        public WebResponseContent DeviceRequestInboundTaskByRoadways(string stationCode, string palletCode, List<string> staions, int heightType)
-        {
-            try
-            {
-                Dt_Task task = Repository.QueryFirst(x => x.PalletCode == palletCode);
-                if (task != null)
-                {
-                    PushTasksToWCS(new List<Dt_Task> { task });
-                    return WebResponseContent.Instance.OK($"璇ユ墭鐩樺凡鐢熸垚浠诲姟", _mapper.Map<WMSTaskDTO>(task));
-                }
-
-                if (Repository.QueryFirst(x => x.SourceAddress == stationCode && x.TaskStatus == TaskStatusEnum.New.ObjToInt()) != null)
-                {
-                    return WebResponseContent.Instance.Error($"璇ョ珯鐐瑰凡鏈夋湭鎵ц鐨勪换鍔�");
-                }
-
-                string roadwayNo = AssignRoadwayNo(staions, palletCode, heightType);
-
-                Dt_StockInfo stockInfo = _stockRepository.StockInfoRepository.QueryFirst(x => x.PalletCode == palletCode);
-                if (stockInfo == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒扮粍鐩樹俊鎭�");
-                }
-                if (stockInfo.StockStatus != StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鍑哄簱瀹屾垚.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.鎷i�夊畬鎴�.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.閫�搴�.ObjToInt() && stockInfo.StockStatus != StockStatusEmun.MES閫�搴�.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樼姸鎬佷笉姝g‘,涓嶅彲鐢宠鍏ュ簱");
-                }
-                if (!string.IsNullOrEmpty(stockInfo.LocationCode))
-                {
-                    return WebResponseContent.Instance.Error($"璇ユ墭鐩樺凡缁戝畾璐т綅");
-                }
-
-                Dt_Task newTask = new Dt_Task()
-                {
-                    CurrentAddress = stationCode,
-                    Grade = 0,
-                    NextAddress = "",
-                    PalletCode = palletCode,
-                    Roadway = roadwayNo,
-                    SourceAddress = stationCode,
-                    TargetAddress = roadwayNo,
-                    TaskType = TaskTypeEnum.Inbound.ObjToInt(),
-                    TaskStatus = TaskStatusEnum.New.ObjToInt(),
-                    WarehouseId = stockInfo.WarehouseId,
-                    PalletType = stockInfo.PalletType,
-                };
-
-                if (stockInfo.StockStatus == StockStatusEmun.鎵嬪姩缁勭洏鏆傚瓨.ObjToInt())
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鎵嬪姩缁勭洏鍏ュ簱纭.ObjToInt();
-                }
-                else if (stockInfo.StockStatus == StockStatusEmun.MES閫�搴�.ObjToInt())
-                {
-                    newTask.TaskType = TaskTypeEnum.MesMatReturn.ObjToInt();
-                }
-                else
-                {
-                    stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt();
-                }
-
-                _unitOfWorkManage.BeginTran();
-                int taskId = BaseDal.AddData(newTask);
-                newTask.TaskId = taskId;
-                _stockRepository.StockInfoRepository.UpdateData(stockInfo);
-                _unitOfWorkManage.CommitTran();
-                WMSTaskDTO wMSTaskDTO = _mapper.Map<WMSTaskDTO>(newTask);
-
-                PushTasksToWCS(new List<Dt_Task> { newTask });
-                //if (newTask.WarehouseId == 5) PutFinish(stationCode);
-                return WebResponseContent.Instance.OK(data: wMSTaskDTO);
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
         /// <summary>
         /// 鍏ュ簱浠诲姟鐢宠鍒嗛厤璐т綅
         /// </summary>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
index 3da86d6..97df6cb 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
@@ -78,425 +78,6 @@
             return content;
         }
         /// <summary>
-        /// 鐢熸垚鎴愬搧鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="ProOutNo">鍑哄簱璁㈠崟鍙�</param>
-        /// <param name="StationCode">绔欏彴鍦板潃</param>
-        /// <returns></returns>
-        public async Task<WebResponseContent> OutProductTask(int[] keys, string StationCode, int Grade)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                if (StationCode.IsNullOrEmpty())
-                {
-                    return await Task.FromResult(content.Error("绾夸綋杈撳叆閿欒"));
-                }
-                //鑾峰彇鎴愬搧鍑哄簱璁㈠崟
-                List<Dt_ProOutOrderDetail> _ProOutOrderDetails = await _outboundRepository.ProOutOrderDetailRepository.QueryDataAsync(x => keys.Contains(x.Id) && x.ProOrderDetailStatus== OrderDetailStatusEnum.New.ObjToInt());
-                if (_ProOutOrderDetails.Count<=0)
-                {
-                    return await Task.FromResult(content.Error("鍕鹃�夎鍗曟槑缁嗙姸鎬佷负鍑哄簱涓�"));
-                }
-                List<Dt_Task> tasks = new List<Dt_Task>();
-                List<StockSelectViewDTO> stockSelectViews = new List<StockSelectViewDTO>();
-                List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
-                List<Dt_ProOutOrderDetail> proOutOrderDetails = new List<Dt_ProOutOrderDetail>();
-                List<Dt_OutProStockInfo> outProStockInfos = new List<Dt_OutProStockInfo>();
-                List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-                (List<Dt_Task>, List<Dt_ProStockInfo>?, List<Dt_ProOutOrderDetail>?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>?) result =
-                OutProductTaskDataHandle(_ProOutOrderDetails);
-                if (result.Item2 != null && result.Item2.Count > 0)
-                {
-                    proStockInfos.AddRange(result.Item2);
-                }
-                if (result.Item3 != null && result.Item3.Count > 0)
-                {
-                    proOutOrderDetails.AddRange(result.Item3);
-                }
-                if (result.Item4 != null && result.Item4.Count > 0)
-                {
-                    outProStockInfos.AddRange(result.Item4);
-                }
-                if (result.Item5 != null && result.Item5.Count > 0)
-                {
-                    locationInfos.AddRange(result.Item5);
-                }
-                if (result.Item1 != null && result.Item1.Count > 0)
-                {
-                    Dt_Task? task = BaseDal.QueryData(x=>x.TaskType==TaskTypeEnum.OutProduct.ObjToInt()).OrderByDescending(x=>x.Grade).FirstOrDefault();
-                    //鏇存柊鍑哄簱鐩殑浣嶇疆
-                    result.Item1.ForEach(x =>
-                    {
-                        x.TargetAddress = StationCode;
-                        if (Grade==1 || task==null)
-                        {
-                            x.Grade = 127;
-                        }
-                        else
-                        {
-                            if (task.Grade==0 || task.Grade==1)
-                            {
-                                x.Grade = 1;
-                            }
-                            else
-                            {
-                                x.Grade = task.Grade - 1;
-                            }
-                        }
-                    });
-                    tasks.AddRange(result.Item1);
-                }
-                //澶勭悊鍑哄簱鏁版嵁
-                return await Task.FromResult(GenerateOutboundTaskDataUpdate(tasks, proStockInfos, proOutOrderDetails, outProStockInfos, locationInfos));
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 浜哄伐閫夊畾搴撳瓨鍑哄簱
-        /// </summary>
-        /// <returns></returns>
-        public WebResponseContent OutProductSelect(int orderDetailId,List<ProStockViewDTO> proStockViews)
-        {
-            WebResponseContent content = new WebResponseContent();
-            try
-            {
-                //鑾峰彇鍑哄簱鍗曟槑缁�
-                Dt_ProOutOrderDetail proOutOrderDetail = _outboundRepository.ProOutOrderDetailRepository.QueryFirst(x=>x.Id==orderDetailId);
-                if (proOutOrderDetail == null)
-                {
-                    return content.Error("璁㈠崟鏄庣粏涓嶅瓨鍦�");
-                }
-                if (proOutOrderDetail.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt())
-                {
-                    return content.Error("褰撳墠鐨勬槑缁嗗崟宸插畬鎴�");
-                }
-                //鑾峰彇鍑哄簱鍗曟嵁
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.Db.Queryable<Dt_ProOutOrder>().Where(x=>x.Id==proOutOrderDetail.ProOrderId).Includes(x => x.Details).First();
-                if (proOutOrder==null)
-                {
-                    return content.Error("鍑哄簱鍗曟嵁涓嶅瓨鍦�");
-                }
-                if (proOutOrder.ProOrderStatus>=OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    return content.Error($"{proOutOrder.ProOutOrderNo}鍑哄簱鍗曞凡瀹屾垚");
-                }
-                if ((proOutOrderDetail.QtyPcs-proOutOrderDetail.OverQtyPcs)> proStockViews.Sum(x=>x.SumStocks))
-                {
-                    return content.Error($"闇�婊¤冻{proOutOrderDetail.QtyPcs - proOutOrderDetail.OverQtyPcs}鍑哄簱閲�");
-                }
-                //鑾峰彇鎵�鏈夊簱瀛�
-                List<Dt_ProStockInfo> proStockInfos = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>().Where(b => b.LocationCode == "鎴愬搧寰呭彂璐у尯" && b.StockStatus == StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt() && (b.ShipmentOrder == null || b.ShipmentOrder == "")).Includes(x => x.proStockInfoDetails).Where(x => x.proStockInfoDetails.Any(v => v.ProductCode == proOutOrderDetail.PCode)).ToList();
-                //鑾峰彇宸插畬鎴愭暟閲�
-                int OverCount = proOutOrder.Details.Where(x => x.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-                List<Dt_ProStockInfo> outStockInfos=new List<Dt_ProStockInfo>();
-                List<Dt_ProStockInfoDetail> outStockInfoDetails=new List<Dt_ProStockInfoDetail>();
-                List<StockOutItemsItem> stockOutItems = new List<StockOutItemsItem>();
-                foreach (var item in proStockViews.OrderBy(x => x.SumStocks))
-                {
-                    //鑾峰彇褰撳墠搴撳瓨
-                    Dt_ProStockInfo? proStockInfo = proStockInfos.FirstOrDefault(x => x.Id == item.ProStockId);
-                    if (proStockInfo!=null && proStockInfo.proStockInfoDetails.Count>0)
-                    {
-                        proStockInfo.ShipmentOrder = proOutOrder.ProOutOrderNo;
-                        proStockInfo.StockStatus = StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt();
-                        //鍓╀綑鏁伴噺
-                        float Amount = proOutOrderDetail.QtyPcs - proOutOrderDetail.LockQtyPcs;
-                        if (Amount > item.SumStocks)
-                        {
-                            proOutOrderDetail.LockQtyPcs += item.SumStocks;
-                            Dt_ProStockInfoDetail proStockInfoDetail = proStockInfo.proStockInfoDetails.FirstOrDefault();
-                            
-                            proStockInfoDetail.OutboundQuantity = proStockInfoDetail.StockPcsQty;
-                            proStockInfoDetail.OutSETQty = proStockInfoDetail.SETQty;
-                            proStockInfoDetail.OutDetailSaleNo = proOutOrderDetail.SaleOrder;
-                            outStockInfoDetails.Add(proStockInfoDetail);
-                        }
-                        else
-                        {
-                            Dt_ProStockInfoDetail proStockInfoDetail = proStockInfo.proStockInfoDetails.FirstOrDefault();
-                            float intervalSet = proStockInfoDetail.StockPcsQty / proStockInfoDetail.SETQty;
-                            proStockInfoDetail.OutboundQuantity += Amount;
-                            proStockInfoDetail.OutSETQty += (Amount / intervalSet);
-                            proOutOrderDetail.LockQtyPcs += Amount;
-                            proStockInfoDetail.OutDetailSaleNo = proOutOrderDetail.SaleOrder;
-                            outStockInfoDetails.Add(proStockInfoDetail);
-                        }
-                        if (proOutOrderDetail.QtyPcs==proOutOrderDetail.LockQtyPcs)
-                        {
-                            proOutOrderDetail.ProOrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt();
-                        }
-                        outStockInfos.Add(proStockInfo);
-                    }
-                    else
-                    {
-                        return content.Error("鏈壘鍒版垚鍝佸簱瀛�");
-                    }
-                }
-                List<Dt_ProStockInfo> deleteStocks=new List<Dt_ProStockInfo>();
-                List<Dt_ProStockInfoDetail> deleteStockDetails = new List<Dt_ProStockInfoDetail>();
-                List<Dt_ProStockInfo> updateStocks = new List<Dt_ProStockInfo>();
-                List<Dt_ProStockInfoDetail> updateStockDetails = new List<Dt_ProStockInfoDetail>();
-                if (proOutOrderDetail.ProOrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt() && (OverCount+1)== proOutOrder.Details.Count)
-                {
-                    proOutOrder.ProOrderStatus=OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                    //鑾峰彇鎵�鏈夊凡鎵爜寰呭彂璐х殑搴撳瓨
-                    List<Dt_ProStockInfo> AllOutStocks = _stockRepository.ProStockInfoRepository.Db.Queryable<Dt_ProStockInfo>()
-                    .Where(x => x.ShipmentOrder == proOutOrder.ProOutOrderNo && x.StockStatus == StockStatusEmun.骞冲簱寰呭彂璐�.ObjToInt())
-                    .Includes(x => x.proStockInfoDetails).ToList();
-                    AllOutStocks.ForEach(x =>
-                    {
-                        outStockInfoDetails.AddRange(x.proStockInfoDetails);
-                    });
-                    outStockInfos.AddRange(AllOutStocks);
-                    foreach (var item in outStockInfoDetails)
-                    {
-                        StockOutItemsItem outItemsItem = new StockOutItemsItem()
-                        {
-                            PartNum = item.ProductCode,
-                            Rev = item.ProductVersion,
-                            SoNumber = item.OutDetailSaleNo,
-                            BatchNumber = item.BagNo,
-                            QtyPcs = item.OutboundQuantity,
-                            QtySet = item.OutSETQty
-                        };
-                        stockOutItems.Add(outItemsItem);
-                        if (item.OutboundQuantity == item.StockPcsQty)
-                        {
-                            Dt_ProStockInfo proStockInfo = outStockInfos.FirstOrDefault(x => x.Id == item.ProStockId);
-                            if (proStockInfo != null)
-                            {
-                                deleteStocks.Add(proStockInfo);
-                                deleteStockDetails.Add(item);
-                            }
-                            else
-                            {
-                                return content.Error("鏈壘鍒颁笂鎶ョ殑搴撳瓨鏁版嵁");
-                            }
-                        }
-                        if (item.OutboundQuantity < item.StockPcsQty)
-                        {
-                            Dt_ProStockInfo proStockInfo = outStockInfos.FirstOrDefault(x => x.Id == item.ProStockId);
-                            if (proStockInfo != null)
-                            {
-                                proStockInfo.StockStatus = StockStatusEmun.骞冲簱鍏ュ簱瀹屾垚.ObjToInt();
-                                proStockInfo.ShipmentOrder = "";
-                                updateStocks.Add(proStockInfo);
-                                item.StockPcsQty -= item.OutboundQuantity;
-                                item.OutboundQuantity = 0;
-                                item.OutSETQty = 0;
-                                updateStockDetails.Add(item);
-                            }
-                            else
-                            {
-                                return content.Error("鏈壘鍒颁笂鎶ョ殑搴撳瓨鏁版嵁");
-                            }
-                        }
-                    }
-                }
-                Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseId == proOutOrder.WarehouseId);
-                _unitOfWorkManage.BeginTran();
-                if (proOutOrder.ProOrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt())
-                {
-                    //鎴愬搧搴撳瓨璁板綍鍙樺姩寰呭姞鍏�
-                    ERPProOutOrderModel proOutOrderModel = new ERPProOutOrderModel()
-                    {
-                        Way = 1,
-                        StockOutCode = _outboundService.OutboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.ProOutCOdeRule)),
-                        ConfirmedUserNo = App.User.UserName,
-                        AssignUserNo = App.User.UserName,
-                        WarehouseCode = warehouse.WarehouseCode,
-                        ShipDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                        DeliverplanCode = proOutOrder.ProOutOrderNo,
-                        Remark = proOutOrder.Remark,
-                        StockOutItems = stockOutItems
-                    };
-                    _stockRepository.ProStockInfoRepository.DeleteAndMoveIntoHty(deleteStocks, OperateTypeEnum.鑷姩瀹屾垚);
-                    _stockRepository.ProStockInfoDetailRepository.DeleteAndMoveIntoHty(deleteStockDetails, OperateTypeEnum.鑷姩瀹屾垚);
-                    if (updateStockDetails.Count>0)
-                    {
-                        _stockRepository.ProStockInfoRepository.UpdateData(updateStocks);
-                        updateStockDetails.ForEach(x =>
-                        {
-                            x.OutDetailSaleNo = "";
-                        });
-                        _stockRepository.ProStockInfoDetailRepository.UpdateData(updateStockDetails);
-                    }
-                    string response = _invokeERPService.InvokeProOutApi(proOutOrderModel);
-                    ErpRequestContent erpRequestContent = response.DeserializeObject<ErpRequestContent>();
-                    if (erpRequestContent.res != 1)
-                    {
-                        throw new Exception("鍚屾ERP澶辫触,閿欒淇℃伅:" + erpRequestContent.Data);
-                    }
-                }
-                else
-                {
-                    _stockRepository.ProStockInfoRepository.UpdateData(outStockInfos);
-                    _stockRepository.ProStockInfoDetailRepository.UpdateData(outStockInfoDetails);
-                    _outboundRepository.ProOutOrderDetailRepository.UpdateData(proOutOrderDetail);
-                    _outboundRepository.ProOutOrderRepository.UpdateData(proOutOrder);
-                }
-                _unitOfWorkManage.CommitTran();
-                content.OK("鎴愬姛");
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                content.Error(ex.Message);
-            }
-            return content;
-        }
-        /// <summary>
-        /// 澶勭悊鍑哄簱鏁版嵁
-        /// </summary>
-        public WebResponseContent GenerateOutboundTaskDataUpdate(List<Dt_Task> tasks, List<Dt_ProStockInfo>? proStockInfos = null, List<Dt_ProOutOrderDetail>? proOutOrderDetails = null, List<Dt_OutProStockInfo>? outProStockInfos = null, List<Dt_LocationInfo>? locationInfos = null)
-        {
-            try
-            {
-                _unitOfWorkManage.BeginTran();
-
-                //鑾峰彇鎴愬搧鍑哄簱鍗曚富琛�
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.QueryFirst(x => x.Id == proOutOrderDetails.FirstOrDefault().ProOrderId);
-                if (proOutOrder!=null && proOutOrder.ProOrderStatus == OutOrderStatusEnum.鏈紑濮�.ObjToInt())
-                {
-                    proOutOrder.ProOrderStatus = OutOrderStatusEnum.鍑哄簱涓�.ObjToInt();
-                    _outboundRepository.ProOutOrderRepository.UpdateData(proOutOrder);
-                }
-                BaseDal.AddData(tasks);
-                if (proStockInfos != null && proStockInfos.Count > 0 && proOutOrderDetails != null && proOutOrderDetails.Count > 0 && outProStockInfos != null && outProStockInfos.Count > 0 && locationInfos != null && locationInfos.Count > 0)
-                {
-                    proStockInfos.ForEach(x =>
-                    {
-                        x.StockStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt();
-                    });
-                    WebResponseContent content = _outboundService.ProOutOrderDetailService.LockOutboundStockDataUpdate(proStockInfos, proOutOrderDetails, outProStockInfos, locationInfos, tasks: tasks);
-
-                    if (!content.Status)
-                    {
-                        _unitOfWorkManage.RollbackTran();
-                        return content;
-                    }
-                }
-                else if (proOutOrderDetails != null && proOutOrderDetails.Count > 0)
-                {
-                    proOutOrderDetails.ForEach(x =>
-                    {
-                        x.ProOrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                    });
-
-                    _outboundRepository.ProOutOrderDetailRepository.UpdateData(proOutOrderDetails);
-                }
-                _unitOfWorkManage.CommitTran();
-                PushTasksToWCS(tasks);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-
-        }
-        /// <summary>
-        /// 澶勭悊鎴愬搧鍑哄簱鏁版嵁
-        /// </summary>
-        /// <returns></returns>
-        public (List<Dt_Task>, List<Dt_ProStockInfo>?, List<Dt_ProOutOrderDetail>?, List<Dt_OutProStockInfo>?, List<Dt_LocationInfo>?) OutProductTaskDataHandle(List<Dt_ProOutOrderDetail> proOutOrderDetails)
-        {
-            List<Dt_Task> tasks = new List<Dt_Task>();
-            List<Dt_ProStockInfo> proStockInfos = new List<Dt_ProStockInfo>();
-            List<Dt_ProOutOrderDetail> assignOutOrderDetails = new List<Dt_ProOutOrderDetail>();
-            List<Dt_OutProStockInfo> outProStockInfos=new List<Dt_OutProStockInfo>();
-            List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-            //鍒嗛厤搴撳瓨
-            (List<Dt_ProStockInfo>, List<Dt_ProOutOrderDetail>, List<Dt_OutProStockInfo>, List<Dt_LocationInfo>) result = _outboundService.ProOutOrderDetailService.AssignProStockOut(proOutOrderDetails);
-            if (result.Item1!=null&&result.Item1.Count>0)
-            {
-                //鑾峰彇鎴愬搧鍗�
-                Dt_ProOutOrder proOutOrder = _outboundRepository.ProOutOrderRepository.QueryFirst(x => x.Id == proOutOrderDetails.FirstOrDefault().ProOrderId);
-                if (proOutOrder==null)
-                {
-                    throw new Exception("鏈壘鍒版垚鍝佽鍗�");
-                }
-                TaskTypeEnum typeEnum = proOutOrder.ProOrderType switch
-                {
-                    (int)OutProTypeEnum.ProOut => TaskTypeEnum.OutProduct,
-                    (int)OutProTypeEnum.SendProOut => TaskTypeEnum.OutSendProduct,
-                    _ => new TaskTypeEnum()
-                };
-                tasks = GetTasks(result.Item1, typeEnum);
-                result.Item2.ForEach(x =>
-                {
-                    x.ProOrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                });
-                result.Item3.ForEach(x =>
-                {
-                    x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-                });
-                tasks.ForEach(x => x.OrderNo = proOutOrder.ProOutOrderNo);
-                proStockInfos = result.Item1;
-                proOutOrderDetails = result.Item2;
-                outProStockInfos = result.Item3;
-                locationInfos = result.Item4;
-            }
-            else
-            {
-                throw new Exception("鏃犲彲鍒嗛厤搴撳瓨");
-            }
-            return (tasks, proStockInfos, proOutOrderDetails, outProStockInfos, locationInfos);
-        }
-        /// <summary>
-        /// 鐢熸垚浠诲姟
-        /// </summary>
-        /// <param name="stockInfos"></param>
-        /// <param name="taskType"></param>
-        /// <returns></returns>
-        public List<Dt_Task> GetTasks(List<Dt_ProStockInfo> stockInfos, TaskTypeEnum taskType)
-        {
-            List<Dt_Task> tasks = new List<Dt_Task>();
-            string groupId = DateTime.Now.ToString("yyMMddHHmmss");
-            for (int i = 1; i <= stockInfos.Count; i++)
-            {
-                Dt_ProStockInfo stockInfo = stockInfos[i-1];
-                if (i%5==0)
-                {
-                    groupId= DateTime.Now.AddSeconds(i).ToString("yyMMddHHmmss");
-                }
-                if (stockInfo != null)
-                {
-                    Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == stockInfo.LocationCode);
-                    if (!tasks.Exists(x => x.PalletCode == stockInfo.PalletCode))
-                    {
-                        Dt_Task task = new()
-                        {
-                            CurrentAddress = stockInfo.LocationCode,
-                            Grade = 0,
-                            PalletCode = stockInfo.PalletCode,
-                            NextAddress = "",
-                            Roadway = locationInfo.RoadwayNo,
-                            SourceAddress = stockInfo.LocationCode,
-                            TargetAddress = "",
-                            TaskStatus = TaskStatusEnum.New.ObjToInt(),
-                            TaskType = taskType.ObjToInt(),
-                            TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)),
-                            PalletType = stockInfo.PalletType,
-                            WarehouseId = stockInfo.WarehouseId,
-                            GroupId= groupId,
-                            MaterielCode = stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).FirstOrDefault()?.ProductCode,
-                            Quantity = (float)stockInfo.proStockInfoDetails.Where(x => x.ProStockId == stockInfo.Id).Sum(x=> x.StockPcsQty)
-                        };
-                        tasks.Add(task);
-                    }
-                }
-            }
-            return tasks;
-        }
-        /// <summary>
         /// 搴撳瓨鏁版嵁杞嚭搴撲换鍔�
         /// </summary>
         /// <param name="stockInfos"></param>
@@ -540,626 +121,6 @@
             }
             return tasks;
         }
-
-        /// <summary>
-        /// 鍑哄簱浠诲姟鏁版嵁澶勭悊
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        /// <exception cref="Exception"></exception>
-        public (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) OutboundTaskDataHandle(int orderDetailId, List<StockSelectViewDTO> stockSelectViews)
-        {
-            List<Dt_Task> tasks = new List<Dt_Task>();
-            Dt_OutboundOrderDetail outboundOrderDetail = _outboundService.OutboundOrderDetailService.Repository.QueryFirst(x => x.Id == orderDetailId);
-
-            if (outboundOrderDetail == null)
-            {
-                throw new Exception("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-            }
-
-            if (stockSelectViews.Sum(x => x.UseableQuantity) > outboundOrderDetail.OrderQuantity - outboundOrderDetail.LockQuantity)
-            {
-                throw new Exception("閫夋嫨鏁伴噺瓒呭嚭鍗曟嵁鏁伴噺");
-            }
-            List<Dt_StockInfo>? stockInfos = null;
-            Dt_OutboundOrderDetail? orderDetail = null;
-            List<Dt_OutStockLockInfo>? outStockLockInfos = null;
-            List<Dt_LocationInfo>? locationInfos = null;
-            if (outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-            {
-                (List<Dt_StockInfo>, Dt_OutboundOrderDetail, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.OutboundOrderDetailService.AssignStockOutbound(outboundOrderDetail, stockSelectViews);
-                if (result.Item1 != null && result.Item1.Count > 0)
-                {
-                    Dt_OutboundOrder outboundOrder = _outboundService.OutboundOrderService.Repository.QueryFirst(x => x.Id == outboundOrderDetail.OrderId);
-                    TaskTypeEnum typeEnum = outboundOrder.OrderType switch
-                    {
-                        (int)OutOrderTypeEnum.Issue => TaskTypeEnum.Outbound,
-                        (int)OutOrderTypeEnum.Allocate => TaskTypeEnum.OutAllocate,
-                        (int)OutOrderTypeEnum.Quality => TaskTypeEnum.OutQuality,
-                        _ => new TaskTypeEnum()
-                    };
-                    tasks = GetTasks(result.Item1, typeEnum);
-                    result.Item2.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                    result.Item3.ForEach(x =>
-                    {
-                        x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-                    });
-
-                    stockInfos = result.Item1;
-                    orderDetail = result.Item2;
-                    outStockLockInfos = result.Item3;
-                    locationInfos = result.Item4;
-                }
-                else
-                {
-                    throw new Exception("鏃犲簱瀛�");
-                }
-            }
-            else
-            {
-                List<Dt_OutStockLockInfo> stockLockInfos = _outboundService.OutboundStockLockInfoService.GetByOrderDetailId(outboundOrderDetail.OrderId, OutLockStockStatusEnum.宸插垎閰�);
-                if (stockLockInfos != null && stockLockInfos.Count > 0)
-                {
-                    List<Dt_StockInfo> stocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(stockLockInfos.Select(x => x.PalletCode).Distinct().ToList());
-                    tasks = GetTasks(stocks, TaskTypeEnum.Outbound);
-                }
-            }
-
-            return (tasks, stockInfos, orderDetail == null ? null : new List<Dt_OutboundOrderDetail> { orderDetail }, outStockLockInfos, locationInfos);
-        }
-
-        /// <summary>
-        /// 鍑哄簱浠诲姟鏁版嵁澶勭悊
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        /// <exception cref="Exception"></exception>
-        public (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) OutboundTaskDataHandle(int[] keys)
-        {
-            List<Dt_Task> tasks = new List<Dt_Task>();
-            List<Dt_OutboundOrderDetail> outboundOrderDetails = _outboundService.OutboundOrderDetailService.Repository.QueryData(x => keys.Contains(x.Id));
-
-            if (outboundOrderDetails == null || outboundOrderDetails.Count == 0)
-            {
-                throw new Exception("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-            }
-            if (outboundOrderDetails.FirstOrDefault(x => x.OrderDetailStatus > OrderDetailStatusEnum.New.ObjToInt() && x.OrderDetailStatus != OrderDetailStatusEnum.AssignOverPartial.ObjToInt()) != null)
-            {
-                throw new Exception("鎵�閫夊嚭搴撳崟鏄庣粏瀛樺湪鍑哄簱涓垨宸插畬鎴�");
-            }
-            List<Dt_StockInfo>? stockInfos = null;
-            List<Dt_OutboundOrderDetail>? orderDetails = null;
-            List<Dt_OutStockLockInfo>? outStockLockInfos = null;
-            List<Dt_LocationInfo>? locationInfos = null;
-            //if (outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-            {
-                (List<Dt_StockInfo>, List<Dt_OutboundOrderDetail>, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.OutboundOrderDetailService.AssignStockOutbound(outboundOrderDetails);
-                if (result.Item1 != null && result.Item1.Count > 0)
-                {
-                    Dt_OutboundOrder outboundOrder =_outboundService.OutboundOrderService.Repository.QueryFirst(x => x.Id == outboundOrderDetails.FirstOrDefault().OrderId);
-                    TaskTypeEnum typeEnum = outboundOrder.OrderType switch
-                    {
-                        (int)OutOrderTypeEnum.Issue => TaskTypeEnum.Outbound,
-                        (int)OutOrderTypeEnum.Allocate=> TaskTypeEnum.OutAllocate,
-                        (int)OutOrderTypeEnum.Quality => TaskTypeEnum.OutQuality,
-                        _ =>new TaskTypeEnum()
-                    };
-                    tasks = GetTasks(result.Item1, typeEnum);
-                    tasks.ForEach(x =>
-                    {
-                        x.OrderNo = outboundOrder.UpperOrderNo;
-                    });
-                    result.Item2.ForEach(x =>
-                    {
-                        x.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                    });
-                    result.Item3.ForEach(x =>
-                    {
-                        x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-                    });
-
-                    stockInfos = result.Item1;
-                    orderDetails = result.Item2;
-                    outStockLockInfos = result.Item3;
-                    locationInfos = result.Item4;
-                }
-                else
-                {
-                    throw new Exception("鏃犲簱瀛�");
-                }
-            }
-            //else
-            //{
-            //    List<Dt_OutStockLockInfo> stockLockInfos = _outboundService.OutboundStockLockInfoService.GetByOrderDetailId(outboundOrderDetail.OrderId, OutLockStockStatusEnum.宸插垎閰�);
-            //    if (stockLockInfos != null && stockLockInfos.Count > 0)
-            //    {
-            //        List<Dt_StockInfo> stocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(stockLockInfos.Select(x => x.PalletCode).Distinct().ToList());
-            //        tasks = GetTasks(stocks);
-            //    }
-            //}
-
-            return (tasks, stockInfos, orderDetails, outStockLockInfos, locationInfos);
-        }
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        public WebResponseContent GenerateOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews)
-        {
-            try
-            {
-                (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) result = OutboundTaskDataHandle(orderDetailId, stockSelectViews);
-
-                WebResponseContent content = GenerateOutboundTaskDataUpdate(result.Item1, result.Item2, result.Item3, result.Item4, result.Item5);
-
-                return content;
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
-        /// 骞冲簱鐩存帴鍑哄簱
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        public WebResponseContent GeneratePKOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews)
-        {
-            try
-            {
-                #region MyRegion
-                Dt_OutboundOrderDetail OrderDetail = _outboundService.OutboundOrderDetailService.Repository.QueryFirst(x => x.Id == orderDetailId);
-
-                if (OrderDetail == null)
-                {
-                    throw new Exception("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-                }
-                if (OrderDetail.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt())
-                    throw new Exception("鍑哄簱鍗曞凡瀹屾垚");
-                Dt_OutboundOrder outboundOrder = BaseDal.Db.Queryable<Dt_OutboundOrder>().Where(x => x.Id == OrderDetail.OrderId).Includes(x => x.Details).First();
-                if (outboundOrder == null)
-                {
-                    return WebResponseContent.Instance.Error($"鏈壘鍒板嚭搴撳崟淇℃伅");
-                }
-                Dt_Warehouse warehouse = _basicService.WarehouseService.Repository.QueryFirst(x => x.WarehouseId == outboundOrder.WarehouseId);
-                List<Dt_StockInfo> outStocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(stockSelectViews.Select(x => x.PalletCode).ToList());
-                if (outStocks.Count < 1) return WebResponseContent.Instance.Error($"搴撳瓨涓嶈冻");
-                List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-                List<Dt_StockInfo> upStocks = new List<Dt_StockInfo>();
-                List<Dt_StockInfo> deStocks = new List<Dt_StockInfo>();
-                List<Dt_StockInfoDetail> upstockDetails = new List<Dt_StockInfoDetail>();
-                List<Dt_StockInfoDetail> destockDetails = new List<Dt_StockInfoDetail>();
-                outStocks.ForEach(x =>
-                {
-                    x.Details.Where(x => x.MaterielCode == OrderDetail.MaterielCode).ToList().ForEach(v =>
-                    {
-                        float OriginalQuantity = v.StockQuantity;
-                        float assignQuantity = 0;//鍒嗛厤鏁伴噺
-                        float assignAmount = OrderDetail.OrderQuantity - OrderDetail.OverOutQuantity;//寰呭嚭鏁伴噺
-                        if (assignAmount > 0)
-                        {
-                            if (v.StockQuantity >= assignAmount)
-                            {
-                                assignQuantity = assignAmount;
-                                v.StockQuantity -= assignAmount;
-                                OrderDetail.OverOutQuantity += assignAmount;
-                                OrderDetail.LockQuantity += assignAmount;
-                                upstockDetails.Add(v);
-                            }
-                            else
-                            {
-                                assignQuantity = v.StockQuantity;
-                                OrderDetail.OverOutQuantity += v.StockQuantity;
-                                OrderDetail.LockQuantity += v.StockQuantity;
-                                v.StockQuantity = 0;
-                                destockDetails.Add(v);
-                            }
-                            Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo()
-                            {
-                                PalletCode = x.PalletCode,
-                                AssignQuantity = assignQuantity,
-                                MaterielCode = OrderDetail.MaterielCode,
-                                BatchNo = v.BatchNo,
-                                LocationCode = x.LocationCode,
-                                MaterielName = v.MaterielName,
-                                OrderDetailId = OrderDetail.Id,
-                                OrderNo = outboundOrder.OrderNo,
-                                OrderType = outboundOrder.OrderType,
-                                OriginalQuantity = OriginalQuantity,
-                                Status = OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt(),
-                                StockId = x.Id,
-                                TaskNum = 0,
-                                OrderQuantity = OrderDetail.OrderQuantity,
-                                Unit = OrderDetail.Unit,
-                                ProductionDate = v.ProductionDate,
-                                EffectiveDate = v.EffectiveDate
-                            };
-                            outStockLockInfos.Add(outStockLockInfo);
-                        }
-                    });
-                    int overCount = x.Details.Where(x => x.StockQuantity == 0).Count();
-                    if (overCount == x.Details.Count) deStocks.Add(x);
-                    else upStocks.Add(x);
-                });
-                outboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱涓�.ObjToInt();
-                OrderDetail.OrderDetailStatus = OrderDetail.OrderQuantity > OrderDetail.OverOutQuantity ? OrderDetailStatusEnum.AssignOverPartial.ObjToInt() : OrderDetailStatusEnum.Over.ObjToInt();
-                if (OrderDetail.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt())
-                {
-                    int overCount = outboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).Count();
-                    if (outboundOrder.Details.Count - 1 == overCount)
-                        outboundOrder.OrderStatus = OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt();
-                }
-                _unitOfWorkManage.BeginTran();
-                _outboundService.OutboundStockLockInfoService.AddData(outStockLockInfos);
-                _outboundService.OutboundOrderService.UpdateData(outboundOrder);
-                _outboundService.OutboundOrderDetailService.UpdateData(OrderDetail);
-                _stockRepository.StockInfoRepository.UpdateData(upStocks);
-                _stockRepository.StockInfoRepository.DeleteData(deStocks);
-                _stockRepository.StockInfoDetailRepository.UpdateData(upstockDetails);
-                _stockRepository.StockInfoDetailRepository.DeleteData(destockDetails);
-                _unitOfWorkManage.CommitTran();
-                #endregion
-
-                #region 涓婃姤ERP
-                if (outboundOrder.OrderStatus == OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt() && outboundOrder.OrderType==OutOrderTypeEnum.Issue.ObjToInt())
-                {
-                    //List<ERPPickModel> eRPPickModels = new List<ERPPickModel>();
-                    //outStockLockInfos.ForEach(x =>
-                    //{
-                    //    ERPPickItemModel pickItemModel = new ERPPickItemModel()
-                    //    {
-                    //        Lotno = x.BatchNo,
-                    //        Qty = x.AssignQuantity.ToString(),
-                    //        Location = warehouse.WarehouseCode
-                    //    };
-                    //    ERPPickModel pickModel = new ERPPickModel()
-                    //    {
-                    //        Rowindex = OrderDetail.RowNo,
-                    //        Material = OrderDetail.MaterielCode,
-                    //        Qty = pickItemModel.Qty,
-                    //        Dataitem = new List<ERPPickItemModel> { pickItemModel }
-                    //    };
-                    //    eRPPickModels.Add(pickModel);
-                    //});
-                    //ERPIssueItemModel issueItemModel = new ERPIssueItemModel()
-                    //{
-                    //    Pickcode = outboundOrder.UpperOrderNo,
-                    //    PickList = eRPPickModels
-                    //};
-                    //ERPIssueModel issueModel = new ERPIssueModel()
-                    //{
-                    //    UniqueTag = outboundOrder.Id.ToString(),
-                    //    Code = _outboundService.OutboundOrderService.CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule)),
-                    //    WarehouseCode = warehouse.WarehouseCode,
-                    //    Docremark = "",
-                    //    Deptno = outboundOrder.DepartmentCode,
-                    //    Deptname = outboundOrder.DepartmentName,
-                    //    Createtime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
-                    //    Createuser = App.User.UserName,
-                    //    Issitem = new List<ERPIssueItemModel>() { issueItemModel }
-                    //};
-                    _invokeERPService.InvokeOutStandardsApi(_outboundService.OutboundOrderService.GetERPIssueModel(outboundOrder, warehouse.WarehouseCode));
-                }
-                #endregion
-
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟鍚庢暟鎹洿鏂板埌鏁版嵁搴�
-        /// </summary>
-        /// <param name="tasks"></param>
-        /// <param name="stockInfos"></param>
-        /// <param name="outboundOrderDetails"></param>
-        /// <param name="outStockLockInfos"></param>
-        /// <param name="locationInfos"></param>
-        /// <returns></returns>
-        public WebResponseContent GenerateOutboundTaskDataUpdate(List<Dt_Task> tasks, List<Dt_StockInfo>? stockInfos = null, List<Dt_OutboundOrderDetail>? outboundOrderDetails = null, List<Dt_OutStockLockInfo>? outStockLockInfos = null, List<Dt_LocationInfo>? locationInfos = null)
-        {
-            try
-            {
-                _unitOfWorkManage.BeginTran();
-
-                BaseDal.AddData(tasks);
-                if (stockInfos != null && stockInfos.Count > 0 && outboundOrderDetails != null && outboundOrderDetails.Count > 0 && outStockLockInfos != null && outStockLockInfos.Count > 0 && locationInfos != null && locationInfos.Count > 0)
-                {
-                    stockInfos.ForEach(x =>
-                    {
-                        x.StockStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt();
-                    });
-                    WebResponseContent content = _outboundService.OutboundOrderDetailService.LockOutboundStockDataUpdate(stockInfos, outboundOrderDetails, outStockLockInfos, locationInfos, tasks: tasks);
-
-                    if (!content.Status)
-                    {
-                        _unitOfWorkManage.RollbackTran();
-                        return content;
-                    }
-                }
-                else if (outboundOrderDetails != null && outboundOrderDetails.Count > 0)
-                {
-                    outboundOrderDetails.ForEach(x =>
-                    {
-                        x.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-                    });
-                    Dt_OutboundOrder outboundOrder = _outboundRepository.OutboundOrderRepository.QueryFirst(x=>x.Id== outboundOrderDetails.FirstOrDefault().OrderId);
-                    if (outboundOrder.OrderStatus!=OutOrderStatusEnum.鍑哄簱涓�.ObjToInt())
-                    {
-                        _outboundRepository.OutboundOrderRepository.UpdateData(outboundOrder);
-                    }
-                    _outboundService.OutboundOrderDetailService.Repository.UpdateData(outboundOrderDetails);
-                }
-                _unitOfWorkManage.CommitTran();
-                PushTasksToWCS(tasks);
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-
-        }
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="keys">鍑哄簱鍗曟槑缁嗕富閿�</param>
-        /// <returns></returns>
-        public WebResponseContent GenerateOutboundTasks(int[] keys)
-        {
-            try
-            {
-                List<Dt_Task> tasks = new List<Dt_Task>();
-                List<StockSelectViewDTO> stockSelectViews = new List<StockSelectViewDTO>();
-                List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
-                List<Dt_OutboundOrderDetail> outboundOrderDetails = new List<Dt_OutboundOrderDetail>();
-                List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-                List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-
-                (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_OutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) result = OutboundTaskDataHandle(keys);
-                if (result.Item2 != null && result.Item2.Count > 0)
-                {
-                    stockInfos.AddRange(result.Item2);
-                }
-                if (result.Item3 != null && result.Item3.Count > 0)
-                {
-                    outboundOrderDetails.AddRange(result.Item3);
-                }
-                if (result.Item4 != null && result.Item4.Count > 0)
-                {
-                    outStockLockInfos.AddRange(result.Item4);
-                }
-                if (result.Item5 != null && result.Item5.Count > 0)
-                {
-                    locationInfos.AddRange(result.Item5);
-                }
-                if (result.Item1 != null && result.Item1.Count > 0)
-                {
-                    tasks.AddRange(result.Item1);
-                }
-
-                WebResponseContent content = GenerateOutboundTaskDataUpdate(tasks, stockInfos, outboundOrderDetails, outStockLockInfos, locationInfos);
-                return content;
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="outboundId">鍑哄簱鍗曚富閿�</param>
-        /// <returns></returns>
-        public WebResponseContent GenerateOutboundTaskByHeadId(int outboundId)
-        {
-            try
-            {
-                List<int> keys = _outboundService.OutboundOrderDetailService.Repository.QueryData(x => x.Id, x => x.OrderId == outboundId);
-
-                return GenerateOutboundTasks(keys.ToArray());
-            }
-            catch (Exception ex)
-            {
-                _unitOfWorkManage.RollbackTran();
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
-        }
-
-        #region
-        ///// <summary>
-        ///// 鐢熸垚鍑哄簱浠诲姟
-        ///// </summary>
-        ///// <param name="keys">鍑哄簱鍗曟槑缁嗕富閿�</param>
-        ///// <returns></returns>
-        //public WebResponseContent MESPPGenerateOutboundTasks(int[] keys)
-        //{
-        //    try
-        //    {
-        //        List<Dt_Task> tasks = new List<Dt_Task>();
-        //        List<StockSelectViewDTO> stockSelectViews = new List<StockSelectViewDTO>();
-        //        List<Dt_StockInfo> stockInfos = new List<Dt_StockInfo>();
-        //        List<Dt_MesPPOutboundOrderDetail> outboundOrderDetails = new List<Dt_MesPPOutboundOrderDetail>();
-        //        List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>();
-        //        List<Dt_LocationInfo> locationInfos = new List<Dt_LocationInfo>();
-
-        //        (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_MesPPOutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) result = MESPPOutboundTaskDataHandle(keys);
-        //        if (result.Item2 != null && result.Item2.Count > 0)
-        //        {
-        //            stockInfos.AddRange(result.Item2);
-        //        }
-        //        if (result.Item3 != null && result.Item3.Count > 0)
-        //        {
-        //            outboundOrderDetails.AddRange(result.Item3);
-        //        }
-        //        if (result.Item4 != null && result.Item4.Count > 0)
-        //        {
-        //            outStockLockInfos.AddRange(result.Item4);
-        //        }
-        //        if (result.Item5 != null && result.Item5.Count > 0)
-        //        {
-        //            locationInfos.AddRange(result.Item5);
-        //        }
-        //        if (result.Item1 != null && result.Item1.Count > 0)
-        //        {
-        //            tasks.AddRange(result.Item1);
-        //        }
-
-        //        WebResponseContent content = MESPPGenerateOutboundTaskDataUpdate(tasks, stockInfos, outboundOrderDetails, outStockLockInfos, locationInfos);
-        //        return content;
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        _unitOfWorkManage.RollbackTran();
-        //        return WebResponseContent.Instance.Error(ex.Message);
-        //    }
-        //}
-
-        ///// <summary>
-        ///// 鍑哄簱浠诲姟鏁版嵁澶勭悊
-        ///// </summary>
-        ///// <param name="orderDetailId"></param>
-        ///// <param name="stockSelectViews"></param>
-        ///// <returns></returns>
-        ///// <exception cref="Exception"></exception>
-        //public (List<Dt_Task>, List<Dt_StockInfo>?, List<Dt_MesPPOutboundOrderDetail>?, List<Dt_OutStockLockInfo>?, List<Dt_LocationInfo>?) MESPPOutboundTaskDataHandle(int[] keys)
-        //{
-        //    List<Dt_Task> tasks = new List<Dt_Task>();
-        //    List<Dt_MesPPOutboundOrderDetail> outboundOrderDetailss = _outboundService.MesPPOutboundOrderDetailService.Repository.QueryData(x => keys.Contains(x.Id));
-        //    List<Dt_MesPPOutboundOrderDetail> outboundOrderDetails = BaseDal.Db.Queryable<Dt_MesPPOutboundOrderDetail>().Where(x => keys.Contains(x.Id)).ToList();
-        //    if (outboundOrderDetails == null || outboundOrderDetails.Count == 0)
-        //    {
-        //        throw new Exception("鏈壘鍒板嚭搴撳崟鏄庣粏淇℃伅");
-        //    }
-        //    if (outboundOrderDetails.FirstOrDefault(x => x.OrderDetailStatus > OrderDetailStatusEnum.New.ObjToInt() && x.OrderDetailStatus != OrderDetailStatusEnum.AssignOverPartial.ObjToInt()) != null)
-        //    {
-        //        throw new Exception("鎵�閫夊嚭搴撳崟鏄庣粏瀛樺湪鍑哄簱涓垨宸插畬鎴�");
-        //    }
-        //    List<Dt_StockInfo>? stockInfos = null;
-        //    List<Dt_MesPPOutboundOrderDetail>? orderDetails = null;
-        //    List<Dt_OutStockLockInfo>? outStockLockInfos = null;
-        //    List<Dt_LocationInfo>? locationInfos = null;
-        //    //if (outboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt())
-        //    {
-        //        (List<Dt_StockInfo>, List<Dt_MesPPOutboundOrderDetail>, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.MesPPOutboundOrderDetailService.AssignStockOutbound(outboundOrderDetails);
-
-        //        if (result.Item1 != null && result.Item1.Count > 0)
-        //        {
-        //            Dt_MesPPOutboundOrder outboundOrder = _outboundService.MesPPOutboundOrderService.Repository.QueryFirst(x => x.Id == outboundOrderDetails.FirstOrDefault().OrderId);
-        //            TaskTypeEnum typeEnum = outboundOrder.OrderType switch
-        //            {
-        //                (int)OutOrderTypeEnum.Issue => TaskTypeEnum.Outbound,
-        //                (int)OutOrderTypeEnum.Allocate => TaskTypeEnum.OutAllocate,
-        //                (int)OutOrderTypeEnum.Quality => TaskTypeEnum.OutQuality,
-        //                _ => new TaskTypeEnum()
-        //            };
-        //            tasks = GetTasks(result.Item1, typeEnum);
-        //            result.Item2.ForEach(x =>
-        //            {
-        //                x.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-        //            });
-        //            result.Item3.ForEach(x =>
-        //            {
-        //                x.Status = OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt();
-        //            });
-
-        //            stockInfos = result.Item1;
-        //            orderDetails = result.Item2;
-        //            outStockLockInfos = result.Item3;
-        //            locationInfos = result.Item4;
-        //        }
-        //        else
-        //        {
-        //            throw new Exception("鏃犲簱瀛�");
-        //        }
-        //    }
-        //    //else
-        //    //{
-        //    //    List<Dt_OutStockLockInfo> stockLockInfos = _outboundService.OutboundStockLockInfoService.GetByOrderDetailId(outboundOrderDetail.OrderId, OutLockStockStatusEnum.宸插垎閰�);
-        //    //    if (stockLockInfos != null && stockLockInfos.Count > 0)
-        //    //    {
-        //    //        List<Dt_StockInfo> stocks = _stockService.StockInfoService.Repository.GetStockInfosByPalletCodes(stockLockInfos.Select(x => x.PalletCode).Distinct().ToList());
-        //    //        tasks = GetTasks(stocks);
-        //    //    }
-        //    //}
-
-        //    return (tasks, stockInfos, orderDetails, outStockLockInfos, locationInfos);
-        //}
-
-        ///// <summary>
-        ///// 鐢熸垚鍑哄簱浠诲姟鍚庢暟鎹洿鏂板埌鏁版嵁搴�
-        ///// </summary>
-        ///// <param name="tasks"></param>
-        ///// <param name="stockInfos"></param>
-        ///// <param name="outboundOrderDetails"></param>
-        ///// <param name="outStockLockInfos"></param>
-        ///// <param name="locationInfos"></param>
-        ///// <returns></returns>
-        //public WebResponseContent MESPPGenerateOutboundTaskDataUpdate(List<Dt_Task> tasks, List<Dt_StockInfo>? stockInfos = null, List<Dt_MesPPOutboundOrderDetail>? outboundOrderDetails = null, List<Dt_OutStockLockInfo>? outStockLockInfos = null, List<Dt_LocationInfo>? locationInfos = null)
-        //{
-        //    try
-        //    {
-        //        _unitOfWorkManage.BeginTran();
-
-        //        BaseDal.AddData(tasks);
-        //        if (stockInfos != null && stockInfos.Count > 0 && outboundOrderDetails != null && outboundOrderDetails.Count > 0 && outStockLockInfos != null && outStockLockInfos.Count > 0 && locationInfos != null && locationInfos.Count > 0)
-        //        {
-        //            stockInfos.ForEach(x =>
-        //            {
-        //                x.StockStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt();
-        //            });
-        //            WebResponseContent content = _outboundService.MesPPOutboundOrderDetailService.LockOutboundStockDataUpdate(stockInfos, outboundOrderDetails, outStockLockInfos, locationInfos, tasks: tasks);
-
-        //            if (!content.Status)
-        //            {
-        //                _unitOfWorkManage.RollbackTran();
-        //                return content;
-        //            }
-        //        }
-        //        else if (outboundOrderDetails != null && outboundOrderDetails.Count > 0)
-        //        {
-        //            outboundOrderDetails.ForEach(x =>
-        //            {
-        //                x.OrderDetailStatus = OrderDetailStatusEnum.Outbound.ObjToInt();
-        //            });
-
-        //            _outboundService.MesPPOutboundOrderDetailService.Repository.UpdateData(outboundOrderDetails);
-        //        }
-        //        _unitOfWorkManage.CommitTran();
-        //        PushTasksToWCS(tasks);
-        //        return WebResponseContent.Instance.OK();
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        _unitOfWorkManage.RollbackTran();
-        //        return WebResponseContent.Instance.Error(ex.Message);
-        //    }
-
-        //}
-        #endregion
-
-
-
-
-
-
-
-
 
     }
 }
\ No newline at end of file
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/Task_HtyService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/Task_HtyService.cs"
index 4ef6d8e..c7ce742 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/Task_HtyService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/Task_HtyService.cs"
@@ -20,9 +20,6 @@
 using WIDESEA_DTO.Stock;
 using WIDESEA_IBasicRepository;
 using WIDESEA_IBasicService;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundRepository;
-using WIDESEA_IOutboundService;
 using WIDESEA_IRecordService;
 using WIDESEA_IStockRepository;
 using WIDESEA_IStockService;
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs"
index df78d7d..306c5b7 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs"
@@ -7,7 +7,6 @@
 using WIDESEA_Core.BaseController;
 using WIDESEA_Core.Helper;
 using WIDESEA_IApprovalService;
-using WIDESEA_ICheckRepository;
 using WIDESEA_Model.Models;
 
 namespace WIDESEA_WMSServer.Controllers.Approval
@@ -19,70 +18,11 @@
     [ApiController]
     public class ApprovalTaskController : ApiBaseController<IApprovalTaskService, Dt_ApprovalTask>
     {
-        private readonly ICheckOrderRepository _checkOrderRepository;
         private readonly WebSocketServer _webSocketServer;
 
-        public ApprovalTaskController(IApprovalTaskService service, ICheckOrderRepository checkOrderRepository, WebSocketServer webSocketServer) : base(service)
+        public ApprovalTaskController(IApprovalTaskService service, WebSocketServer webSocketServer) : base(service)
         {
-            _checkOrderRepository = checkOrderRepository;
             _webSocketServer = webSocketServer;
-        }
-
-        /// <summary>
-        /// 鍚屾剰瀹℃壒
-        /// </summary>
-        /// <param name="sourceKey"></param>
-        /// <returns></returns>
-        [HttpGet, HttpPost, Route("AuditAgree")]
-        public WebResponseContent AuditAgree(int sourceKey)
-        {
-            return Service.AuditAgree(sourceKey);
-        }
-
-        /// <summary>
-        /// 椹冲洖瀹℃壒
-        /// </summary>
-        /// <param name="sourceKey"></param>
-        /// <returns></returns>
-        [HttpGet, HttpPost, Route("AuditReject")]
-        public WebResponseContent AuditReject(int sourceKey)
-        {
-            return Service.AuditReject(sourceKey);
-        }
-
-        /// <summary>
-        /// 鎺ㄩ�佹祴璇�
-        /// </summary>
-        /// <returns></returns>
-        [HttpGet, HttpPost, Route("PushTest"), AllowAnonymous]
-        public WebResponseContent PushTest()
-        {
-            try
-            {
-                List<Dt_CheckOrder> checkOrders = _checkOrderRepository.Db.Queryable<Dt_CheckOrder>().Includes(x => x.Details).ToList();
-
-                foreach (var checkOrder in checkOrders)
-                {
-                    object obj = new
-                    {
-                        title = "IQC璐ㄦ缁撴灉瀹℃壒",
-                        formData = checkOrder,
-                        tableData = checkOrder.Details,
-                        message = "鎺ㄩ�佹祴璇曚俊鎭綋",
-                        date = DateTime.Now.ToString(),
-                    };
-                    JsonSerializerSettings settings = new JsonSerializerSettings()
-                    {
-                        ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver()
-                    };
-                    _webSocketServer.PublishAllClientPayload(JsonConvert.SerializeObject(obj, settings));
-                }
-                return WebResponseContent.Instance.OK();
-            }
-            catch (Exception ex)
-            {
-                return WebResponseContent.Instance.Error(ex.Message);
-            }
         }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/CustomerInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/CustomerInfoController.cs"
deleted file mode 100644
index 4970a95..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/CustomerInfoController.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IBasicService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Basic
-{
-    /// <summary>
-    /// 瀹㈡埛
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class CustomerInfoController : ApiBaseController<ICustomerInfoService, Dt_CustomerInfo>
-    {
-        public CustomerInfoController(ICustomerInfoService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/SupplierInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/SupplierInfoController.cs"
deleted file mode 100644
index a0740ef..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/SupplierInfoController.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IBasicService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Basic
-{
-    /// <summary>
-    /// 渚涘簲鍟�
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class SupplierInfoController : ApiBaseController<ISupplierInfoService, Dt_SupplierInfo>
-    {
-        public SupplierInfoController(ISupplierInfoService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/UserInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/UserInfoController.cs"
deleted file mode 100644
index 604a3e9..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Basic/UserInfoController.cs"
+++ /dev/null
@@ -1,30 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IBasicService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Basic
-{
-    /// <summary>
-    /// 鐢ㄦ埛
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class UserInfoController : ApiBaseController<IUserInfoService, Dt_UserInfo>
-    {
-        public UserInfoController(IUserInfoService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鐢熸垚鐢ㄦ埛璐﹀彿
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost,Route("AddUser"),AllowAnonymous]
-        public WebResponseContent AddUser()
-        {
-           return  Service.AddUser();
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Check/CheckOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Check/CheckOrderController.cs"
deleted file mode 100644
index 6a4cee4..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Check/CheckOrderController.cs"
+++ /dev/null
@@ -1,44 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_ICheckService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Check
-{
-    /// <summary>
-    /// 璐ㄦ鍗�
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class CheckOrderController : ApiBaseController<ICheckOrderService, Dt_CheckOrder>
-    {
-        public CheckOrderController(ICheckOrderService service) : base(service)
-        {
-        }
-
-        /// <summary>
-        /// 鎻愪氦瀹℃牳
-        /// </summary>
-        /// <param name="checkOrderId"></param>
-        /// <returns></returns>
-        [HttpGet, HttpPost, Route("CommitAudit")]
-        public WebResponseContent CommitAudit(int checkOrderId)
-        {
-            return Service.CommitAudit(checkOrderId);
-        }
-
-        /// <summary>
-        /// 璐ㄦ缁撴灉瀹℃壒瀹屾垚鍚庡洖浼燛RP
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        [HttpGet, HttpPost, Route("FeedbackCheckResult"),AllowAnonymous]
-        public WebResponseContent FeedbackCheckResult(int id)
-        {
-            return Service.FeedbackCheckResult(id);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Check/CheckOrderResultController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Check/CheckOrderResultController.cs"
deleted file mode 100644
index 5e2bb12..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Check/CheckOrderResultController.cs"
+++ /dev/null
@@ -1,43 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_ICheckService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Check
-{
-    /// <summary>
-    /// 璐ㄦ缁撴灉
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class CheckOrderResultController : ApiBaseController<ICheckOrderResultService, Dt_CheckOrderResult>
-    {
-        public CheckOrderResultController(ICheckOrderResultService service) : base(service)
-        {
-        }
-
-        /// <summary>
-        /// 鎻愪氦璐ㄦ缁撴灉
-        /// </summary>
-        /// <param name="checkOrderId"></param>
-        /// <param name="checkResult"></param>
-        /// <returns></returns>
-        [HttpPost, Route("CommitCheckResult")]
-        public WebResponseContent CommitCheckResult(int checkOrderId,[FromBody] Dt_CheckOrderResult checkResult, int isAccept = 0)
-        {
-            return Service.CommitCheckResult(checkOrderId, checkResult, isAccept);
-        }
-        /// <summary>
-        /// 鑾峰彇妫�楠屼俊鎭�
-        /// </summary>
-        /// <param name="checkId"></param>
-        /// <returns></returns>
-        [HttpPost, Route("GetCheckResultInfo")]
-        public WebResponseContent GetCheckResultInfo(int checkId)
-        {
-            return Service.GetCheckResultInfo(checkId);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs"
index e67acf6..51e5ad9 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs"
@@ -15,10 +15,6 @@
 using WIDESEA_External.Model;
 using WIDESEA_IBasicRepository;
 using WIDESEA_IBasicService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_InboundService;
-using WIDESEA_IOutboundService;
 using WIDESEA_Model.Models;
 using static WIDESEA_DTO.ErpResponseContent;
 
@@ -32,58 +28,12 @@
     public class ErpController : ControllerBase
     {
         private readonly IBasicService _basicService;
-        private readonly IOutboundService _outboundService;
-        private readonly IInboundService _inboundService;
         private readonly IInvokeERPService _invokeERPService;
-        private readonly IReturnOrderService _returnOrderService;
 
-        public ErpController(IBasicService basicService, IOutboundService outboundService, IInboundService inboundService,
-            IInvokeERPService invokeERPService, IReturnOrderService returnOrderService)
+        public ErpController(IBasicService basicService,IInvokeERPService invokeERPService)
         {
             _basicService = basicService;
-            _outboundService = outboundService;
-            _inboundService = inboundService;
             _invokeERPService = invokeERPService;
-            _returnOrderService = returnOrderService;
-        }
-
-        /// <summary>
-        /// 鎺ユ敹ERP閲囪喘鍗曚俊鎭�
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ReceivePurchaseOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReceivePurchaseOrder([FromBody] Root<PurchaseOrderModel> model)
-        {
-            WebResponseContent content = _inboundService.PurchaseOrderService.ReceivePurchaseOrder(model.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-
-        /// <summary>
-        /// 鎺ユ敹ERP浠撳簱鍛樺伐鍜岃川妫�鍛樺伐鏁版嵁
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ReceiveUser"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReceiveUser([FromBody] Root<UserInfoDTO> model)
-        {
-            WebResponseContent content = _basicService.UserInfoService.ReceiveUser(model.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-
-        /// <summary>
-        /// 鎺ユ敹ERP渚涘簲鍟嗕俊鎭�
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ReceiveSupplier"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReceiveSupplier([FromBody] Root<SupplierDTO> model)
-        {
-            WebResponseContent content = _basicService.SupplierInfoService.ReceiveSupplier(model.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
         }
 
         /// <summary>
@@ -95,118 +45,6 @@
         public ErpResponseContent ReceiveMaterial([FromBody] Root<MaterielInfoDTO> model)
         {
             WebResponseContent content = _basicService.MaterielInfoService.ReceiveMaterial(model.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-
-        /// <summary>
-        /// 鎺ユ敹ERP瀹㈡埛淇℃伅
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ReceiveCustomer"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReceiveCustomer([FromBody] Root<CustomerInfoDTO> model)
-        {
-            WebResponseContent content = _basicService.CustomerInfoService.ReceiveCustomer(model.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-
-        /// <summary>
-        /// 鎺ユ敹ERP鍑哄簱鍗曚俊鎭�
-        /// </summary>
-        /// <param name="erpOutOrder"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ReceiveOutOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReceiveOutOrder([FromBody] Root<ErpOutOrderDTO> erpOutOrder)
-        {
-            WebResponseContent content = _outboundService.OutboundOrderService.ReceiveOutOrder(erpOutOrder.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-        /// <summary>
-        /// 鎺ユ敹ERP鎴愬搧鍑哄簱鍗曚俊鎭�(璁㈠崟鍑哄簱/瀵勫敭鍑哄簱)
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, Route("ProductDeliveryOrder"), AllowAnonymous, MethodParamsValidate]
-        public async Task<ErpResponseContent> ProductDeliveryOrder([FromBody] Root<ErpProOutOrderDTO> erpProOutOrder)
-        {
-            var content = await _outboundService.ProOutOrderService.ProductDeliveryOrder(erpProOutOrder.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-        /// <summary>
-        /// 鎴愬搧瀵勫敭杞叆/璋冩嫧鍏ュ簱
-        /// </summary>
-        /// <param name="root"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ProductWarehousingOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ProductWarehousingOrder([FromBody] Root<ErpProductWarehousingOrderDTO> root)
-        {
-            WebResponseContent content = _inboundService.ErpProInOrderService.ProductWarehousingOrder(root.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-        /// <summary>
-        /// 鎴愬搧璋冩嫧鍑猴紙鐮斿彂锛�
-        /// </summary>
-        /// <param name="root"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ProductTransferOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ProductTransferOrder([FromBody] Root<ErpProductTransferOrderDTO> root)
-        {
-            WebResponseContent content = _outboundService.ErpProTransferOrderService.ProductTransferOrder(root.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-        /// <summary>
-        /// 鎴愬搧鎶ュ簾鍑哄簱鍗曟帴鏀�
-        /// </summary>
-        /// <param name="root"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ProductScrappedOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ProductScrappedOrder([FromBody] Root<ErpProductScrappedOrderDTO> root)
-        {
-            return Instance.OK();
-        }
-        /// <summary>
-        /// 鎴愬搧棰嗘枡鍑哄簱鍗曟帴鏀�
-        /// </summary>
-        /// <param name="root"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ProductOutOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ProductOutOrder([FromBody] Root<ErpProOutLingOrder> root)
-        {
-            return Instance.OK();
-        }
-        /// <summary>
-        /// 閿�鍞寚娲惧崟鎺ユ敹
-        /// </summary>
-        [HttpPost, Route("ProductSpecifyVer"), AllowAnonymous, MethodParamsValidate]
-        public async Task<ErpResponseContent> ProductSpecifyVerAsync([FromBody] Root<ErpProductSpecifyVerDTO> root)
-        {
-            var content = await _outboundService.ProOutOrderService.ProductSpecifyVer(root.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-        /// <summary>
-        /// 鎺ユ敹ERP閫�鏂欏崟淇℃伅
-        /// </summary>
-        [HttpPost, Route("ReturnOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReturnOrder([FromBody] Root<ErpReturnOrderDTO> model)
-        {
-            WebResponseContent content = _returnOrderService.ReturnOrder(model.Content);
-            if (content.Status) return Instance.OK();
-            else return Instance.Error(content.Message);
-        }
-        /// <summary>
-        /// 鍏朵粬鍏ュ簱鍗曟帴鏀�(璋冩嫈鍏ヤ粨,瀹緵鍥炴敹,鐗╂枡閿�鍞��璐�)
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, Route("ReceiveWarehousingOrder"), AllowAnonymous, MethodParamsValidate]
-        public ErpResponseContent ReceiveWarehousingOrder([FromBody] Root<ErpInOrderDTO> model)
-        {
-            WebResponseContent content = _inboundService.InbounOrderService.ReceiveWarehousingOrder(model.Content);
             if (content.Status) return Instance.OK();
             else return Instance.Error(content.Message);
         }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ErpProInOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ErpProInOrderController.cs"
deleted file mode 100644
index e1b219c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ErpProInOrderController.cs"
+++ /dev/null
@@ -1,19 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// Erp鎴愬搧璋冨叆閿�鍞叆搴�
-    /// </summary>
-    [Route("api/ErpProInOrder")]
-    [ApiController]
-    public class ErpProInOrderController : ApiBaseController<IErpProInOrderService, Dt_ErpProInOrder>
-    {
-        public ErpProInOrderController(IErpProInOrderService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs"
deleted file mode 100644
index 6bb636a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs"
+++ /dev/null
@@ -1,122 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鍏ュ簱鍗�
-    /// </summary>
-    [Route("api/InboundOrder")]
-    [ApiController]
-    public class InboundOrderController : ApiBaseController<IInboundOrderService, Dt_InboundOrder>
-    {
-        public InboundOrderController(IInboundOrderService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鏌ヨ鍏ュ簱鍗曚俊鎭�
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetInboundOrders")]
-        public WebResponseContent GetInboundOrders([FromBody] SaveModel saveModel)
-        {
-            return Service.GetInboundOrders(saveModel);
-        }
-
-        /// <summary>
-        /// 鍏ュ钩搴�
-        /// </summary>
-        /// <param name="orderNo"></param>
-        /// <param name="warehouseId"></param>
-        /// <param name="serNums"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("InPinKu")]
-        public WebResponseContent InPinKu(string orderNo, int warehouseId, [FromBody] List<string> serNums)
-        {
-            return Service.InPinKu(orderNo, warehouseId, serNums);
-        }
-        /// <summary>
-        /// WMS鍏ュ钩搴�
-        /// </summary>
-        /// <param name="warehouseId"></param>
-        /// <param name="serNums"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("WMSInPinKu")]
-        public WebResponseContent WMSInPinKu(int warehouseId, [FromBody] List<string> serNums)
-        {
-            return Service.WMSInPinKu(warehouseId, serNums);
-        }
-        /// <summary>
-        /// 鍗曚釜鐗╂枡鐮佺粍鐩�
-        /// </summary>
-        /// <param name="inboundOrderId"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="serNum"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("MaterielGroupSingle")]
-        public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, string serNum)
-        {
-            return Service.MaterielGroup(inboundOrderId, palletCode, serNum);
-        }
-
-        // <summary>
-        // 澶氫釜鐗╂枡鐮佺粍鐩�
-        // </summary>
-        // <returns></returns>
-        //[HttpPost, HttpGet, Route("MaterielGroup")]
-        //public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, List<string> serNums)
-        //{
-        //    return Service.MaterielGroup(inboundOrderId, palletCode, serNums);
-        //}
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("MaterielGroup")]
-        public WebResponseContent MaterielGroup([FromBody] SaveModel saveModel)
-        {
-            return Service.MaterielGroup(saveModel);
-        }
-        /// <summary>
-        /// 鏇存嵁鍏ュ簱鍗曞彿ID涓婁紶ERP
-        /// </summary>
-        /// <param name="inboundOrderId">鍏ュ簱鍗曞彿Id</param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("FeedbackInboundOrder")]
-        public WebResponseContent FeedbackInboundOrder(int inboundOrderId)
-        {
-            return Service.FeedbackInboundOrder(inboundOrderId);
-        }
-        ///// <summary>
-        ///// 鍏ュ簱瀹屾垚鍚庡洖浼燛RP
-        ///// </summary>
-        ///// <param name="id"></param>
-        ///// <returns></returns>
-        //[HttpPost, HttpGet, Route("FeedbackInboundOrder")]
-        //public WebResponseContent FeedbackInboundOrder(int id)
-        //{
-        //    return Service.FeedbackInboundOrder(id);
-        //}
-
-        /// <summary>
-        /// 鏃犲叆搴撳崟缁勭洏
-        /// </summary>
-        /// <param name="palletCode"></param>
-        /// <param name="initiallife"></param>
-        /// <param name="warehouseId"></param>
-        /// <param name="serNums"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("ManualMaterielGroup")]
-        public WebResponseContent MaterielGroup(string palletCode, int initiallife, int warehouseId, [FromBody] List<string> serNums)
-        {
-            return Service.MaterielGroup(palletCode, initiallife, warehouseId, serNums);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderDetailController.cs"
deleted file mode 100644
index 2d7a25e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderDetailController.cs"
+++ /dev/null
@@ -1,30 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁�
-    /// </summary>
-    [Route("api/InboundOrderDetail")]
-    [ApiController]
-    public class InboundOrderDetailController : ApiBaseController<IInboundOrderDetailService, Dt_InboundOrderDetail>
-    {
-        public InboundOrderDetailController(IInboundOrderDetailService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鏌ヨ鍏ュ簱鍗曡鎯�
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetInboundOrderDetails")]
-        public WebResponseContent GetInboundOrderDetails([FromBody] SaveModel saveModel)
-        {
-            return Service.GetInboundOrderDetails(saveModel);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderDetail_HtyController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderDetail_HtyController.cs"
deleted file mode 100644
index bdcac48..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderDetail_HtyController.cs"
+++ /dev/null
@@ -1,23 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曟槑缁嗗巻鍙�
-    /// </summary>
-    [Route("api/InboundOrderDetail_Hty")]
-    [ApiController]
-    public class InboundOrderDetail_HtyController : ApiBaseController<IInboundOrderDetail_HtyService, Dt_InboundOrderDetail_Hty>
-    {
-        public InboundOrderDetail_HtyController(IInboundOrderDetail_HtyService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrder_HtyController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrder_HtyController.cs"
deleted file mode 100644
index efb312c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/InboundOrder_HtyController.cs"
+++ /dev/null
@@ -1,23 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鍏ュ簱鍗曞巻鍙�
-    /// </summary>
-    [Route("api/InboundOrder_Hty")]
-    [ApiController]
-    public class InboundOrder_HtyController : ApiBaseController<IInboundOrder_HtyService, Dt_InboundOrder_Hty>
-    {
-        public InboundOrder_HtyController(IInboundOrder_HtyService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/MesProInOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/MesProInOrderController.cs"
deleted file mode 100644
index 56fb36c..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/MesProInOrderController.cs"
+++ /dev/null
@@ -1,20 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// Mes鎴愬搧鍏ュ簱
-    /// </summary>
-    [Route("api/MesProInOrder")]
-    [ApiController]
-    public class MesProInOrderController : ApiBaseController<IMesProInOrderService, Dt_MesProInOrder>
-    {
-        public MesProInOrderController(IMesProInOrderService service) : base(service)
-        {
-        }
-        
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/MesProInOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/MesProInOrderDetailController.cs"
deleted file mode 100644
index dde06d4..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/MesProInOrderDetailController.cs"
+++ /dev/null
@@ -1,19 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// Mes鎴愬搧鍏ュ簱鏄庣粏
-    /// </summary>
-    [Route("api/MesProInOrderDetail")]
-    [ApiController]
-    public class MesProInOrderDetailController : ApiBaseController<IMesProInOrderDetailService, Dt_MesProInOrderDetail>
-    {
-        public MesProInOrderDetailController(IMesProInOrderDetailService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ProInStatisticsController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ProInStatisticsController.cs"
deleted file mode 100644
index 56c465a..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ProInStatisticsController.cs"
+++ /dev/null
@@ -1,25 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// Mes鎴愬搧鍏ュ簱鏄庣粏
-    /// </summary>
-    [Route("api/ProInStatistics")]
-    [ApiController]
-    public class ProInStatisticsController : ApiBaseController<IProInStatisticsService, Dt_ProInStatistics>
-    {
-        public ProInStatisticsController(IProInStatisticsService service) : base(service)
-        {
-        }
-        [HttpGet,HttpPost,Route("GetMonthProductions")]
-        public WebResponseContent GetMonthProductions()
-        {
-            return Service.GetMonthProductions();
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderController.cs"
deleted file mode 100644
index b8bb804..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderController.cs"
+++ /dev/null
@@ -1,27 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 閲囪喘鍗�
-    /// </summary>
-    [Route("api/PurchaseOrder")]
-    [ApiController]
-    public class PurchaseOrderController : ApiBaseController<IPurchaseOrderService, Dt_PurchaseOrder>
-    {
-        public PurchaseOrderController(IPurchaseOrderService service) : base(service)
-        {
-        }
-        [HttpPost, HttpGet, Route("GetPurchaseOrderInfo"), AllowAnonymous]
-        public WebResponseContent GetPurchaseOrderInfo(string purchaseOrderNo)
-        {
-            return Service.GetPurchaseOrderInfo(purchaseOrderNo);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs"
deleted file mode 100644
index dab54ac..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs"
+++ /dev/null
@@ -1,44 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 閲囪喘鍗曟槑缁�
-    /// </summary>
-    [Route("api/PurchaseOrderDetail")]
-    [ApiController]
-    public class PurchaseOrderDetailController : ApiBaseController<IPurchaseOrderDetailService, Dt_PurchaseOrderDetail>
-    {
-        public PurchaseOrderDetailController(IPurchaseOrderDetailService service) : base(service)
-        {
-        }
-        [HttpPost, HttpGet, Route("GetPurchaseOrderDetailMaterielCode"), AllowAnonymous]
-        public WebResponseContent GetPurchaseOrderDetailMaterielCode(int warehouseId)
-        {
-            return Service.GetPurchaseOrderDetailMaterielCode(warehouseId);
-        }
-        [HttpPost, HttpGet, Route("GetPurchaseOrderNos"), AllowAnonymous]
-        public WebResponseContent GetPurchaseOrderNos(string materielCode)
-        {
-            return Service.GetPurchaseOrderNos(materielCode);
-        }
-
-        [HttpPost, HttpGet, Route("GetOrderQuantity"), AllowAnonymous]
-        public WebResponseContent GetOrderQuantity(string purchaseOrderNo)
-        {
-            return Service.GetOrderQuantity(purchaseOrderNo);
-        }
-        //鑾峰彇鐗╂枡瑙勬牸
-        [HttpPost, HttpGet, Route("GetOrderMaterielSpec"), AllowAnonymous]
-        public WebResponseContent GetOrderMaterielSpec(string purchaseOrderNo, string materielCode)
-        {
-            return Service.GetOrderMaterielSpec(purchaseOrderNo, materielCode);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderController.cs"
deleted file mode 100644
index 8dfca1b..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderController.cs"
+++ /dev/null
@@ -1,65 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鏀惰揣鍗�
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class ReceiveOrderController : ApiBaseController<IReceiveOrderService, Dt_ReceiveOrder>
-    {
-        public ReceiveOrderController(IReceiveOrderService service) : base(service)
-        {
-        }
-
-        /// <summary>
-        /// 鏍规嵁鏀惰揣鍗曞垱寤哄叆搴撳崟
-        /// </summary>
-        /// <param name="receiveOrderId">鏀惰揣鍗曠紪鍙�</param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("CreateInboundOrder")]
-        public WebResponseContent CreateInboundOrder(int receiveOrderId)
-        {
-            return Service.CreateInboundOrder(receiveOrderId);
-        }
-
-        /// <summary>
-        /// 鏀惰揣瀹屾垚鍥炰紶ERP
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("FeedbackReceiveOrder")]
-        public WebResponseContent FeedbackReceiveOrder(int orderId)
-        {
-            return Service.FeedbackReceiveOrder(orderId);
-        }
-
-        /// 鏌ヨ鏀惰揣鍗曚俊鎭�
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetReceiveOrders")]
-        public WebResponseContent GetReceiveOrders([FromBody] SaveModel saveModel)
-        {
-            return Service.GetReceiveOrders(saveModel);
-        }
-
-        /// <summary>
-        /// 鏀惰揣 娴嬭瘯
-        /// </summary>
-        /// <param name="purchaseOrderId"></param>
-        /// <param name="lotNo"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("ReceiveAllOrder")]
-        public WebResponseContent ReceiveAllOrder(int purchaseOrderId, string lotNo)
-        {
-            return Service.ReceiveAllOrder(purchaseOrderId, lotNo);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderDetailController.cs"
deleted file mode 100644
index 52bb802..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderDetailController.cs"
+++ /dev/null
@@ -1,43 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_InboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鏀惰揣鍗曟槑缁�
-    /// </summary>
-    [Route("api/[controller]")]
-    [ApiController]
-    public class ReceiveOrderDetailController : ApiBaseController<IReceiveOrderDetailService, Dt_ReceiveOrderDetail>
-    {
-        public ReceiveOrderDetailController(IReceiveOrderDetailService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鍒涘缓鏀惰揣鍗曟槑缁�(PDA鎵爜鏀惰揣)
-        /// </summary>
-        /// <param name="serNum"></param>
-        /// <param name="orderNo"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("AddReceiveOrderDetail")]
-        public WebResponseContent AddReceiveOrderDetail(string serNum, string orderNo)
-        {
-            return Service.AddReceiveOrderDetail(serNum, orderNo);
-        }
-
-        /// <summary>
-        /// 鏌ヨ鏀惰揣鍗曚俊鎭�
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetReceiveOrderInfos")]
-        public WebResponseContent GetReceiveOrderInfos([FromBody] SaveModel saveModel)
-        {
-            return Service.GetReceiveOrderInfos(saveModel);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReturnOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReturnOrderController.cs"
deleted file mode 100644
index b513b3d..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/ReturnOrderController.cs"
+++ /dev/null
@@ -1,40 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 閫�鏂欏崟
-    /// </summary>
-    [Route("api/ReturnOrder")]
-    [ApiController]
-    public class ReturnOrderController : ApiBaseController<IReturnOrderService, Dt_ReturnOrder>
-    {
-        public ReturnOrderController(IReturnOrderService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鑾峰彇閫�鏂欏崟
-        /// </summary>
-        [HttpPost,Route("GetReturnOrders")]
-        public WebResponseContent GetReturnOrders([FromBody] SaveModel saveModel)
-        {
-            return Service.GetReturnOrders(saveModel);
-        }
-        /// <summary>
-        /// 纭閫�搴撴牴鎹��搴撳崟鐢熸垚鍏ュ簱鍗�
-        /// </summary>
-        /// <param name="returnId">閫�鏂欏崟ID</param>
-        /// <returns></returns>
-        [HttpPost, Route("IsReturnCreateInOrder")]
-        public WebResponseContent IsReturnCreateInOrder(int returnId)
-        {
-            return Service.IsReturnCreateInOrder(returnId);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/TakeStockOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/TakeStockOrderController.cs"
deleted file mode 100644
index 1db3be8..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/TakeStockOrderController.cs"
+++ /dev/null
@@ -1,22 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鐩樼偣鍗�
-    /// </summary>
-    [Route("api/TakeStockOrder")]
-    [ApiController]
-    public class TakeStockOrderController : ApiBaseController<ITakeStockOrderService, Dt_TakeStockOrder>
-    {
-        public TakeStockOrderController(ITakeStockOrderService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/TakeStockOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/TakeStockOrderDetailController.cs"
deleted file mode 100644
index 6639fc7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Inbound/TakeStockOrderDetailController.cs"
+++ /dev/null
@@ -1,22 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IInboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鐩樼偣鏄庣粏鍗�
-    /// </summary>
-    [Route("api/TakeStockOrderDetail")]
-    [ApiController]
-    public class TakeStockOrderDetailController : ApiBaseController<ITakeStockOrderDetailService, Dt_TakeStockOrderDetail>
-    {
-        public TakeStockOrderDetailController(ITakeStockOrderDetailService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/LargeScreen/LargeController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/LargeScreen/LargeController.cs"
index a95ca9f..fac5179 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/LargeScreen/LargeController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/LargeScreen/LargeController.cs"
@@ -4,9 +4,6 @@
 using WIDESEA_Core;
 using WIDESEA_DTO;
 using WIDESEA_IBasicService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundService;
 using WIDESEA_ITaskInfoService;
 using WIDESEA_TaskInfoService;
 using WIDESEA_DTO.ERP;
@@ -29,24 +26,18 @@
     [ApiController]
     public class LargeController : ControllerBase
     {
-        private readonly IOutboundService _outboundService;
         private readonly ITaskService _taskService;
         private readonly ITask_HtyService _task_HtyService;
         private readonly IBasicService _basicService;
-        private readonly IMesProInOrderService _mesProInOrderService;
-        private readonly IOutProStockInfoService _outProStockInfoService;
         private readonly WebSocketServer _webSocketServer;
         private readonly IProStockInfoDetailService _proStockInfoDetailService;
         private readonly IProStockInfoService _proStockInfoService;
 
-        public LargeController(IOutboundService outboundService, ITaskService taskService, ITask_HtyService task_HtyService, IBasicService basicService, IMesProInOrderService mesProInOrderService, IOutProStockInfoService outProStockInfoService, IProStockInfoDetailService proStockInfoDetailService, IProStockInfoService proStockInfoService, WebSocketServer webSocketServer)
+        public LargeController( ITaskService taskService, ITask_HtyService task_HtyService, IBasicService basicService, IProStockInfoDetailService proStockInfoDetailService, IProStockInfoService proStockInfoService, WebSocketServer webSocketServer)
         {
-            _outboundService = outboundService;
             _taskService = taskService;
             _task_HtyService = task_HtyService;
             _basicService = basicService;
-            _mesProInOrderService = mesProInOrderService;
-            _outProStockInfoService = outProStockInfoService;
             _proStockInfoDetailService = proStockInfoDetailService;
             _proStockInfoService = proStockInfoService;
             _webSocketServer = webSocketServer;
@@ -65,176 +56,5 @@
             }
             return WebResponseContent.Instance.OK(_webSocketServer.OnlineSessions.Select(x=>x.Url).Serialize());
         }
-        ///// <summary>
-        ///// 鎴愬搧褰撴湀浠诲姟缁熻
-        ///// </summary>
-        ///// <param name="model"></param>
-        ///// <returns></returns>
-        //[HttpPost, Route("ProMonthTaskStatistics"), AllowAnonymous]
-        //public WebResponseContent ProMonthTaskStatistics()
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        //鑾峰彇褰撴湀鎴愬搧鐨勪换鍔℃�婚噺
-        //        int inboundCount = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.InProduct.ObjToInt()).Count;
-        //        int outboundCount = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.OutProduct.ObjToInt()).Count;
-        //        int backboundCount = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.EmptyProductBack.ObjToInt()).Count;
-        //        int surplusCount = _taskService.Repository.QueryData(x => x.TaskType == TaskTypeEnum.InProductBack.ObjToInt()).Count;
-        //        content.OK("鎴愬姛", new { inboundCount, outboundCount, backboundCount, surplusCount });
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
-        ///// <summary>
-        ///// 鎴愬搧璐т綅
-        ///// </summary>
-        ///// <param name="model"></param>
-        ///// <returns></returns>
-        //[HttpPost, Route("ProLocationStatistics"), AllowAnonymous]
-        //public WebResponseContent ProLocationStatistics(int Id)
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        //鑾峰彇鎴愬搧鐨勮揣浣�
-        //        int freeCount = _basicService.LocationInfoService.Repository.QueryData(x => x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.WarehouseId == Id).Count;
-        //        int inStockCount = _basicService.LocationInfoService.Repository.QueryData(x => x.LocationStatus == LocationStatusEnum.InStock.ObjToInt() && x.WarehouseId == Id).Count;
-        //        int lockCount = _basicService.LocationInfoService.Repository.QueryData(x => x.LocationStatus != LocationStatusEnum.Free.ObjToInt() && x.LocationStatus != LocationStatusEnum.InStock.ObjToInt() && x.WarehouseId == Id).Count;
-        //        content.OK("鎴愬姛", new { freeCount, inStockCount, lockCount });
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
-        ///// <summary>
-        ///// 鎴愬搧鍏ュ簱浜ч噺
-        ///// </summary>
-        ///// <param name="model"></param>
-        ///// <returns></returns>
-        //[HttpPost, Route("Productions"), AllowAnonymous]
-        //public WebResponseContent Productions()
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        List<Object> list = new List<Object>();
-        //        DateTime dateTody = DateTime.Today.AddDays(+1);
-        //        for (int i = 1; i <= 7; i++)
-        //        {
-        //            DateTime date = dateTody.AddDays(-1);
-        //            List<Dt_MesProInOrder> mesIn = _mesProInOrderService.Repository.Db.Queryable<Dt_MesProInOrder>().Where(x => x.CreateDate < dateTody && x.CreateDate >= date).Includes(x => x.Details).ToList();
-        //            int PcsCounts = 0;
-        //            foreach (var item in mesIn)
-        //            {
-        //                PcsCounts+=(int)item.Details.Sum(x=>x.OKPCSQTY);
-        //            }
-        //            dateTody = date;
-        //            list.Add(new { today = date.ToString("MM/dd"), pcsCounts = PcsCounts });
-        //        }
-        //        content.OK("鎴愬姛", list);
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
-        ///// <summary>
-        ///// 鎴愬搧鍑哄簱浜ч噺
-        ///// </summary>
-        ///// <param name="model"></param>
-        ///// <returns></returns>
-        //[HttpPost, Route("ProductionsOut"), AllowAnonymous]
-        //public WebResponseContent ProductionsOut()
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        List<Object> list = new List<Object>();
-        //        DateTime dateTody = DateTime.Today.AddDays(+1);
-        //        for (int i = 1; i <= 7; i++)
-        //        {
-        //            DateTime date = dateTody.AddDays(-1);
-        //            List<Dt_ProOutOrder> mesIn = _outboundService.ProOutOrderService.Repository.Db.Queryable<Dt_ProOutOrder>().Where(x => x.CreateDate < dateTody && x.CreateDate >= date).Includes(x => x.Details).ToList();
-        //            int PcsCounts = 0;
-        //            foreach (var item in mesIn)
-        //            {
-        //                PcsCounts += (int)item.Details.Sum(x => x.QtyPcs);
-        //            }
-        //            dateTody = date;
-        //            list.Add(new { today = date.ToString("MM/dd"), pcsCounts = PcsCounts });
-        //        }
-        //        content.OK("鎴愬姛", list);
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
-        ///// <summary>
-        ///// 鎴愬搧鍑哄簱浜ч噺
-        ///// </summary>
-        ///// <param name="model"></param>
-        ///// <returns></returns>
-        //[HttpPost, Route("ProductionRanking"), AllowAnonymous]
-        //public WebResponseContent ProductionRanking()
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        var list = _proStockInfoDetailService.Repository.QueryData(x => true).GroupBy(x => x.ProductCode).Select(x => new { pCode = x.Key, qtys = x.Sum(x=>x.StockPcsQty) }).OrderByDescending(x=>x.qtys).Take(5);
-
-        //        content.OK("鎴愬姛", list);
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
-        ///// <summary>
-        ///// 鎴愬搧搴撳瓨
-        ///// </summary>
-        ///// <param name="model"></param>
-        ///// <returns></returns>
-        //[HttpPost, Route("ProductionStock"), AllowAnonymous]
-        //public WebResponseContent ProductionStock()
-        //{
-        //    WebResponseContent content = new WebResponseContent();
-        //    try
-        //    {
-        //        int cpCount = 0;
-        //        int yfCount = 0;
-        //        int wsCount = 0;
-        //        List<Dt_ProStockInfo> cpproStockInfos = _proStockInfoService.Repository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.ProStockAttribute == ProStockAttributeEnum.鎴愬搧.ObjToInt()).Includes(x => x.proStockInfoDetails).ToList();
-        //        List<Dt_ProStockInfo> yfproStockInfos = _proStockInfoService.Repository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.ProStockAttribute == ProStockAttributeEnum.鐮斿彂.ObjToInt()).Includes(x => x.proStockInfoDetails).ToList();
-        //        List<Dt_ProStockInfo> wsproStockInfos = _proStockInfoService.Repository.Db.Queryable<Dt_ProStockInfo>().Where(x => x.ProStockAttribute == ProStockAttributeEnum.灏炬暟.ObjToInt()).Includes(x => x.proStockInfoDetails).ToList();
-        //        foreach (var item in cpproStockInfos)
-        //        {
-        //            cpCount +=(int) item.proStockInfoDetails.Sum(x => x.StockPcsQty);
-        //        }
-        //        foreach (var item in yfproStockInfos)
-        //        {
-        //            yfCount += (int)item.proStockInfoDetails.Sum(x => x.StockPcsQty);
-        //        }
-        //        foreach (var item in wsproStockInfos)
-        //        {
-        //            wsCount += (int)item.proStockInfoDetails.Sum(x => x.StockPcsQty);
-        //        }
-        //        content.OK("鎴愬姛", new { cpCount, yfCount, wsCount });
-        //    }
-        //    catch (Exception ex)
-        //    {
-        //        content.Error(ex.Message);
-        //    }
-        //    return content;
-        //}
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/MES/MesController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/MES/MesController.cs"
index 7e7102d..0439ef8 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/MES/MesController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/MES/MesController.cs"
@@ -4,9 +4,6 @@
 using WIDESEA_Core;
 using WIDESEA_DTO;
 using WIDESEA_IBasicService;
-using WIDESEA_IInboundRepository;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundService;
 using WIDESEA_ITaskInfoService;
 using WIDESEA_TaskInfoService;
 using WIDESEA_DTO.ERP;
@@ -24,12 +21,10 @@
     [ApiController]
     public class MesController : ControllerBase
     {
-        private readonly IOutboundService _outboundService;
         private readonly ITaskService _taskService;
 
-        public MesController(IOutboundService outboundService, ITaskService taskService)
+        public MesController(ITaskService taskService)
         {
-            _outboundService = outboundService;
             _taskService = taskService;
         }
 
@@ -78,17 +73,6 @@
         }
 
         /// <summary>
-        /// 鍩烘澘鍑哄簱
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("SubstrateOut"), AllowAnonymous]
-        public MesResponseContent SubstrateOut([FromBody] Root<SubstrateOutModel> model)
-        {
-            return _taskService.SubstrateOut(model.Content);
-        }
-
-        /// <summary>
         /// 鍩烘澘浣欐枡閫�搴�
         /// </summary>
         /// <param name="model"></param>
@@ -108,26 +92,7 @@
         {
             return _taskService.UploadMesMaterialLotaAcept(model);
         }
-        /// <summary>
-        /// MES鎴愬搧鍐呭寘淇℃伅鎺ユ敹
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("BagInfoSync"), AllowAnonymous]
-        public MesResponseContent BagInfoSync([FromBody] Root<MesBagInfoModel> model)
-        {
-            return _taskService.BagInfoSync(model.Content);
-        }
-        /// <summary>
-        /// MES鎴愬搧澶栧寘淇℃伅鎺ユ敹
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("BoxStockin"), AllowAnonymous]
-        public MesResponseContent BoxStockin([FromBody] Root<MesBoxInfoModel> model)
-        {
-            return _taskService.BoxStockin(model.Content);
-        }
+
         /// <summary>
         /// MES鎴愬搧鍑哄簱鎺ュ彛璋冪敤
         /// </summary>
@@ -136,26 +101,6 @@
         public WebResponseContent ShipmentOrderSync([FromBody] MesShipmentOrderSync model)
         {
             return _taskService.ShipmentOrderSync(model);
-        }
-        /// <summary>
-        /// 鎴愬搧杩斿伐鎻愬簱
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost,Route("RworkTask"),AllowAnonymous]
-        public MesResponseContent RworkTask([FromBody] Root<RworkTaskModel> model)
-        {
-            return _taskService.RworkTask(model.Content);
-        }
-        /// <summary>
-        /// 搴撳瓨鏉垮嚭搴撳悓姝ユ帴鍙�
-        /// </summary>
-        /// <param name="model"></param>
-        /// <returns></returns>
-        [HttpPost, Route("ProductOutBoundSync"), AllowAnonymous]
-        public WebResponseContent ProductOutBoundSync([FromBody] MesProductOutBound model)
-        {
-            return _outboundService.RworkOutboundOrderService.ProductOutBoundSync(model);
         }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/MesOutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/MesOutboundOrderController.cs"
deleted file mode 100644
index 8e8e7d7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/MesOutboundOrderController.cs"
+++ /dev/null
@@ -1,37 +0,0 @@
-锘縰sing Autofac.Core;
-using Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.MES;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// MES鍑哄簱鍗�
-    /// </summary>
-    [Route("api/mesOutboundOrder")]
-    [ApiController]
-    public class MesOutboundOrderController : ApiBaseController<IMesOutboundOrderService, Dt_MesOutboundOrder>
-    {
-        public MesOutboundOrderController(IMesOutboundOrderService service) : base(service)
-        {
-
-        }
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="substrateOutModel"></param>
-        /// <returns></returns>
-        [HttpPost, Route("AddMesOrder"), AllowAnonymous]
-        public WebResponseContent AddMesOrder([FromBody] SubstrateOutModel substrateOutModel)
-        {
-            return Service.AddMesOrder(substrateOutModel);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/MesRworkOutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/MesRworkOutboundOrderController.cs"
deleted file mode 100644
index 940eadf..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/MesRworkOutboundOrderController.cs"
+++ /dev/null
@@ -1,31 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.Attributes;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// MES鎴愬搧鎻愬簱鍗�
-    /// </summary>
-    [Route("api/MesRworkOutboundOrder")]
-    [ApiController]
-    public class MesRworkOutboundOrderController : ApiBaseController<IMesRworkOutboundOrderService, Dt_MesRworkOutboundOrder>
-    {
-        public MesRworkOutboundOrderController(IMesRworkOutboundOrderService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鎴愬搧MES鎻愬簱鍑哄簱瀹屽悗涓�鍖呬竴鍖呮嫞閫�
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, Route("ProductDeliveryOrder"), AllowAnonymous]
-        public WebResponseContent MesRworkOutPick(int OrderId, string InrPKCode, int Count = 0)
-        {
-            return Service.MesRworkOutPick(OrderId, InrPKCode, Count);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutProStockInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutProStockInfoController.cs"
deleted file mode 100644
index f04a125..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutProStockInfoController.cs"
+++ /dev/null
@@ -1,27 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_Core;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱璇︽儏
-    /// </summary>
-    [Route("api/OutProStockInfo")]
-    [ApiController]
-    public class OutProStockInfoController : ApiBaseController<IOutProStockInfoService, Dt_OutProStockInfo>
-    {
-        public OutProStockInfoController(IOutProStockInfoService service) : base(service)
-        {
-        }
-
-        [HttpPost, HttpGet, Route("GetByOrderDetailId"), AllowAnonymous]
-        public List<Dt_OutProStockInfo> GetByOrderDetailId(int orderDetailId)
-        {
-            return Service.GetByOrderDetailId(orderDetailId, null);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs"
deleted file mode 100644
index f5c9e72..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutStockLockInfoController.cs"
+++ /dev/null
@@ -1,58 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// 鍑哄簱璇︽儏
-    /// </summary>
-    [Route("api/OutStockLockInfo")]
-    [ApiController]
-    public class OutStockLockInfoController : ApiBaseController<IOutStockLockInfoService, Dt_OutStockLockInfo>
-    {
-        public OutStockLockInfoController(IOutStockLockInfoService service) : base(service)
-        {
-        }
-
-        /// <summary>
-        /// 鎷i��
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetStockOutboundOrder")]
-        public List<Dt_OutStockLockInfo> GetStockOutboundOrder([FromBody] SaveModel saveModel)
-        {
-            return Service.GetStockOutboundOrder(saveModel);
-        }
-        /// <summary>
-        /// 鎷i�夊畬鎴�
-        /// </summary>
-        /// <param name="palletCode"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("MaterialPick")]
-        public WebResponseContent MaterialPick(string palletCode)
-        {
-            return Service.MaterialPick(palletCode);
-        }
-        [HttpPost, HttpGet, Route("GetByOrderDetailId"), AllowAnonymous]
-        public List<Dt_OutStockLockInfo> GetByOrderDetailId(int orderDetailId)
-        {
-            return Service.GetByOrderDetailId(orderDetailId, null);
-        }
-        /// <summary>
-        /// 鑾峰彇Mes鍑哄簱璇︽儏
-        /// </summary>
-        /// <param name="taskNo">Mes浠诲姟鍗曞彿</param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetByMesOrderDetail"), AllowAnonymous]
-        public List<Dt_OutStockLockInfo> GetByMesOrderDetail(string taskNo)
-        {
-            return Service.GetByMesOrderDetail(taskNo);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs"
deleted file mode 100644
index 4d127ce..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderController.cs"
+++ /dev/null
@@ -1,86 +0,0 @@
-锘縰sing Autofac.Core;
-using Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_Core.CodeConfigEnum;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_DTO.Outbound;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// 鍑哄簱鍗�
-    /// </summary>
-    [Route("api/OutboundOrder")]
-    [ApiController]
-    public class OutboundOrderController : ApiBaseController<IOutboundOrderService, Dt_OutboundOrder>
-    {
-        public OutboundOrderController(IOutboundOrderService service) : base(service)
-        {
-
-        }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="id"></param>
-        /// <returns></returns>
-        [HttpPost, Route("TestOutUpload"), AllowAnonymous]
-        public WebResponseContent TestOutUpload(int id)
-        {
-            return Service.TestOutUpload(id);
-        }
-        /// <summary>
-        /// 鑾峰彇鍑哄簱鍗�
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        [HttpPost, Route("GetOutboundOrders"), AllowAnonymous]
-        public WebResponseContent GetOutboundOrders([FromBody] SaveModel saveModel)
-        {
-            return Service.GetOutboundOrders(saveModel);
-        }
-        /// <summary>
-        /// 鍑哄钩搴撳簱瀛�
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        [HttpPost, Route("outpinku"), AllowAnonymous]
-        public WebResponseContent outpinku([FromBody] SaveModel saveModel)
-        {
-            return Service.outpinku(saveModel);
-        }
-        /// <summary>
-        /// 鍙戞枡鍗曞彿鐢熸垚
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, Route("CreateCodeByRule"), AllowAnonymous]
-        public string CreateCodeByRule(string ruleCode)
-        {
-            return Service.CreateCodeByRule(nameof(RuleCodeEnum.FLCodeRule));
-        }
-        /// <summary>
-        /// 浣跨敤鍑哄簱鍗曞畬鎴怑RP鍑哄簱鎺ㄩ��
-        /// </summary>
-        /// <param name="outId">鍑哄簱鍗旾D</param>
-        /// <param name="WarehouseCode">浠撳簱浠e彿</param>
-        /// <returns></returns>
-        [HttpPost, Route("PushERPOutBound"), AllowAnonymous]
-        public WebResponseContent PushERPOutBound(int outId, string WarehouseCode)
-        {
-            return Service.PushERPOutBound(outId, WarehouseCode);
-        }
-        /// <summary>
-        /// 浣跨敤鏍规嵁涓婃父棰嗘枡鍑哄簱鍗曞彿鑾峰彇鏃ュ織鍙戞枡鍗曞彿
-        /// </summary>
-        [HttpPost, Route("OutUpOrderGetFLOrder"), AllowAnonymous]
-        public WebResponseContent OutUpOrderGetFLOrder()
-        {
-            return Service.OutUpOrderGetFLOrder();
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderDetailController.cs"
deleted file mode 100644
index 79c67d7..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderDetailController.cs"
+++ /dev/null
@@ -1,33 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Stock;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// 鍑哄簱鍗曟槑缁�
-    /// </summary>
-    [Route("api/OutboundOrderDetail")]
-    [ApiController]
-    public class OutboundOrderDetailController : ApiBaseController<IOutboundOrderDetailService, Dt_OutboundOrderDetail>
-    {
-        public OutboundOrderDetailController(IOutboundOrderDetailService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鑾峰彇鍑哄簱鍗曡鎯�
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        [HttpPost, Route("GetOutboundOrderDetails"), AllowAnonymous]
-        public WebResponseContent GetOutboundOrderDetails([FromBody] SaveModel saveModel)
-        {
-            return Service.GetOutboundOrderDetails(saveModel);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderDetail_HtyController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderDetail_HtyController.cs"
deleted file mode 100644
index 9efe889..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrderDetail_HtyController.cs"
+++ /dev/null
@@ -1,24 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鍑哄簱鍗曟槑缁嗗巻鍙�
-    /// </summary>
-    [Route("api/OutboundOrderDetail_Hty")]
-    [ApiController]
-    public class OutboundOrderDetail_HtyController : ApiBaseController<IOutboundOrderDetail_HtyService, Dt_OutboundOrderDetail_Hty>
-    {
-        public OutboundOrderDetail_HtyController(IOutboundOrderDetail_HtyService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrder_HtyController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrder_HtyController.cs"
deleted file mode 100644
index 7d40d61..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/OutboundOrder_HtyController.cs"
+++ /dev/null
@@ -1,24 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Inbound
-{
-    /// <summary>
-    /// 鍑哄簱鍗曞巻鍙�
-    /// </summary>
-    [Route("api/OutboundOrder_Hty")]
-    [ApiController]
-    public class OutboundOrder_HtyController : ApiBaseController<IOutboundOrder_HtyService, Dt_OutboundOrder_Hty>
-    {
-        public OutboundOrder_HtyController(IOutboundOrder_HtyService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/ProOutOrderController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/ProOutOrderController.cs"
deleted file mode 100644
index e7e0f8e..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/ProOutOrderController.cs"
+++ /dev/null
@@ -1,80 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱鍗�
-    /// </summary>
-    [Route("api/ProOutOrder")]
-    [ApiController]
-    public class ProOutOrderController : ApiBaseController<IProOutOrderService, Dt_ProOutOrder>
-    {
-        public ProOutOrderController(IProOutOrderService service) : base(service)
-        {
-        }
-        /// <summary>
-        /// 鎴愬搧鍑哄緟鍙戣揣鍖�(骞冲簱)+鍚屾ERP鍑哄簱
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("OutProductPK"), AllowAnonymous]
-        public WebResponseContent OutProductPK([FromBody] SaveModel saveModel, string ProOutNo)
-        {
-            return Service.OutProductPK(saveModel, ProOutNo);
-        }
-        ///// <summary>
-        ///// 鎴愬搧鍑哄緟鍙戣揣鍖�(骞冲簱)+鍚屾ERP鍑哄簱(鏈粦瀹氬嚭搴撳崟搴撳瓨)
-        ///// </summary>
-        ///// <returns></returns>
-        //[HttpPost, Route("OutProductNoPK"), AllowAnonymous]
-        //public WebResponseContent OutProductNoPK(string[] OutPKCodes, string ProOutNo)
-        //{
-        //    return Service.OutProductNoPK(OutPKCodes, ProOutNo);
-        //}
-        /// <summary>
-        /// 鏌ヨ鍑哄簱鍗曚俊鎭�
-        /// </summary>
-        [HttpPost, HttpGet, Route("GetProOutOrders")]
-        public WebResponseContent GetProOutOrders([FromBody] SaveModel saveModel)
-        {
-            return Service.GetProOutOrders(saveModel);
-        }
-        /// <summary>
-        /// 鏌ヨ鏄庣粏
-        /// </summary>
-        [HttpPost, HttpGet, Route("GetOrderDetails")]
-        public WebResponseContent GetOrderDetails(int keyId)
-        {
-            return Service.GetOrderDetails(keyId);
-        }
-        /// <summary>
-        /// 妫�鏌�
-        /// </summary>
-        [HttpPost, HttpGet, Route("CheckCode")]
-        public WebResponseContent CheckCode(string code)
-        {
-            return WebResponseContent.Instance.OK();
-        }
-        /// <summary>
-        /// 鏌ヨERP璁㈠崟鎵i櫎搴撳瓨鏁伴噺
-        /// </summary>
-        [HttpPost, HttpGet, Route("OutProErpSync")]
-        public async Task<WebResponseContent> OutProErpSync(string outProOrderNo)
-        {
-            return await Service.OutProErpSync(outProOrderNo);
-        }
-        /// <summary>
-        /// 鍑哄簱鍗曟壂鐮佸悓姝RP
-        /// </summary>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("OutProScanCodeSync")]
-        public async Task<WebResponseContent> OutProScanCodeSync([FromBody]SaveModel saveModel)
-        {
-            return await Service.OutProScanCodeSync(saveModel);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/ProOutOrderDetailController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/ProOutOrderDetailController.cs"
deleted file mode 100644
index 2a23e27..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Outbound/ProOutOrderDetailController.cs"
+++ /dev/null
@@ -1,19 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Mvc;
-using WIDESEA_Core.BaseController;
-using WIDESEA_IOutboundService;
-using WIDESEA_Model.Models;
-
-namespace WIDESEA_WMSServer.Controllers.Outbound
-{
-    /// <summary>
-    /// 鎴愬搧鍑哄簱鍗曟槑缁�
-    /// </summary>
-    [Route("api/ProOutOrderDetail")]
-    [ApiController]
-    public class ProOutOrderDetailController : ApiBaseController<IProOutOrderDetailService, Dt_ProOutOrderDetail>
-    {
-        public ProOutOrderDetailController(IProOutOrderDetailService service) : base(service)
-        {
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/PDAController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/PDAController.cs"
index 33d6641..16dbc3b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/PDAController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/PDAController.cs"
@@ -5,8 +5,6 @@
 using WIDESEA_Core.BaseController;
 using WIDESEA_Core.Helper;
 using WIDESEA_DTO.Inbound;
-using WIDESEA_IInboundService;
-using WIDESEA_IOutboundService;
 using WIDESEA_ITaskInfoService;
 using System.IO;
 using WIDESEA_Model.Models;
@@ -21,14 +19,10 @@
     [Authorize, ApiController]
     public class PDAController : Controller
     {
-        private readonly IInboundService _inboundService;
-        private readonly IOutboundService _outboundService;
         private readonly ITaskService _taskService;
 
-        public PDAController(ITaskService taskService, IInboundService inboundService, IOutboundService outboundService)
+        public PDAController(ITaskService taskService)
         {
-            _inboundService = inboundService;
-            _outboundService = outboundService;
             _taskService = taskService;
         }
 
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/MaterielnfoStatisticsController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/MaterielnfoStatisticsController.cs"
deleted file mode 100644
index fb32e85..0000000
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/MaterielnfoStatisticsController.cs"
+++ /dev/null
@@ -1,55 +0,0 @@
-锘縰sing Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Mvc;
-using System.Reflection;
-using WIDESEA_Core;
-using WIDESEA_IStockService;
-using WIDESEA_StockService;
-
-namespace WIDESEA_WMSServer.Controllers.Stock
-{
-    [Route("api/MaterielnfoStatistics")]
-    [Authorize,ApiController]
-    public class MaterielnfoStatisticsController : Controller
-    {
-        private readonly IMaterielnfoStatisticsService _materielnfoStatisticsService;
-
-        public MaterielnfoStatisticsController (IMaterielnfoStatisticsService materielnfoStatisticsService)
-        {
-            _materielnfoStatisticsService = materielnfoStatisticsService;
-        }
-        [HttpPost,Route("GetPageData")]
-        public object GetPageData([FromBody] PageDataOptions options)
-        {
-            return _materielnfoStatisticsService.GetPageGridData(options);
-        }
-
-        /// <summary>
-        /// 瀵煎嚭鏁版嵁
-        /// </summary>
-        /// <param name="loadData"></param>
-        /// <returns></returns>
-        [HttpPost, Route("Export")]
-        public virtual ActionResult Export([FromBody] PageDataOptions loadData)
-        {
-            WebResponseContent result = InvokeService("Export", new object[] { loadData }) as WebResponseContent;
-            if (result.Status)
-                return File(
-                       System.IO.File.ReadAllBytes(result.Data.ToString()),
-                       System.Net.Mime.MediaTypeNames.Application.Octet,
-                       Path.GetFileName(result.Data.ToString())
-                   );
-            return Json(result);
-        }
-        private object InvokeService(string methodName, object[] parameters)
-        {
-            Type t = _materielnfoStatisticsService.GetType();
-            List<Type> types = new List<Type>();
-            foreach (var param in parameters)
-            {
-                types.Add(param.GetType());
-            }
-            MethodInfo method = t.GetMethod(methodName, types.ToArray());
-            return method.Invoke(_materielnfoStatisticsService, parameters);
-        }
-    }
-}
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/ProStockViewController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/ProStockViewController.cs"
index 471fed7..2baf0bf 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/ProStockViewController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/ProStockViewController.cs"
@@ -49,14 +49,6 @@
                    );
             return Json(result);
         }
-        /// <summary>
-        /// 鑾峰彇骞冲簱搴撳瓨
-        /// </summary>
-        [HttpPost, Route("GetProPKSelectStocks"),AllowAnonymous]
-        public List<ProStockViewDTO> GetProPKSelectStocks(int orderId)
-        {
-            return _stockViewService.GetProPKSelectStocks(orderId);
-        }
         private object InvokeService(string methodName, object[] parameters)
         {
             Type t = _stockViewService.GetType();
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/StockInfoController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/StockInfoController.cs"
index a06defd..d062c76 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/StockInfoController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/Stock/StockInfoController.cs"
@@ -21,31 +21,6 @@
         public StockInfoController(IStockInfoService service) : base(service)
         {
         }
-
-        /// <summary>
-        /// 鏌ヨ璁㈠崟绔嬪簱搴撳瓨瑙嗗浘
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <param name="materielCode"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetStockSelectViews")]
-        public List<StockSelectViewDTO> GetStockSelectViews(int orderId, string materielCode)
-        {
-            return Service.GetStockSelectViews(orderId, materielCode);
-        }
-
-        /// <summary>
-        /// 鏌ヨ璁㈠崟骞冲簱搴撳瓨瑙嗗浘
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <param name="materielCode"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GetPKStockSelectViews")]
-        public List<StockSelectViewDTO> GetPKStockSelectViews(int orderId, string materielCode)
-        {
-            return Service.GetPKStockSelectViews(orderId, materielCode);
-        }
-
         /// <summary>
         /// 鏍规嵁鎵樼洏鍜屽簱鍖烘煡璇㈠簱瀛樹俊鎭�
         /// </summary>
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs"
index 2c768e0..9ff5d39 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs"
@@ -21,28 +21,6 @@
         public TaskController(ITaskService service) : base(service)
         {
         }
-
-        ///// <summary>
-        ///// 灏哤MS浠诲姟鎺ㄩ�佽嚦WCS
-        ///// </summary>
-        ///// <returns></returns>
-        //[HttpPost, HttpGet, Route("PushTasksToWCS"), AllowAnonymous]
-        //public WebResponseContent PushTasksToWCS()
-        //{
-        //    return Service.PushTasksToWCS();
-        //}
-
-        /// <summary>
-        /// 鐢宠鍏ュ簱浠诲姟
-        /// </summary>
-        /// <param name="saveModel"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("RequestInboundTask"), AllowAnonymous]
-        public WebResponseContent RequestInboundTask([FromBody] SaveModel saveModel)
-        {
-            return Service.RequestInboundTask(saveModel);
-        }
-        
         /// <summary>
         /// 绌虹鍏ュ簱
         /// </summary>
@@ -68,19 +46,6 @@
         }
 
         /// <summary>
-        /// WCS鐢宠鍏ュ簱浠诲姟(鍒嗛厤璐т綅)
-        /// </summary>
-        /// <param name="stationCode"></param>
-        /// <param name="roadwayNo"></param>
-        /// <param name="palletCode"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("DeviceRequestInboundTask"), AllowAnonymous]
-        public WebResponseContent DeviceRequestInboundTask(string stationCode, string roadwayNo, string palletCode,string materielBoxCode = "")
-        {
-            return Service.DeviceRequestInboundTask(stationCode, roadwayNo, palletCode, materielBoxCode);
-        }
-
-        /// <summary>
         /// WCS鐢宠鍏ュ簱浠诲姟(涓嶅垎閰嶈揣浣�)
         /// </summary>
         /// <param name="stationCode"></param>
@@ -90,20 +55,6 @@
         public WebResponseContent DeviceRequestInboundTaskSimple(string stationCode, string palletCode)
         {
             return Service.DeviceRequestInboundTaskSimple(stationCode, palletCode);
-        }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="stationCode"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="roadwayNos"></param>
-        /// <param name="heightType"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("DeviceRequestInboundTaskByRoadways"), AllowAnonymous]
-        public WebResponseContent DeviceRequestInboundTaskByRoadways(string stationCode, string palletCode, int heightType, [FromBody] List<string> roadwayNos)
-        {
-            return Service.DeviceRequestInboundTaskByRoadways(stationCode, palletCode, roadwayNos, heightType);
         }
 
         /// <summary>
@@ -130,63 +81,6 @@
         {
             return Service.AssignInboundTaskLocationByHeight(taskNum, roadwayNo, heightType);
         }
-
-        /// <summary>
-        /// 鍏ュ簱浠诲姟瀹屾垚
-        /// </summary>
-        /// <param name="taskNum"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("InboundTaskCompleted"), AllowAnonymous]
-        public WebResponseContent InboundTaskCompleted(int taskNum)
-        {
-            return Service.InboundTaskCompleted(taskNum);
-        }
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GenerateOutboundTask"), AllowAnonymous]
-        public WebResponseContent GenerateOutboundTask(int orderDetailId, [FromBody] List<StockSelectViewDTO> stockSelectViews)
-        {
-            return Service.GenerateOutboundTask(orderDetailId, stockSelectViews);
-        }
-
-        /// <summary>
-        /// 骞冲簱鐩存帴鍑哄簱
-        /// </summary>
-        /// <param name="orderDetailId"></param>
-        /// <param name="stockSelectViews"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GeneratePKOutboundTask"), AllowAnonymous]
-        public WebResponseContent GeneratePKOutboundTask(int orderDetailId, [FromBody] List<StockSelectViewDTO> stockSelectViews)
-        {
-            return Service.GeneratePKOutboundTask(orderDetailId, stockSelectViews);
-        }
-
-        /// <summary>
-        /// 鐢熸垚鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="keys"></param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("GenerateOutboundTasks"), AllowAnonymous]
-        public WebResponseContent GenerateOutboundTasks([FromBody] int[] keys)
-        {
-            return Service.GenerateOutboundTasks(keys);
-        }
-        /// <summary>
-        /// 鐢熸垚鎴愬搧鍑哄簱浠诲姟
-        /// </summary>
-        /// <param name="ProOutNo">鍑哄簱璁㈠崟鍙�</param>
-        /// <param name="StationCode">绔欏彴鍦板潃</param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("OutProductTask"), AllowAnonymous]
-        public async Task<WebResponseContent> OutProductTask([FromBody] int[] keys, string StationCode, int Grade)
-        {
-            return await Service.OutProductTask(keys, StationCode, Grade);
-        }
         /// <summary>
         /// 鎴愬搧浣欐枡閫�搴撳叆浠�
         /// </summary>
@@ -208,34 +102,6 @@
         public WebResponseContent EmptyBackTask(string barCode, string startPoint)
         {
             return Service.EmptyBackTask(barCode, startPoint);
-        }
-        /// <summary>
-        /// 鐢熸垚鎴愬搧鎻愬簱浠诲姟
-        /// </summary>
-        [HttpPost, HttpGet, Route("OutProRworkTask"), AllowAnonymous]
-        public async Task<WebResponseContent> OutProRworkTask([FromBody] int[] keys, string StationCode, int Grade)
-        {
-            return await Service.OutProductTask(keys, StationCode, Grade);
-        }
-        ///// <summary>
-        ///// 鐢熸垚MESPP浠撳ぇ鍗峰嚭搴撲换鍔�
-        ///// </summary>
-        ///// <param name="keys"></param>
-        ///// <returns></returns>
-        //[HttpPost, HttpGet, Route("MESPPGenerateOutboundTasks"), AllowAnonymous]
-        //public WebResponseContent MESPPGenerateOutboundTasks([FromBody] int[] keys)
-        //{
-        //    return Service.MESPPGenerateOutboundTasks(keys);
-        //}
-        /// <summary>
-        /// 鍑哄簱浠诲姟瀹屾垚
-        /// </summary>
-        /// <param name="taskNum">浠诲姟鍙�</param>
-        /// <returns></returns>
-        [HttpPost, HttpGet, Route("OutboundTaskCompleted"), AllowAnonymous]
-        public WebResponseContent OutboundTaskCompleted(int taskNum)
-        {
-            return Service.OutboundTaskCompleted(taskNum);
         }
 
         /// <summary>
@@ -297,19 +163,6 @@
         }
 
         /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="roadwayNos"></param>
-        /// <param name="palletCode"></param>
-        /// <param name="heightType"></param>
-        /// <returns></returns>
-        [HttpPost, Route("AssignRoadwayByHeightAndCode"), AllowAnonymous]
-        public WebResponseContent AssignRoadwayByHeightAndCode([FromBody] List<string> roadwayNos, string palletCode, int heightType = 0)
-        {
-            return Service.AssignRoadwayByHeightAndCode(roadwayNos, palletCode, heightType);
-        }
-
-        /// <summary>
         /// 鍒嗛厤宸烽亾(甯︿换鍔″彿)
         /// </summary>
         /// <param name="taskNum"></param>
@@ -333,17 +186,6 @@
         }
 
         /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="orderId"></param>
-        /// <returns></returns>
-        [HttpPost, Route("HandSubstrateOut")]
-        public WebResponseContent HandSubstrateOut(int orderId)
-        {
-            return Service.HandSubstrateOut(orderId);
-        }
-
-        /// <summary>
         /// 淇敼浠诲姟鐘舵��
         /// </summary>
         /// <param name="task"></param>
@@ -363,16 +205,6 @@
         public WebResponseContent AGVTasks([FromBody] SaveModel saveModel)
         {
             return Service.AGVTasks(saveModel);
-        }
-        /// <summary>
-        /// 鎴愬搧鎸囧畾鍑哄簱
-        /// </summary>
-        /// <param name="task"></param>
-        /// <returns></returns>
-        [HttpPost, Route("OutProductSelect"), AllowAnonymous]
-        public WebResponseContent OutProductSelect(int orderDetailId,[FromBody] List<ProStockViewDTO> proStockViews)
-        {
-            return Service.OutProductSelect(orderDetailId, proStockViews);
         }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Filter/CustomProfile.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Filter/CustomProfile.cs"
index bc8e246..5f7982b 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Filter/CustomProfile.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/Filter/CustomProfile.cs"
@@ -27,20 +27,9 @@
         public CustomProfile()
         {
             CreateMap<Sys_Menu, MenuDTO>();
-            CreateMap<InboundOrderDetailAddDTO, Dt_InboundOrderDetail>().ForMember(x => x.OrderDetailStatus, b => b.MapFrom(b => 0));
-            CreateMap<InboundOrderAddDTO, Dt_InboundOrder>();
 
             CreateMap<Dt_StockInfoDetail, Dt_StockQuantityChangeRecord>().ForMember(x => x.SerilNumber, b => b.MapFrom(b => b.SerialNumber)).ForMember(x => x.StockDetailId, b => b.MapFrom(b => b.Id));
-            CreateMap<OutboundOrderDetailAddDTO, Dt_OutboundOrderDetail>().ForMember(x => x.OrderDetailStatus, b => b.MapFrom(b => 0));
-            CreateMap<OutboundOrderAddDTO, Dt_OutboundOrder>();
-            CreateMap<Dt_ReceiveOrderDetail, Dt_CheckOrder>().ForMember(a => a.ReceivedQuantity, b => b.MapFrom(x => x.ReceivedQuantity)).ForMember(a => a.MaterielCode, b => b.MapFrom(x => x.MaterielCode)).ForMember(a => a.CheckOrderStatus, b => b.MapFrom(x => CheckOrderStatusEnum.NotCheck.ObjToInt()));
-
             CreateMap<Dt_Task, WMSTaskDTO>();
-            CreateMap<MESBagDetail, Dt_MesProInOrderDetail>().ForMember(x => x.OverInQuantity, b => b.MapFrom(b => 0));
-            CreateMap<ErpProOutOrderDetailds, Dt_ProOutOrderDetail>().ForMember(x => x.ProOrderDetailStatus, b => b.MapFrom(b => 0)).ForMember(x => x.OverQtyPcs, b => b.MapFrom(b => 0));
-            CreateMap<Dt_MesProInOrderDetail, Dt_ProStockInfoDetail>().ForMember(x => x.ProOutDetailStatus, b => b.MapFrom(b => StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt())).ForMember(x => x.OutboundQuantity, b => b.MapFrom(b => 0)).ForMember(x => x.StockPcsQty, b => b.MapFrom(b => b.OKPCSQTY));
-            CreateMap<ErpProductWarehousingOrderDTO, Dt_ErpProInOrder>().ForMember(x => x.ProSaleOrderNo, b => b.MapFrom(b => b.SaleOrder)).ForMember(x => x.Remark, b => b.MapFrom(b => b.Note)).ForMember(x => x.UpperOrderNo, b => b.MapFrom(b => b.TransferNo)).ForMember(x => x.ProStockAttribute, b => b.MapFrom(b => ProStockAttributeEnum.鎴愬搧.ObjToInt())).ForMember(x => x.ProInStatus, b => b.MapFrom(b => InOrderStatusEnum.鏈紑濮�.ObjToInt()));
-            CreateMap<ErpProductTransferOrderDTO, Dt_ErpProTransferOrder>().ForMember(x => x.ProSaleOrderNo, b => b.MapFrom(b => b.SaleOrder)).ForMember(x => x.Remark, b => b.MapFrom(b => b.Note)).ForMember(x => x.UpperOrderNo, b => b.MapFrom(b => b.TransferNo)).ForMember(x => x.OrderType, b => b.MapFrom(b => ErpProOutTypeEnum.ProOutAllocat.ObjToInt())).ForMember(x => x.ProStockAttribute, b => b.MapFrom(b => ProStockAttributeEnum.鐮斿彂.ObjToInt()));
         }
     }
 }
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj"
index 1ebfa79..afb5d74 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj"
@@ -92,6 +92,9 @@
 	</ItemGroup>
 	
 	<ItemGroup>
+	  <Folder Include="Controllers\Check\" />
+	  <Folder Include="Controllers\Inbound\" />
+	  <Folder Include="Controllers\Outbound\" />
 	  <Folder Include="Log\" />
 	</ItemGroup>
 </Project>
diff --git "a/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\346\216\245\351\251\263\345\217\260\344\270\216AGV \344\272\244\344\272\222.xls" "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\346\216\245\351\251\263\345\217\260\344\270\216AGV \344\272\244\344\272\222.xls"
new file mode 100644
index 0000000..9de8c35
--- /dev/null
+++ "b/\351\241\271\347\233\256\350\265\204\346\226\231/\351\200\232\344\277\241\345\215\217\350\256\256/\346\216\245\351\251\263\345\217\260\344\270\216AGV \344\272\244\344\272\222.xls"
Binary files differ

--
Gitblit v1.9.3