From 911a17b31eb1caa56d02a7be547176be6c259127 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期一, 16 十二月 2024 21:30:23 +0800 Subject: [PATCH] 接口优化 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs | 31 +++++ 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs | 18 +++ 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs | 6 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/MaterielInfoDTO.cs | 122 ++++++++++++++++++++---- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/ErpResponseContent.cs | 73 ++++++++++++++ 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs | 6 + 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs | 25 +++- 7 files changed, 246 insertions(+), 35 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs" index a99cfdd..8dc8ce7 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/SupplierInfoService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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 }; diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/MaterielInfoDTO.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/MaterielInfoDTO.cs" index 3516010..b6c683e 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/MaterielInfoDTO.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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; } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/ErpResponseContent.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/ErpResponseContent.cs" new file mode 100644 index 0000000..3ae8a32 --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/ErpResponseContent.cs" @@ -0,0 +1,73 @@ +锘縰sing 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; + } + } +} diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs" index fd2344f..270c4c6 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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) { diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs" index 0c7d21e..3d1c42b 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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; } } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs" index 91f9182..dbbba7d 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_SupplierInfo.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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; } } diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs" index 19dafe1..48ed393 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/ERP/ErpController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/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); } } } -- Gitblit v1.9.3