2024-10-07 22:52:10 +08:00
|
|
|
|
using Net462DllTest.Trigger;
|
2024-10-20 12:10:57 +08:00
|
|
|
|
using Serein.Library;
|
2024-09-28 23:55:19 +08:00
|
|
|
|
using Serein.Library.Api;
|
|
|
|
|
|
using System;
|
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
2024-09-30 22:20:02 +08:00
|
|
|
|
namespace Net462DllTest.LogicControl
|
2024-09-28 23:55:19 +08:00
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
public enum ParkingCommand
|
|
|
|
|
|
{
|
|
|
|
|
|
GetPparkingSpace,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-09-30 02:45:49 +08:00
|
|
|
|
[AutoRegister]
|
2024-10-07 15:15:18 +08:00
|
|
|
|
[DynamicFlow("[Parking]")]
|
2024-09-28 23:55:19 +08:00
|
|
|
|
public class ParkingLogicControl
|
|
|
|
|
|
{
|
2024-09-30 02:45:49 +08:00
|
|
|
|
private readonly PrakingDevice PrakingDevice;
|
2024-09-28 23:55:19 +08:00
|
|
|
|
|
2024-09-30 02:45:49 +08:00
|
|
|
|
public ParkingLogicControl(PrakingDevice PrakingDevice)
|
2024-09-28 23:55:19 +08:00
|
|
|
|
{
|
2024-09-30 02:45:49 +08:00
|
|
|
|
this.PrakingDevice = PrakingDevice;
|
2024-09-28 23:55:19 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-10-11 16:46:16 +08:00
|
|
|
|
[NodeAction(NodeType.Flipflop, "等待车位调取命令")]
|
|
|
|
|
|
public async Task<IFlipflopContext<string>> GetPparkingSpace(ParkingCommand parkingCommand = ParkingCommand.GetPparkingSpace)
|
2024-09-28 23:55:19 +08:00
|
|
|
|
{
|
2024-12-23 23:19:10 +08:00
|
|
|
|
var result = await PrakingDevice.WaitTriggerAsync<string>(parkingCommand);
|
|
|
|
|
|
await Console.Out.WriteLineAsync("收到命令:调取车位,车位号" + result.Value);
|
|
|
|
|
|
return new FlipflopContext<string>(FlipflopStateType.Succeed, result.Value);
|
2024-09-28 23:55:19 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-10-07 15:15:18 +08:00
|
|
|
|
[NodeAction(NodeType.Action, "调取指定车位")]
|
2024-12-23 23:19:10 +08:00
|
|
|
|
public async Task Storage(string spaceNum = "101")
|
2024-09-28 23:55:19 +08:00
|
|
|
|
{
|
2024-12-23 23:19:10 +08:00
|
|
|
|
if (await PrakingDevice.InvokeTriggerAsync(ParkingCommand.GetPparkingSpace, spaceNum))
|
2024-09-28 23:55:19 +08:00
|
|
|
|
{
|
|
|
|
|
|
Console.WriteLine("发送命令成功:调取车位" + spaceNum);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
Console.WriteLine("发送命令失败:调取车位" + spaceNum);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-10-07 22:52:10 +08:00
|
|
|
|
|
|
|
|
|
|
|
2024-09-28 23:55:19 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|