From 829eabf256e29392ca63f6da48829dba3b075dfe Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期五, 24 一月 2025 08:59:53 +0800
Subject: [PATCH] 资料,优化程序
---
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 121 ++++++++++++++++++++++++++++++++++++++--
1 files changed, 115 insertions(+), 6 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 9d6ce37..4fa7034 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -41,6 +41,7 @@
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_Core.Enums;
+using WIDESEAWCS_Core.Utilities;
using WIDESEAWCS_DTO.Enum;
using WIDESEAWCS_DTO.TaskInfo;
using WIDESEAWCS_ITaskInfoRepository;
@@ -48,6 +49,7 @@
using WIDESEAWCS_Model.Models;
using WIDESEAWCS_QuartzJob.Models;
using WIDESEAWCS_QuartzJob.Service;
+using static Microsoft.IO.RecyclableMemoryStreamManager;
namespace WIDESEAWCS_TaskInfoService
{
@@ -83,10 +85,10 @@
public string urlWMSTask = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlWMSTask"];
public string urlTaskCompleted = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlTaskCompleted"];
public string urlWMSMovelibraryTask = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlWMSMovelibraryTask"];
- public string urlRelocationTaskCompleted = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlRelocationTaskCompleted"];
public string urlQueryinventory = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlQueryinventory"];
public string urlEmptyOutbound = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlEmptyOutbound"];
public string urlRawmaterialout = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlRawmaterialout"];
+ public string urlPalletQueryinventory = WIDESEAWCS_Core.Helper.AppSettings.Configuration["urlPalletQueryinventory"];
/// <summary>
/// 鎺ユ敹WMS浠诲姟淇℃伅
/// </summary>
@@ -107,6 +109,7 @@
Dt_Task task = _mapper.Map<Dt_Task>(item);
task.TaskState = (int)TaskOutStatusEnum.OutNew;
task.Roadway = task.Roadway == "1" ? task.Roadway = "SC01" : task.Roadway = "SC02";
+ task.CreateDate = DateTime.Now;
tasks.Add(task);
}
BaseDal.AddData(tasks);
@@ -243,6 +246,10 @@
BaseDal.AddData(task);
return content = WebResponseContent.Instance.OK();
}
+ else
+ {
+ WriteLog.GetLog("PLC鏃ュ織鍑哄簱鏃ュ織").Write($"绌烘墭鍑哄簱澶辫触锛岃鎯咃細{content.Message}", "闇�瑕佺┖鎵�");
+ }
}
return content = WebResponseContent.Instance.Error();
}
@@ -295,6 +302,20 @@
}
}
+
+ public WebResponseContent RequestWMSTask4()
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+
+ return content = HttpHelper.Get<WebResponseContent>($"{urlPalletQueryinventory}");
+ }
+ catch (Exception ex)
+ {
+ return content = WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
/// <summary>
/// 鏍规嵁娣卞簱浣嶅悜wms鐢宠鍒ゆ柇娴呭簱浣嶆槸鍚︽湁璐э紝鏄惁闇�瑕佽繘琛岀Щ搴撴搷浣�
/// </summary>
@@ -325,6 +346,11 @@
return task;
}
}
+ }
+ else
+ {
+ return null;
+ WriteLog.GetLog("PLC鏃ュ織").Write($"澶辫触淇℃伅锛歿content.Message}", "绉诲簱淇℃伅");
}
}
@@ -403,7 +429,15 @@
public Dt_Task IngStackerCraneTask2(string deviceNo)
{
//string deviceNot = deviceNo == "SC01" ? "1" : "2";
- return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting);
+ try
+ {
+ return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting);
+ }
+ catch (Exception ex)
+ {
+
+ throw;
+ }
}
/// <summary>
@@ -672,7 +706,7 @@
/*List<Dt_Router> routers = _routerService.QueryNextRoutes(task.NextAddress, task.TargetAddress);
if (!routers.Any()) return WebResponseContent.Instance.Error($"鏈壘鍒拌澶囪矾鐢变俊鎭�");*/
- content = HttpHelper.Get<WebResponseContent>($"{urlTaskCompleted}?TaskNum={task.TaskNum}");
+ content = HttpHelper.Get<WebResponseContent>($"{urlTaskCompleted}?TaskNum={task.TaskNum}&HowWorks=2");
task.TaskState = (int)TaskOutStatusEnum.OutFinish;
task.ModifyDate = DateTime.Now;
BaseDal.DeleteData(task);
@@ -684,7 +718,7 @@
}
else if (task.TaskType == (int)TaskInboundTypeEnum.Inbound && task.TaskState == (int)TaskInStatusEnum.SC_InExecuting)
{
- content = HttpHelper.Get<WebResponseContent>($"{urlTaskCompleted}?TaskNum={task.TaskNum}");
+ content = HttpHelper.Get<WebResponseContent>($"{urlTaskCompleted}?TaskNum={task.TaskNum}&HowWorks=2");
//todo
//int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskInStatusEnum>();
task.TaskState = (int)TaskInStatusEnum.InFinish;
@@ -697,14 +731,15 @@
}
else if (task.TaskType == (int)TaskRelocationTypeEnum.Relocation)
{
- GenerateInv2 generate = new GenerateInv2()
+ /*GenerateInv2 generate = new GenerateInv2()
{
PalletCode = task.PalletCode,
SourceAddress = task.SourceAddress,
TargetAddress = task.TargetAddress
};
- content = HttpHelper.Post<WebResponseContent>($"{urlRelocationTaskCompleted}", generate);
+ content = HttpHelper.Post<WebResponseContent>($"{urlTaskCompleted}", generate);*/
+ content = HttpHelper.Get<WebResponseContent>($"{urlTaskCompleted}?TaskNum={task.TaskNum}&HowWorks=2");
task.TaskState = (int)TaskOutStatusEnum.SC_OutFinish;
task.ModifyDate = DateTime.Now;
BaseDal.DeleteData(task);
@@ -818,5 +853,79 @@
}
return content;
}
+
+
+ /// <summary>
+ /// 鍒犻櫎鏁版嵁
+ /// </summary>
+ /// <param name="keys">涓婚敭鏁扮粍</param>
+ /// <returns></returns>
+ public virtual WebResponseContent DeleteData(object[] keys)
+ {
+ try
+ {
+ List<Dt_Task> tasks = BaseDal.QureyDataByIds(keys);
+ foreach (Dt_Task task in tasks)
+ {
+ _task_HtyService.AddTaskHty(task);
+ }
+
+
+ if (typeof(Dt_Task).GetNavigatePro() == null)
+ return BaseDal.DeleteDataByIds(keys) ? WebResponseContent.Instance.OK() : WebResponseContent.Instance.Error();
+ else
+ {
+ if (keys != null)
+ {
+ Type detailType = typeof(Dt_Task).GetDetailType();
+ string name = typeof(Dt_Task).GetMainIdByDetail();
+ List<object> dynamicDelKeys = new List<object>();
+
+ for (int i = 0; i < keys.Length; i++)
+ {
+ dynamicDelKeys.Add(keys[i]);
+ }
+ ((SqlSugarClient)BaseDal.Db).BeginTran();
+
+ if (dynamicDelKeys.Count > 0)
+ BaseDal.Db.Deleteable<object>().AS(detailType.Name).Where($"{name} in (@id)", new { id = dynamicDelKeys.ToArray() }).ExecuteCommandHasChange();
+
+ BaseDal.DeleteDataByIds(keys);
+
+ ((SqlSugarClient)BaseDal.Db).CommitTran();
+
+ return WebResponseContent.Instance.OK();
+ }
+ else
+ {
+ return WebResponseContent.Instance.Error("鍙傛暟閿欒");
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ ((SqlSugarClient)BaseDal.Db).RollbackTran();
+ return WebResponseContent.Instance.Error(ex.Message);
+ }
+ }
+
+ public WebResponseContent ReceiveWCSTask(int tasknum)
+ {
+ Dt_Task tasks = BaseDal.QueryFirst(x => x.TaskNum == tasknum);
+ try
+ {
+ _task_HtyService.AddTaskHty(tasks);
+ BaseDal.DeleteData(tasks);
+ WriteLog.Write_Log("WMS鎵嬪姩鍒犻櫎浠诲姟", "鍒犻櫎鎴愬姛", $"鐢宠鍒犻櫎鐨勬潯鐮侊細{tasks.TaskNum},鎵樼洏鏉$爜锛歿tasks.PalletCode}", new { 淇℃伅 = "鍒犻櫎鎴愬姛" });
+ return WebResponseContent.Instance.OK();
+
+ }
+ catch (Exception ex)
+ {
+ WriteLog.Write_Log("WMS鎵嬪姩鍒犻櫎浠诲姟","鍒犻櫎澶辫触", $"鐢宠鍒犻櫎鐨勬潯鐮侊細{tasks.TaskNum},鎵樼洏鏉$爜锛歿tasks.PalletCode}", new { 淇℃伅 = ex.Message });
+ return WebResponseContent.Instance.Error();
+ }
+ }
+
}
}
--
Gitblit v1.9.3