hutongqing
2024-12-13 a75d7e725df5686caf39cc1dade2d6fae11c3d40
更新

1.添加接收ERP出库单数据接口
2.添加接收ERP供应商数据接口
3.添加接收ERP物料信息数据接口
已删除9个文件
已修改22个文件
已添加7个文件
已重命名4个文件
929 ■■■■■ 文件已修改
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/14ef4958-5f37-43d7-b6b6-32b232fbb4bc.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/412af394-9dac-4306-95f6-39fd60896df6.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/a8d0b8fd-acc9-4a57-a8ad-394a2d0e11e0.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b6698150-4fc6-4ad0-a0c8-f0d9b263a855.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/c9f3f4cc-1088-4f89-861d-e06654ee2ded.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/ca62f48d-432c-4d58-86d0-434723bd9fe0.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/ce72d7b5-21c0-485a-b3a5-52df88bd7a47.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d98d9afe-9e7d-42bb-a74d-be4c0981ccda.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/df8c89a0-0422-4f14-9c5d-6b61ed92a257.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/edabd823-9c10-4009-8e95-cb1d3217eb83.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseController/ApiBaseController.cs 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Core/Extensions/SwaggerSetup.cs 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IMaterielInfoService.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/ISupplierInfoService.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Base/OutboundOrderService.cs 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderDetailService.cs 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderDetail_HtyService.cs 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrder_HtyService.cs 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutStockLockInfoService.cs 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderService.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/LocationInfoController.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Check/CheckOrderController.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Check/CheckOrderResultController.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs 192 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderController.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderDetailController.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.xml 163 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/14ef4958-5f37-43d7-b6b6-32b232fbb4bc.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/412af394-9dac-4306-95f6-39fd60896df6.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/a8d0b8fd-acc9-4a57-a8ad-394a2d0e11e0.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/b6698150-4fc6-4ad0-a0c8-f0d9b263a855.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/c9f3f4cc-1088-4f89-861d-e06654ee2ded.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/ca62f48d-432c-4d58-86d0-434723bd9fe0.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/ce72d7b5-21c0-485a-b3a5-52df88bd7a47.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/d98d9afe-9e7d-42bb-a74d-be4c0981ccda.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/df8c89a0-0422-4f14-9c5d-6b61ed92a257.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/edabd823-9c10-4009-8e95-cb1d3217eb83.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs
@@ -3,7 +3,12 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_BasicRepository;
using WIDESEA_Common.CommonEnum;
using WIDESEA_Common.MaterielEnum;
using WIDESEA_Core;
using WIDESEA_Core.BaseServices;
using WIDESEA_DTO.Basic;
using WIDESEA_IBasicRepository;
using WIDESEA_IBasicService;
using WIDESEA_Model.Models;
@@ -36,5 +41,76 @@
        {
            return BaseDal.QueryData(x => materielCodes.Contains(x.MaterielCode));
        }
        public WebResponseContent ReceiveMaterial(MaterielInfoDTO model)
        {
            try
            {
                if (model.OperateType == 0)
                {
                    Dt_MaterielInfo materielInfo = new Dt_MaterielInfo()
                    {
                        IsCheck = (WhetherEnum)model.IsCheck,
                        MaterielCode = model.Code,
                        MaterielInvOrgId = model.InvOrgId,
                        MaterielLength = model.Length,
                        MaterielModel = model.Model,
                        MaterielName = model.Name,
                        MaterielSize = model.Size,
                        MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType,
                        MaterielSpec = "model.",
                        MaterielState = (EnableEnum)model.State,
                        MaterielThickness = model.Thickness,
                        MaterielType = (MaterielTypeEnum)model.ItemType,
                        MaterielUnit = model.Unit,
                        MaterielVersion = model.MaterialVersion,
                        MaterielWide = model.Wide,
                        WarehouseId = model.WaId,
                    };
                    BaseDal.AddData(materielInfo);
                }
                else if (model.OperateType == 1)
                {
                    Dt_MaterielInfo materielInfo = BaseDal.QueryFirst(x => x.MaterielCode == model.Code);
                    if (materielInfo == null)
                    {
                        return WebResponseContent.Instance.Error($"未找到物料信息");
                    }
                    materielInfo.IsCheck = (WhetherEnum)model.IsCheck;
                    materielInfo.MaterielCode = model.Code;
                    materielInfo.MaterielInvOrgId = model.InvOrgId;
                    materielInfo.MaterielLength = model.Length;
                    materielInfo.MaterielModel = model.Model;
                    materielInfo.MaterielName = model.Name;
                    materielInfo.MaterielSize = model.Size;
                    materielInfo.MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType;
                    materielInfo.MaterielSpec = model.StandType;
                    materielInfo.MaterielState = (EnableEnum)model.State;
                    materielInfo.MaterielThickness = model.Thickness;
                    materielInfo.MaterielType = (MaterielTypeEnum)model.ItemType;
                    materielInfo.MaterielUnit = model.Unit;
                    materielInfo.MaterielVersion = model.MaterialVersion;
                    materielInfo.MaterielWide = model.Wide;
                    materielInfo.WarehouseId = model.WaId;
                    BaseDal.UpdateData(materielInfo);
                }
                else if (model.OperateType == 2)
                {
                    Dt_MaterielInfo materielInfo = BaseDal.QueryFirst(x => x.MaterielCode == model.Code);
                    if (materielInfo == null)
                    {
                        return WebResponseContent.Instance.Error($"未找到物料信息");
                    }
                    BaseDal.DeleteData(materielInfo);
                }
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs
@@ -3,7 +3,10 @@
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;
@@ -15,5 +18,53 @@
        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,
                        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)
                    {
                        return WebResponseContent.Instance.Error($"未找到该供应商信息");
                    }
                    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);
            }
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Core/BaseController/ApiBaseController.cs
@@ -23,48 +23,88 @@
            Service = service;
        }
        /// <summary>
        /// åˆ†é¡µèŽ·å–æ•°æ®
        /// </summary>
        /// <param name="options"></param>
        /// <returns></returns>
        [HttpPost, Route("GetPageData")]
        public virtual ActionResult GetPageData([FromBody] PageDataOptions options)
        {
            return Json(InvokeService("GetPageData", new object[] { options }));
        }
        /// <summary>
        /// åˆ†é¡µèŽ·å–æ˜Žç»†æ•°æ®
        /// </summary>
        /// <param name="pageData"></param>
        /// <returns></returns>
        [HttpPost, Route("GetDetailPage")]
        public virtual ActionResult GetDetailPage([FromBody] PageDataOptions pageData)
        {
            return Json(InvokeService("GetDetailPage", new object[] { pageData }));
        }
        /// <summary>
        /// æ·»åŠ æ•°æ®
        /// </summary>
        /// <param name="options"></param>
        /// <returns></returns>
        [HttpPost, Route("AddData")]
        public virtual ActionResult AddData([FromBody] TEntity options)
        {
            return Json(InvokeService("AddData", new object[] { options }));
        }
        /// <summary>
        /// æ·»åŠ æ•°æ®
        /// </summary>
        /// <param name="options"></param>
        /// <returns></returns>
        [HttpPost, Route("Add"), MethodParamsValidate]
        public virtual ActionResult Add([FromBody] SaveModel options)
        {
            return Json(InvokeService("AddData", new object[] { options }));
        }
        /// <summary>
        /// ä¿®æ”¹æ•°æ®
        /// </summary>
        /// <param name="options"></param>
        /// <returns></returns>
        [HttpPost, Route("Update"), MethodParamsValidate]
        public virtual ActionResult Update([FromBody] SaveModel options)
        {
            return Json(InvokeService("UpdateData", new object[] { options }));
        }
        /// <summary>
        /// ä¿®æ”¹æ•°æ®
        /// </summary>
        /// <param name="options"></param>
        /// <returns></returns>
        [HttpPost, Route("UpdateData")]
        public virtual ActionResult UpdateData([FromBody] TEntity options)
        {
            return Json(InvokeService("UpdateData", new object[] { options }));
        }
        /// <summary>
        /// åˆ é™¤æ•°æ®
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        [HttpPost, Route("Del")]
        public virtual ActionResult Del([FromBody] object[] key)
        {
            return Json(InvokeService("DeleteData", new object[] { key }));
        }
        /// <summary>
        /// å¯¼å‡ºæ•°æ®
        /// </summary>
        /// <param name="loadData"></param>
        /// <returns></returns>
        [HttpPost, Route("Export")]
        public virtual ActionResult Export([FromBody] PageDataOptions loadData)
        {
@@ -78,6 +118,10 @@
            return Json(result);
        }
        /// <summary>
        /// ä¸‹è½½å¯¼å…¥æ¨¡æ¿
        /// </summary>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("DownLoadTemplate")]
        public virtual ActionResult DownLoadTemplate()
        {
@@ -91,12 +135,21 @@
            return Json(result);
        }
        /// <summary>
        /// å¯¼å…¥æ•°æ®
        /// </summary>
        /// <param name="fileInput"></param>
        /// <returns></returns>
        [HttpPost, Route("Import")]
        public virtual ActionResult Import(List<IFormFile> fileInput)
        {
            return Json(InvokeService("Import", new object[] { fileInput }));
        }
        /// <summary>
        /// å¯¼å‡ºç§å­æ•°æ®
        /// </summary>
        /// <returns></returns>
        [HttpPost, Route("ExportSeedData"), AllowAnonymous]
        public ActionResult ExportSeedData()
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Core/Extensions/SwaggerSetup.cs
@@ -27,7 +27,7 @@
        {
            if (services == null) throw new ArgumentNullException(nameof(services));
            var basePath = AppContext.BaseDirectory;
            var basePath = AppDomain.CurrentDomain.BaseDirectory;
            //var basePath2 = Microsoft.DotNet.PlatformAbstractions.ApplicationEnvironment.ApplicationBasePath;
            var ApiName = AppSettings.Get(new string[] { "ApiName" });
@@ -50,14 +50,15 @@
                c.UseInlineDefinitionsForEnums();
                try
                {
                    //这个就是刚刚配置的xml文件名
                    //var xmlPath = Path.Combine(basePath, "Blog.Core.xml");
                    var xmlPath = Path.Combine(basePath, "WIDESEA_WMSServer.xml");
                    //默认的第二个参数是false,这个是controller的注释,记得修改
                    //c.IncludeXmlComments(xmlPath, true);
                    c.IncludeXmlComments(xmlPath, true);
                    //这个就是Model层的xml文件名
                    //var xmlModelPath = Path.Combine(basePath, "Blog.Core.Model.xml");
                    //c.IncludeXmlComments(xmlModelPath);
                    var xmlModelPath = Path.Combine(basePath, "WIDESEA_Model.xml");
                    c.IncludeXmlComments(xmlModelPath);
                    var xmlDTOPath = Path.Combine(basePath, "WIDESEA_DTO.xml");
                    c.IncludeXmlComments(xmlDTOPath);
                }
                catch (Exception ex)
                {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/IMaterielInfoService.cs
@@ -5,6 +5,7 @@
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.BaseServices;
using WIDESEA_DTO.Basic;
using WIDESEA_IBasicRepository;
using WIDESEA_Model.Models;
@@ -22,5 +23,6 @@
        List<Dt_MaterielInfo> GetMaterielInfos(List<string> materielCodes);
        WebResponseContent ReceiveMaterial(MaterielInfoDTO model);
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/ISupplierInfoService.cs
@@ -3,12 +3,18 @@
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);
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderService.cs
@@ -12,6 +12,6 @@
{
    public interface IPurchaseOrderService : IService<Dt_PurchaseOrder>
    {
        WebResponseContent ReceivePurchaseOrderSingle(PurchaseOrderModel model);
        WebResponseContent ReceivePurchaseOrder(PurchaseOrderModel model);
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_IOutboundService/IOutboundOrderService.cs
@@ -5,6 +5,7 @@
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_IOutboundRepository;
@@ -15,5 +16,7 @@
    public interface IOutboundOrderService : IService<Dt_OutboundOrder>
    {
        IOutboundOrderRepository Repository { get; }
        WebResponseContent ReceiveOutOrder(ErpOutOrderDTO model);
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs
@@ -28,7 +28,7 @@
            _unitOfWorkManage = unitOfWorkManage;
        }
        public WebResponseContent ReceivePurchaseOrderSingle(PurchaseOrderModel model)
        public WebResponseContent ReceivePurchaseOrder(PurchaseOrderModel model)
        {
            try
            {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_OutboundOrder.cs
@@ -32,6 +32,9 @@
        [SugarColumn(IsNullable = false, ColumnDescription = "创建方式", IsOnlyIgnoreUpdate = true)]
        public int CreateType { get; set; }
        [SugarColumn(IsNullable = false, ColumnDescription = "仓库主键")]
        public int WarehouseId { get; set; }
        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "备注")]
        public string Remark { get; set; }
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Outbound/Dt_OutboundOrderDetail.cs
@@ -26,14 +26,17 @@
        [SugarColumn(IsNullable = false, Length = 20, ColumnDescription = "批次号")]
        public string BatchNo { get; set; }
        [SugarColumn(IsNullable = false, DecimalDigits = 2, ColumnDescription = "单据数量")]
        public decimal OrderQuantity { get; set; }
        [SugarColumn(IsNullable = false, ColumnDescription = "行号")]
        public int RowNo {  get; set; }
        [SugarColumn(IsNullable = false, DecimalDigits = 2, ColumnDescription = "锁定数量", DefaultValue = "0")]
        public decimal LockQuantity { get; set; }
        [SugarColumn(IsNullable = false,  ColumnDescription = "单据数量")]
        public float OrderQuantity { get; set; }
        [SugarColumn(IsNullable = false, DecimalDigits = 2, ColumnDescription = "已出数量", DefaultValue = "0")]
        public decimal OverOutQuantity { get; set; }
        [SugarColumn(IsNullable = false,  ColumnDescription = "锁定数量", DefaultValue = "0")]
        public float LockQuantity { get; set; }
        [SugarColumn(IsNullable = false,  ColumnDescription = "已出数量", DefaultValue = "0")]
        public float OverOutQuantity { get; set; }
        [SugarColumn(IsNullable = false, ColumnDescription = "订单明细状态")]
        public int OrderDetailStatus { get; set; }
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Base/OutboundOrderService.cs
ÎļþÒÑɾ³ý
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderDetailService.cs
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderDetail_HtyService.cs
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrderService.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,149 @@
using AutoMapper;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
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_Core;
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_IBasicService;
using WIDESEA_IOutboundRepository;
using WIDESEA_IOutboundService;
using WIDESEA_IStockService;
using WIDESEA_Model.Models;
namespace WIDESEA_OutboundService
{
    public class OutboundOrderService : ServiceBase<Dt_OutboundOrder, IOutboundOrderRepository>, IOutboundOrderService
    {
        private readonly IMapper _mapper;
        private readonly IBasicService _basicService;
        private readonly IOutboundOrderDetailRepository _outboundOrderDetailRepository;
        public IOutboundOrderRepository Repository => BaseDal;
        public OutboundOrderService(IOutboundOrderRepository BaseDal, IMapper mapper, IBasicService basicService, IOutboundOrderDetailRepository outboundOrderDetailRepository) : base(BaseDal)
        {
            _mapper = mapper;
            _basicService = basicService;
            _outboundOrderDetailRepository = outboundOrderDetailRepository;
        }
        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
                            };
                            _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()
                        {
                            UpperOrderNo = model.OrderNo,
                            OrderStatus = OutOrderStatusEnum.未开始.ObjToInt(),
                            OrderType = OutOrderTypeEnum.Issue.ObjToInt(),
                            CreateType = OrderCreateTypeEnum.UpperSystemPush.ObjToInt(),
                            WarehouseId = warehouse.WarehouseId,
                            Details = new List<Dt_OutboundOrderDetail> { outboundOrderDetail }
                        };
                        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,
                        MaterielName = materielInfo.MaterielName,
                        OrderDetailStatus = OrderDetailStatusEnum.New.ObjToInt(),
                        OrderQuantity = model.Qty,
                    };
                    _outboundOrderDetailRepository.UpdateData(outboundOrderDetail);
                }
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundOrder_HtyService.cs
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutStockLockInfoService.cs
ÎļþÒÑɾ³ý
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs
ÎļþÒÑɾ³ý
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderService.cs
ÎļþÒÑɾ³ý
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Approval/ApprovalTaskController.cs
@@ -25,18 +25,32 @@
            _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()
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Basic/LocationInfoController.cs
@@ -24,23 +24,45 @@
            _repository = repository;
        }
        /// <summary>
        /// åˆå§‹åŒ–货位
        /// </summary>
        /// <param name="initializationLocationDTO"></param>
        /// <returns></returns>
        [HttpPost, Route("InitializationLocation"), AllowAnonymous]
        public WebResponseContent InitializationLocation([FromBody] InitializationLocationDTO initializationLocationDTO)
        {
            return Service.InitializationLocation(initializationLocationDTO);
        }
        /// <summary>
        /// è´§ä½åˆ†é…
        /// </summary>
        /// <param name="roadwayNo"></param>
        /// <param name="palletType"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("AssignLocation"), AllowAnonymous]
        public Dt_LocationInfo? AssignLocation(string roadwayNo, PalletTypeEnum palletType)
        {
            return Service.AssignLocation(roadwayNo, palletType);
        }
        /// <summary>
        /// å¯ç”¨è´§ä½
        /// </summary>
        /// <param name="keys"></param>
        /// <returns></returns>
        [HttpPost, Route("LocationEnableStatus")]
        public WebResponseContent LocationEnableStatus([FromBody] int[] keys)
        {
            return Service.LocationEnableStatus(keys); ;
        }
        /// <summary>
        /// ç¦ç”¨è´§ä½
        /// </summary>
        /// <param name="keys"></param>
        /// <returns></returns>
        [HttpPost, Route("LocationDisableStatus")]
        public WebResponseContent LocationDisableStatus([FromBody] int[] keys)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Check/CheckOrderController.cs
@@ -15,6 +15,11 @@
        {
        }
        /// <summary>
        /// æäº¤å®¡æ ¸
        /// </summary>
        /// <param name="checkOrderId"></param>
        /// <returns></returns>
        [HttpGet, HttpPost, Route("CommitAudit")]
        public WebResponseContent CommitAudit(int checkOrderId)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Check/CheckOrderResultController.cs
@@ -14,6 +14,13 @@
        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, Dt_CheckOrderResult checkResult)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs
