From 0aed9c9ee65bd8a17837d83ec05e756d11fab297 Mon Sep 17 00:00:00 2001
From: xiazhengtongxue <133085197+xiazhengtongxue@users.noreply.github.com>
Date: 星期二, 21 四月 2026 15:29:48 +0800
Subject: [PATCH] Merge branch 'dev' of http://115.159.85.185:8098/r/SuZhouGuanHong/ShanMeiXinNengYuan into dev

---
 Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/MesUploadHelper.cs |   20 +++++++++++++++++---
 1 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/MesUploadHelper.cs b/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/MesUploadHelper.cs
index 52672b6..6ef6023 100644
--- a/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/MesUploadHelper.cs
+++ b/Code/WMS/WIDESEA_WMSServer/WIDESEA_StockService/MesUploadHelper.cs
@@ -1,9 +1,10 @@
+using Newtonsoft.Json.Linq;
 using System.Diagnostics;
 using WIDESEA_Common.StockEnum;
 using WIDESEA_Core;
 using WIDESEA_DTO.MES;
-using WIDESEA_IStockService;
 using WIDESEA_IBasicService;
+using WIDESEA_IStockService;
 
 namespace WIDESEA_StockService
 {
@@ -34,7 +35,7 @@
             MesUploadStatusEnum successStatus,
             string apiType,
             string requestJson,
-            Func<(bool isSuccess, string responseJson, string errorMessage)> mesCall,
+            Func<(bool isSuccess, string responseJson, string errorMessage, string httpRequest)> mesCall,
             string creator = "System")
         {
             _ = Task.Run(async () =>
@@ -42,12 +43,14 @@
                 var stopwatch = Stopwatch.StartNew();
                 try
                 {
-                    var (isSuccess, responseJson, errorMessage) = mesCall();
+                    var (isSuccess, responseJson, errorMessage, httpRequest) = mesCall();
                     stopwatch.Stop();
 
                     // 濂囨暟=鎴愬姛锛屽伓鏁�=澶辫触
                     int status = isSuccess ? (int)successStatus : (int)successStatus + 1;
                     await _stockInfoService.UpdateMesUploadStatusAsync(palletCode, status);
+
+                    requestJson = MergeJsonObjects(requestJson, httpRequest);
 
                     await LogAsync(palletCode, apiType, requestJson, responseJson,
                         stopwatch.ElapsedMilliseconds, isSuccess, errorMessage, creator);
@@ -89,5 +92,16 @@
                 // 鏃ュ織璁板綍澶辫触涓嶅奖鍝嶄富娴佺▼
             }
         }
+
+        public static string MergeJsonObjects(string json1, string json2)
+        {
+            var obj1 = JObject.Parse(json1);
+            var obj2 = JObject.Parse(json2);
+            obj1.Merge(obj2, new JsonMergeSettings
+            {
+                MergeArrayHandling = MergeArrayHandling.Union   // 鏁扮粍鍚堝苟鏂瑰紡锛屽彲鎸夐渶淇敼
+            });
+            return obj1.ToString();
+        }
     }
 }

--
Gitblit v1.9.3