RobotTaskCancelledDomainEvent.cs 928 Bytes
namespace Rcs.Domain.Entities.DomainEvents.Robot;

/// <summary>
/// 机器人任务取消领域事件
/// 当机器人需要取消当前执行的任务时触发
/// @author zzy
/// </summary>
public sealed record RobotTaskCancelledDomainEvent : IDomainEvent
{
    /// <summary>
    /// 机器人ID
    /// </summary>
    public Guid RobotId { get; init; }

    /// <summary>
    /// 机器人序列号
    /// </summary>
    public string RobotSerialNumber { get; init; }
    /// <summary>
    /// 任务号
    /// </summary>
    public string? OrderId { get; init; }

    /// <summary>
    /// 事件发生时间
    /// </summary>
    public DateTime OccurredAt { get; init; }

    public RobotTaskCancelledDomainEvent(Guid robotId, string robotSerialNumber, string orderId)
    {
        RobotId = robotId;
        OrderId = orderId;
        RobotSerialNumber = robotSerialNumber;
        OccurredAt = DateTime.Now;
    }
}