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 | 215 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 187 insertions(+), 28 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 2d0468e..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; @@ -85,6 +85,9 @@ 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> @@ -128,13 +131,30 @@ /// <param name="palletCode">鎵樼洏鍙�</param> /// <param name="sourceAddress">璧峰鍦板潃</param> /// <returns></returns> + public class GenerateInv + { + 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(); try { - palletCode = "6431-jdsda-jjal333-300"; - content = HttpHelper.Get<WebResponseContent>($"{urlWMSTask}?sourceAddress={sourceAddress}&palletCode={palletCode}"); + GenerateInv generate = new GenerateInv() + { + SourceAddress=sourceAddress, + PalletCode = palletCode + }; + content = HttpHelper.Post<WebResponseContent>($"{urlWMSTask}", generate); Dt_Task task = new Dt_Task(); if (content != null) { @@ -144,37 +164,152 @@ 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> - /// 鏌ヨ搴撲綅 + /// 杩涜缁勭洏 /// </summary> /// <param name="palletCode"></param> /// <returns></returns> public WebResponseContent ToPlatform(string 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> + /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 + /// </summary> + /// <param name="palletCode">鎵樼洏鍙�</param> + /// <param name="sourceAddress">璧峰鍦板潃</param> + /// <returns></returns> + public WebResponseContent RequestWMSTask2(string palletCode,string sourceAddress) + { WebResponseContent content = new WebResponseContent(); - return content = HttpHelper.Get<WebResponseContent>($"{urlQueryinventory}?palletCode={palletCode}"); + try + { + 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)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(); + } + } + return content = WebResponseContent.Instance.Error(); + } + catch (Exception ex) + { + return content = WebResponseContent.Instance.Error(ex.Message); + } + } + + /// <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(); + } + } + 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) + { + return content = WebResponseContent.Instance.Error(ex.Message); + } + } /// <summary> /// 鏍规嵁娣卞簱浣嶅悜wms鐢宠鍒ゆ柇娴呭簱浣嶆槸鍚︽湁璐э紝鏄惁闇�瑕佽繘琛岀Щ搴撴搷浣� /// </summary> @@ -190,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; + } + } } } @@ -271,8 +411,14 @@ } public Dt_Task IngStackerCraneTask(string deviceNo) { - string deviceNot = deviceNo == "SC01" ? "1" : "2"; - return BaseDal.QueryFirst(x => x.Roadway == deviceNot && x.TaskState == (int)TaskInStatusEnum.SC_InExecuting); + //string deviceNot = deviceNo == "SC01" ? "1" : "2"; + 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> @@ -322,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> @@ -522,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(); @@ -560,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