using Newtonsoft.Json;
|
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
|
using WIDESEA_Comm.MES_Info;
|
using WIDESEA_Comm.MES_Info.Request;
|
using WIDESEA_Common;
|
using WIDESEA_Entity.DomainModels;
|
using WIDESEA_Entity.ToAGV;
|
using static WIDESEA_Comm.MES_Info.BasicSN;
|
|
namespace WIDESEA_WMS.Common.AGVTask
|
{
|
public class HandleTask_Mes
|
{
|
public void UploadMESInfo(dt_agvtask task)
|
{
|
try
|
{
|
object obj = new object(); //上传MES数据
|
string ActionName = ""; //调用MES方法名
|
List<detail> list = new List<detail>(); //车轮信息
|
if (task == null)
|
{
|
throw new Exception("无任务数据");
|
}
|
foreach (var item in task.bindSN.Split(","))
|
{
|
detail detail = new detail();
|
detail.sn = item;
|
list.Add(detail);
|
}
|
|
if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Outbound.ToString() || task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceOutbound.ToString())
|
{
|
agvOutWarehousePara outWarehousePara = new agvOutWarehousePara()
|
{
|
JobID = task.jobID,
|
details = list
|
};
|
obj = outWarehousePara;
|
ActionName = "agvOutWarehouse";
|
}
|
else if (task.agv_tasktype == AGVTaskTypeEnum.TaskType_Inbound.ToString() || task.agv_tasktype == AGVTaskTypeEnum.TaskType_OutsourceInbound.ToString())
|
{
|
agvInWarehousePara inWarehousePara = new agvInWarehousePara()
|
{
|
details = list,
|
JobID = task.jobID,
|
layerNo = 1,
|
stackID = task.agv_barcode,
|
warehouseName = "Agv库",
|
zoneID = task.agv_toaddress,
|
};
|
obj = inWarehousePara;
|
ActionName = "agvInWarehouse";
|
}
|
else if (task.agv_tasktype == "Transfer") //移库区分 库内移库/外协移库
|
{
|
agvMoveWarehousePara moveWarehousePara = new agvMoveWarehousePara()
|
{
|
details = list,
|
fromLayerNo = "1",
|
fromStackID = "",
|
fromWarehouseName = "Agv库",
|
fromZoneID = task.agv_fromaddress,
|
toLayerNo = "1",
|
toStackID = "",
|
toWarehouseName = "Agv库",
|
toZoneID = task.agv_toaddress,
|
};
|
obj = moveWarehousePara;
|
ActionName = "agvMoveWarehouse";
|
}
|
//else if (task.agv_tasktype == "Transfer")
|
//{
|
|
//}
|
|
var postJson = JsonConvert.SerializeObject(obj);
|
string mesData = Request.RequestData(postJson, MESAPIAddress.IPAddress_MES + ActionName);
|
var requestMes = JsonConvert.DeserializeObject<MES_Response>(mesData);
|
|
if (requestMes.code == "200" && requestMes.Type == "success")
|
{
|
//日志记录上传数据成功
|
}
|
|
}
|
catch (Exception ex)
|
{
|
throw new Exception(ex.Message);
|
}
|
}
|
}
|
}
|