From 06e0e3b7d61e95902a6129de2490461cd0693e1d Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 15 十月 2025 15:06:40 +0800
Subject: [PATCH] 新增异步方法并优化服务调用逻辑在多个数据库文件中进行了二进制文件的修改、删除和新增操作,可能涉及数据库内容的更新或重建。在 HttpsClient.cs文件中新增了 PostNotLimitAsync方法,用于发送支持 JSON 格式的异步 HTTP POST 请求,并记录请求和响应参数。在 AgingInOrOutInputService.cs文件中,将 HttpsClient.PostAsync替换为PostNotLimitAsync,以利用新方法的功能特性。同时删除了不再需要的注释代码。
---
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs | 105 ++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 84 insertions(+), 21 deletions(-)
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs
index 6d7aeb8..ae805f2 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs
@@ -1,4 +1,6 @@
-锘縰sing Newtonsoft.Json;
+锘縰sing LogLibrary.Log;
+using Masuit.Tools;
+using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -9,9 +11,11 @@
using WIDESEA_Core.Enums;
using WIDESEA_Core.Helper;
using WIDESEA_DTO;
+using WIDESEA_DTO.MOM;
using WIDESEA_DTO.WMS;
using WIDESEA_Model.Models;
using WIDESEA_StorageBasicRepository;
+using WIDESEAWCS_Model.Models;
namespace WIDESEA_StoragIntegrationServices
{
@@ -30,9 +34,29 @@
if (string.IsNullOrEmpty(result?.PalletBarcode))
throw new Exception("涓婁紶鎵樼洏鍙蜂负绌�");
- var location = _locationRepository.QueryFirst(x => x.AreaId == result.LocationArea && x.LocationCode == result.LocationID);
+ LogFactory.GetLog("鍒嗗娴嬭瘯瀹屾垚閫氱煡").Info(true, $"\r\r--------------------------------------");
+ LogFactory.GetLog("鍒嗗娴嬭瘯瀹屾垚閫氱煡").Info(true, result.ToJsonString());
+
+ var location = _locationRepository.QueryFirst(x => x.AreaId == result.LocationArea && x.LocationCode == result.LocationID && x.EnalbeStatus == 1);
if (location == null) throw new Exception("鏈煡搴撲綅");
+
+ if (_taskRepository.QueryFirst(x => x.SourceAddress == result.LocationID && x.Roadway == location.RoadwayNo) != null)
+ {
+ throw new Exception("褰撳墠搴撲綅宸插瓨鍦ㄤ换鍔�");
+ }
+
+ Dt_StationManager stationManager;
+ if (result.IsNG == 1)
+ {
+ stationManager = _stationManagerRepository.QueryFirst(x => x.Roadway == location.RoadwayNo && x.stationType == 4);
+ }
+ else
+ {
+ stationManager = _stationManagerRepository.QueryFirst(x => x.Roadway == location.RoadwayNo && x.stationType == 2);
+ }
+
+ if (stationManager == null) throw new Exception("鏈煡绔欏彴");
int taskNum = _taskRepository.GetTaskNo().Result;
@@ -41,45 +65,84 @@
CreateDate = DateTime.Now,
Creater = "HK",
CurrentAddress = result.LocationID,
- Grade = 1,
+ Grade = result.IsNG == 1 ? 1 : 2,
+ Dispatchertime = DateTime.Now,
PalletCode = result.PalletBarcode,
Roadway = location.RoadwayNo,
SourceAddress = result.LocationID,
TaskState = (int)TaskOutStatusEnum.OutNew,
TaskType = result.IsNG == 1 ? (int)TaskOutboundTypeEnum.OutNG : (int)TaskOutboundTypeEnum.Outbound,
- TargetAddress = "",
+ TargetAddress = stationManager.stationLocation,
+ NextAddress = stationManager.stationChildCode,
TaskNum = taskNum, //_taskRepository.GetTaskNo().Result,
TaskId = 0,
};
- WMSTaskDTO taskDTO = new WMSTaskDTO
+ // 灏濊瘯娣诲姞鏂颁换鍔�
+ WMSTaskDTO taskDTO = new WMSTaskDTO()
{
+ TaskNum = task.TaskNum.Value,
+ Grade = result.IsNG == 1 ? 1 : 2,
+ PalletCode = task.PalletCode,
+ RoadWay = task.Roadway,
+ SourceAddress = task.SourceAddress,
+ TargetAddress = task.TargetAddress,
+ TaskState = task.TaskState.Value,
Id = 0,
- Grade = 1,
- PalletCode = result.PalletBarcode,
- RoadWay = location.RoadwayNo,
- SourceAddress = result.LocationID,
- TargetAddress = "",
- TaskNum = taskNum, //_taskRepository.GetTaskNo().Result,
- TaskState = (int)TaskOutStatusEnum.OutNew,
TaskType = result.IsNG == 1 ? (int)TaskOutboundTypeEnum.OutNG : (int)TaskOutboundTypeEnum.Outbound,
};
- //var respon = HttpHelper.Post("http://localhost:9291/api/Task/ReceiveTask", JsonConvert.SerializeObject(taskDTO));
- //if (respon != null)
- //{
-
- //}
- //else
- //{
- // throw new Exception("WCS澶勭悊澶辫触");
- //}
+ var configs = _configService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
+ var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.WCSIPAddress)?.ConfigValue;
+ var ReceiveByWMSTask = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.ReceiveByWMSTask)?.ConfigValue;
+ if (ReceiveByWMSTask == null || ipAddress == null)
+ {
+ throw new Exception("WMS IP 鏈厤缃�");
+ }
+ var wmsIpAddrss = ipAddress + ReceiveByWMSTask;
+ var respon = HttpHelper.Post(wmsIpAddrss, JsonConvert.SerializeObject(taskDTO)); //http://localhost:9291/api/Task/ReceiveTask,
+ if (respon != null)
+ {
+ WebResponseContent respone = JsonConvert.DeserializeObject<WebResponseContent>(respon.ToString());
+ if (respone.Status)
+ {
+ var taskId = _taskRepository.AddData(task);
+ location.LocationStatus = (int) LocationEnum.InStockDisable;
+ _locationRepository.UpdateData(location);
+ //_simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { taskDTO.PalletCode });
+ }
+
+ else
+ {
+ throw new Exception("WCS澶勭悊澶辫触:" + respone.Message);
+ }
+ }
+ else
+ {
+ throw new Exception("WCS澶勭悊澶辫触");
+ }
+
+ //WMSTaskDTO taskDTO = new WMSTaskDTO
+ //{
+ // Id = 0,
+ // Grade = 1,
+ // PalletCode = result.PalletBarcode,
+ // RoadWay = location.RoadwayNo,
+ // SourceAddress = result.LocationID,
+ // TargetAddress = task.TargetAddress,
+ // TaskNum = taskNum, //_taskRepository.GetTaskNo().Result,
+ // TaskState = (int)TaskOutStatusEnum.OutNew,
+ //};
+ LogFactory.GetLog("鍒嗗娴嬭瘯瀹屾垚閫氱煡").Info(true, $"\r\r--------------------------------------");
+ LogFactory.GetLog("鍒嗗娴嬭瘯瀹屾垚閫氱煡").Info(true, result.ToJsonString());
return content.OK();
}
catch (Exception ex)
{
+ LogFactory.GetLog("鍒嗗娴嬭瘯瀹屾垚閫氱煡").Info(true, $"\r\r--------------------------------------");
+ LogFactory.GetLog("鍒嗗娴嬭瘯瀹屾垚閫氱煡").Info(true, ex.Message);
return content.Error(ex.Message);
}
}
--
Gitblit v1.9.3