From ad678d0d42f126e5c0d0e2f22f373d9727fb37a5 Mon Sep 17 00:00:00 2001 From: cjs <2216046164@qq.com> Date: 星期四, 19 六月 2025 17:23:54 +0800 Subject: [PATCH] 111 --- HH.WCS.Mobox3.NongFuLinZhi/HH.WCS.Mobox3.NFLZ.csproj | 2 HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs | 18 + HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCApi.cs | 296 +++++++++++++++++++++++++++++ HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs | 62 ++++- HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCHelper.cs | 142 +++++++------- HH.WCS.Mobox3.NongFuLinZhi/wms/ContainerHelper.cs | 2 HH.WCS.Mobox3.NongFuLinZhi/util/SqlHelper.cs | 2 HH.WCS.Mobox3.NongFuLinZhi/api/ApiModel.cs | 14 HH.WCS.Mobox3.NongFuLinZhi/api/MoboxController.cs | 3 HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs | 18 - 10 files changed, 441 insertions(+), 118 deletions(-) diff --git a/HH.WCS.Mobox3.NongFuLinZhi/HH.WCS.Mobox3.NFLZ.csproj b/HH.WCS.Mobox3.NongFuLinZhi/HH.WCS.Mobox3.NFLZ.csproj index ff638ca..82d7a29 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/HH.WCS.Mobox3.NFLZ.csproj +++ b/HH.WCS.Mobox3.NongFuLinZhi/HH.WCS.Mobox3.NFLZ.csproj @@ -157,8 +157,8 @@ <Compile Include="device\TcpServer.cs" /> <Compile Include="dispatch\GZRobot.cs" /> <Compile Include="dispatch\HanAo.cs" /> - <Compile Include="dispatch\NDC.cs" /> <Compile Include="core\Monitor.cs" /> + <Compile Include="dispatch\NDCApi.cs" /> <Compile Include="models\SegmentTable.cs" /> <Compile Include="models\RowComparsionTable.cs" /> <Compile Include="models\RowLock.cs" /> diff --git a/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs index fb94dfa..83a590a 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/api/ApiHelper.cs @@ -294,17 +294,11 @@ db.Updateable(task).UpdateColumns(it => new { it.S_NOTE }).ExecuteCommand(); } - - - - - - internal static WeiLiResult CancelOrder(CancelOrderModel model) { WeiLiResult result = new WeiLiResult(); var db = new SqlHelper<object>().GetInstance(); - var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).ToList(); + var tasks = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.task_no).ToList(); if (tasks.Count >= 1) { //娴佺▼浠诲姟鏁伴噺鎵ц瓒呰繃涓�潯 浠诲姟涓嶅厑璁稿彇娑�@@ -312,7 +306,7 @@ result.msg = "娴佺▼浠诲姟鎵ц涓�涓嶅厑璁稿彇娑�; return result; } - var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.orderNo).OrderByDescending(a => a.T_CREATE).First(); + var task = db.Queryable<WCSTask>().Where(a => a.S_OP_CODE == model.task_no).OrderByDescending(a => a.T_CREATE).First(); if (task != null) { if (WCSHelper.CheckActionRecordExist(task.S_CODE, 4)) @@ -324,7 +318,7 @@ if (task.N_B_STATE == 0) { //绛夊緟鐩存帴淇敼鐘舵�涓哄彇娑�- WCSHelper.UpdateStatus(model.orderNo, 5); + WCSHelper.UpdateStatus(model.task_no, 5); //result.msg = "浠诲姟绛夊緟锛岀洿鎺ュ彇娑�; } else if (task.N_B_STATE != 3 && task.N_B_STATE != 4) @@ -336,7 +330,8 @@ else { //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv - NDCHelper.Cancel(task.S_CODE.Trim()); + //NDCHelper.Cancel(task.S_CODE.Trim()); + NDCApi.CancelOrder(task.S_CODE.Trim()); //result.msg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�; } } @@ -379,7 +374,8 @@ else { //閫氱煡鏉弶淇敼浼樺厛绾�- NDCHelper.Cancel(task.S_CODE.Trim()); + //NDCHelper.Cancel(task.S_CODE.Trim()); + NDCApi.CancelOrder(task.S_CODE.Trim()); result.msg = "淇敼浼樺厛绾ф垚鍔�; } } diff --git a/HH.WCS.Mobox3.NongFuLinZhi/api/ApiModel.cs b/HH.WCS.Mobox3.NongFuLinZhi/api/ApiModel.cs index 0ffdd73..d906db7 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/api/ApiModel.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/api/ApiModel.cs @@ -474,13 +474,13 @@ { public string taskNo { get; set; } } - public class CancelOrderModel - { - /// <summary> - /// 浠诲姟鍙�- /// </summary> - public string orderNo { get; set; } - } + //public class CancelOrderModel + //{ + // /// <summary> + // /// 浠诲姟鍙�+ // /// </summary> + // public string orderNo { get; set; } + //} public class ChangeOrderPriorytyModel { /// <summary> diff --git a/HH.WCS.Mobox3.NongFuLinZhi/api/MoboxController.cs b/HH.WCS.Mobox3.NongFuLinZhi/api/MoboxController.cs index bcf0860..16a46fa 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/api/MoboxController.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/api/MoboxController.cs @@ -36,7 +36,8 @@ else if (task.N_B_STATE != 3 && task.N_B_STATE != 4) { //宸叉帹閫佷絾鏄病鏈夊畬鎴愭垨鑰呭彇娑堬紝閫氱煡hosttoagv - NDCHelper.Cancel(task.S_CODE.Trim()); + //NDCHelper.Cancel(task.S_CODE.Trim()); + NDCApi.CancelOrder(task.S_CODE.Trim()); result.resultMsg = "浠诲姟鍙栨秷宸茬粡鍙戦�缁欏皬杞�; } else diff --git a/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCApi.cs b/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCApi.cs new file mode 100644 index 0000000..55cef28 --- /dev/null +++ b/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCApi.cs @@ -0,0 +1,296 @@ +锘縰sing HH.WCS.Mobox3.NFLZ; +using HH.WCS.Mobox3.NFLZ.util; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Security.Cryptography; +using System.Text; +using System.Xml; + +namespace HH.WCS.Mobox3.NFLZ.dispatch +{ + public class NDCApi + { + public static string NDCApiUrl { set; get; } + static NDCApi() + { + NDCApiUrl = Settings.HostToAgvServerUrl; + } + + public static AgvApiResult AddOrderNew(int ts, int pri, string taskNo, List<param> param) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + var model = new AddOrderNewModel(); + model.ts_no = ts; + model.pri = pri; + model.task_no = taskNo; + model.param = param; + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + var AppKey = Settings.AppKey; + var AppSecret = Settings.AppSecret; + var ReqTime = DateTimeOffset.UtcNow.ToUnixTimeSeconds().ToString(); + LogHelper.Info($"鍔犲瘑鍓�AppKey={AppKey} AppSecret={AppSecret} ReqTime={ReqTime}"); + var ReqVerify = GetMd5FromString(AppKey + AppSecret + ReqTime); + LogHelper.Info($"鍔犲瘑鍚�AppKey={AppKey} AppSecret={AppSecret} ReqTime={ReqTime} ReqVerify={ReqVerify}"); + LogHelper.Info($"浠诲姟{taskNo}涓嬪彂锛寋jsonInfo}", "NDC"); + var result = httpH.WebPost(NDCApiUrl + "Add", jsonInfo, "application/json", AppKey, ReqTime, ReqVerify); + LogHelper.Info($"浠诲姟涓嬪彂缁撴灉res={result}", "NDC"); + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"浠诲姟涓嬪彂澶辫触 res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + /// <summary> + /// MD5鍔犲瘑 + /// </summary> + /// <param name="sInput"></param> + /// <returns></returns> + public static string GetMd5FromString(string sInput) + { + var lstData = Encoding.GetEncoding("utf-8").GetBytes(sInput); + var lstHash = new MD5CryptoServiceProvider().ComputeHash(lstData); + var result = new StringBuilder(32); + for (int i = 0; i < lstHash.Length; i++) + { + result.Append(lstHash[i].ToString("x2").ToUpper()); + } + return result.ToString(); + } + + public static AgvApiResult AddOrderNew(AddOrderNewModel model) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}涓嬪彂锛寋jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "Add", jsonInfo); + LogHelper.Info($"浠诲姟涓嬪彂缁撴灉res={result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"浠诲姟涓嬪彂澶辫触 res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + public static AgvApiResult CancelOrder(string tsNo, bool is_force = true) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + var model = new CancelOrderModel(); + model.task_no = tsNo; + model.is_force = is_force; + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}鍙栨秷锛寋jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "Cancel", jsonInfo); + LogHelper.Info($"浠诲姟{model.task_no}鍙栨秷缁撴灉={result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"CancelOrder res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + public static AgvApiResult CancelOrder(CancelOrderModel model) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}鍙栨秷锛寋jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "Cancel", jsonInfo); + LogHelper.Info($"浠诲姟{model.task_no}鍙栨秷缁撴灉={result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"CancelOrder res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + + } + + public static AgvApiResult ChangeOrderPri(string taskNo, int newPri) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + var model = new ChangePriModel(); + model.task_no = taskNo; + model.pri = newPri; + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}浼樺厛绾ф洿鏀癸紝{jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "ChangePri", jsonInfo); + LogHelper.Info($"浠诲姟{model.task_no}浼樺厛绾ф洿鏀圭粨鏋�{result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"ChangeOrderPri res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + public static AgvApiResult ChangeOrderPri(ChangePriModel model) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}浼樺厛绾ф洿鏀癸紝{jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "ChangePri", jsonInfo); + LogHelper.Info($"浠诲姟{model.task_no}浼樺厛绾ф洿鏀圭粨鏋�{result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"ChangeOrderPri res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + public static AgvApiResult ChangeOrderParam(string taskNo, int paramNo, string paramStr) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + var model = new ChangeParamModel(); + model.task_no = taskNo; + model.param_no = paramNo; + model.param = paramStr; + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}鍙傛暟鏇存敼锛寋jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "ChangeParam", jsonInfo); + LogHelper.Info($"浠诲姟{model.task_no}鍙傛暟鏇存敼缁撴灉={result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"ChangeOrderParam res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + public static AgvApiResult ChangeOrderParam(ChangeParamModel model) + { + var httpH = new HttpHelper(); + var agvApiResult = new AgvApiResult(); + try + { + string jsonInfo = JsonConvert.SerializeObject(model); + LogHelper.Info($"浠诲姟{model.task_no}鍙傛暟鏇存敼锛寋jsonInfo}", "NDC"); + + var result = httpH.WebPost(NDCApiUrl + "ChangeParam", jsonInfo); + LogHelper.Info($"浠诲姟{model.task_no}鍙傛暟鏇存敼缁撴灉={result}", "NDC"); + + agvApiResult = JsonConvert.DeserializeObject<AgvApiResult>(result); + return agvApiResult; + } + catch (Exception e) + { + LogHelper.Info($"ChangeOrderParam res={e.Message}", "NDC"); + agvApiResult.err_code = -1; + agvApiResult.err_msg = e.Message; + return agvApiResult; + } + } + + + } + + /// <summary> + /// 杩斿洖淇℃伅Model + /// </summary> + public class AgvApiResult + { + public int err_code { set; get; }//寮傚父鐮侊細0 - 姝e父锛屽叾瀹冨�涓哄紓甯搁敊璇爜 + public string err_msg { set; get; }//杩斿洖鐨勯敊璇弿杩帮紝鍦�err_code <> 0 鏃惰繑鍥�+ public object result { set; get; }//姝g‘杩斿洖鐨勭粨鏋滃唴瀹癸紝鍦�err_code = 0 涓旀湁杩斿洖鍐呭鏃�+ } + + public class AddOrderNewModel + { + public int ts_no { set; get; }//TS 鍙凤紝蹇呴』鏈夊� + public int pri { set; get; }//浼樺厛绾�+ public string task_no { set; get; }//涓婃父浠诲姟缂栫爜锛屽鏋�no_feedback = 1 鏃讹紝鍙互涓虹┖ + public List<param> param { set; get; } = new List<param>();//鍙傛暟鍒楄〃 + } + + + public class param + { + public string name { set; get; }//鍙傛暟鍚�+ public string value { set; get; }//鍙傛暟鍊�+ } + + public class CancelOrderModel + { + public string task_no { set; get; }//涓婃父浠诲姟缂栫爜 + public bool is_force { set; get; } = true;//鏄惁寮哄埗鍙栨秷锛� 鈥�寮哄埗 + } + + public class ChangeParamModel + { + public string task_no { set; get; }//涓婃父浠诲姟缂栫爜 + public int param_no { set; get; }//鍙傛暟鍙�+ public string param { set; get; }//鍙傛暟鍐呭锛屽涓弬鏁颁互鑻辨枃鍒嗗彿(;)鍒嗛殧 + } + + public class ChangePriModel + { + public string task_no { set; get; }//涓婃父浠诲姟缂栫爜 + public int pri { set; get; }//鏂颁紭鍏堢骇 + } +} diff --git a/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCHelper.cs index 815afdf..0f53077 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCHelper.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/dispatch/NDCHelper.cs @@ -6,76 +6,76 @@ { public class NDCHelper { - public static void Test() { - //dic.Add("Ext1", ""); dic.Add("Ext2", ""); dic.Add("N_CNTR_COUNT", ""); - //var r = callClient.AddNewOrderAsync(new AddNewOrderRequest() { bufin = "<Req><Order Pri='1' TS='1' From='1' To='2' No='123471118_1' Ext1='1' Ext2='CALLADDAGV' N_CNTR_COUNT='' /></Req>" }); - //r.Wait(); - - var dic = new Dictionary<string, string>(); - dic.Add("Pri", "1"); dic.Add("From", "1"); dic.Add("To", "1"); dic.Add("No", "12311411718_2");// dic.Add("Ext1", "1"); dic.Add("Ext2", "CALLADDAGV"); dic.Add("N_CNTR_COUNT", ""); - var result = NDC.AddNewOrder(1, dic); - - var dic1 = new Dictionary<string, string>(); - var no = "3454566666"; - dic1.Add("From", "1"); dic1.Add("To", "0"); dic1.Add("No", no); - result = NDC.AddNewOrder(101, dic1); - - var dic2 = new Dictionary<string, string>(); - dic2.Add("ExtDeviceNo", "1"); dic2.Add("From", "2"); dic2.Add("To", "2"); dic2.Add("No", DateTime.Now.Ticks.ToString()); dic2.Add("CtrlVal", "1"); - result = NDC.AddNewOrder(39, dic2); - - var dic3 = new Dictionary<string, string>(); - dic3.Add("From", "1"); dic3.Add("To", "9"); dic3.Add("No", no); - result = NDC.CancelOrder(101, dic3); - - var dic4 = new Dictionary<string, string>(); - dic4.Add("ExtDeviceNo", "1"); dic4.Add("CtrlVal", "1"); dic4.Add("DispInfo", "AAAAAAAA"); dic4.Add("No", DateTime.Now.Ticks.ToString()); - result = NDC.StartNewOrderWithQCmd(41, dic4); - - var dic5 = new Dictionary<string, string>(); - dic5.Add("ExtDeviceNo", "1"); dic5.Add("CtrlVal", "1"); dic5.Add("No", DateTime.Now.Ticks.ToString()); - result = NDC.StartNewOrderWithQCmd(170, dic5); - - var dic6 = new Dictionary<string, string>(); - dic6.Add("ExtDeviceNo", "11"); dic6.Add("From", "2"); dic6.Add("To", "2"); dic6.Add("No", DateTime.Now.Ticks.ToString()); - result = NDC.StartNewOrderWithQCmd(164, dic6); - - var dic7 = new Dictionary<string, string>(); - dic7.Add("Param1", "50"); dic7.Add("No", DateTime.Now.Ticks.ToString()); - result = NDC.ChangeOrder(dic7); - } - - public static bool ChangeParam(string taskNo, int param1, int paramNo = 0) { - bool bResult = false; - var dic = new Dictionary<string, string>(); - dic.Add("No", taskNo); - if (paramNo >= 0) { - dic.Add("ParamNo", paramNo.ToString()); - } - dic.Add("Param1", param1.ToString()); - var result = NDC.ChangeOrder(dic); - return bResult; - } - - public static bool Traffic(string lockNo) { - bool bResult = false; - var dic = new Dictionary<string, string>(); - dic.Add("ExtDeviceNo", lockNo); - dic.Add("From", "2"); - dic.Add("To", "2"); dic.Add("No", DateTime.Now.Ticks.ToString()); - - var result = NDC.StartNewOrderWithQCmd(164, dic); - return bResult; - } - - public static bool Cancel(string taskNo) { - bool bResult = false; - var dic = new Dictionary<string, string>(); - dic.Add("No", taskNo); - dic.Add("IsForce", "1"); - - var result = NDC.CancelOrder(1, dic); - return bResult; - } + //public static void Test() { + // //dic.Add("Ext1", ""); dic.Add("Ext2", ""); dic.Add("N_CNTR_COUNT", ""); + // //var r = callClient.AddNewOrderAsync(new AddNewOrderRequest() { bufin = "<Req><Order Pri='1' TS='1' From='1' To='2' No='123471118_1' Ext1='1' Ext2='CALLADDAGV' N_CNTR_COUNT='' /></Req>" }); + // //r.Wait(); + // + // var dic = new Dictionary<string, string>(); + // dic.Add("Pri", "1"); dic.Add("From", "1"); dic.Add("To", "1"); dic.Add("No", "12311411718_2");// dic.Add("Ext1", "1"); dic.Add("Ext2", "CALLADDAGV"); dic.Add("N_CNTR_COUNT", ""); + // var result = NDC.AddNewOrder(1, dic); + // + // var dic1 = new Dictionary<string, string>(); + // var no = "3454566666"; + // dic1.Add("From", "1"); dic1.Add("To", "0"); dic1.Add("No", no); + // result = NDC.AddNewOrder(101, dic1); + // + // var dic2 = new Dictionary<string, string>(); + // dic2.Add("ExtDeviceNo", "1"); dic2.Add("From", "2"); dic2.Add("To", "2"); dic2.Add("No", DateTime.Now.Ticks.ToString()); dic2.Add("CtrlVal", "1"); + // result = NDC.AddNewOrder(39, dic2); + // + // var dic3 = new Dictionary<string, string>(); + // dic3.Add("From", "1"); dic3.Add("To", "9"); dic3.Add("No", no); + // result = NDC.CancelOrder(101, dic3); + // + // var dic4 = new Dictionary<string, string>(); + // dic4.Add("ExtDeviceNo", "1"); dic4.Add("CtrlVal", "1"); dic4.Add("DispInfo", "AAAAAAAA"); dic4.Add("No", DateTime.Now.Ticks.ToString()); + // result = NDC.StartNewOrderWithQCmd(41, dic4); + // + // var dic5 = new Dictionary<string, string>(); + // dic5.Add("ExtDeviceNo", "1"); dic5.Add("CtrlVal", "1"); dic5.Add("No", DateTime.Now.Ticks.ToString()); + // result = NDC.StartNewOrderWithQCmd(170, dic5); + // + // var dic6 = new Dictionary<string, string>(); + // dic6.Add("ExtDeviceNo", "11"); dic6.Add("From", "2"); dic6.Add("To", "2"); dic6.Add("No", DateTime.Now.Ticks.ToString()); + // result = NDC.StartNewOrderWithQCmd(164, dic6); + // + // var dic7 = new Dictionary<string, string>(); + // dic7.Add("Param1", "50"); dic7.Add("No", DateTime.Now.Ticks.ToString()); + // result = NDC.ChangeOrder(dic7); + //} + // + //public static bool ChangeParam(string taskNo, int param1, int paramNo = 0) { + // bool bResult = false; + // var dic = new Dictionary<string, string>(); + // dic.Add("No", taskNo); + // if (paramNo >= 0) { + // dic.Add("ParamNo", paramNo.ToString()); + // } + // dic.Add("Param1", param1.ToString()); + // var result = NDC.ChangeOrder(dic); + // return bResult; + //} + // + //public static bool Traffic(string lockNo) { + // bool bResult = false; + // var dic = new Dictionary<string, string>(); + // dic.Add("ExtDeviceNo", lockNo); + // dic.Add("From", "2"); + // dic.Add("To", "2"); dic.Add("No", DateTime.Now.Ticks.ToString()); + // + // var result = NDC.StartNewOrderWithQCmd(164, dic); + // return bResult; + //} + // + //public static bool Cancel(string taskNo) { + // bool bResult = false; + // var dic = new Dictionary<string, string>(); + // dic.Add("No", taskNo); + // dic.Add("IsForce", "1"); + // + // var result = NDC.CancelOrder(1, dic); + // return bResult; + //} } } diff --git a/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs b/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs index 024f37f..17dde07 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs @@ -922,7 +922,8 @@ LogHelper.Info($"鏌ヨ缈绘枟鏈哄厑璁稿彇绌轰俊鍙�鍏佽鍙栫┖淇″彿={LineState[mst.S_START_LOC.Trim()].status} 鏃堕棿闂撮殧={DateTime.Now.Subtract(LineState[mst.S_START_LOC.Trim()].modify).TotalSeconds}", "瀹夊叏浜や簰"); if ((LineState[mst.S_START_LOC.Trim()].status == "112100" || LineState[mst.S_START_LOC.Trim()].status == "112200") && DateTime.Now.Subtract(LineState[mst.S_START_LOC.Trim()].modify).TotalSeconds < 10) { - NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1101, 18); + //NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1101, 18); + NDCApi.ChangeOrderParam(mst.S_CODE.Trim(), 1101, "18"); TaskProcess.sendSing(mst, 1101); } } @@ -933,7 +934,8 @@ { if ((LineState[mst.S_START_LOC.Trim()].status == "1122" || LineState[mst.S_START_LOC.Trim()].status == "1221") && DateTime.Now.Subtract(LineState[mst.S_START_LOC.Trim()].modify).TotalSeconds < 10) { - NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1101, 18); + //NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1101, 18); + NDCApi.ChangeOrderParam(mst.S_CODE.Trim(), 1101, "18"); TaskProcess.sendSing(mst, 1101); } } @@ -941,7 +943,8 @@ { if (LineState[mst.S_START_LOC.Trim()].status == "1220" && DateTime.Now.Subtract(LineState[mst.S_START_LOC.Trim()].modify).TotalSeconds < 10) { - NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1101, 18); + //NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1101, 18); + NDCApi.ChangeOrderParam(mst.S_CODE.Trim(), 1101, "18"); TaskProcess.sendSing(mst, 1101); } } @@ -964,7 +967,8 @@ LogHelper.Info($"鏌ヨ缈绘枟鏈哄厑璁镐笂婊′俊鍙�鍏佽涓婃弧淇″彿={LineState[mst.S_END_LOC.Trim()].status} 鏃堕棿闂撮殧={DateTime.Now.Subtract(LineState[mst.S_END_LOC.Trim()].modify).TotalSeconds}", "瀹夊叏浜や簰"); if ((LineState[mst.S_END_LOC.Trim()].status == "112100" || LineState[mst.S_END_LOC.Trim()].status == "112200") && DateTime.Now.Subtract(LineState[mst.S_END_LOC.Trim()].modify).TotalSeconds < 10) { - NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1103, 18); + //NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1103, 18); + NDCApi.ChangeOrderParam(mst.S_CODE.Trim(), 1103, "18"); TaskProcess.sendSing(mst, 1103); } } @@ -975,7 +979,8 @@ { if ((LineState[mst.S_END_LOC.Trim()].status == "1122" || LineState[mst.S_END_LOC.Trim()].status == "1221") && DateTime.Now.Subtract(LineState[mst.S_END_LOC.Trim()].modify).TotalSeconds < 10) { - NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1103, 18); + //NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1103, 18); + NDCApi.ChangeOrderParam(mst.S_CODE.Trim(), 1103, "18"); TaskProcess.sendSing(mst, 1103); } } @@ -983,7 +988,8 @@ { if (LineState[mst.S_END_LOC.Trim()].status == "1021" && DateTime.Now.Subtract(LineState[mst.S_END_LOC.Trim()].modify).TotalSeconds < 10) { - NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1103, 18); + //NDCHelper.ChangeParam(mst.S_CODE.Trim(), 1103, 18); + NDCApi.ChangeOrderParam(mst.S_CODE.Trim(), 1103, "18"); TaskProcess.sendSing(mst, 1103); } } diff --git a/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs b/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs index d46e737..97abf92 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs @@ -5,13 +5,15 @@ using HH.WCS.Mobox3.NFLZ.util; using HH.WCS.Mobox3.NFLZ.wms; using Newtonsoft.Json; +using Newtonsoft.Json.Linq; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Security.Cryptography; +using System.Xml.Linq; using static HH.WCS.Mobox3.NFLZ.api.OtherModel; -using static HH.WCS.Mobox3.NFLZ.dispatch.NDC; +using static HH.WCS.Mobox3.NFLZ.dispatch.NDCApi; using static HH.WCS.Mobox3.NFLZ.wms.WMSHelper.AddChangeModel; namespace HH.WCS.Mobox3.NFLZ.process @@ -1131,21 +1133,43 @@ Console.WriteLine($"[SendTask]:TaskNo={mst.S_CODE.Trim()},start={Extend1},end={Extend2}"); LogHelper.Info($"[SendTask]:TaskNo={mst.S_CODE.Trim()},start={Extend1},end={Extend2}"); bool action = true; - var dic = new Dictionary<string, string>(); - //var dic1 = new Dictionary<string, string>(); - //dic.Add("Pri", mst.N_PRIORITY.ToString()); - //dic.Add("No", mst.S_CODE.Trim()); - dic.Add("From", Extend1); - dic.Add("To", Extend2); - dic.Add("Func", Extend3); - dic.Add("Data", Extend4); - + //var dic = new Dictionary<string, string>(); + ////var dic1 = new Dictionary<string, string>(); + ////dic.Add("Pri", mst.N_PRIORITY.ToString()); + ////dic.Add("No", mst.S_CODE.Trim()); + //dic.Add("From", Extend1); + //dic.Add("To", Extend2); + //dic.Add("Func", Extend3); + //dic.Add("Data", Extend4); + // + //if (ConveryTaskList.Contains(taskType) || taskType.Contains("绉诲簱")) + //{ + // dic.Add("ItemHeight", Extend5); + // dic.Add("CntrType", Extend6); + // dic.Add("FromCol", Extend7); + // dic.Add("ToCol", Extend8); + // if (taskType.Contains("绉诲簱") || taskType.Contains("鎴愬搧涓嬬嚎") || taskType.Contains("闆跺ご涓嬬嚎")) + // { + // LogHelper.Info($"绉诲簱锛欵xtend5:{Extend5},Extend6:{Extend6},Extend7:{Extend7},Extend8:{Extend8},"); + // if (Extend5 == "" || Extend6 == "" || Extend7 == "" || Extend8 == "") + // { + // action = false; + // } + // } + //} + var dic = new List<param> + { + new param() { name = "From", value = Extend1 }, + new param() { name = "To", value = Extend2 }, + new param() { name = "Func", value = Extend3 }, + new param() { name = "Data", value = Extend4 } + }; if (ConveryTaskList.Contains(taskType) || taskType.Contains("绉诲簱")) { - dic.Add("ItemHeight", Extend5); - dic.Add("CntrType", Extend6); - dic.Add("FromCol", Extend7); - dic.Add("ToCol", Extend8); + dic.Add(new param(){name = "ItemHeight", value = Extend5}); + dic.Add(new param(){name = "CntrType", value = Extend6}); + dic.Add(new param(){name = "FromCol", value = Extend7}); + dic.Add(new param(){name = "ToCol", value = Extend8}); if (taskType.Contains("绉诲簱") || taskType.Contains("鎴愬搧涓嬬嚎") || taskType.Contains("闆跺ご涓嬬嚎")) { LogHelper.Info($"绉诲簱锛欵xtend5:{Extend5},Extend6:{Extend6},Extend7:{Extend7},Extend8:{Extend8},"); @@ -1155,13 +1179,13 @@ } } } - if (action) { - var res = new AGVResult(); - res = NDC.AddNewOrderNew(TsNo,mst.N_PRIORITY,mst.S_CODE, dic); + var res = new AgvApiResult(); + //res = NDC.AddNewOrderNew(TsNo,mst.N_PRIORITY,mst.S_CODE, dic); + res = NDCApi.AddOrderNew(TsNo, mst.N_PRIORITY, mst.S_CODE,dic); - if (res != null && (res.Res.ErrCode == 0 || res.Res.ErrCode == 50009)) + if (res != null && (res.err_code == 0 || res.err_code == 50009)) { mst.N_B_STATE = 1; WCSHelper.UpdateStatus(mst, "宸叉帹閫�); @@ -1506,7 +1530,7 @@ } if (result == null) { - result = TaskProcess.BCPInOrOut(db, true, "鐡惰儦鍗充骇婊℃缂撳瓨鍖�, itemCode); + result = TaskProcess.BCPInOrOut(db, true, "鐡惰儦鍗充骇婊℃缂撳瓨", itemCode); } if(result == null) { diff --git a/HH.WCS.Mobox3.NongFuLinZhi/util/SqlHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/util/SqlHelper.cs index e5bdb88..8aabe28 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/util/SqlHelper.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/util/SqlHelper.cs @@ -90,7 +90,7 @@ public SqlSugarClient GetInstance(string url = "") { //鍒涘缓鏁版嵁搴撳璞� SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { - ConnectionString = string.IsNullOrEmpty(url) ? Settings.SqlServer : url, + ConnectionString = Settings.SqlServer, //ConnectionString = @"Data Source=192.168.1.198\sql2008;Initial Catalog=OIMobox;User ID=sa;Password=sa@2015", DbType = DbType.SqlServer, IsAutoCloseConnection = true, diff --git a/HH.WCS.Mobox3.NongFuLinZhi/wms/ContainerHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/wms/ContainerHelper.cs index f7b30f6..c7665ea 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/wms/ContainerHelper.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/wms/ContainerHelper.cs @@ -5,7 +5,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -using static HH.WCS.Mobox3.NFLZ.dispatch.NDC; +using static HH.WCS.Mobox3.NFLZ.dispatch.NDCApi; namespace HH.WCS.Mobox3.NFLZ.wms { /// <summary> -- Gitblit v1.9.1