From 1293aeec722e06dc11b657455941abbc1c274090 Mon Sep 17 00:00:00 2001 From: zhaowc <526854230@qq.com> Date: 星期日, 16 二月 2025 11:23:46 +0800 Subject: [PATCH] 修改与小车接口 --- Wms/Wms/Controllers/UpApiController.cs | 9 ++ Wms/Wms/Controllers/PdaCrController.cs | 2 Wms/WMS.BLL/LogServer/TaskServer.cs | 12 +++- Wms/Wms/Tools/ApiUrlConfig.cs | 16 +++++ Wms/WMS.IBLL/ILogServer/ITaskServer.cs | 2 Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs | 3 + Wms/WMS.BLL/DataServer/StockServer.cs | 36 +++++++++++- Wms/Wms/appsettings.json | 5 + Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs | 30 +++++++++ Wms/Model/InterFaceModel/AsnModels.cs | 2 Wms/Model/InterFaceModel/HttpModel.cs | 6 + Wms/WMS.IBLL/IDataServer/IStockServer.cs | 2 Wms/Wms/Controllers/DownApiController.cs | 19 +++-- 13 files changed, 117 insertions(+), 27 deletions(-) diff --git a/Wms/Model/InterFaceModel/AsnModels.cs b/Wms/Model/InterFaceModel/AsnModels.cs index eed1ad3..8477289 100644 --- a/Wms/Model/InterFaceModel/AsnModels.cs +++ b/Wms/Model/InterFaceModel/AsnModels.cs @@ -149,6 +149,4 @@ /// </summary> public int? QtyCount { get; set; } } - - } diff --git a/Wms/Model/InterFaceModel/HttpModel.cs b/Wms/Model/InterFaceModel/HttpModel.cs index fcb9260..7d88f99 100644 --- a/Wms/Model/InterFaceModel/HttpModel.cs +++ b/Wms/Model/InterFaceModel/HttpModel.cs @@ -116,8 +116,10 @@ /// </summary> public class PutModel { - public string TaskNo { get; set; } - + + public string Port { get; set; } + public string TaskNo { get; set; } + } /// <summary> /// Wms涓撶敤 涓嬪彂鎸囦护Dto diff --git a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs index 89f5243..a8cc00b 100644 --- a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs +++ b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs @@ -972,13 +972,18 @@ //璇锋眰WCS鍏ュ簱鍙f斁璐х‘璁� try { - var res = HttpHelper.DoPost(wcsurl, EndLocat, "璇锋眰WCS鍏ュ簱鍙f槸鍚﹀彲鏀捐揣", "WCS"); + var port = new + { + Port = EndLocat + }; + var json = JsonConvert.SerializeObject(port); + var res = HttpHelper.DoPost(wcsurl, json, "璇锋眰WCS鍏ュ簱鍙f槸鍚﹀彲鏀捐揣", "WCS"); //////瑙f瀽杩斿洖鏁版嵁 var ret = JsonConvert.DeserializeObject<WcsModel>(res); if (ret.StatusCode == -1) { - throw new Exception(EndLocat + "鍏ュ簱鍙e凡鏈夊叾浠栦换鍔″崰鐢�,璇烽�夋嫨鍏朵粬鍏ュ簱鍙�"); + throw new Exception(EndLocat + "鍙峰叆搴撳彛宸叉湁鍏朵粬浠诲姟鍗犵敤,璇烽�夋嫨鍏朵粬鍏ュ簱鍙�"); } } catch (Exception ex) @@ -1620,6 +1625,27 @@ throw new Exception(ex.Message); } } + + public void AgvContinue(string taskno,string url) + { + var data = new { reqCode =taskno }; + var jsonData = JsonConvert.SerializeObject(data); + try + { + var response = HttpHelper.DoPost(url, jsonData, "涓嬪彂缁橝GV缁х画鎵ц鍛戒护", "AGV"); + + //////瑙f瀽杩斿洖鏁版嵁 + var agvModel = JsonConvert.DeserializeObject<OutCommanAgvDto>(response); + if (agvModel.Code == "1") + { + throw new Exception(agvModel.Message); + } + } + catch (Exception ex) + { + throw new Exception(ex.Message); + } + } #endregion #region 浜哄伐杞繍 diff --git a/Wms/WMS.BLL/DataServer/StockServer.cs b/Wms/WMS.BLL/DataServer/StockServer.cs index 89ca694..f15abb3 100644 --- a/Wms/WMS.BLL/DataServer/StockServer.cs +++ b/Wms/WMS.BLL/DataServer/StockServer.cs @@ -4,13 +4,17 @@ using System.Linq; using System.Runtime.Intrinsics.X86; using System.Security.Claims; +using System.Security.Policy; using System.Text; using Model.InterFaceModel; using Model.ModelDto; using Model.ModelDto.DataDto; using Model.ModelDto.SysDto; using Model.ModelVm.DataVm; +using Newtonsoft.Json; using SqlSugar; +using Utility.Tools; +using WMS.BLL.LogServer; using WMS.DAL; using WMS.Entity.BllSoEntity; using WMS.Entity.Context; @@ -1031,8 +1035,9 @@ /// AGV鍏ュ簱瀹屾垚 /// </summary> /// <param name="TaskCode">浠诲姟鍙�</param> + /// <param name="wcsurl">涓嬪彂WCS鏀捐揣瀹屾垚鍦板潃</param> /// <returns></returns> - public void ArriveFinish(string TaskCode) + public void ArriveFinish(string TaskCode,string wcsurl) { try { @@ -1063,7 +1068,32 @@ stockDetail.WareHouseNo = ""; Db.Updateable(stockDetail).ExecuteCommand(); - //涓嬪彂WCS鐢宠鍏ュ簱 + #region 涓嬪彂WCS鏀捐揣瀹屾垚 + var data = new + { + Port = palletNo.EndLocat + }; + var jsonData = JsonConvert.SerializeObject(data); + string response = ""; + try + { + var time1 = DateTime.Now;//鍙戦�佹椂闂� .ToString("yyyy-MM-dd HH:mm:ss") + response = HttpHelper.DoPost(wcsurl, jsonData, "涓嬪彂缁橶CS鏀捐揣瀹屾垚鍛戒护", "WCS"); + var time2 = DateTime.Now;//杩斿洖鏃堕棿 .ToString("yyyy-MM-dd HH:mm:ss") + + //////瑙f瀽杩斿洖鏁版嵁 + var res = JsonConvert.DeserializeObject<WcsModel>(response); + if (res.StatusCode == -1) + { + throw new Exception("鏀捐揣澶辫触锛學CS杩斿洖淇℃伅閿欒"); + } + } + catch (Exception ex) + { + throw new Exception(ex.Message); + } + + #endregion Db.CommitTran(); @@ -1181,7 +1211,7 @@ /// <summary> /// 鍙嶉鏁板瓧瀛敓绯荤粺搴撳瓨淇℃伅 /// </summary> - /// <param name="model"></param> + /// <param name=""></param> /// <returns></returns> public List<ReLocateData> GetLocateList() { diff --git a/Wms/WMS.BLL/LogServer/TaskServer.cs b/Wms/WMS.BLL/LogServer/TaskServer.cs index 9da8836..ca411ac 100644 --- a/Wms/WMS.BLL/LogServer/TaskServer.cs +++ b/Wms/WMS.BLL/LogServer/TaskServer.cs @@ -168,15 +168,21 @@ /// <param name="port"></param> 鍏ュ簱鍙� /// <param name="url"></param> 璇锋眰鍦板潃 /// <returns></returns> - public string GetWcsPuttype(string port,string url) + public string GetWcsPuttype(string taskno,string port,string url) { try { - var res = HttpHelper.DoPost(url, port, "璇锋眰WCS"+ port+"鍏ュ簱鍙f斁璐�", "WCS"); + var data = new + { + Port = port, + TaskNo = taskno + }; + var jsonData = JsonConvert.SerializeObject(data); + var res = HttpHelper.DoPost(url, jsonData, "璇锋眰WCS"+ port+"鍏ュ簱鍙f斁璐�", "WCS"); //////瑙f瀽杩斿洖鏁版嵁 var ret = JsonConvert.DeserializeObject<WcsModel>(res); - return ret.Msg.ToString(); + return ret.StatusCode.ToString(); } catch (Exception ex) { diff --git a/Wms/WMS.IBLL/IDataServer/IStockServer.cs b/Wms/WMS.IBLL/IDataServer/IStockServer.cs index d3b04bf..7cf5723 100644 --- a/Wms/WMS.IBLL/IDataServer/IStockServer.cs +++ b/Wms/WMS.IBLL/IDataServer/IStockServer.cs @@ -128,7 +128,7 @@ /// <param name="skuNo">鐗╂枡缂栫爜</param> /// <param name="skuName">鐗╂枡鍚嶇О</param> /// <returns></returns> - public void ArriveFinish(string TaskCode); + public void ArriveFinish(string TaskCode,string wcsrurl); /// <summary> /// 鍑哄簱浠诲姟瀹屾垚 /// </summary> diff --git a/Wms/WMS.IBLL/ILogServer/ITaskServer.cs b/Wms/WMS.IBLL/ILogServer/ITaskServer.cs index 9f30cc3..24fc617 100644 --- a/Wms/WMS.IBLL/ILogServer/ITaskServer.cs +++ b/Wms/WMS.IBLL/ILogServer/ITaskServer.cs @@ -53,6 +53,6 @@ /// <returns>0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟 2绉诲簱浠诲姟</returns> public string GetTaskType(string taskNo); - public string GetWcsPuttype(string port,string url); + public string GetWcsPuttype(string taskno,string port,string url); } } diff --git a/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs b/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs index 780e321..32bb442 100644 --- a/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs +++ b/Wms/WMS.IBLL/IPdaServer/IPdaCrServer.cs @@ -151,6 +151,9 @@ /// </summary> /// <param name="model"></param> public void cancelTask(string taskno, string url); + + public void AgvContinue(string taskno,string url); + #endregion #region 浜哄伐杞繍 diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs index c513a72..aa08b42 100644 --- a/Wms/Wms/Controllers/DownApiController.cs +++ b/Wms/Wms/Controllers/DownApiController.cs @@ -36,8 +36,9 @@ private readonly IPdaSoServer _pdaSoSvc;//绌烘墭鍑哄簱Svc private readonly IPdaAsnServer _paAsnSvc;//绌烘墭璺虹粦瀹� private readonly IStockServer _stockSvc;//AGV浠诲姟瀹屾垚绠� + private readonly IPdaCrServer _pdaCrServer; // PDA浠诲姟璋冨害 - public DownApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IPalletBindServer asnPalletBindSvc, IStockCheckServer crCheckSvc, ITaskServer taskSvc, IPdaSoServer pdaSoSvc,IPdaAsnServer paAsnSvc,IStockServer stockSvc) + public DownApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IPalletBindServer asnPalletBindSvc, IStockCheckServer crCheckSvc, ITaskServer taskSvc, IPdaSoServer pdaSoSvc,IPdaAsnServer paAsnSvc,IStockServer stockSvc,IPdaCrServer pdaCrServer) { _config = setting.Value; _exNoticeSvc = exNoticeSvc; @@ -46,7 +47,8 @@ _taskSvc = taskSvc; _pdaSoSvc = pdaSoSvc; _paAsnSvc = paAsnSvc; - _stockSvc = stockSvc; + _stockSvc = stockSvc; + _pdaCrServer = pdaCrServer; } #region WMS鎺ュ彛 璋冪敤涓嬫父绯荤粺鎺ュ彛 @@ -750,8 +752,7 @@ } - - + #endregion @@ -787,7 +788,7 @@ if (model.TaskTyp == "mid") //AGV鍒拌揪鍏ュ簱鍙o紝璇锋眰鏀捐揣 { //涓嬪彂WCS鏀捐揣璇锋眰 - var ret = _taskSvc.GetWcsPuttype(model.CurrentCallCode,_config.WcsHost + _config.MesBeiLiaoUrl); + var ret = _taskSvc.GetWcsPuttype(model.TaskCode,model.CurrentCallCode,_config.WcsHost + _config.HttpInRequest); if (ret.Contains("-1")) { logStr = $@".\log\WCS\浠诲姟鍙嶉" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; @@ -797,7 +798,9 @@ } else if (model.TaskTyp == "end")//AGV鏀捐揣鍒板叆搴撳彛瀹屾垚 { - _stockSvc.ArriveFinish(model.TaskCode); + _stockSvc.ArriveFinish(model.TaskCode,_config.WcsHost + _config.HttpInFinish); + + } break; @@ -845,8 +848,8 @@ var jsonData = JsonConvert.SerializeObject(model); LogFile.SaveLogToFile($"WCS浠诲姟鍙嶉鎵ц閫氱煡锛�( {jsonData} ),", logStr); - //涓嬪彂AGV鍏ュ簱浠诲姟 - var taskType = _taskSvc.GetTaskType(model.TaskNo); + //涓嬪彂AGV缁х画鎵ц + _pdaCrServer.AgvContinue(model.TaskNo,_config.AgvHost+_config.ContinueTask); return Ok(new OutCommanAgvDto { Code = "0", Message = "鎴愬姛"}); diff --git a/Wms/Wms/Controllers/PdaCrController.cs b/Wms/Wms/Controllers/PdaCrController.cs index 1e65402..b2f5c9f 100644 --- a/Wms/Wms/Controllers/PdaCrController.cs +++ b/Wms/Wms/Controllers/PdaCrController.cs @@ -363,7 +363,7 @@ } var uId = int.Parse(userId); - _pdaCrSvc.AgvTransport(model.PalletNo, model.AreaNo, model.Ruku, uId, _config.AgvHost + _config.GenAgvSchedulingTask,_config.WcsHost + _config.BoxHost); + _pdaCrSvc.AgvTransport(model.PalletNo, model.AreaNo, model.Ruku, uId, _config.AgvHost + _config.GenAgvSchedulingTask,_config.WcsHost + _config.HttpInConfirm); return Ok(new { data = "", code = 0, msg = "鎴愬姛" }); } diff --git a/Wms/Wms/Controllers/UpApiController.cs b/Wms/Wms/Controllers/UpApiController.cs index 3235fe0..1fefa33 100644 --- a/Wms/Wms/Controllers/UpApiController.cs +++ b/Wms/Wms/Controllers/UpApiController.cs @@ -224,7 +224,10 @@ /// <summary> /// 涓嬪彂AGV璋冨害浠诲姟 /// </summary> - /// <param name="model"></param> + /// <param name="type"></param> + /// <param name="taskno"></param> + /// <param name="positionStart"></param> + /// <param name="positionEnd"></param> /// <returns></returns> [HttpPost] public IActionResult AGVTask(string type, string taskno, string positionStart, string positionEnd) @@ -250,7 +253,7 @@ /// <summary> /// 涓嬪彂AGV鍙栨秷浠诲姟 /// </summary> - /// <param name="model"></param> + /// <param name="taskno"></param> /// <returns></returns> [HttpPost] public IActionResult cancelTask(string taskno) @@ -377,6 +380,7 @@ /// <summary> /// 閲婃斁澶囨枡鍖哄偍浣嶇姸鎬丣C24 /// </summary> + /// <param name="model">鐘舵�佷俊鎭�</param> /// <returns></returns> [HttpPost] public IActionResult UpLocate(UpLocateModel model) @@ -433,6 +437,7 @@ /// <summary> /// 鏁板瓧瀛敓绯荤粺搴撳瓨璐ㄩ噺鐘舵�佸弽棣� /// </summary> + /// <param name="model">鏉ユ簮淇℃伅</param> /// <returns></returns> public IActionResult ReLocateData(DigitalTwinModel model) { diff --git a/Wms/Wms/Tools/ApiUrlConfig.cs b/Wms/Wms/Tools/ApiUrlConfig.cs index 2488b98..c05d114 100644 --- a/Wms/Wms/Tools/ApiUrlConfig.cs +++ b/Wms/Wms/Tools/ApiUrlConfig.cs @@ -131,7 +131,21 @@ /// <summary> /// //缁橶CS涓嬪彂鍏ュ簱鍗曚俊鎭� /// </summary> - public string AddOrderTaskUrl { get; set; } + public string AddOrderTaskUrl { get; set; } + /// <summary> + /// //缁橶CS涓嬪彂灏忚溅鍏ュ簱纭 + /// </summary> + + public string HttpInConfirm { get; set; } + /// <summary> + /// //缁橶CS涓嬪彂灏忚溅鍏ュ簱璇锋眰 + /// </summary> + public string HttpInRequest { get; set; } + /// <summary> + /// //缁橶CS涓嬪彂灏忚溅鍏ュ簱瀹屾垚 + /// </summary> + public string HttpInFinish { get; set; } + #endregion } } diff --git a/Wms/Wms/appsettings.json b/Wms/Wms/appsettings.json index 92bb1cf..ffa076a 100644 --- a/Wms/Wms/appsettings.json +++ b/Wms/Wms/appsettings.json @@ -33,6 +33,9 @@ "IssueComApiUrl": "/api/demo/wcsTasks", //涓嬪彂鍛戒护(鍑哄簱銆佺Щ搴�) "IssueComApiUrl2": "/api/demo/wcsTask", //"/api/WCSApi/AddTask", //閲嶆柊涓嬪彂鍛戒护(鍑哄簱銆佺Щ搴�) "AddOrderTaskUrl": "/api/demo/orderTask", //WMS缁橶CS涓嬪彂鐨勫叆搴撳崟浠诲姟 + "HttpInConfirm": "/api/demo/HttpInConfirm", //WMS缁橶CS涓嬪彂AGV鍏ュ簱璇锋眰 + "HttpInRequest": "/api/demo/HttpInRequest", //WMS缁橶CS涓嬪彂AGV鍏ュ簱纭 + "HttpInFinish": "/api/demo/HttpInFinish", //WMS缁橶CS涓嬪彂鐨凙GV鍏ュ簱瀹屾垚 // ERP "AsnFinishUrl": "/api/wmsInterface/OutStockTask", //鍏ュ簱璁㈠崟鍏抽棴 @@ -50,7 +53,7 @@ // AGV "GenAgvSchedulingTask": "/rcms/services/rest/hikRpcService/genAgvSchedulingTask", //鐢熸垚浠诲姟鍗曟帴鍙� - "CancelTask": "/rcms/services/rest/hikRpcService/cancelTask",//鍙栨秷浠诲姟鎺ュ彛 + "CancelTask": "/rcms/services/rest/hikRpcService/cancelTask", //鍙栨秷浠诲姟鎺ュ彛 "ContinueTask": "/rcms/services/rest/hikRpcService/continueTask", //缁х画鎵ц浠诲姟鎺ュ彛 "GenPreScheduleTask": "/rcms/services/rest/hikRpcService/genPreScheduleTask" // 棰勮皟搴﹀澶栨帴鍙� }, -- Gitblit v1.8.0