dengjunjie
2024-12-16 911a17b31eb1caa56d02a7be547176be6c259127
接口优化
已修改6个文件
已添加1个文件
281 ■■■■ 文件已修改
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/MaterielInfoDTO.cs 122 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/ErpResponseContent.cs 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs
@@ -31,6 +31,12 @@
                    {
                        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
                    };
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/MaterielInfoDTO.cs
@@ -4,12 +4,17 @@
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core.Attributes;
using static WIDESEA_DTO.ErpResponseContent;
namespace WIDESEA_DTO.Basic
{
    [ModelValidate]
    public class MaterielInfo
    {
        /// <summary>
        ///
        /// </summary>
        public string message { get; set; }
        /// <summary>
        /// 
        /// </summary>
@@ -27,38 +32,113 @@
    [ModelValidate]
    public class MaterielInfoDTO
    {
        /// <summary>
        ///
        /// </summary>
        public string Code { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string StandType { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int ItemType { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Type { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int ItemSourceType { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Unit { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string MaterialVersion { get; set; }
        public float Size { get; set; }
        public float Length { get; set; }
        public float Thickness { get; set; }
        public float Wide { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int Size { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int Length { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int Thickness { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int Wide { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Model { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Color { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string MaterialTG { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Spare1 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Spare2 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Spare3 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Spare4 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string Spare5 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int State { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string InvOrgId { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int OperateType { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string UserDef01 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string UserDef04 { get; set; }
        /// <summary>
        ///
        /// </summary>
        public int IsCheck { get; set; }
        public int WaId { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string WaId { get; set; }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/ErpResponseContent.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,73 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.Attributes;
namespace WIDESEA_DTO
{
    [ModelValidate]
    public class ErpResponseContent
    {
        public class content
        {
            /// <summary>
            ///
            /// </summary>
            public string Code { get; set; }
            /// <summary>
            ///
            /// </summary>
            public string Name { get; set; }
            /// <summary>
            ///
            /// </summary>
            public string ShortName { get; set; }
        }
        //public class Root
        //{
        /// <summary>
        ///
        /// </summary>
        public bool bSucc { get; set; } = true;
        /// <summary>
        ///
        /// </summary>
        public string strCode { get; set; } = "0000";
        /// <summary>
        /// æ‰§è¡ŒæˆåŠŸ
        /// </summary>
        public string strMsg { get; set; } = "执行成功";
        /// <summary>
        ///
        /// </summary>
        public DateTime DataTime { get; set; } = DateTime.Now;
        /// <summary>
        ///
        /// </summary>
        public content Content { get; set; }
        //}
        public static ErpResponseContent Instance
        {
            get { return new ErpResponseContent(); }
        }
        public ErpResponseContent OK(string message = null)
        {
            bSucc = true;
            strCode = "0000";
            strMsg = message == null ? "执行成功" : message;
            return this;
        }
        public ErpResponseContent Error(string message = null)
        {
            bSucc = false;
            strCode = "404";
            strMsg = message == null ? "执行失败" : message;
            return this;
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs
@@ -11,6 +11,7 @@
using WIDESEA_Core.Enums;
using WIDESEA_Core.Helper;
using WIDESEA_DTO;
using WIDESEA_DTO.Basic;
using WIDESEA_IBasicRepository;
using WIDESEA_IInboundRepository;
using WIDESEA_IInboundService;
@@ -24,12 +25,16 @@
        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) : base(BaseDal)
        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 ReceivePurchaseOrder(PurchaseOrderModel model)
@@ -59,14 +64,24 @@
                {
                    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_PurchaseOrderDetail> purchaseOrderDetails = new List<Dt_PurchaseOrderDetail>();
                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)
                    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()
                    {
@@ -114,7 +129,12 @@
                {
                    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>();
@@ -125,6 +145,11 @@
                    {
                        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)
                    {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs
@@ -12,7 +12,7 @@
{
    [SugarTable(nameof(Dt_MaterielInfo), "物料信息")]
    [SugarIndex("unique_materielinfo_materielcode", nameof(MaterielCode), OrderByType.Asc, true)]
    public class Dt_MaterielInfo : BaseEntity, BaseWarehouseEntity
    public class Dt_MaterielInfo : BaseEntity//, BaseWarehouseEntity
    {
        /// <summary>
        /// ä¸»é”®
@@ -116,7 +116,7 @@
        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "备注")]
        public string Remark { get; set; }
        [SugarColumn(IsNullable = false, ColumnDescription = "仓库编号")]
        public int WarehouseId { get; set; }
        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "仓库编号")]
        public string WarehouseId { get; set; }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs
@@ -23,6 +23,24 @@
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "供应商简称")]
        public string SupplierShortName { get; set; }
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "联系人")]
        public string Contacts { get; set; }
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "联系电话")]
        public string ContactNumber { get; set; }
        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "联系地址")]
        public string ContactAddress { get; set; }
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "电子邮箱")]
        public string Email { get; set; }
        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "描述")]
        public string Description { get; set; }
        [SugarColumn(IsNullable = true, Length = 50, ColumnDescription = "库存组织")]
        public string InvOrgId { get; set; }
        [SugarColumn(IsNullable = false, ColumnDescription = "状态")]
        public int Status { get; set; }
    }
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs
@@ -18,6 +18,7 @@
using WIDESEA_IInboundService;
using WIDESEA_IOutboundService;
using WIDESEA_Model.Models;
using static WIDESEA_DTO.ErpResponseContent;
namespace WIDESEA_WMSServer.Controllers.ERP
{
@@ -46,9 +47,11 @@
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceivePurchaseOrderSingle"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceivePurchaseOrder([FromBody] Root model)
        public ErpResponseContent ReceivePurchaseOrder([FromBody] Root model)
        {
            return _purchaseOrderService.ReceivePurchaseOrder(model.Content);
            WebResponseContent content = _purchaseOrderService.ReceivePurchaseOrder(model.Content);
            if (content.Status) return Instance.OK();
            else return Instance.Error(content.Message);
        }
        /// <summary>
@@ -57,9 +60,11 @@
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceiveSupplier"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceiveSupplier([FromBody] Supplier model)
        public ErpResponseContent ReceiveSupplier([FromBody] Supplier model)
        {
            return _supplierInfoService.ReceiveSupplier(model.Content);
            WebResponseContent content = _supplierInfoService.ReceiveSupplier(model.Content);
            if (content.Status) return Instance.OK();
            else return Instance.Error(content.Message);
        }
        /// <summary>
@@ -68,9 +73,11 @@
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceiveMaterial"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceiveMaterial([FromBody] MaterielInfo model)
        public ErpResponseContent ReceiveMaterial([FromBody] MaterielInfo model)
        {
            return _materielInfoService.ReceiveMaterial(model.Content);
             WebResponseContent content = _materielInfoService.ReceiveMaterial(model.Content);
            if (content.Status) return Instance.OK();
            else return Instance.Error(content.Message);
        }
        /// <summary>
@@ -79,9 +86,11 @@
        /// <param name="erpOutOrder"></param>
        /// <returns></returns>
        [HttpPost, Route("ReceiveOutOrder"), AllowAnonymous, MethodParamsValidate]
        public WebResponseContent ReceiveOutOrder([FromBody] ErpOutOrder erpOutOrder)
        public ErpResponseContent ReceiveOutOrder([FromBody] ErpOutOrder erpOutOrder)
        {
            return _outboundOrderService.ReceiveOutOrder(erpOutOrder.Content);
             WebResponseContent content = _outboundOrderService.ReceiveOutOrder(erpOutOrder.Content);
            if (content.Status) return Instance.OK();
            else return Instance.Error(content.Message);
        }
    }
}