This commit is contained in:
@ -1,4 +1,5 @@
|
|||||||
using Epost.Model;
|
using Epost.Model;
|
||||||
|
using NPOI.POIFS.Crypt.Dsig;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Configuration;
|
using System.Configuration;
|
||||||
@ -10,7 +11,7 @@ namespace Epost.Common
|
|||||||
{
|
{
|
||||||
public class AgvHelper
|
public class AgvHelper
|
||||||
{
|
{
|
||||||
string agvUrl = ConfigurationManager.AppSettings["agvUrl"];
|
string agvSchedulingTaskUrl = ConfigurationManager.AppSettings["agvSchedulingTaskUrl"];
|
||||||
HttpHelper http = new HttpHelper();
|
HttpHelper http = new HttpHelper();
|
||||||
#region 生成任务单
|
#region 生成任务单
|
||||||
public AgvResultModel genAgvSchedulingTask(AgvSchedulingTaskModel model)
|
public AgvResultModel genAgvSchedulingTask(AgvSchedulingTaskModel model)
|
||||||
@ -22,7 +23,7 @@ namespace Epost.Common
|
|||||||
|
|
||||||
string postData = JsonHelper.SerializeObject(model);
|
string postData = JsonHelper.SerializeObject(model);
|
||||||
LogHelper.WriteLogInfo("调用AGV生成任务单接口请求参数" + postData, LogHelper.Log_Type.INFO);
|
LogHelper.WriteLogInfo("调用AGV生成任务单接口请求参数" + postData, LogHelper.Log_Type.INFO);
|
||||||
string res = http.HttpPost_Old(agvUrl, postData);
|
string res = http.HttpPost_Old(agvSchedulingTaskUrl, postData);
|
||||||
LogHelper.WriteLogInfo("调用AGV生成任务单接口返回" + res, LogHelper.Log_Type.INFO);
|
LogHelper.WriteLogInfo("调用AGV生成任务单接口返回" + res, LogHelper.Log_Type.INFO);
|
||||||
if (!string.IsNullOrEmpty(res))
|
if (!string.IsNullOrEmpty(res))
|
||||||
{
|
{
|
||||||
@ -41,6 +42,7 @@ namespace Epost.Common
|
|||||||
{
|
{
|
||||||
LogHelper.WriteLogInfo("调用AGV生成任务单接口返回失败", LogHelper.Log_Type.ERROR);
|
LogHelper.WriteLogInfo("调用AGV生成任务单接口返回失败", LogHelper.Log_Type.ERROR);
|
||||||
}
|
}
|
||||||
|
string resinfo = JsonHelper.SerializeObject(resmodel);
|
||||||
|
|
||||||
return resmodel;
|
return resmodel;
|
||||||
}
|
}
|
||||||
|
@ -124,5 +124,51 @@ namespace Epost.Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 绑定解绑
|
||||||
|
|
||||||
|
public class bindCtnrAndBinReq
|
||||||
|
{
|
||||||
|
public string reqCode { get; set; }
|
||||||
|
public string reqTime { get; set; }
|
||||||
|
public string clientCode { get; set; }
|
||||||
|
public string tokenCode { get; set; }
|
||||||
|
public string ctnrCode { get; set; }
|
||||||
|
public string ctnrTyp { get; set; }
|
||||||
|
public string stgBinCode { get; set; }
|
||||||
|
public string positionCode { get; set; }
|
||||||
|
public string indBind { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class bindCtnrAndBinResponse
|
||||||
|
{
|
||||||
|
public string code { get; set; }
|
||||||
|
public string data { get; set; }
|
||||||
|
public bool interrupt { get; set; }
|
||||||
|
public string reqCode { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 告警上报
|
||||||
|
|
||||||
|
public class warnCallbackReq
|
||||||
|
{
|
||||||
|
public string reqCode { get; set; }
|
||||||
|
public string reqTime { get; set; }
|
||||||
|
public string clientCode { get; set; }
|
||||||
|
public string tokenCode { get; set; }
|
||||||
|
public List<warnCallbackData> data { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class warnCallbackData
|
||||||
|
{
|
||||||
|
public string robotCode { get; set; }
|
||||||
|
public string beginDate { get; set; }
|
||||||
|
public string warnContent { get; set; }
|
||||||
|
public string taskCode { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
@ -6,7 +6,9 @@ using System.Threading.Tasks;
|
|||||||
|
|
||||||
namespace Epost.Model
|
namespace Epost.Model
|
||||||
{
|
{
|
||||||
|
#region 生成任务
|
||||||
|
|
||||||
|
#endregion
|
||||||
public class TaskModel
|
public class TaskModel
|
||||||
{
|
{
|
||||||
public TaskData data { get; set; }
|
public TaskData data { get; set; }
|
||||||
@ -155,4 +157,64 @@ namespace Epost.Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
#region 任务执行通知接口
|
||||||
|
|
||||||
|
public class wmsCallbackModel
|
||||||
|
{
|
||||||
|
public callback data { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class callback
|
||||||
|
{
|
||||||
|
public List<callbackHeader> header { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class callbackHeader
|
||||||
|
{
|
||||||
|
public string warehouseId { get; set; }
|
||||||
|
public string groupTaskId { get; set; }
|
||||||
|
public string wmsDocNo { get; set; }
|
||||||
|
public string reqCode { get; set; }
|
||||||
|
public string reqTime { get; set; }
|
||||||
|
public string method { get; set; }
|
||||||
|
public string currentPositionCode { get; set; }
|
||||||
|
public string robotCode { get; set; }
|
||||||
|
public string taskCode { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 告警
|
||||||
|
|
||||||
|
public class agvexTaskReq
|
||||||
|
{
|
||||||
|
public agvexTaskData data { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class agvexTaskData
|
||||||
|
{
|
||||||
|
public List<agvexTaskHeader> header { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class agvexTaskHeader
|
||||||
|
{
|
||||||
|
public string reqCode { get; set; }
|
||||||
|
public string reqTime { get; set; }
|
||||||
|
public string clientCode { get; set; }
|
||||||
|
public string tokenCode { get; set; }
|
||||||
|
public string notes { get; set; }
|
||||||
|
public List<agvexTaskList> list { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class agvexTaskList
|
||||||
|
{
|
||||||
|
public string robotCode { get; set; }
|
||||||
|
public string taskCode { get; set; }
|
||||||
|
public string beginDate { get; set; }
|
||||||
|
public string warnContent { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
|
@ -4,51 +4,159 @@ using Epost.DAL.Cache;
|
|||||||
using Epost.Model;
|
using Epost.Model;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Configuration;
|
||||||
|
using System.Data;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
using System.Web.Helpers;
|
using System.Web.Helpers;
|
||||||
using System.Web.Http;
|
using System.Web.Http;
|
||||||
|
using static System.Net.WebRequestMethods;
|
||||||
|
|
||||||
namespace Epost.DPS.Controllers
|
namespace Epost.DPS.Controllers
|
||||||
{
|
{
|
||||||
[RoutePrefix("api/AgvTaskApi")]
|
[RoutePrefix("api/AgvTaskApi")]//agv=>WCS
|
||||||
public class AgvTaskApiController : ApiController
|
public class AgvTaskApiController : ApiController
|
||||||
{
|
{
|
||||||
|
Sys_operate_logBLL logBLL = new Sys_operate_logBLL();
|
||||||
InboundOrdersBLL inboundBLL = new InboundOrdersBLL();
|
InboundOrdersBLL inboundBLL = new InboundOrdersBLL();
|
||||||
|
string agvCallbackUrl = ConfigurationManager.AppSettings["agvCallbackUrl"];
|
||||||
|
string agvexTaskUrl = ConfigurationManager.AppSettings["agvexTaskUrl"];
|
||||||
|
|
||||||
|
HttpHelper http = new HttpHelper();
|
||||||
|
AgvHelper agv = new AgvHelper();
|
||||||
[Route("agvCallback")]
|
[Route("agvCallback")]
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public AgvResultModel agvCallback([FromBody]agvCallbackModel data)
|
public AgvResultModel agvCallback([FromBody] agvCallbackModel data)
|
||||||
{
|
{
|
||||||
AgvResultModel retModel = new AgvResultModel();
|
AgvResultModel retModel = new AgvResultModel();
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
LogHelper.WriteLogInfo("请求报文" + JsonHelper.SerializeObject(data));
|
LogHelper.WriteLogInfo("agvCallback请求报文" + JsonHelper.SerializeObject(data));
|
||||||
string state = string.Empty;
|
string state = string.Empty;
|
||||||
if (data.method == "start")
|
if (data.method == "start")
|
||||||
{
|
{
|
||||||
state = "2";//任务开始启动
|
state = "2";//任务开始启动
|
||||||
}
|
}
|
||||||
else if (data.method == "outbin") {
|
else if (data.method == "outbin")
|
||||||
|
{
|
||||||
state = "3";//走出储位
|
state = "3";//走出储位
|
||||||
}
|
}
|
||||||
else if (data.method == "end")
|
else if (data.method == "end")
|
||||||
{
|
{
|
||||||
state = "4";
|
state = "4";
|
||||||
//更新任务已完成
|
//更新任务已完成
|
||||||
|
DataTable dt = inboundBLL.GetInOrderList(" and agvid ='" + data.taskCode + "'");
|
||||||
|
if (dt != null && dt.Rows.Count > 0)
|
||||||
|
{
|
||||||
|
wmsCallbackModel backModel = new wmsCallbackModel();
|
||||||
|
List<callbackHeader> list = new List<callbackHeader>();
|
||||||
|
callbackHeader headModel = new callbackHeader();
|
||||||
|
headModel.warehouseId = dt.Rows[0]["warehouseId"].ToString();
|
||||||
|
headModel.groupTaskId = dt.Rows[0]["groupTaskId"].ToString();
|
||||||
|
headModel.wmsDocNo = dt.Rows[0]["wmsDocNo"].ToString();
|
||||||
|
headModel.currentPositionCode = data.currentPositionCode;
|
||||||
|
headModel.robotCode = data.robotCode;
|
||||||
|
headModel.taskCode = data.taskCode;
|
||||||
|
headModel.method = data.method;
|
||||||
|
headModel.reqCode = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString();
|
||||||
|
headModel.reqTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
|
callback back = new callback();
|
||||||
|
list.Add(headModel);
|
||||||
|
back.header = list;
|
||||||
|
backModel.data = back;
|
||||||
|
string reqstr = JsonHelper.SerializeObject(backModel);
|
||||||
|
LogHelper.WriteLogInfo("WCS->WMS任务执行通知请求:" + reqstr + "===" + agvCallbackUrl);
|
||||||
|
string resultStr = http.HttpPost_Old(agvCallbackUrl, reqstr);
|
||||||
|
LogHelper.WriteLogInfo("WCS->WMS任务执行通知返回:" + resultStr);
|
||||||
|
|
||||||
|
logBLL.InsertLog("WCS->WMS任务执行通知", "agvCallback", agvCallbackUrl, reqstr, resultStr, 0, "", DateTime.Now);
|
||||||
|
//if (!string.IsNullOrEmpty(resultStr))
|
||||||
|
//{
|
||||||
|
// RetMesModel resModel = JsonHelper.DeserializeObject<RetMesModel>(resultStr);
|
||||||
|
// if (resModel.Response.returnnode.returnCode == "0000")
|
||||||
|
// {
|
||||||
|
// LogHelper.WriteLogInfo("WCS->WMS任务执行通知成功");
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// LogHelper.WriteLogInfo("WCS->WMS任务执行通知失败");
|
||||||
|
// }
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
else if (data.method == "cancel") {
|
}
|
||||||
|
else if (data.method == "cancel")
|
||||||
|
{
|
||||||
state = "88";
|
state = "88";
|
||||||
}
|
}
|
||||||
else { }
|
else { }
|
||||||
|
|
||||||
inboundBLL.UpInOrderListByAgvid(data.taskCode,state);
|
inboundBLL.UpInOrderListByAgvid(data.taskCode, state);
|
||||||
//ResultMessageModel data = new ResultMessageModel();
|
|
||||||
//data.Parameter = model.reqCode;
|
retModel.message = "成功!";
|
||||||
//data.Status = model.method;
|
retModel.code = "0";
|
||||||
//data.Address = model.taskCode;
|
retModel.reqCode = data.reqCode;
|
||||||
//JobCache.UpdateJobDownModelList(new List<ResultMessageModel>() { data }, EdownCommend.Create);
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
LogHelper.WriteLogInfo("agvCallback异常:" + ex.ToString(), LogHelper.Log_Type.ERROR);
|
||||||
|
retModel.message = "请求接口异常!";
|
||||||
|
retModel.code = "-1";
|
||||||
|
retModel.reqCode = data.reqCode;
|
||||||
|
}
|
||||||
|
string resinfo = JsonHelper.SerializeObject(retModel);
|
||||||
|
logBLL.InsertLog("AGV上报WCS", "agvCallback", "/api/AgvTaskApi/agvCallback", JsonHelper.SerializeObject(data), resinfo, 0, "", DateTime.Now);
|
||||||
|
return retModel;
|
||||||
|
}
|
||||||
|
|
||||||
|
[Route("warnCallback")]
|
||||||
|
[HttpPost]
|
||||||
|
public AgvResultModel warnCallback([FromBody]warnCallbackReq data)
|
||||||
|
{
|
||||||
|
AgvResultModel retModel = new AgvResultModel();
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LogHelper.WriteLogInfo("warnCallback请求报文" + JsonHelper.SerializeObject(data));
|
||||||
|
|
||||||
|
//DataTable dt = inboundBLL.GetInOrderList(" and agvid ='" + data.taskCode + "'");
|
||||||
|
//if (dt != null && dt.Rows.Count > 0)
|
||||||
|
//{
|
||||||
|
agvexTaskReq backModel = new agvexTaskReq();
|
||||||
|
agvexTaskData taskdata = new agvexTaskData();
|
||||||
|
List<agvexTaskList> taskList = new List<agvexTaskList>();
|
||||||
|
agvexTaskHeader agvexHeader = new agvexTaskHeader();
|
||||||
|
List<agvexTaskHeader> headerlist = new List<agvexTaskHeader>();
|
||||||
|
List<warnCallbackData> datalist = data.data;
|
||||||
|
if (datalist.Any())
|
||||||
|
{
|
||||||
|
foreach (warnCallbackData item in datalist)
|
||||||
|
{
|
||||||
|
agvexTaskList agvextmodel = new agvexTaskList();
|
||||||
|
agvextmodel.robotCode = item.robotCode;
|
||||||
|
agvextmodel.taskCode = item.taskCode;
|
||||||
|
agvextmodel.beginDate = item.beginDate;
|
||||||
|
agvextmodel.warnContent = item.warnContent;
|
||||||
|
taskList.Add(agvextmodel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
agvexHeader.list = taskList;
|
||||||
|
agvexHeader.clientCode = data.clientCode;
|
||||||
|
agvexHeader.reqCode = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString();
|
||||||
|
agvexHeader.reqTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
|
||||||
|
headerlist.Add(agvexHeader);
|
||||||
|
taskdata.header = headerlist;
|
||||||
|
backModel.data = taskdata;
|
||||||
|
|
||||||
|
string reqstr = JsonHelper.SerializeObject(backModel);
|
||||||
|
LogHelper.WriteLogInfo("WCS->WMS告警通知请求:" + reqstr + "===" + agvexTaskUrl);
|
||||||
|
string resultStr = http.HttpPost_Old(agvexTaskUrl, reqstr);
|
||||||
|
LogHelper.WriteLogInfo("WCS->WMS告警通知返回:" + resultStr);
|
||||||
|
|
||||||
|
logBLL.InsertLog("WCS->WMS告警通知", "warnCallback", agvexTaskUrl, reqstr, resultStr, 0, "", DateTime.Now);
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
retModel.message = "成功!";
|
retModel.message = "成功!";
|
||||||
retModel.code = "0";
|
retModel.code = "0";
|
||||||
retModel.reqCode = data.reqCode;
|
retModel.reqCode = data.reqCode;
|
||||||
@ -60,7 +168,8 @@ namespace Epost.DPS.Controllers
|
|||||||
retModel.code = "-1";
|
retModel.code = "-1";
|
||||||
retModel.reqCode = data.reqCode;
|
retModel.reqCode = data.reqCode;
|
||||||
}
|
}
|
||||||
|
string resinfo = JsonHelper.SerializeObject(retModel);
|
||||||
|
logBLL.InsertLog("AGV上报WCS", "agvCallback", "/api/AgvTaskApi/agvCallback", JsonHelper.SerializeObject(data), resinfo, 0, "", DateTime.Now);
|
||||||
return retModel;
|
return retModel;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,21 +3,27 @@ using Epost.Common;
|
|||||||
using Epost.Model;
|
using Epost.Model;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Configuration;
|
||||||
using System.Data;
|
using System.Data;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Net.Http;
|
using System.Net.Http;
|
||||||
using System.Web.Http;
|
using System.Web.Http;
|
||||||
|
using static System.Net.WebRequestMethods;
|
||||||
|
|
||||||
namespace Epost.DPS.Controllers
|
namespace Epost.DPS.Controllers
|
||||||
{
|
{
|
||||||
[RoutePrefix("api/TaskAPI")]
|
[RoutePrefix("api/TaskAPI")]//WMS=>WCS
|
||||||
public class TaskAPIController : ApiController
|
public class TaskAPIController : ApiController
|
||||||
{
|
{
|
||||||
InboundOrdersBLL inOrderBLL = new InboundOrdersBLL();
|
InboundOrdersBLL inOrderBLL = new InboundOrdersBLL();
|
||||||
PalletinfoBLL palletBLL = new PalletinfoBLL();
|
PalletinfoBLL palletBLL = new PalletinfoBLL();
|
||||||
Sys_operate_logBLL logBLL = new Sys_operate_logBLL();
|
Sys_operate_logBLL logBLL = new Sys_operate_logBLL();
|
||||||
[Route("agvPutTask")]
|
|
||||||
|
HttpHelper http = new HttpHelper();
|
||||||
|
AgvHelper agv = new AgvHelper();
|
||||||
|
string bindCtnrAndBinUrl = ConfigurationManager.AppSettings["bindCtnrAndBinUrl"];
|
||||||
|
[Route("agvPutTask")]//WMS=>WCS生成任务接口
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public RetMesModel agvPutTask([FromBody] TaskModel model)
|
public RetMesModel agvPutTask([FromBody] TaskModel model)
|
||||||
{
|
{
|
||||||
@ -210,7 +216,7 @@ namespace Epost.DPS.Controllers
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
[Route("agvCancleTask")]
|
[Route("agvCancleTask")]//WMS=>WCS取消任务
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public RetMesModel agvCancleTask([FromBody]AgvCancleModel model)
|
public RetMesModel agvCancleTask([FromBody]AgvCancleModel model)
|
||||||
{
|
{
|
||||||
@ -237,10 +243,19 @@ namespace Epost.DPS.Controllers
|
|||||||
if (orderdt != null && orderdt.Rows.Count > 0)
|
if (orderdt != null && orderdt.Rows.Count > 0)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
bool bo= inOrderBLL.UpInOrderList(orderdt.Rows[0]["id"].ToString(), "88", "");
|
||||||
|
if (bo)
|
||||||
|
{
|
||||||
res.returnCode = "0000";
|
res.returnCode = "0000";
|
||||||
res.returnDesc = "成功!";
|
res.returnDesc = "成功!";
|
||||||
res.returnFlag = "1";
|
res.returnFlag = "1";
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
res.returnCode = "0001";
|
||||||
|
res.returnDesc = "取消失败!!";
|
||||||
|
res.returnFlag = "0";
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -268,13 +283,13 @@ namespace Epost.DPS.Controllers
|
|||||||
response.returnnode = res;
|
response.returnnode = res;
|
||||||
retMes.Response = response;
|
retMes.Response = response;
|
||||||
string resinfo = JsonHelper.SerializeObject(retMes) ;
|
string resinfo = JsonHelper.SerializeObject(retMes) ;
|
||||||
logBLL.InsertLog("取消任务接口", "agvCancleTask", "/api/TaskAPI/agvCancleTask", JsonHelper.SerializeObject(model), resinfo, 0, res.returnDesc, DateTime.Now);
|
logBLL.InsertLog("WMS=>WCS取消任务接口", "agvCancleTask", "/api/TaskAPI/agvCancleTask", JsonHelper.SerializeObject(model), resinfo, 0, res.returnDesc, DateTime.Now);
|
||||||
return retMes;
|
return retMes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[Route("agvBindPodAndBerth")]
|
[Route("agvBindPodAndBerth")]//WMS=>WCS绑定解绑
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public RetMesModel agvBindPodAndBerth([FromBody] agvBindPodModel model)
|
public RetMesModel agvBindPodAndBerth([FromBody] agvBindPodModel model)
|
||||||
{
|
{
|
||||||
@ -297,12 +312,36 @@ namespace Epost.DPS.Controllers
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
bindCtnrAndBinReq reqModel = new bindCtnrAndBinReq();
|
||||||
|
reqModel.reqCode = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString();
|
||||||
|
reqModel.ctnrTyp = "1";//agv提供
|
||||||
|
reqModel.indBind = item.indBind;
|
||||||
|
string agvloc = inOrderBLL.GetLocation(" and wmsloc = '" + item.positionCode + "'");
|
||||||
|
reqModel.stgBinCode = agvloc;
|
||||||
|
if (item.indBind == "1")
|
||||||
|
{
|
||||||
|
reqModel.ctnrCode = agvloc;
|
||||||
|
}
|
||||||
|
string reqstr = JsonHelper.SerializeObject(reqModel);
|
||||||
|
string resultStr = http.HttpPost_Old(bindCtnrAndBinUrl, reqstr);
|
||||||
|
//string resultStr = "{\"code\":\"0\",\"data\":\"\",\"interrupt\":false,\"reqCode\":\"66ee6\"}";
|
||||||
|
logBLL.InsertLog("WCS->AGV绑定解绑", "bindCtnrAndBin", bindCtnrAndBinUrl, reqstr, resultStr, 0, "", DateTime.Now);
|
||||||
|
if (!string.IsNullOrEmpty(resultStr))
|
||||||
|
{
|
||||||
|
bindCtnrAndBinResponse resModel = JsonHelper.DeserializeObject<bindCtnrAndBinResponse>(resultStr);
|
||||||
|
if (resModel.code == "0")
|
||||||
|
{
|
||||||
|
|
||||||
res.returnCode = "0000";
|
res.returnCode = "0000";
|
||||||
res.returnDesc = "成功!";
|
res.returnDesc = "绑定/解绑成功!";
|
||||||
res.returnFlag = "1";
|
res.returnFlag = "1";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
res.returnCode = "0000";
|
||||||
|
res.returnDesc = "绑定/解绑失败!";
|
||||||
|
res.returnFlag = "1";
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -311,6 +350,7 @@ namespace Epost.DPS.Controllers
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
LogHelper.WriteLogInfo("agvBindPodAndBerth异常:" + ex.ToString(), LogHelper.Log_Type.ERROR);
|
LogHelper.WriteLogInfo("agvBindPodAndBerth异常:" + ex.ToString(), LogHelper.Log_Type.ERROR);
|
||||||
@ -322,7 +362,7 @@ namespace Epost.DPS.Controllers
|
|||||||
response.returnnode = res;
|
response.returnnode = res;
|
||||||
retMes.Response = response;
|
retMes.Response = response;
|
||||||
string resinfo = JsonHelper.SerializeObject(retMes);
|
string resinfo = JsonHelper.SerializeObject(retMes);
|
||||||
logBLL.InsertLog("agv绑定解绑接口", "agvBindPodAndBerth", "/api/TaskAPI/agvBindPodAndBerth", JsonHelper.SerializeObject(model), resinfo, 0, res.returnDesc, DateTime.Now);
|
logBLL.InsertLog("WMS=>WCS绑定解绑接口", "agvBindPodAndBerth", "/api/TaskAPI/agvBindPodAndBerth", JsonHelper.SerializeObject(model), resinfo, 0, res.returnDesc, DateTime.Now);
|
||||||
return retMes;
|
return retMes;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
<WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
|
<WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
|
||||||
<WebStackScaffolding_ViewDialogWidth>600</WebStackScaffolding_ViewDialogWidth>
|
<WebStackScaffolding_ViewDialogWidth>600</WebStackScaffolding_ViewDialogWidth>
|
||||||
<NameOfLastUsedPublishProfile>E:\WORK\代码管理\T系列\播种\Epost.TestToolsWeb\Properties\PublishProfiles\Toolsweb.pubxml</NameOfLastUsedPublishProfile>
|
<NameOfLastUsedPublishProfile>E:\WORK\代码管理\T系列\播种\Epost.TestToolsWeb\Properties\PublishProfiles\Toolsweb.pubxml</NameOfLastUsedPublishProfile>
|
||||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||||
<Use64BitIISExpress />
|
<Use64BitIISExpress />
|
||||||
<IISExpressSSLPort />
|
<IISExpressSSLPort />
|
||||||
<IISExpressAnonymousAuthentication />
|
<IISExpressAnonymousAuthentication />
|
||||||
@ -21,5 +21,29 @@
|
|||||||
<Controller_SelectedScaffolderID>ApiControllerEmptyScaffolder</Controller_SelectedScaffolderID>
|
<Controller_SelectedScaffolderID>ApiControllerEmptyScaffolder</Controller_SelectedScaffolderID>
|
||||||
<Controller_SelectedScaffolderCategoryPath>root/Common/Web API</Controller_SelectedScaffolderCategoryPath>
|
<Controller_SelectedScaffolderCategoryPath>root/Common/Web API</Controller_SelectedScaffolderCategoryPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ProjectExtensions />
|
<ProjectExtensions>
|
||||||
|
<VisualStudio>
|
||||||
|
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
|
||||||
|
<WebProjectProperties>
|
||||||
|
<StartPageUrl>
|
||||||
|
</StartPageUrl>
|
||||||
|
<StartAction>CurrentPage</StartAction>
|
||||||
|
<AspNetDebugging>True</AspNetDebugging>
|
||||||
|
<SilverlightDebugging>False</SilverlightDebugging>
|
||||||
|
<NativeDebugging>False</NativeDebugging>
|
||||||
|
<SQLDebugging>False</SQLDebugging>
|
||||||
|
<ExternalProgram>
|
||||||
|
</ExternalProgram>
|
||||||
|
<StartExternalURL>
|
||||||
|
</StartExternalURL>
|
||||||
|
<StartCmdLineArguments>
|
||||||
|
</StartCmdLineArguments>
|
||||||
|
<StartWorkingDirectory>
|
||||||
|
</StartWorkingDirectory>
|
||||||
|
<EnableENC>True</EnableENC>
|
||||||
|
<AlwaysStartWebServerOnDebug>False</AlwaysStartWebServerOnDebug>
|
||||||
|
</WebProjectProperties>
|
||||||
|
</FlavorProperties>
|
||||||
|
</VisualStudio>
|
||||||
|
</ProjectExtensions>
|
||||||
</Project>
|
</Project>
|
@ -22,7 +22,7 @@ namespace Epost.TestToolsWeb
|
|||||||
public class MvcApplication : System.Web.HttpApplication
|
public class MvcApplication : System.Web.HttpApplication
|
||||||
{
|
{
|
||||||
InboundOrdersBLL inboundBLL = new InboundOrdersBLL();
|
InboundOrdersBLL inboundBLL = new InboundOrdersBLL();
|
||||||
|
AgvHelper agv = new AgvHelper();
|
||||||
protected void Application_Start()
|
protected void Application_Start()
|
||||||
{
|
{
|
||||||
AreaRegistration.RegisterAllAreas();
|
AreaRegistration.RegisterAllAreas();
|
||||||
@ -43,7 +43,7 @@ namespace Epost.TestToolsWeb
|
|||||||
if (dt != null && dt.Rows.Count > 0)
|
if (dt != null && dt.Rows.Count > 0)
|
||||||
{
|
{
|
||||||
foreach (DataRow row in dt.Rows) {
|
foreach (DataRow row in dt.Rows) {
|
||||||
AgvHelper agv = new AgvHelper();
|
|
||||||
AgvSchedulingTaskModel reqmodel = new AgvSchedulingTaskModel();
|
AgvSchedulingTaskModel reqmodel = new AgvSchedulingTaskModel();
|
||||||
reqmodel.reqCode =DateTime.Now.Month+DateTime.Now.Day+ row["id"].ToString();;
|
reqmodel.reqCode =DateTime.Now.Month+DateTime.Now.Day+ row["id"].ToString();;
|
||||||
List<Positioncodepath> positionList = new List<Positioncodepath>();
|
List<Positioncodepath> positionList = new List<Positioncodepath>();
|
||||||
|
@ -33,8 +33,13 @@
|
|||||||
<add key="CARID" value="HT01" />
|
<add key="CARID" value="HT01" />
|
||||||
<add key="ServerAPIURL" value="http://192.168.0.20:8045/api/WebAPI" />
|
<add key="ServerAPIURL" value="http://192.168.0.20:8045/api/WebAPI" />
|
||||||
<add key="SleepTime" value="1" />
|
<add key="SleepTime" value="1" />
|
||||||
<add key="agvUrl" value="http://192.168.0.20:8045/api/WebAPI/ProcessingResult"/>
|
|
||||||
|
|
||||||
|
<!--wcs->agv绑定解绑-->
|
||||||
|
<add key="bindCtnrAndBinUrl" value="http://172.18.26.26:8182/rcms/services/rest/hikRpcService/bindCtnrAndBin" />
|
||||||
|
<!--wcs->wms任务执行通知-->
|
||||||
|
<add key="agvCallbackUrl" value="http://172.18.26.30:18080/datahubjson/ZYZY_AGV/?method=agvCallback" />
|
||||||
|
<!--wcs->wms告警-->
|
||||||
|
<add key="agvexTaskUrl" value="http://172.18.26.30:18080/datahubjson/ZYZY_AGV/?method=agvexTask" />
|
||||||
</appSettings>
|
</appSettings>
|
||||||
<!--
|
<!--
|
||||||
有关 web.config 更改的说明,请参见 http://go.microsoft.com/fwlink/?LinkId=235367。
|
有关 web.config 更改的说明,请参见 http://go.microsoft.com/fwlink/?LinkId=235367。
|
||||||
|
Reference in New Issue
Block a user