using TrackCenter.Application.Dtos.ProvideServices;
namespace TrackCenter.Application.Events;
public class TrackDeleteEvent
{
///
/// 根据esId定位轨迹,优先级最高
///
public string[] EsIds { get; set; } = Array.Empty();
///
/// 子系统id
///
public int SubSystemId { get; set; }
///
/// 订单ids
///
public int[] OrderIds { get; set; } = Array.Empty();
///
/// 重复的情况下,用什么字段比较
///
public string? CompareFields { get; set; }
///
/// 重复的情况下,比较值
///
public object? CompareValue { get; set; }
///
/// 删除轨迹来源 1.外部服务商 2.内部系统 3.人工
///
public int? Source { get; set; }
///
/// 轨迹标识符
///
public List TrackIdentifiers { get; set; } = new();
///
/// 操作人
///
public string? OperationMan { get; set; }
///
/// 操作人id
///
public Guid OperationManId { get; set; }
///
/// 已经处理过的订单
///
public List Visited { get; set; } = new();
public override string ToString()
{
return $"[TrackDelete by {OperationMan}] SubSystemId: {SubSystemId}, OrderIds: {string.Join(",",
OrderIds)}, TrackCodes: {string.Join(",", TrackIdentifiers.Select(x => x.TrackCode))}";
}
}