From ae6a8a95861a75ee580c75451f57e0504d2c367a Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期一, 09 六月 2025 17:16:49 +0800 Subject: [PATCH] 针对ERP提供的字段,完善部分出库逻辑 --- process/TaskProcess.cs | 189 ++++++++++++++++++++++++++++++---------------- 1 files changed, 122 insertions(+), 67 deletions(-) diff --git a/process/TaskProcess.cs b/process/TaskProcess.cs index 1bb20f5..638f618 100644 --- a/process/TaskProcess.cs +++ b/process/TaskProcess.cs @@ -7,6 +7,7 @@ using HH.WCS.Mobox3.DSZSH.models; using HH.WCS.Mobox3.DSZSH.wms; using HH.WCS.Mobox3.DSZSH; +using HH.WCS.Mobox3.DSZSH.util; namespace HH.WCS.Mobox3.DSZSH.process { internal class TaskProcess { @@ -111,82 +112,136 @@ var result = false; var start = "0"; var end = "0"; var taskType = mst.S_TYPE.Trim(); + + //var db = new SqlHelper<object>().GetInstance(); + if (mst.N_B_STATE == 0) { - if (mst.N_SCHEDULE_TYPE == 1)//閫氳繃NDC锛宧osttoagv璋冨害璁惧 - { - start = LocationHelper.GetAgvSite(mst.S_START_LOC); - end = LocationHelper.GetAgvSite(mst.S_END_LOC); + start = LocationHelper.GetAgvSite(mst.S_START_LOC); + end = LocationHelper.GetAgvSite(mst.S_END_LOC); - //if (mst.S_TYPE == "绌烘墭涓嬬嚎鍫嗗彔") { - // end = LocationHelper.GetAgvSite(mst.S_END_LOC, true); - //} + //if (mst.S_TYPE == "绌烘墭涓嬬嚎鍫嗗彔") { + // end = LocationHelper.GetAgvSite(mst.S_END_LOC, true); + //} - LogHelper.Info($"NDC鎺ㄩ�浠诲姟 {mst.S_CODE};" + "start=" + start + "end= " + end); - var startLoc = LocationHelper.GetLoc(mst.S_START_LOC); - var endLoc = LocationHelper.GetLoc(mst.S_END_LOC); - var dic = new List<param>(); - dic.Add(new param() { name = "IKey", value = "IKey" }); - 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 = startLoc.N_LAYER.ToString() }); + // 浠诲姟涓嬪彂鍚庯紝鏃犺AGV鏄惁鎺ュ彈锛宻tate 閮芥槸2浜嗭紝灏辩畻鏆傚仠鏃犳祹浜庝簨 + // 濡傛灉鍚庣画闇�璁╂殏鍋滅殑浠诲姟涓嶅啀鍒嗗彂锛岄偅涔堝繀椤绘敼鍙樼幇鏈夌殑state鍒ゆ柇鏈哄埗 - dic.Add(new param() { name = "Ctype", value = "0" }); + //if (mst.S_TYPE == TaskName.绉诲簱) { + // var detail = db.Queryable<TN_RelocationList_Detail>() + // .Where(d => d.S_CNTR_CODE == mst.S_CNTR_CODE).First(); + + // if (detail == null) { + + // } + //} + + LogHelper.Info($"NDC鎺ㄩ�浠诲姟 {mst.S_CODE};" + "start=" + start + "end= " + end); + var startLoc = LocationHelper.GetLoc(mst.S_START_LOC); + var endLoc = LocationHelper.GetLoc(mst.S_END_LOC); + var dic = new List<param>(); + dic.Add(new param() { name = "IKey", value = "IKey" }); + 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 = startLoc.N_LAYER.ToString() }); + + dic.Add(new param() { name = "Ctype", value = "0" }); - //if (mst.S_TYPE == "浣欐枡涓嬬嚎鍏ュ簱" || mst.S_TYPE == "浜哄伐鎷嗙洏鍏ュ簱") { - // dic.Add(new param() { name = "DATA", value = "1024" }); - //} - //else { - // dic.Add(new param() { name = "DATA", value = "0" }); - //} + //if (mst.S_TYPE == "浣欐枡涓嬬嚎鍏ュ簱" || mst.S_TYPE == "浜哄伐鎷嗙洏鍏ュ簱") { + // dic.Add(new param() { name = "DATA", value = "1024" }); + //} + //else { + // dic.Add(new param() { name = "DATA", value = "0" }); + //} - var res = NDCApi.AddOrderNew(1, 1, mst.S_CODE, dic);//娣诲姞鏂板懡浠�- if (res != null && (res.err_code == 0 || res.err_code == 50009)) { - //鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔′紭鍏堢骇 - mst.N_B_STATE = 1; - mst.S_B_STATE = TN_Task.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)); - } + var res = NDCApi.AddOrderNew(1, 1, mst.S_CODE, dic);//娣诲姞鏂板懡浠�+ if (res != null && (res.err_code == 0 || res.err_code == 50009)) { + //鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔′紭鍏堢骇 + mst.N_B_STATE = 1; + mst.S_B_STATE = TN_Task.GetStateStr(1); + WCSHelper.UpdateStatus(mst);//鏇存柊浠诲姟鐘舵� + result = true; + LogHelper.Info($"NDC鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE}start= {mst.S_START_LOC} + end = {mst.S_END_LOC}"); } - 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); - LogHelper.Info($"鏉ゥ鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE};" + "start=" + model.frmPos + "end= " + model.toPos); - } - else { - LogHelper.Info($"鏉ゥ鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};" + JsonConvert.SerializeObject(model)); - } + else { + LogHelper.Info($"NDC鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};Res:" + JsonConvert.SerializeObject(res)); } - 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); - LogHelper.Info($"鍥借嚜鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE};" + "start=" + mst.S_START_LOC + "end= " + mst.S_END_LOC); - } - else { - LogHelper.Info($"鍥借嚜鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};" + JsonConvert.SerializeObject(mst)); - } - } + + //if (mst.N_SCHEDULE_TYPE == 1)//閫氳繃NDC锛宧osttoagv璋冨害璁惧 + //{ + // start = LocationHelper.GetAgvSite(mst.S_START_LOC); + // end = LocationHelper.GetAgvSite(mst.S_END_LOC); + + // //if (mst.S_TYPE == "绌烘墭涓嬬嚎鍫嗗彔") { + // // end = LocationHelper.GetAgvSite(mst.S_END_LOC, true); + // //} + + // LogHelper.Info($"NDC鎺ㄩ�浠诲姟 {mst.S_CODE};" + "start=" + start + "end= " + end); + // var startLoc = LocationHelper.GetLoc(mst.S_START_LOC); + // var endLoc = LocationHelper.GetLoc(mst.S_END_LOC); + // var dic = new List<param>(); + // dic.Add(new param() { name = "IKey", value = "IKey" }); + // 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 = startLoc.N_LAYER.ToString() }); + + // dic.Add(new param() { name = "Ctype", value = "0" }); + + + // //if (mst.S_TYPE == "浣欐枡涓嬬嚎鍏ュ簱" || mst.S_TYPE == "浜哄伐鎷嗙洏鍏ュ簱") { + // // dic.Add(new param() { name = "DATA", value = "1024" }); + // //} + // //else { + // // dic.Add(new param() { name = "DATA", value = "0" }); + // //} + + // var res = NDCApi.AddOrderNew(1, 1, mst.S_CODE, dic);//娣诲姞鏂板懡浠�+ // if (res != null && (res.err_code == 0 || res.err_code == 50009)) { + // //鎺ㄩ�鎴愬姛锛屼慨鏀逛换鍔′紭鍏堢骇 + // mst.N_B_STATE = 1; + // mst.S_B_STATE = TN_Task.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)); + // } + //} + //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); + // LogHelper.Info($"鏉ゥ鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE};" + "start=" + model.frmPos + "end= " + model.toPos); + // } + // else { + // LogHelper.Info($"鏉ゥ鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};" + JsonConvert.SerializeObject(model)); + // } + //} + //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); + // LogHelper.Info($"鍥借嚜鎺ㄩ�浠诲姟鎴愬姛 {mst.S_CODE};" + "start=" + mst.S_START_LOC + "end= " + mst.S_END_LOC); + // } + // else { + // LogHelper.Info($"鍥借嚜鎺ㄩ�浠诲姟澶辫触 {mst.S_CODE};" + JsonConvert.SerializeObject(mst)); + // } + //} } return result; -- Gitblit v1.9.1