Commit 7e18084f 张东亮

移远成品在C1电梯交换料架后另一辆车接任务问题优化

1 个父辈 faf5080b
...@@ -9,6 +9,7 @@ using System.Threading.Tasks; ...@@ -9,6 +9,7 @@ using System.Threading.Tasks;
using System.Xml; using System.Xml;
using Common; using Common;
using DeviceLibrary.bean.agv; using DeviceLibrary.bean.agv;
using DeviceLibrary.lift;
using DeviceLibrary.manager; using DeviceLibrary.manager;
using log4net.Util; using log4net.Util;
using Newtonsoft.Json; using Newtonsoft.Json;
...@@ -257,26 +258,6 @@ namespace DeviceLibrary ...@@ -257,26 +258,6 @@ namespace DeviceLibrary
return false; return false;
} }
/// <summary> /// <summary>
/// 是否有成品满料车在电梯中准备送出
/// </summary>
/// <param name="liftname"></param>
/// <returns></returns>
public bool HasFinishedShelfInLift(out string liftname, out lift.LiftStatus liftStatus)
{
liftname = "";
liftStatus = null;
string[] lifts = Scope.Remark.Split(',');
foreach (string item in lifts)
{
if (lift.LiftContext.HasFinishedShelfNeedLeave(item, Client, out liftStatus))
{
liftname = item;
return true;
}
}
return false;
}
/// <summary>
/// 任务重发 /// 任务重发
/// </summary> /// </summary>
public void Resend() public void Resend()
......
using Common; using Common;
using DeviceLibrary.lift; using DeviceLibrary.lift;
using DeviceLibrary.manager; using DeviceLibrary.manager;
using DeviceLibrary.service.model;
using System.Reflection; using System.Reflection;
namespace DeviceLibrary.bean.job namespace DeviceLibrary.bean.job
...@@ -359,6 +360,12 @@ namespace DeviceLibrary.bean.job ...@@ -359,6 +360,12 @@ namespace DeviceLibrary.bean.job
if (agv.TaskRunState.CheckTaskFinished(agv)) if (agv.TaskRunState.CheckTaskFinished(agv))
{ {
JobRunStep.ToNextStep(RunStep.S1F_LiftD2ToLiftC1_20_02_TakeShelfOff); JobRunStep.ToNextStep(RunStep.S1F_LiftD2ToLiftC1_20_02_TakeShelfOff);
service.model.MissionInfo missionInfo = manager.MissionManager.GetMission(JobParam.LiftStatus.missionId);
if (missionInfo != null)
{
//任务状态变更
MissionManager.SetMissionState(missionInfo.missionId, service.model.MissionState.离开电梯, out string msg);
}
runInfo = $"到达{JobParam.CurTargetNode.AliceName}临时点2的放料点,准备放下料车"; runInfo = $"到达{JobParam.CurTargetNode.AliceName}临时点2的放料点,准备放下料车";
JobRunStep.Msg = runInfo; JobRunStep.Msg = runInfo;
AllocateTask(agv, $"{SettingString.TakeShelfOff}"); AllocateTask(agv, $"{SettingString.TakeShelfOff}");
...@@ -448,6 +455,13 @@ namespace DeviceLibrary.bean.job ...@@ -448,6 +455,13 @@ namespace DeviceLibrary.bean.job
MissionManager.SetMissionState(JobParam.GetMissionInfo().missionId, service.model.MissionState.返回电梯运行, out string msg); MissionManager.SetMissionState(JobParam.GetMissionInfo().missionId, service.model.MissionState.返回电梯运行, out string msg);
JobRunStep.Msg = runInfo; JobRunStep.Msg = runInfo;
ResetMissionOccupiedAgv(JobParam.GetMissionInfo()); ResetMissionOccupiedAgv(JobParam.GetMissionInfo());
service.model.MissionInfo missionInfo = manager.MissionManager.GetMission(JobParam.LiftStatus.missionId);
if (missionInfo != null)
{
//设置任务占用
MissionManager.SetMissionOccupied(missionInfo, agv);
}
ClearLiftNodeOccupied(agv); ClearLiftNodeOccupied(agv);
} }
......
...@@ -20,7 +20,7 @@ namespace DeviceLibrary.bean.jobType ...@@ -20,7 +20,7 @@ namespace DeviceLibrary.bean.jobType
} }
else else
{ {
if(agv.Scope.Floor.Equals(1) && agv.HasFinishedShelfInLift(out string liftname, out lift.LiftStatus lift)) if(agv.Scope.Floor.Equals(1))
{ {
service.model.MissionInfo missionInfo = manager.MissionManager.GetF1SendFullFinishedC1ToD2Mission(agv); service.model.MissionInfo missionInfo = manager.MissionManager.GetF1SendFullFinishedC1ToD2Mission(agv);
if(missionInfo!=null) if(missionInfo!=null)
......
...@@ -455,7 +455,7 @@ namespace DeviceLibrary.lift ...@@ -455,7 +455,7 @@ namespace DeviceLibrary.lift
/// </summary> /// </summary>
/// <param name="liftId"></param> /// <param name="liftId"></param>
/// <returns></returns> /// <returns></returns>
static LiftStatus GetLiftStatus(string liftId) public static LiftStatus GetLiftStatus(string liftId)
{ {
if (lifts.ContainsKey(liftId)) if (lifts.ContainsKey(liftId))
{ {
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!