From 81cfbb34ad9092b19a2e3692786ee97f3646014b Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期一, 16 十二月 2024 21:30:46 +0800 Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiRuiAn/HuaiAn --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_CheckService/CheckOrderService.cs | 68 +++++++++++++++++++++++++++++++++- 1 files changed, 66 insertions(+), 2 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_CheckService/CheckOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_CheckService/CheckOrderService.cs" index 6e4dce7..568e071 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_CheckService/CheckOrderService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_CheckService/CheckOrderService.cs" @@ -10,6 +10,8 @@ using WIDESEA_Core.BaseRepository; using WIDESEA_Core.BaseServices; using WIDESEA_Core.Helper; +using WIDESEA_External.ERPService; +using WIDESEA_External.Model; using WIDESEA_IApprovalRepository; using WIDESEA_ICheckRepository; using WIDESEA_ICheckService; @@ -26,8 +28,9 @@ 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) : base(BaseDal) + 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; @@ -35,6 +38,7 @@ _approvalTaskRepository = approvalTaskRepository; _userRepository = userRepository; _webSocketServer = webSocketServer; + _invokeERPService = invokeERPService; } public WebResponseContent CommitAudit(int checkOrderId) @@ -46,7 +50,7 @@ { return WebResponseContent.Instance.Error($"鏈壘鍒拌璐ㄦ鍗�"); } - if(checkOrder.CheckOrderStatus != CheckOrderStatusEnum.Checked.ObjToInt()) + if (checkOrder.CheckOrderStatus != CheckOrderStatusEnum.Checked.ObjToInt()) { return WebResponseContent.Instance.Error($"璇ヨ川妫�鍗曡繕鏈楠屽畬鎴�"); } @@ -121,5 +125,65 @@ return WebResponseContent.Instance.Error(ex.Message); } } + + 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($"鏈壘鍒拌川妫�鍗曟嵁"); + } + if(checkOrder.AuditStatus != AuditStatusEnum.Agree.ObjToInt()) + { + 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 = "", + Result = checkOrder.Result, + CreatorCode = checkOrder.Creater, + DefectedNote = checkOrder.DefectedNote, + MaterialsCode = checkOrder.MaterielCode, + PlantsId = "", + 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 = "", + SerNo = checkOrder.ReceiveDetailRowNo.ToString(), + TestDate = "", + 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); + } + } } } -- Gitblit v1.9.3