From 553f7744bedee0685635ed070a4a0e18b796238f Mon Sep 17 00:00:00 2001 From: lss <2538410689@qq.com> Date: 星期四, 24 七月 2025 17:30:36 +0800 Subject: [PATCH] 1111 --- HH.WCS.Mobox3 - 大车间/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs | 188 ++++++++++++++++++++++++++++++++++++----------- 1 files changed, 144 insertions(+), 44 deletions(-) diff --git "a/HH.WCS.Mobox3 - \345\244\247\350\275\246\351\227\264/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs" "b/HH.WCS.Mobox3 - \345\244\247\350\275\246\351\227\264/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs" index 01ea481..d32e7ee 100644 --- "a/HH.WCS.Mobox3 - \345\244\247\350\275\246\351\227\264/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs" +++ "b/HH.WCS.Mobox3 - \345\244\247\350\275\246\351\227\264/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs" @@ -21,6 +21,7 @@ using System.Threading.Tasks; using static HH.WCS.JiaTong_DCJ.api.ApiModel; using static HH.WCS.JiaTong_DCJ.LISTA.process.HttpModel; +using static System.Collections.Specialized.BitVector32; namespace HH.WCS.JiaTong_DCJ.process { @@ -116,52 +117,89 @@ if (TN_Task != null) { - int type = 0; + //璇锋眰鍙栬揣锛� + + int type = 1; string loc = ""; if (model.state == 1101) { - - //璇锋眰鍙栬揣锛� + type = 1; loc = TN_Task.S_START_LOC; + if (name == "Mes") + { + if (OperateReqByPostMes(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } - if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) - { - NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); } - } - if (model.state == 1102) - { - type = 3; - if (TN_Task.Z_TYPE == 4)//鍘熸潗鏂欏簱鍥借嚜瀹夊叏浜や簰 + else { - loc = TN_Task.S_START_LOC; if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) { - // NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); } } } + if (model.state == 1102) + { + type = 1; + loc = TN_Task.S_START_LOC; + if (name == "Mes") + { + if (OperateReqByPostMes(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + // NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } + } + else + { + if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + // NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } + } + } if (model.state == 1103) { //璇锋眰鍗歌揣 - + type = 2; loc = TN_Task.S_END_LOC; - - if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + if (name == "Mes") { - NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + if (OperateReqByPostMes(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } } - + else + { + if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } + } } if (model.state == 1104) { - + type = 2; loc = TN_Task.S_END_LOC; - if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + if (name == "Mes") { - //NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + if (OperateReqByPostMes(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + //NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } } + else + { + if (OperateReqByPost(url, TN_Task.S_EQ_NO, TN_Task.S_CODE, loc, type, model.state, name)) + { + //NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); + } + } + } } @@ -189,9 +227,12 @@ bool permit = false; try { - //RequestList<TaskAccess> requestList = new RequestList<TaskAccess>(); + LogHelper.Info($"寮�绔嬪簱瀹夊叏璇锋眰"); + Request<TaskAccess> request = new Request<TaskAccess>(); + var time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); + TaskAccess taskAccess = new TaskAccess() { taskNum = tasknum, orderNum = ordernum, station = station, type = type, taskStatus = taskStatus }; - // requestList.data.Add(taskAccess); + request.data = taskAccess; HttpHelper httpHelper = new HttpHelper(); Result result = new Result(); string date = JsonConvert.SerializeObject(taskAccess); @@ -220,7 +261,63 @@ } - + /// <summary> + /// MES瀹夊叏浜や簰 + /// </summary> + /// <param name="url"></param> + /// <param name="tasknum"></param> + /// <param name="ordernum"></param> + /// <param name="station"></param> + /// <param name="type"></param> + /// <param name="taskStatus"></param> + public static bool OperateReqByPostMes(string url, string tasknum, string ordernum, string station, int type, int taskStatus, string name) + { + bool permit = false; + try + { + LogHelper.Info($"寮�mes瀹夊叏璇锋眰"); + Request<MesTaskAccess> request = new Request<MesTaskAccess>(); + var time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); + request.RequestId = "鏉弶AGV" + time; + + StatusArrive statusArrive = new StatusArrive(); + request.UseToken = "iFQ5fExGrLYLXliHYWzs"; + MesTaskAccess taskAccess = new MesTaskAccess() { taskNumber = tasknum, status = station }; + request.data = taskAccess; + HttpHelper httpHelper = new HttpHelper(); + MesResult<MesStatus> result = new MesResult<MesStatus>(); + string date = JsonConvert.SerializeObject(request); + // string url = Settings.tableUrls.Find(a => a.id == 2).url; + LogHelper.Info($"瀹夊叏璇锋眰锛氬湴鍧�{url}锛屽唴瀹癸細{date}"); + var r = httpHelper.MesWebPost(url, date); + result = JsonConvert.DeserializeObject<MesResult<MesStatus>>(r); + if (result.icode == "200") + { + LogHelper.Info($"鎺ュ彛璇锋眰鎴愬姛"); + if (result.idata.status == "0") + { + LogHelper.Info($"瀹夊叏浜や簰鎴愬姛"); + permit = true; + } + + } + else + { + LogHelper.Info($"瀹夊叏璇锋眰澶辫触=>msg:{result.imsg}"); + ApiHelper.AddErrorInfo("瀹夊叏浜や簰澶辫触", result.imsg, "", tasknum); + } + ApiHelper.AddInfo(name, "瀹夊叏璇锋眰", date, JsonConvert.SerializeObject(result), "Post", url); + return permit; + } + catch (Exception) + { + + return permit; + } + + + } + /// <summary> /// 浠诲姟鎷︽埅 /// </summary> @@ -238,8 +335,8 @@ return false; } - - + + return result; } @@ -584,31 +681,34 @@ try { //鍥炴姤鏁版嵁鑾峰彇 - Request<StatusArrive> statusarrive = new Request<StatusArrive>(); + // Request<StatusArrive> statusarrive = new Request<StatusArrive>(); //鑾峰彇鏃堕棿鎴�+ + Request<MesTaskAccess> request = new Request<MesTaskAccess>(); var time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); - statusarrive.RequestId = "鏉弶AGV" + time; - - //List<StatusArrive> statusArrives = new List<StatusArrive>(); + request.RequestId = "鏉弶AGV" + time; + StatusArrive statusArrive = new StatusArrive(); - statusarrive.UseToken = "iFQ5fExGrLYLXliHYWzs"; - statusArrive.TaskNumber = mst.S_EQ_NO; - statusArrive.LocationNum = mst.S_END_LOC; - statusArrive.ArricalTime = DateTime.Now.ToString(); - statusArrive.Status = status.ToString(); - statusArrive.Rfid = mst.S_CNTR_CODE; - var cntritem = ContainerHelper.GetCntrItemRel(mst.S_CNTR_CODE).FirstOrDefault(); - if (cntritem!=null) - { - statusArrive.PartNumber = cntritem.S_ITEM_CODE; - statusArrive.PartDesc = cntritem.S_ITEM_NAME; - } + request.UseToken = "iFQ5fExGrLYLXliHYWzs"; + MesTaskAccess taskAccess = new MesTaskAccess() { taskNumber = mst.S_EQ_NO, status = status.ToString() }; + request.data = taskAccess; + //statusArrive.TaskNumber = mst.S_EQ_NO; + //statusArrive.LocationNum = mst.S_END_LOC; + //statusArrive.ArricalTime = DateTime.Now.ToString(); + //statusArrive.Status = status.ToString(); + //statusArrive.Rfid = mst.S_CNTR_CODE; + //var cntritem = ContainerHelper.GetCntrItemRel(mst.S_CNTR_CODE).FirstOrDefault(); + //if (cntritem != null) + //{ + // statusArrive.PartNumber = cntritem.S_ITEM_CODE; + // statusArrive.PartDesc = cntritem.S_ITEM_NAME; + //} //statusArrives.Add(statusArrive); - statusarrive.data = statusArrive; + //寮�鍥炴姤 HttpHelper httpHelper = new HttpHelper(); MesResult result = new MesResult(); - string date = JsonConvert.SerializeObject(statusarrive); + string date = JsonConvert.SerializeObject(request); LogHelper.Info($"浠诲姟鍥炴姤锛氬湴鍧�{url}锛屽唴瀹癸細{date}"); var r = httpHelper.MesWebPost(url, date); -- Gitblit v1.9.1