From 1dd9f4bf540a74a7de2daeeebf38491f86befa08 Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期三, 27 十一月 2024 09:31:07 +0800 Subject: [PATCH] 1 --- 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 178 ++++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 144 insertions(+), 34 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 0fc8907..1e2240c 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" @@ -20,6 +20,7 @@ using NetTaste; using Newtonsoft.Json; using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Math; using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; using SqlSugar; using System; @@ -45,7 +46,6 @@ using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_ITaskInfoService; using WIDESEAWCS_Model.Models; -using WIDESEAWCS_QuartzJob; using WIDESEAWCS_QuartzJob.Models; using WIDESEAWCS_QuartzJob.Service; @@ -86,6 +86,8 @@ 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> @@ -134,6 +136,14 @@ public string SourceAddress { get; set; } public string PalletCode { get; set; } } + + public class GenerateInv3 + { + + public string PalletCode { get; set; } + public int outCount { get; set; } + public string TargetAddress { get; set; } + } public WebResponseContent RequestWMSTask(string palletCode, string sourceAddress) { WebResponseContent content = new WebResponseContent(); @@ -154,24 +164,15 @@ task.TaskState = (int)TaskInStatusEnum.Line_InFinish; task.Roadway = task.Roadway == "1" ? task.Roadway = "SC01" : task.Roadway = "SC02"; BaseDal.AddData(task); - } - else - { - - return null; + return content = WebResponseContent.Instance.Error(); } } - else - { - return null; - } - + return content = WebResponseContent.Instance.Error(); } catch (Exception ex) { - content = WebResponseContent.Instance.Error(ex.Message); + return content = WebResponseContent.Instance.Error(ex.Message); } - return content; } /// <summary> /// 杩涜缁勭洏 @@ -180,8 +181,38 @@ /// <returns></returns> public WebResponseContent ToPlatform(string palletCode) { - WebResponseContent content = new WebResponseContent(); - return content = HttpHelper.Get<WebResponseContent>($"{urlQueryinventory}?palletCode={palletCode}"); + try + { + WebResponseContent content = new WebResponseContent(); + GenerateInv generate = new GenerateInv() + { + SourceAddress = "", + PalletCode = palletCode + }; + + return content = HttpHelper.Post<WebResponseContent>($"{urlQueryinventory}", generate); + } + catch (Exception ex) + { + + throw; + } + + /*WebResponseContent content = new WebResponseContent(); + GenerateInv generate = new GenerateInv() + { + SourceAddress = "", + PalletCode = palletCode + }; + content = HttpHelper.Post<WebResponseContent>($"{urlQueryinventory}", generate); + if (content != null) + { + if (content.Status) + { + return content; + } + } + return content = WebResponseContent.Instance.Error();*/ } /// <summary> @@ -190,34 +221,89 @@ /// <param name="palletCode">鎵樼洏鍙�</param> /// <param name="sourceAddress">璧峰鍦板潃</param> /// <returns></returns> - public WebResponseContent RequestWMSTask2(string sourceAddress) + public WebResponseContent RequestWMSTask2(string palletCode,string sourceAddress) { WebResponseContent content = new WebResponseContent(); try { - content = HttpHelper.Get<WebResponseContent>($"{urlEmptyOutbound}?sourceAddress={sourceAddress}"); + GenerateInv generate = new GenerateInv() + { + SourceAddress = sourceAddress, + PalletCode = palletCode + }; + content = HttpHelper.Post<WebResponseContent>($"{urlEmptyOutbound}", generate); Dt_Task task = new Dt_Task(); if (content != null) { if (content.Status) { task = JsonConvert.DeserializeObject<Dt_Task>(content.Data.ToString()); - task.TaskState = (int)TaskInStatusEnum.Line_InFinish; + task.TaskState = (int)TaskOutStatusEnum.OutNew; + task.TaskType = (int)TaskOutboundTypeEnum.Outbound; task.Roadway = task.Roadway == "1" ? task.Roadway = "SC01" : task.Roadway = "SC02"; BaseDal.AddData(task); return content = WebResponseContent.Instance.OK(); } - else - { + } + return content = WebResponseContent.Instance.Error(); + } + catch (Exception ex) + { + return content = WebResponseContent.Instance.Error(ex.Message); + } + } - return content = WebResponseContent.Instance.Error(); + /// <summary> + /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 + /// </summary> + /// <param name="palletCode">鎵樼洏鍙�</param> + /// <param name="sourceAddress">璧峰鍦板潃</param> + /// <returns></returns> + public WebResponseContent RequestWMSTask3(string palletCode, int outCount,string Loc) + { + WebResponseContent content = new WebResponseContent(); + try + { + if (outCount==0) + { + outCount = 1; + } + GenerateInv3 generate = new GenerateInv3() + { + PalletCode = palletCode, + outCount = outCount, + TargetAddress= Loc + }; + content = HttpHelper.Post<WebResponseContent>($"{urlRawmaterialout}", generate); + Dt_Task task = new Dt_Task(); + if (content != null) + { + if (content.Status) + { + task = JsonConvert.DeserializeObject<Dt_Task>(content.Data.ToString()); + task.TaskState = (int)TaskOutStatusEnum.OutNew; + task.TaskType = (int)TaskOutboundTypeEnum.Outbound; + task.Roadway = task.Roadway == "1" ? task.Roadway = "SC01" : task.Roadway = "SC02"; + BaseDal.AddData(task); + return content = WebResponseContent.Instance.OK(); } } - else - { - return content = WebResponseContent.Instance.Error(); - } + return content = WebResponseContent.Instance.Error(); + } + catch (Exception ex) + { + return content = WebResponseContent.Instance.Error(ex.Message); + } + } + + public WebResponseContent RequestWMSTask4() + { + WebResponseContent content = new WebResponseContent(); + try + { + + return content = HttpHelper.Get<WebResponseContent>($"{urlPalletQueryinventory}"); } catch (Exception ex) { @@ -239,16 +325,21 @@ { if (content.Status) { - if (Convert.ToInt32(content.Data) != _Task.TaskNum) + if(content.Data != null) { task = JsonConvert.DeserializeObject<Dt_Task>(content.Data.ToString()); - task.TaskState = (int)TaskRelocationTypeEnum.Relocation; - task.Roadway = task.Roadway == "1" ? task.Roadway = "SC01" : task.Roadway = "SC02"; - task.Grade = 3; - BaseDal.AddData(task); - return task; - } + if (task.TaskNum != _Task.TaskNum) + { + task.TaskState = (int)TaskRelocationTypeEnum.Relocation; + task.Roadway = task.Roadway == "1" ? task.Roadway = "SC01" : task.Roadway = "SC02"; + task.TaskNum = task.TaskNum; + task.Grade = 3; + task.TaskType= (int)TaskRelocationTypeEnum.Relocation; + BaseDal.AddData(task); + return task; + } + } } } @@ -324,6 +415,12 @@ return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.TaskState == (int)TaskInStatusEnum.SC_InExecuting); } + 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); + } + /// <summary> /// 鏍规嵁璁惧缂栧彿銆佸綋鍓嶅湴鍧�鎸夌収浼樺厛绾т互鍙婂垱寤烘椂闂存帓搴忔煡璇换鍔℃睜鍏ュ簱绫诲瀷鐨勬柊澧炵殑浠诲姟 /// </summary> @@ -371,7 +468,7 @@ /// <returns>杩斿洖浠诲姟瀹炰綋瀵硅薄闆嗗悎锛屽彲鑳戒负null</returns> public List<Dt_Task> QueryStationIsOccupiedOutTasks(string deviceNo, string SourceAddress) { - return BaseDal.QueryData(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew && SourceAddress.Contains(x.SourceAddress), TaskOrderBy); + return BaseDal.QueryData(x => x.Roadway == deviceNo && SourceAddress.Contains(x.SourceAddress), TaskOrderBy); } /// <summary> @@ -571,6 +668,12 @@ /// </summary> /// <param name="taskNum">浠诲姟缂栧彿</param> /// <returns>杩斿洖澶勭悊缁撴灉</returns> + public class GenerateInv2 + { + public string PalletCode { get; set; } + public string SourceAddress { get; set; } + public string TargetAddress { get; set; } + } public WebResponseContent StackCraneTaskCompleted(int taskNum) { WebResponseContent content = new WebResponseContent(); @@ -609,7 +712,14 @@ } else if (task.TaskType == (int)TaskRelocationTypeEnum.Relocation) { - content = HttpHelper.Get<WebResponseContent>($"{urlRelocationTaskCompleted}?PalletCode={task.PalletCode}&SourceAddress ={ task.SourceAddress}TargetAddress ={task.TargetAddress}"); + GenerateInv2 generate = new GenerateInv2() + { + PalletCode = task.PalletCode, + SourceAddress = task.SourceAddress, + TargetAddress = task.TargetAddress + + }; + content = HttpHelper.Post<WebResponseContent>($"{urlRelocationTaskCompleted}", generate); task.TaskState = (int)TaskOutStatusEnum.SC_OutFinish; task.ModifyDate = DateTime.Now; BaseDal.DeleteData(task); -- Gitblit v1.9.3