From 1181f9f764b14abd6e9f598f89f8507b4bbfad0d Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期一, 09 三月 2026 09:47:10 +0800
Subject: [PATCH] 设置登录默认值;添加数据传输对象;更新服务器作业

---
 Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Http/HTTP/HttpClientHelper.cs |   51 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 39 insertions(+), 12 deletions(-)

diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Http/HTTP/HttpClientHelper.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Http/HTTP/HttpClientHelper.cs
index fc0cd5b..a5fe893 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Http/HTTP/HttpClientHelper.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Http/HTTP/HttpClientHelper.cs
@@ -10,16 +10,35 @@
 using Microsoft.Extensions.Configuration;
 using Microsoft.Extensions.Logging;
 using Newtonsoft.Json;
+using WIDESEAWCS_Common;
+using WIDESEAWCS_Common.HttpEnum;
+using WIDESEAWCS_Core.Caches;
 
 namespace WIDESEA_Core
 {
     public class HttpClientHelper
     {
         private readonly IHttpClientFactory _httpClientFactory;
+        private readonly ICacheService _cache;
 
-        public HttpClientHelper(IHttpClientFactory httpClientFactory, IConfiguration configuration = null)
+        public HttpClientHelper(IHttpClientFactory httpClientFactory, ICacheService cache, IConfiguration configuration = null)
         {
             _httpClientFactory = httpClientFactory ?? throw new ArgumentNullException(nameof(httpClientFactory));
+            _cache = cache ?? throw new ArgumentNullException(nameof(cache));
+
+
+
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.CreateTaskInboundAsync)}", $"Task/CreateTaskInbound");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.GetTasksLocation)}", $"Task/GetTasksLocation");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.OutboundFinishTaskAsync)}", $"Task/OutboundFinishTask");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.InboundFinishTaskAsync)}", $"Task/InboundFinishTask");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.GetOutBoundTrayTaskAsync)}", $"Task/GetOutBoundTrayTask");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.CreateTaskInboundTrayAsync)}", $"Task/CreateTaskInboundTray");
+
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.GroupPalletAsync)}", $"Stock/GroupPalletAsync");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.ChangePalletAsync)}", $"Stock/ChangePalletAsync");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.SplitPalletAsync)}", $"Stock/SplitPalletAsync");
+            _cache.TryAdd($"{RedisPrefix.Code}:{RedisName.API}:{nameof(ConfigKey.UpdateTaskByStatus)}", $"Task/UpdateTaskByStatus");
         }
 
         /// <summary>
@@ -32,25 +51,31 @@
         /// <returns></returns>
         public HttpResponseResult Post(string url, string content, string contentType = "application/json", HttpRequestConfig? config = null)
         {
-            HttpResponseResult httpResponseResult = ExecuteAsync(async (client) =>
+            HttpResponseResult httpResponseResult = Task.Run(async () =>
             {
-                var request = new HttpRequestMessage(HttpMethod.Post, url);
-                request.Content = new StringContent(content ?? string.Empty, Encoding.UTF8, contentType);
-                SetRequestHeaders(request, config?.Headers);
-                return await client.SendAsync(request);
-            }, config, $"POST {url}").Result;
+                return await ExecuteAsync(async (client) =>
+                {
+                    var request = new HttpRequestMessage(HttpMethod.Post, url);
+                    request.Content = new StringContent(content ?? string.Empty, Encoding.UTF8, contentType);
+                    SetRequestHeaders(request, config?.Headers);
+                    return await client.SendAsync(request);
+                }, config, $"POST {url}");
+            }).GetAwaiter().GetResult();
             httpResponseResult.ApiUrl = url;
             return httpResponseResult;
         }
 
         public HttpResponseResult Get(string url, HttpRequestConfig? config = null)
         {
-            HttpResponseResult httpResponseResult = ExecuteAsync(async (client) =>
+            HttpResponseResult httpResponseResult = Task.Run(async () =>
             {
-                var request = new HttpRequestMessage(HttpMethod.Get, url);
-                SetRequestHeaders(request, config?.Headers);
-                return await client.SendAsync(request);
-            }, config, $"GET {url}").Result;
+                return await ExecuteAsync(async (client) =>
+                {
+                    var request = new HttpRequestMessage(HttpMethod.Get, url);
+                    SetRequestHeaders(request, config?.Headers);
+                    return await client.SendAsync(request);
+                }, config, $"GET {url}");
+            }).GetAwaiter().GetResult();
 
             httpResponseResult.ApiUrl = url;
             return httpResponseResult;
@@ -68,6 +93,7 @@
         public HttpResponseResult<TResponse> Post<TResponse>(string url, string content, string contentType = "application/json", HttpRequestConfig? config = null)
         {
 
+            url = BaseAPI.WMSBaseUrl + _cache.Get($"{RedisPrefix.Code}:{RedisName.API}:{url}");
             HttpResponseResult httpResponseResult = Post(url, content, contentType, config);
 
             HttpResponseResult<TResponse> result = new HttpResponseResult<TResponse>
@@ -109,6 +135,7 @@
 
         public HttpResponseResult<TResponse> Get<TResponse>(string url, HttpRequestConfig? config = null)
         {
+            url = BaseAPI.WMSBaseUrl + _cache.Get(url);
             HttpResponseResult httpResponseResult = Get(url, config);
 
             HttpResponseResult<TResponse> result = new HttpResponseResult<TResponse>

--
Gitblit v1.9.3