@@ -13,8 +13,10 @@
using WIDESEA_DTO.ERP;
using WIDESEA_External.ERPService;
using WIDESEA_IBasicRepository;
using WIDESEA_IBasicService;
using WIDESEA_IInboundRepository;
using WIDESEA_IInboundService;
using WIDESEA_IOutboundService;
using WIDESEA_Model.Models;
namespace WIDESEA_WMSServer.Controllers.ERP
@@ -25,179 +27,61 @@
    {
        private readonly IPurchaseOrderRepository _purchaseOrderRepository;
        private readonly IPurchaseOrderService _purchaseOrderService;
        private readonly ISupplierInfoRepository _supplierInfoRepository;
        private readonly IMaterielInfoRepository _materielInfoRepository;
        private readonly ISupplierInfoService _supplierInfoService;
        private readonly IMaterielInfoService _materielInfoService;
        private readonly IOutboundOrderService _outboundOrderService;
        public ErpController(IPurchaseOrderRepository purchaseOrderRepository, IPurchaseOrderService purchaseOrderService, ISupplierInfoRepository supplierInfoRepository, IMaterielInfoRepository materielInfoRepository)
        public ErpController(IPurchaseOrderRepository purchaseOrderRepository, IPurchaseOrderService purchaseOrderService, ISupplierInfoService supplierInfoService, IMaterielInfoService materielInfoService, IOutboundOrderService outboundOrderService)
        {
            _purchaseOrderRepository = purchaseOrderRepository;
            _purchaseOrderService = purchaseOrderService;
            _supplierInfoRepository = supplierInfoRepository;
            _materielInfoRepository = materielInfoRepository;
            _supplierInfoService = supplierInfoService;
            _materielInfoService = materielInfoService;
            _outboundOrderService = outboundOrderService;
        }
        [HttpPost, Route("ReceivePurchaseOrder"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceivePurchaseOrder([FromBody] Dt_PurchaseOrder model)
        {
            try
            {
                _purchaseOrderRepository.AddData(model, x => x.Details);
                foreach (var item in model.Details)
                {
                    Dt_ReceiveOrder receiveOrder = new Dt_ReceiveOrder()
                    {
                        ReceiveOrderStatus = InOrderStatusEnum.未开始.ObjToInt(),
                        WarehouseId = item.WarehouseId,
                        SuppliersId = model.SupplierCode,
                        ReceiveOrderType = InOrderTypeEnum.Purchase.ObjToInt(),
                        ReceiveDate = DateTime.Now,
                    };
                }
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        /// <summary>
        /// æŽ¥æ”¶ERP采购单信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceivePurchaseOrderSingle"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceivePurchaseOrderSingle(PurchaseOrderModel model)
        public WebResponseContent ReceivePurchaseOrder([FromBody] PurchaseOrderModel model)
        {
            return _purchaseOrderService.ReceivePurchaseOrderSingle(model);
            return _purchaseOrderService.ReceivePurchaseOrder(model);
        }
        /// <summary>
        /// æŽ¥æ”¶ERP供应商信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceiveSupplier"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceiveSupplier(SupplierDTO model)
        public WebResponseContent ReceiveSupplier([FromBody] SupplierDTO model)
        {
            try
            {
                if (model.OperateType == "0")
                {
                    Dt_SupplierInfo supplierInfo = new Dt_SupplierInfo()
                    {
                        Status = 1,
                        SupplierCode = model.Code,
                        SupplierName = model.Name,
                        SupplierShortName = model.ShortName
                    };
                    _supplierInfoRepository.AddData(supplierInfo);
                }
                else if (model.OperateType == "1")
                {
                    Dt_SupplierInfo supplierInfo = _supplierInfoRepository.QueryFirst(x => x.SupplierCode == model.Code);
                    if (supplierInfo == null)
                    {
                        return WebResponseContent.Instance.Error($"未找到该供应商信息");
                    }
                    supplierInfo.Status = 1;
                    supplierInfo.SupplierCode = model.Code;
                    supplierInfo.SupplierName = model.Name;
                    supplierInfo.SupplierShortName = model.ShortName;
                    _supplierInfoRepository.UpdateData(supplierInfo);
                }
                else if (model.OperateType == "2")
                {
                    Dt_SupplierInfo supplierInfo = _supplierInfoRepository.QueryFirst(x => x.SupplierCode == model.Code);
                    if (supplierInfo == null)
                    {
                        return WebResponseContent.Instance.Error($"未找到该供应商信息");
                    }
                    _supplierInfoRepository.DeleteData(supplierInfo);
                }
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
            return _supplierInfoService.ReceiveSupplier(model);
        }
        /// <summary>
        /// æŽ¥æ”¶ERP物料信息
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceiveMaterial"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceiveMaterial(MaterielInfoDTO model)
        public WebResponseContent ReceiveMaterial([FromBody] MaterielInfoDTO model)
        {
            try
            {
                if (model.OperateType == 0)
                {
                    Dt_MaterielInfo materielInfo = new Dt_MaterielInfo()
                    {
                        IsCheck = (WhetherEnum)model.IsCheck,
                        MaterielCode = model.Code,
                        MaterielInvOrgId = model.InvOrgId,
                        MaterielLength = model.Length,
                        MaterielModel = model.Model,
                        MaterielName = model.Name,
                        MaterielSize = model.Size,
                        MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType,
                        MaterielSpec = "model.",
                        MaterielState = (EnableEnum)model.State,
                        MaterielThickness = model.Thickness,
                        MaterielType = (MaterielTypeEnum)model.ItemType,
                        MaterielUnit = model.Unit,
                        MaterielVersion = model.MaterialVersion,
                        MaterielWide = model.Wide,
                        WarehouseId = model.WaId,
                    };
                    _materielInfoRepository.AddData(materielInfo);
                }
                else if (model.OperateType == 1)
                {
                    Dt_MaterielInfo materielInfo = _materielInfoRepository.QueryFirst(x => x.MaterielCode == model.Code);
                    if (materielInfo == null)
                    {
                        return WebResponseContent.Instance.Error($"未找到物料信息");
                    }
                    materielInfo.IsCheck = (WhetherEnum)model.IsCheck;
                    materielInfo.MaterielCode = model.Code;
                    materielInfo.MaterielInvOrgId = model.InvOrgId;
                    materielInfo.MaterielLength = model.Length;
                    materielInfo.MaterielModel = model.Model;
                    materielInfo.MaterielName = model.Name;
                    materielInfo.MaterielSize = model.Size;
                    materielInfo.MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType;
                    materielInfo.MaterielSpec = model.StandType;
                    materielInfo.MaterielState = (EnableEnum)model.State;
                    materielInfo.MaterielThickness = model.Thickness;
                    materielInfo.MaterielType = (MaterielTypeEnum)model.ItemType;
                    materielInfo.MaterielUnit = model.Unit;
                    materielInfo.MaterielVersion = model.MaterialVersion;
                    materielInfo.MaterielWide = model.Wide;
                    materielInfo.WarehouseId = model.WaId;
                    _materielInfoRepository.UpdateData(materielInfo);
                }
                else if (model.OperateType == 2)
                {
                    Dt_MaterielInfo materielInfo = _materielInfoRepository.QueryFirst(x => x.MaterielCode == model.Code);
                    if (materielInfo == null)
                    {
                        return WebResponseContent.Instance.Error($"未找到物料信息");
                    }
                    _materielInfoRepository.DeleteData(materielInfo);
                }
                return WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
            return _materielInfoService.ReceiveMaterial(model);
        }
        public WebResponseContent ReceiveOutOrder(ErpOutOrderDTO erpOutOrder)
        /// <summary>
        /// æŽ¥æ”¶ERP出库单信息
        /// </summary>
        /// <param name="erpOutOrder"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceiveOutOrder"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceiveOutOrder([FromBody] ErpOutOrderDTO erpOutOrder)
        {
            try
            {
                return WebResponseContent.Instance.OK();
            }
            catch(Exception ex)
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
            return _outboundOrderService.ReceiveOutOrder(erpOutOrder);
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/InboundOrderController.cs
@@ -17,12 +17,26 @@
        {
        }
        /// <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>
        /// <param name="inboundOrderId"></param>
        /// <param name="palletCode"></param>
        /// <param name="serNums"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("MaterielGroup")]
        public WebResponseContent MaterielGroup(int inboundOrderId, string palletCode, List<string> serNums)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderController.cs
@@ -15,6 +15,11 @@
        {
        }
        /// <summary>
        /// æ ¹æ®æ”¶è´§å•创建入库单
        /// </summary>
        /// <param name="receiveOrderId"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("CreateInboundOrder")]
        public WebResponseContent CreateInboundOrder(int receiveOrderId)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/ReceiveOrderDetailController.cs
@@ -16,6 +16,12 @@
        {
        }
        /// <summary>
        /// åˆ›å»ºæ”¶è´§å•明细(PDA扫码收货)
        /// </summary>
        /// <param name="serNum"></param>
        /// <param name="orderNo"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("AddReceiveOrderDetail")]
        public WebResponseContent AddReceiveOrderDetail(string serNum, string orderNo)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskInfo/TaskController.cs
@@ -17,12 +17,23 @@
        {
        }
        /// <summary>
        /// ç”³è¯·å…¥åº“任务
        /// </summary>
        /// <param name="palletCode"></param>
        /// <param name="stationCode"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("RequestInboundTask")]
        public WebResponseContent RequestInboundTask(string palletCode, string stationCode)
        {
            return Service.RequestInboundTask(palletCode, stationCode);
        }
        /// <summary>
        /// å…¥åº“任务完成
        /// </summary>
        /// <param name="taskNum"></param>
        /// <returns></returns>
        [HttpPost, HttpGet, Route("InboundTaskCompleted")]
        public WebResponseContent InboundTaskCompleted(int taskNum)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs
@@ -43,7 +43,7 @@
builder.Services.AddWebSocketSetup();
builder.Services.AddSqlsugarSetup();//SqlSugar å¯åŠ¨æœåŠ¡
builder.Services.AddDbSetup();//Db å¯åŠ¨æœåŠ¡
//builder.Services.AddInitializationHostServiceSetup();//应用初始化服务注入
builder.Services.AddInitializationHostServiceSetup();//应用初始化服务注入
builder.Services.AddHostedService<PermissionDataHostService>();//应用初始化服务注入
builder.Services.AddAutoMapperSetup();
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.csproj
@@ -5,6 +5,7 @@
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <GenerateDocumentationFile>True</GenerateDocumentationFile>
    <DocumentationFile></DocumentationFile>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/WIDESEA_WMSServer.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,163 @@
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>WIDESEA_WMSServer</name>
    </assembly>
    <members>
        <member name="M:WIDESEA_WMSServer.Controllers.Approval.ApprovalTaskController.AuditAgree(System.Int32)">
            <summary>
            åŒæ„å®¡æ‰¹
            </summary>
            <param name="sourceKey"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Approval.ApprovalTaskController.AuditReject(System.Int32)">
            <summary>
            é©³å›žå®¡æ‰¹
            </summary>
            <param name="sourceKey"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Approval.ApprovalTaskController.PushTest">
            <summary>
            æŽ¨é€æµ‹è¯•
            </summary>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Basic.LocationInfoController.InitializationLocation(WIDESEA_DTO.Basic.InitializationLocationDTO)">
            <summary>
            åˆå§‹åŒ–货位
            </summary>
            <param name="initializationLocationDTO"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Basic.LocationInfoController.AssignLocation(System.String,WIDESEA_Common.CommonEnum.PalletTypeEnum)">
            <summary>
            è´§ä½åˆ†é…
            </summary>
            <param name="roadwayNo"></param>
            <param name="palletType"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Basic.LocationInfoController.LocationEnableStatus(System.Int32[])">
            <summary>
            å¯ç”¨è´§ä½
            </summary>
            <param name="keys"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Basic.LocationInfoController.LocationDisableStatus(System.Int32[])">
            <summary>
            ç¦ç”¨è´§ä½
            </summary>
            <param name="keys"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Check.CheckOrderController.CommitAudit(System.Int32)">
            <summary>
            æäº¤å®¡æ ¸
            </summary>
            <param name="checkOrderId"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Check.CheckOrderResultController.CommitCheckResult(System.Int32,WIDESEA_Model.Models.Dt_CheckOrderResult)">
            <summary>
            æäº¤è´¨æ£€ç»“æžœ
            </summary>
            <param name="checkOrderId"></param>
            <param name="checkResult"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.ERP.ErpController.ReceivePurchaseOrder(WIDESEA_DTO.PurchaseOrderModel)">
            <summary>
            æŽ¥æ”¶ERP采购单信息
            </summary>
            <param name="model"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.ERP.ErpController.ReceiveSupplier(WIDESEA_DTO.Basic.SupplierDTO)">
            <summary>
            æŽ¥æ”¶ERP供应商信息
            </summary>
            <param name="model"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.ERP.ErpController.ReceiveMaterial(WIDESEA_DTO.Basic.MaterielInfoDTO)">
            <summary>
            æŽ¥æ”¶ERP物料信息
            </summary>
            <param name="model"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.ERP.ErpController.ReceiveOutOrder(WIDESEA_DTO.ERP.ErpOutOrderDTO)">
            <summary>
            æŽ¥æ”¶ERP出库单信息
            </summary>
            <param name="erpOutOrder"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Inbound.InboundOrderController.MaterielGroup(System.Int32,System.String,System.String)">
            <summary>
            å•个物料码组盘
            </summary>
            <param name="inboundOrderId"></param>
            <param name="palletCode"></param>
            <param name="serNum"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Inbound.InboundOrderController.MaterielGroup(System.Int32,System.String,System.Collections.Generic.List{System.String})">
            <summary>
            å¤šä¸ªç‰©æ–™ç ç»„盘
            </summary>
            <param name="inboundOrderId"></param>
            <param name="palletCode"></param>
            <param name="serNums"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Inbound.ReceiveOrderController.CreateInboundOrder(System.Int32)">
            <summary>
            æ ¹æ®æ”¶è´§å•创建入库单
            </summary>
            <param name="receiveOrderId"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.Inbound.ReceiveOrderDetailController.AddReceiveOrderDetail(System.String,System.String)">
            <summary>
            åˆ›å»ºæ”¶è´§å•明细(PDA扫码收货)
            </summary>
            <param name="serNum"></param>
            <param name="orderNo"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.TaskInfo.TaskController.RequestInboundTask(System.String,System.String)">
            <summary>
            ç”³è¯·å…¥åº“任务
            </summary>
            <param name="palletCode"></param>
            <param name="stationCode"></param>
            <returns></returns>
        </member>
        <member name="M:WIDESEA_WMSServer.Controllers.TaskInfo.TaskController.InboundTaskCompleted(System.Int32)">
            <summary>
            å…¥åº“任务完成
            </summary>
            <param name="taskNum"></param>
            <returns></returns>
        </member>
        <member name="T:WIDESEA_WMSServer.Filter.AutoMapperConfig">
            <summary>
            é™æ€å…¨å±€ AutoMapper é…ç½®æ–‡ä»¶
            </summary>
        </member>
        <member name="T:WIDESEA_WMSServer.Filter.AutoMapperSetup">
            <summary>
            Automapper å¯åŠ¨æœåŠ¡
            </summary>
        </member>
        <member name="M:WIDESEA_WMSServer.Filter.CustomProfile.#ctor">
            <summary>
            é…ç½®æž„造函数,用来创建关系映射
            </summary>
        </member>
    </members>
</doc>