From 9086b238cd9fbb9fbeae7cab11d59576cd9d2853 Mon Sep 17 00:00:00 2001
From: liulijun <liulijun@hnkhzn.com>
Date: 星期一, 24 十一月 2025 10:27:01 +0800
Subject: [PATCH] 合并
---
项目代码/WCS/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs | 91 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 80 insertions(+), 11 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs"
index d6d2312..820e628 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -129,7 +129,46 @@
{
return WebResponseContent.Instance.Error(ex.Message);
}
+ }
+
+ /// <summary>
+ /// 浠诲姟閲嶆柊涓嬪彂
+ /// </summary>
+ /// <param name="taskNum"></param>
+ /// <returns></returns>
+ public WebResponseContent ResendTask(int taskNum)
+ {
+ try
+ {
+ Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
+ if (task != null)
+ {
+ if (task.TaskState == (int)TaskStatusEnum.SC_Executing)
+ {
+ task.TaskState = TaskStatusEnum.SC_Execute.ObjToInt();
+ }
+ else if(task.TaskState == (int)TaskStatusEnum.AGV_Executing)
+ {
+ task.TaskState = TaskStatusEnum.AGV_Execute.ObjToInt();
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error($"姝や换鍔� { taskNum } 鏆傛椂涓嶈兘閲嶆柊涓嬪彂浠诲姟");
+ }
+ BaseDal.UpdateData(task);
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error($"鏈壘鍒颁换鍔℃秷鎭�");
+ }
+ return WebResponseContent.Instance.OK("浠诲姟閲嶆柊涓嬪彂鎴愬姛");
+ }
+ catch (Exception ex)
+ {
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
}
+
/// <summary>
/// 鎺ユ敹WMS浠诲姟淇℃伅
/// </summary>
@@ -182,7 +221,7 @@
return WebResponseContent.Instance.Error($"鏈壘鍒扮珯鍙伴厤缃俊鎭�");
}
//鑾峰彇璺敱淇℃伅
- List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && (item.SourceAddress == x.StartPosi || item.RoadWay == x.StartPosi));
+ List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && (item.SourceAddress == x.StartPosi || item.RoadWay == x.StartPosi) && x.Depth==1);
router = routers.FirstOrDefault();
if (router == null)
{
@@ -484,24 +523,54 @@
}
return content;
}
- public WebResponseContent MESAvgArriveNotice(RequestAGVArriveDTO requestAGVArriveDTO)
+ /// <summary>
+ /// 鍒ゆ柇鍏佽鏀捐揣
+ /// </summary>
+ /// <returns></returns>
+ public string MESAvgArriveNotice(RequestAGVArriveDTO requestAGVArriveDTO)
{
- WebResponseContent content = new WebResponseContent();
+ Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.MESAvgArriveNotice.ToString());
+
+ string response = Post(apiInfo.ApiAddress, JsonConvert.SerializeObject(requestAGVArriveDTO));
+
+ return response;
+ }
+ public static string Post(string serviceAddress, string requestJson = "", string contentType = "application/json", Dictionary<string, string>? headers = null)
+ {
+ string result = string.Empty;
+ DateTime beginDate = DateTime.Now;
try
{
- string address = AppSettings.Get("WMSApiAddress");
- if (string.IsNullOrEmpty(address))
+ using (HttpContent httpContent = new StringContent(requestJson))
{
- return WebResponseContent.Instance.Error($"鏈壘鍒癢MSApi鍦板潃");
+ httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
+
+ using HttpClient httpClient = new HttpClient();
+ httpClient.Timeout = new TimeSpan(0, 0, 30);
+ string LoginToken = AppSettings.Get("MESLoginToken");
+ headers = new Dictionary<string, string>
+ {
+ //姝e紡
+ { "LoginToken", LoginToken }
+ };
+ if (headers != null)
+ {
+ foreach (var header in headers)
+ httpClient.DefaultRequestHeaders.Add(header.Key, header.Value);
+ }
+ HttpResponseMessage responseMessage = httpClient.PostAsync(serviceAddress, httpContent).Result;
+ result = responseMessage.Content.ReadAsStringAsync().Result;
}
- string responseStr = HttpHelper.Post($"{address}/api/Mes/MESAvgArriveNotice", requestAGVArriveDTO.Serialize());
- return content.OK(responseStr);
+ return result;
}
- catch (Exception ex)
+ catch (Exception e)
{
- content = WebResponseContent.Instance.Error(ex.Message);
+ throw new Exception(e.Message);
}
- return content;
+ finally
+ {
+ Logger.Add(serviceAddress, requestJson == null ? "" : requestJson, result, beginDate);
+ }
}
public WebResponseContent CPEmptyInbound(string palletCode,string SourceAddress)
{
--
Gitblit v1.9.3