using HH.WCS.Hexafluo.process;
|
using HH.WCS.Hexafluo.util;
|
using HH.WCS.Hexafluo.wms;
|
using Newtonsoft.Json;
|
using System.Collections.Generic;
|
|
namespace HH.WCS.Hexafluo.dispatch
|
{
|
/// <summary>
|
/// 天目系统任务下达
|
/// </summary>
|
public class TmToAGV
|
{
|
private static readonly HttpHelper apiHelper = new HttpHelper();
|
private static readonly string baseUrl = Settings.TmHelperList;
|
public static TmResult GetIO(WMSTask mst, int start, int end)
|
{
|
if (string.IsNullOrEmpty(baseUrl))
|
{
|
LogHelper.Info("未获取到配置文件中天目系统端口地址");
|
}
|
string Start = start.ToString();
|
int at = start.ToString().Length;
|
if (start.ToString().Length < 4)
|
{
|
for (int i = 0; i < 4 - at; i++)
|
{
|
Start = "0" + Start;
|
}
|
}
|
|
string End = end.ToString();
|
int ct = End.ToString().Length;
|
if (End.ToString().Length < 4)
|
{
|
for (int i = 0; i < 4 - ct; i++)
|
{
|
End = "0" + End;
|
}
|
}
|
var interactInfo = new
|
{
|
//orderNo = mst.S_TASK_NO.Trim(),
|
//priority = mst.N_PRIORITY,
|
//orderType = 2,
|
// circulation=1,
|
orderSequence = new List<object>(){
|
new{
|
// intendedVehicle="",
|
destinations=new List<object>()
|
{
|
new
|
{
|
locationName="Location-"+Start,
|
operation="Floor0_Take"
|
}
|
}
|
},
|
new
|
{
|
// intendedVehicle="",
|
destinations = new List < object >() {
|
new
|
{
|
locationName ="Location-"+End,
|
operation= "Floor0_Place"
|
}
|
}
|
}
|
}
|
};
|
LogHelper.Info(" 下达天目系统订单 地址为:" + baseUrl + "v1/orderByTS" + " 参数为:" + JsonConvert.SerializeObject(interactInfo));
|
var result = apiHelper.Post(baseUrl + "v1/orderByTS", JsonConvert.SerializeObject(interactInfo));
|
LogHelper.Info("系统返回:" + JsonConvert.SerializeObject(result));
|
var data = JsonConvert.DeserializeObject<TmResult>(result);
|
if (data == null)
|
{
|
TmResult tr = new TmResult();
|
tr.success = false;
|
tr.msg = "无法访问天目系统接口,获取的参数为空";
|
LogHelper.Info("无法访问天目系统接口,获取的参数为空");
|
return tr;
|
}
|
else
|
{
|
return data;
|
}
|
|
}
|
|
public static TmreturnData SeleState(string TaskNo)
|
{
|
LogHelper.Info(" 查询天目系统订单 地址为:" + baseUrl + "v1/transportStructureOrder/" + TaskNo);
|
var result = apiHelper.Get(baseUrl + "v1/transportStructureOrder/" + TaskNo);
|
LogHelper.Info("查询系统返回:" + JsonConvert.SerializeObject(result));
|
if (result == null)
|
{
|
TmreturnData da = new TmreturnData();
|
da.success = false;
|
da.msg = "无法访问天目系统接口,获取的参数为空";
|
LogHelper.Info("无法访问天目系统接口,获取的参数为空");
|
return da;
|
}
|
else
|
{
|
return JsonConvert.DeserializeObject<TmreturnData>(result);
|
}
|
|
}
|
|
public static TmResult DeleAgv(string TaskNo)
|
{
|
LogHelper.Info("取消订单天目系统订单 地址为:" + baseUrl + "v1/orderByTS/withdrawalTSOrderByOrderNo/" + TaskNo + "/true");
|
var result = apiHelper.Post(baseUrl + "v1/orderByTS/withdrawalTSOrderByOrderNo/" + TaskNo + "/true", "");
|
LogHelper.Info("取消订单天目系统返回:" + JsonConvert.SerializeObject(result));
|
var data = JsonConvert.DeserializeObject<TmResult>(result);
|
return data;
|
}
|
public class TmResult
|
{
|
public bool success { get; set; }
|
|
public string error_code { get; set; }
|
|
public string msg { get; set; }
|
|
public string data { get; set; }
|
}
|
}
|
}
|