Commit 8a337f3a 张东亮

1

1 个父辈 5d31128f
...@@ -37,7 +37,7 @@ namespace DeviceLibrary ...@@ -37,7 +37,7 @@ namespace DeviceLibrary
AgvStateTimer = new System.Timers.Timer AgvStateTimer = new System.Timers.Timer
{ {
Interval = 5000, Interval = 3000,
AutoReset = true, AutoReset = true,
Enabled = false Enabled = false
}; };
...@@ -85,6 +85,19 @@ namespace DeviceLibrary ...@@ -85,6 +85,19 @@ namespace DeviceLibrary
{ {
if (!CheckOnline(i)) continue; if (!CheckOnline(i)) continue;
bool change = false; bool change = false;
//if (Context.agvInfo[i].IsUse && Context.agvInfo[i].CurJob != null && Context.agvInfo[i].CurTaskID.Equals(-1))
//{
// if (!MiR_API.Get_Fleet_Mission_Info(Context.agvInfo[i]))
// {
// Context.agvInfo[i].CurJob.ResendTask(Context.agvInfo[i]);
// LogUtil.info($"{Context.agvInfo[i].Name}:Task=-1处理,Fleet无任务,重发任务:{Context.agvInfo[i].CurTaskName}");
// }
// else
// {
// LogUtil.info($"{Context.agvInfo[i].Name}:Task=-1处理,Fleet有任务,手动赋值FleetTaskID={Context.agvInfo[i].CurTaskID}");
// }
//}
MiR_API.Get_Task_State(Context.agvInfo[i], out string stateStr); MiR_API.Get_Task_State(Context.agvInfo[i], out string stateStr);
Thread.Sleep(50); Thread.Sleep(50);
//获取AGV状态 //获取AGV状态
......
...@@ -134,7 +134,7 @@ namespace DeviceLibrary ...@@ -134,7 +134,7 @@ namespace DeviceLibrary
/// <summary> /// <summary>
/// 当前任务的ID号 /// 当前任务的ID号
/// </summary> /// </summary>
public int CurTaskID { get; set; } = -1; public long CurTaskID { get; set; } = -1;
public string CurTaskState { get; set; } = ""; public string CurTaskState { get; set; } = "";
/// <summary> /// <summary>
...@@ -454,6 +454,12 @@ namespace DeviceLibrary ...@@ -454,6 +454,12 @@ namespace DeviceLibrary
public bool AssignTask(string taskName) public bool AssignTask(string taskName)
{ {
bool rtn=false; bool rtn=false;
if(this.isCon)
{
StateKanban.SetCurTask(Context.showNameMissionName[taskName]);
LogUtil.info(string.Format("{0} 因离线分配{1}任务失败", Name, taskName));
return false;
}
if (Use_Fleet) if (Use_Fleet)
{ {
rtn = MiR_API.Add_Mission_Fleet(this, Context.agvMission[taskName]); rtn = MiR_API.Add_Mission_Fleet(this, Context.agvMission[taskName]);
......
...@@ -297,7 +297,44 @@ namespace DeviceLibrary ...@@ -297,7 +297,44 @@ namespace DeviceLibrary
return false; return false;
} }
} }
/// <summary>
/// 获取Fleet任务队列
/// </summary>
/// <param name="info"></param>
/// <param name="mission"></param>
/// <returns></returns>
public static bool Get_Fleet_Mission_Info(Agv_Info info)
{
try
{
string ip = AppConfigHelper.GetValue(SettingString.FLEET);
string url = "http://" + ip + "/api/v2.0.0/mission_scheduler/search";
string body = "{\"filters\" : [{\"fieldname\": \"description\", \"operator\": \"LIKE\", \"value\": \"" + info.CurTaskName + "-" + info.TimeStamp+ "\"}]}";
string json = HttpPost(url, info.IP, info.Authorization, body);
if (string.IsNullOrWhiteSpace(json)) return false;
JavaScriptSerializer serializer = new JavaScriptSerializer();
object[] obj = (object[])serializer.DeserializeObject(json);
if (obj == null) return false;
Dictionary<string, object> dic;
if (obj.Length > 0)
{
dic = (Dictionary<string, object>)obj[0];
info.CurTaskID = long.Parse(dic["id"].ToString());
if (info.CurTaskID == -1)
return false;
if (info.CurJob != null)
info.CurJob.CurTaskID = info.CurTaskID;
return true;
}
return false;
}
catch (Exception ex)
{
log.Error("Get_Mission_Queue", ex);
return false;
}
}
/// <summary> /// <summary>
/// 获取所有任务列表 /// 获取所有任务列表
/// </summary> /// </summary>
......
...@@ -17,7 +17,7 @@ namespace DeviceLibrary ...@@ -17,7 +17,7 @@ namespace DeviceLibrary
/// </summary> /// </summary>
public abstract Job Execute(Agv_Info agv); public abstract Job Execute(Agv_Info agv);
public int CurTaskID { get; set; } = -1; public long CurTaskID { get; set; } = -1;
/// <summary> /// <summary>
/// 当前的任务名称(与任务GUID对应) /// 当前的任务名称(与任务GUID对应)
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!