From 9ec715d2deb18a269dd49c48da91a36632d08c81 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期三, 18 六月 2025 00:56:26 +0800
Subject: [PATCH] 最新代码上传,优化功能等

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_CheckService/CheckOrderService.cs |  127 ++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 122 insertions(+), 5 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 c32f484..83c4c81 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_DTO;
+using WIDESEA_DTO.ERP;
 using WIDESEA_External.ERPService;
 using WIDESEA_External.Model;
 using WIDESEA_IApprovalRepository;
@@ -41,6 +43,7 @@
             _invokeERPService = invokeERPService;
         }
 
+        #region 涓嶄娇鐢�
         public WebResponseContent CommitAudit(int checkOrderId)
         {
             try
@@ -125,6 +128,124 @@
                 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>
+        /// 閫佹楠屽畬鎺ㄩ�丒RP
+        /// </summary>
+        /// <param name="checkOrder"></param>
+        /// <param name="checkOrderResults"></param>
+        /// <returns></returns>
+        public WebResponseContent FeedbackInspectResult(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);
+                }
+                ERPInspectModel model = new ERPInspectModel()
+                {
+                    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(),
+                    Recheckcode = checkOrder.ReceiveOrderNo,
+                    ReceiveDate = checkOrder.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
+                    TestDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+                    UniqueTag = checkOrder.CheckOrderId.ToString(),
+                    Way = 1,
+                    Details = checkResults
+                };
+
+                string response = _invokeERPService.InvokeInspectApi(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>
@@ -139,10 +260,6 @@
                 if (checkOrder == null)
                 {
                     return WebResponseContent.Instance.Error($"鏈壘鍒拌川妫�鍗曟嵁");
-                }
-                if(checkOrder.AuditStatus != AuditStatusEnum.Agree.ObjToInt())
-                {
-                    return WebResponseContent.Instance.Error($"瀹℃壒鏈�氳繃");
                 }
 
                 List<ERPCheckResult> checkResults = new List<ERPCheckResult>();
@@ -163,7 +280,7 @@
                     Code = checkOrder.CheckOrderNo,
                     CompanyId = "HATC",
                     Result = checkOrder.Result,
-                    CreatorCode = checkOrder.Creater,//娴嬭瘯
+                    CreatorCode = checkOrder.CheckUserName,
                     DefectedNote = checkOrder.DefectedNote,
                     MaterialsCode = checkOrder.MaterielCode,
                     PlantsId = "HA02",

--
Gitblit v1.9.3