From 32a9985c4a3a326d4c30432374247cca5e172c93 Mon Sep 17 00:00:00 2001 From: zxx <Zxx@HanInfo> Date: 星期五, 04 七月 2025 16:55:49 +0800 Subject: [PATCH] 1 --- HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs | 113 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 94 insertions(+), 19 deletions(-) diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs index d2a5cdf..d03940d 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.XiaoMi/process/TaskProcess.cs @@ -27,6 +27,8 @@ using Newtonsoft.Json.Linq; using S7.Net; using System.Threading.Tasks; +using HH.WCS.XiaoMi.LISTA.dispatch; +using static HH.WCS.XiaoMi.LISTA.dispatch.RcsHelper; namespace HH.WCS.XiaoMi.process { @@ -368,7 +370,61 @@ else { result = true; } return result; } + //灏忕背鎺ㄩ�浠诲姟 + internal static bool SendXmTask(WCSTask mst) + { + var result = false; + var taskState = mst.N_B_STATE; + if (taskState == 0) + { + Console.WriteLine($"浠诲姟mst {JsonConvert.SerializeObject(mst)}"); + LogHelper.Info($"浠诲姟mst {JsonConvert.SerializeObject(mst)}", "浠诲姟"); + //var startLoc = LocationHelper.GetLoc(mst.S_START_LOC); + //var endLoc = LocationHelper.GetLoc(mst.S_END_LOC); + if (mst.S_START_LOC != null && mst.S_END_LOC != null) + { + string src = $"\"src\":\"{mst.S_START_LOC}\","; + string dst = $"\"dst\":\"{mst.S_END_LOC}\","; + string carrier_type_id = $"\"carrier_type_id\":\"-99\""; + string parmeS = "{"; + string parmeD = "}"; + string parme = parmeS + src + dst + carrier_type_id + parmeD; + + LogHelper.Info($"鎺ㄩ�浠诲姟鍙傛暟{parme}", "浠诲姟"); + AntsTaskModel model = new AntsTaskModel(); + model.order_name = mst.S_CODE; + model.priority = 1; + model.dead_line = DateTime.Now.ToString(); + model.ts_name = mst.S_TYPE; + model.parameters = parme; + //model.parameters = new AntsParasModel { + // src = mst.S_START_LOC, + // dst = mst.S_END_LOC, + // carrier_type_id="-99" + //}; + var res = RcsHelper.CreateAntsOrder(model); + if (res) + { + //鏇存柊浠诲姟鐘舵� + mst.N_B_STATE = 1; + //mst.S_EQ_TASK_CODE = res.ToString(); + WCSHelper.UpdateStatus(mst); + WCSHelper.UpdateEQNo(mst); + ////鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔$姸鎬�+ //TaskHelper.UpdateStatus(mst, "宸叉帹閫�); + ////鎺ㄩ�鎴愬姛锛屼慨鏀瑰浗鑷狪D + //TaskHelper.UpdateGzId(mst, res); + LogHelper.Info($"浠诲姟mst {mst.S_CODE}鎺ㄩ�鎴愬姛", "浠诲姟"); + result = true; + } + } + + } + + else { result = true; } + return result; + } /// <summary> /// 鍒涘缓鎼繍浠诲姟 @@ -390,6 +446,24 @@ var res = WCSHelper.CreateTask(taskNo, start.Trim(), end.Trim(), taskType, priority, trayCodes, trayCarryCount, startLayer, endLayer); + if (res) + { + result = true; + //浠诲姟鍒涘缓鎴愬姛锛岃捣鐐硅揣浣嶅嚭搴撻攣瀹氾紝缁堢偣璐т綅鍏ュ簱閿佸畾 + LocationHelper.LockLoc(start, 2); + LocationHelper.LockLoc(end, 1); + } + return result; + } + //灏忕背澶т欢 + public static bool CreateTransportDj(string start, string end, string taskType, string cntrs,string orderName, int startLayer, int endLayer, int trayCarryCount = 1, int priority = 1) + { + var result = false; + var trayCodes = cntrs; + var taskNo = DateTime.Now.Ticks.ToString(); + + + var res = WCSHelper.CreateTaskDj(taskNo, start.Trim(), end.Trim(), taskType, priority, trayCodes, orderName,trayCarryCount, startLayer, endLayer); if (res) { result = true; @@ -894,70 +968,71 @@ switch (model.ts_name) { case "p2p": - startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameter.src).First(); + startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameters.src).First(); if (startLoc == null || startLoc.N_LOCK_STATE != 0 || startLoc.C_ENABLE != "Y") { - Message = $"{model.parameter.src}搴撲綅宸茶閿佸畾!"; + Message = $"{model.parameters.src}搴撲綅宸茶閿佸畾!"; } - endLocStr = model.parameter.dst; + endLocStr = model.parameters.dst; break; case "p2a": - startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameter.src).First(); + startLoc = db.Queryable<Location>().Where(a => a.S_CODE == model.parameters.src).First(); if (startLoc == null || startLoc.N_LOCK_STATE != 0 || startLoc.C_ENABLE != "Y") { - Message = $"{model.parameter.src}搴撲綅宸茶閿佸畾!"; + Message = $"{model.parameters.src}搴撲綅宸茶閿佸畾!"; } - var endLoc = InWorkTransport(model.parameter.dst_area); + var endLoc = InWorkTransport(model.parameters.dst_area); if (endLoc==null) { //濡傛灉娌℃壘鍒板氨绛夌涓�潯 - endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameter.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; + endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameters.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; } break; case "a2p": - startLoc = OutWorkTransport(model.parameter.src_area); + startLoc = OutWorkTransport(model.parameters.src_area); if (startLoc==null) { - Message = $"{model.parameter.dst}搴撳尯娌℃湁鍙嚭璐т綅!"; + Message = $"{model.parameters.dst}搴撳尯娌℃湁鍙嚭璐т綅!"; } - endLocStr = model.parameter.dst; + endLocStr = model.parameters.dst; break; case "a2a": - startLoc = OutWorkTransport(model.parameter.src_area); + startLoc = OutWorkTransport(model.parameters.src_area); if (startLoc == null) { - Message = $"{model.parameter.src}搴撳尯娌℃湁鍙嚭璐т綅!"; + Message = $"{model.parameters.src}搴撳尯娌℃湁鍙嚭璐т綅!"; } - var endLoc1 = InWorkTransport(model.parameter.dst_area); + var endLoc1 = InWorkTransport(model.parameters.dst_area); if (endLoc1 == null) { //濡傛灉娌℃壘鍒板氨绛夌涓�潯 - endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameter.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; + endLocStr = db.Queryable<Location>().Where(a => a.S_AREA_CODE.Trim() == model.parameters.dst).OrderByDescending(a => a.N_ROW).ToList()[0].S_CODE; } break; case "p2u": - startLoc = OutWorkTransport(model.parameter.src); + startLoc = OutWorkTransport(model.parameters.src); if (startLoc == null) { - Message = $"{model.parameter.src}搴撳尯娌℃湁鍙嚭璐т綅!"; + Message = $"{model.parameters.src}搴撳尯娌℃湁鍙嚭璐т綅!"; } endLocStr = ""; break; } + LogHelper.Info($"bigMaterial 鎺ユ敹鍙傛暟{JsonConvert.SerializeObject(model) }"); //鍒涘缓鎵樼洏璐т綅缁戝畾鍏崇郴 string trayCode = ContainerHelper.GenerateCntrNo(); //缁戝畾璧风偣璐т綅(浜х嚎)鍜岀墿鏂�- ContainerHelper.BindLocCntrsXm(startLoc.S_CODE, trayCode, model.parameter.sku, "", model.parameter.BatchNo, model.parameter.issueMode, model.parameter.num); + ContainerHelper.BindLocCntrsXm(startLoc.S_CODE, trayCode, model.parameters.sku, "", model.parameters.BatchNo, model.parameters.issueMode, model.parameters.num); var locCntrRel = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE == startLoc.S_CODE).First(); //鍒涘缓浠诲姟 LogHelper.Info($"鍒涘缓浠诲姟 璧风偣:{startLoc.S_CODE}缁堢偣:{endLocStr}", model.ts_name); - var res = TaskProcess.CreateTransport(startLoc.S_CODE, endLocStr, model.ts_name, locCntrRel.S_CNTR_CODE, 1, 1); + var res = TaskProcess.CreateTransportDj(startLoc.S_CODE, endLocStr, model.ts_name, locCntrRel.S_CNTR_CODE, model.order_name, 1, 1); if (!res) { return new TaskResponse @@ -1001,7 +1076,7 @@ } - public static TaskResponse autoSmallMaterial(smallMaterial model) { + public static TaskResponse smallMaterial(smallMaterial model) { var db = new SqlHelper<Location>().GetInstance(); string Message = null; -- Gitblit v1.9.1