|
|
|
@ -1,4 +1,5 @@
|
|
|
|
|
using Autofac;
|
|
|
|
|
using System.Collections.Concurrent;
|
|
|
|
|
using Autofac;
|
|
|
|
|
using DotNetty.Common.Utilities;
|
|
|
|
|
using Entity.Constant;
|
|
|
|
|
using Entity.DbModel.Station;
|
|
|
|
@ -66,9 +67,26 @@ public class SwappingStateMachine : IDisposable
|
|
|
|
|
|
|
|
|
|
public SwapOrderBatteryInfo? SwapOrderBatteryInfo = null;
|
|
|
|
|
|
|
|
|
|
public List<StepModel> StepModel = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public ConcurrentDictionary<string, StepModel> StepModel =
|
|
|
|
|
new ConcurrentDictionary<string, StepModel>
|
|
|
|
|
{
|
|
|
|
|
["1"] = new StepModel { StepNo = 1, Status = 0, StepName = "空闲" },
|
|
|
|
|
["2"] = new StepModel { StepNo = 2, Status = 0, StepName = "车辆到站(入口雷达检测到车辆驶入)" },
|
|
|
|
|
["3"] = new StepModel { StepNo = 3, Status = 0, StepName = "rfid扫描完成" },
|
|
|
|
|
["4"] = new StepModel { StepNo = 4, Status = 0, StepName = "云平台车辆认证" },
|
|
|
|
|
["5"] = new StepModel { StepNo = 5, Status = 0, StepName = "车辆到位" },
|
|
|
|
|
["6"] = new StepModel { StepNo = 6, Status = 0, StepName = "车辆解锁" },
|
|
|
|
|
["7"] = new StepModel { StepNo = 7, Status = 0, StepName = "下发plc选包" },
|
|
|
|
|
["8"] = new StepModel { StepNo = 8, Status = 0, StepName = "开始换电" },
|
|
|
|
|
["9"] = new StepModel { StepNo = 9, Status = 0, StepName = "拆旧电池完成" },
|
|
|
|
|
["10"] = new StepModel { StepNo = 10, Status = 0, StepName = "入库旧电池完成" },
|
|
|
|
|
["11"] = new StepModel { StepNo = 11, Status = 0, StepName = "搬运新电池完成" },
|
|
|
|
|
["12"] = new StepModel { StepNo = 12, Status = 0, StepName = "安装新电池完成" },
|
|
|
|
|
["13"] = new StepModel { StepNo = 13, Status = 0, StepName = "安装完成" },
|
|
|
|
|
["14"] = new StepModel { StepNo = 14, Status = 0, StepName = "车辆上锁" },
|
|
|
|
|
["15"] = new StepModel { StepNo = 15, Status = 0, StepName = "换电完成(车辆驶离)" },
|
|
|
|
|
["16"] = new StepModel { StepNo = 16, Status = 0, StepName = "换电失败(车辆驶离)" },
|
|
|
|
|
};
|
|
|
|
|
#region 小步状态
|
|
|
|
|
|
|
|
|
|
//雷达检测/车辆进入
|
|
|
|
@ -323,7 +341,12 @@ public class SwappingStateMachine : IDisposable
|
|
|
|
|
|
|
|
|
|
SwapOrderBatteryInfo = null;
|
|
|
|
|
StepSort = 0;
|
|
|
|
|
StepModel = new List<StepModel>();
|
|
|
|
|
|
|
|
|
|
foreach (var key in StepModel.Keys.ToList())
|
|
|
|
|
{
|
|
|
|
|
StepModel[key].Status = 0;
|
|
|
|
|
StepModel[key].StartTime = null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PlcSwapFlag = false;
|
|
|
|
|
ManualSwapSuccFlag = false;
|
|
|
|
|