From 23c28e3c0437081a78a48e54dc066c87500fa8bc Mon Sep 17 00:00:00 2001 From: lss <2538410689@qq.com> Date: 星期三, 30 七月 2025 17:30:05 +0800 Subject: [PATCH] 111 --- HH.WCS.Mobox3 - 大车间/HH.WCS.Mobox3.JiaTong/process/TaskProcess.cs | 175 +++++++++++++++++++++------------------------------------- 1 files changed, 63 insertions(+), 112 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 d32e7ee..0a3fcad 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" @@ -199,7 +199,7 @@ //NDCApi.ChangeOrderParam(TN_Task.S_CODE.Trim(), 6, "1"); } } - + } } @@ -230,7 +230,7 @@ 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 }; request.data = taskAccess; HttpHelper httpHelper = new HttpHelper(); @@ -326,14 +326,14 @@ internal static bool Intercept(WCSTask mst) { var result = true; - var db = new SqlHelper<object>().GetInstance(); - //鏍规嵁璧风偣浠撳簱缂栫爜鍒ゆ柇鏄惁鍙互鎺ㄩ� - var taskLimit = db.Queryable<TASK_LIMIT>().Where(a => a.S_WH_CODE == mst.S_START_WH && a.OPEN == "1").First(); - if (taskLimit != null) - { - Console.WriteLine($"浠诲姟锛歿mst.S_CODE},璧风偣浠撳簱锛歿mst.S_START_WH}宸茬粡绂佺敤鎺ㄩ�"); - return false; - } + //var db = new SqlHelper<object>().GetInstance(); + ////鏍规嵁璧风偣浠撳簱缂栫爜鍒ゆ柇鏄惁鍙互鎺ㄩ� + //var taskLimit = db.Queryable<TASK_LIMIT>().Where(a => a.S_WH_CODE == mst.S_START_WH && a.OPEN == "1").First(); + //if (taskLimit != null) + //{ + // Console.WriteLine($"浠诲姟锛歿mst.S_CODE},璧风偣浠撳簱锛歿mst.S_START_WH}宸茬粡绂佺敤鎺ㄩ�"); + // return false; + //} @@ -401,110 +401,61 @@ var list = db.Queryable<Location>().ToList().Count; // if (mst.N_B_STATE == 0) { - if (mst.N_SCHEDULE_TYPE == 1) + + LogHelper.Info($"浠诲姟鎺ㄩ�鏁版嵁锛歿JsonConvert.SerializeObject(mst)}"); + if (string.IsNullOrEmpty(mst.S_START_LOC) || string.IsNullOrEmpty(mst.S_END_LOC)) { - LogHelper.Info($"浠诲姟鎺ㄩ�鏁版嵁锛歿JsonConvert.SerializeObject(mst)}"); - if (string.IsNullOrEmpty(mst.S_START_LOC) || string.IsNullOrEmpty(mst.S_END_LOC)) - { - LogHelper.Info($"浠诲姟{mst.S_CODE},璧风偣缁堢偣鏈夌┖鍙傛暟锛屼笉鎺ㄩ�浠诲姟"); - } - - - start = LocationHelper.GetAgvSite(mst.S_START_LOC); - end = LocationHelper.GetAgvSite(mst.S_END_LOC); - //if (mst.N_START_LAYER > 1) - //{ - // start = LocationHelper.GetAgvSite(mst.S_START_LOC, mst.N_START_LAYER.ToString()).ToString(); - //} - if (mst.N_END_LAYER > 1) - { - end = LocationHelper.GetAgvSite(mst.S_END_LOC, mst.N_END_LAYER.ToString()).ToString(); - LogHelper.Info($"浠诲姟鎺ㄩ�锛氱粓鐐瑰眰鏁颁负{mst.N_END_LAYER}锛屾帹閫佺珯鐐逛负:{end}"); - } - Console.WriteLine($"SendTask {mst.S_CODE}"); - Console.WriteLine("start=" + start); - Console.WriteLine("end= " + end); - var dic = new List<param>(); - dic.Add(new param() { name = "From", value = start.ToString() }); - dic.Add(new param() { name = "To", value = end.ToString() }); - dic.Add(new param() { name = "FUNC", value = "0" }); - dic.Add(new param() { name = "DATA", value = "0" }); - dic.Add(new param() { name = "Ctype", value = "0" }); - - - var res = NDCApi.AddOrderNew(1, 1, mst.S_CODE, dic);//娣诲姞鏂板懡浠�- //dic.Add("Pri", mst.N_PRIORITY.ToString()); - //dic.Add("From", start.ToString()); - //dic.Add("To", end.ToString()); - //dic.Add("task_no", mst.S_CODE.Trim());// dic.Add("Ext1", "1"); dic.Add("Ext2", "CALLADDAGV"); dic.Add("N_CNTR_COUNT", ""); - //var res = NDC.AddNewOrder(1, dic); - - - - if (res != null && (res.err_code == 0 || res.err_code == 50009)) - { - //鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔′紭鍏堢骇 - mst.N_B_STATE = 1; - mst.S_B_STATE = WCSTask.GetStateStr(1); - WCSHelper.UpdateStatus(mst);//鏇存柊浠诲姟鐘舵� - result = true; - LogHelper.Info($"NDC鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE}start= {mst.S_START_LOC} + end = {mst.S_END_LOC}"); - if (mst.S_TYPE.Contains("鐢垫1")) - { - var device = Settings.deviceInfos.Where(a => a.TN_Location == mst.S_END_LOC).FirstOrDefault(); - var loc = LocationHelper.GetLocByLoc(mst.S_START_LOC); - if (device == null) - { - LogHelper.Info($"鏍规嵁浠诲姟缁堢偣:{mst.S_END_LOC},鏈壘鍒板搴旂數姊厤缃枃浠�); - } - if (loc == null) - { - LogHelper.Info($"鏍规嵁浠诲姟璧风偣:{mst.S_START_LOC},鏈壘鍒板搴旇揣浣�); - } - int value = 0; - if (loc.N_LAYER == 1) value = 1; - else if (loc.N_LAYER == 2) value = 3; - else if (loc.N_LAYER == 3) value = 5; - - ModbusHelper.WriteSingleRegister(40089, value, device.address, 1024); - ModbusHelper.WriteSingleRegister(40102, 1, device.address, 1024); - - - } - } - else - { - LogHelper.Info($"NDC鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};Res:" + JsonConvert.SerializeObject(res)); - } + LogHelper.Info($"浠诲姟{mst.S_CODE},璧风偣缁堢偣鏈夌┖鍙傛暟锛屼笉鎺ㄩ�浠诲姟"); } - //else if (mst.N_SCHEDULE_TYPE == 5) { - // //璋冪涓夋柟鎺ュ彛 - // var model = new HanAo.TaskInfoModel - // { - // requestPk = mst.S_CODE, - // frmPos = mst.S_START_LOC, - // toPos = mst.S_END_LOC, - // trkType = mst.S_OP_NAME == "鍏ュ簱" ? "1" : "2", - // contNo = mst.S_CNTR_CODE - // }; - // if (HanAo.CreateOrder(model)) { - // mst.N_B_STATE = 1; - // WCSHelper.UpdateStatus(mst); - // } - //} - //else if (mst.N_SCHEDULE_TYPE == 3) { - // var code = GZRobot.CreateOrder(mst.S_CODE, mst.N_PRIORITY, JsonConvert.SerializeObject(new { src = mst.S_START_LOC, dst = mst.S_END_LOC }), "p2p"); - // if (code > 0) { - // //鏇存柊浠诲姟鐘舵� - // mst.N_B_STATE = 1; - // mst.S_EQ_TASK_CODE = code.ToString(); - // WCSHelper.UpdateStatus(mst); - // WCSHelper.UpdateEQNo(mst); - // } - //} - // } + start = LocationHelper.GetAgvSite(mst.S_START_LOC); + end = LocationHelper.GetAgvSite(mst.S_END_LOC); + //if (mst.N_START_LAYER > 1) + //{ + // start = LocationHelper.GetAgvSite(mst.S_START_LOC, mst.N_START_LAYER.ToString()).ToString(); + //} + if (mst.N_END_LAYER > 1) + { + end = LocationHelper.GetAgvSite(mst.S_END_LOC, mst.N_END_LAYER.ToString()).ToString(); + LogHelper.Info($"浠诲姟鎺ㄩ�锛氱粓鐐瑰眰鏁颁负{mst.N_END_LAYER}锛屾帹閫佺珯鐐逛负:{end}"); + } + Console.WriteLine($"SendTask {mst.S_CODE}"); + Console.WriteLine("start=" + start); + Console.WriteLine("end= " + end); + var dic = new List<param>(); + dic.Add(new param() { name = "From", value = start.ToString() }); + dic.Add(new param() { name = "To", value = end.ToString() }); + dic.Add(new param() { name = "FUNC", value = "0" }); + dic.Add(new param() { name = "DATA", value = "0" }); + dic.Add(new param() { name = "Ctype", value = "0" }); + + + var res = NDCApi.AddOrderNew(1, 1, mst.S_CODE, dic);//娣诲姞鏂板懡浠�+ //dic.Add("Pri", mst.N_PRIORITY.ToString()); + //dic.Add("From", start.ToString()); + //dic.Add("To", end.ToString()); + //dic.Add("task_no", mst.S_CODE.Trim());// dic.Add("Ext1", "1"); dic.Add("Ext2", "CALLADDAGV"); dic.Add("N_CNTR_COUNT", ""); + //var res = NDC.AddNewOrder(1, dic); + + + + if (res != null && (res.err_code == 0 || res.err_code == 50009)) + { + //鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔′紭鍏堢骇 + mst.N_B_STATE = 1; + mst.S_B_STATE = WCSTask.GetStateStr(1); + WCSHelper.UpdateStatus(mst);//鏇存柊浠诲姟鐘舵� + result = true; + LogHelper.Info($"NDC鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE}start= {mst.S_START_LOC} + end = {mst.S_END_LOC}"); + + } + else + { + LogHelper.Info($"NDC鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};Res:" + JsonConvert.SerializeObject(res)); + } + + return result; } /// <summary> @@ -681,9 +632,9 @@ try { //鍥炴姤鏁版嵁鑾峰彇 - // Request<StatusArrive> statusarrive = new Request<StatusArrive>(); + // Request<StatusArrive> statusarrive = new Request<StatusArrive>(); //鑾峰彇鏃堕棿鎴�- + Request<MesTaskAccess> request = new Request<MesTaskAccess>(); var time = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); request.RequestId = "鏉弶AGV" + time; -- Gitblit v1.9.1