namespace SJZY.Track.Domain.Aggregates.OrderAggregate;
///
/// 轨迹订单主表
///
[SugarTable("t_order")]
public class OrderEntity : IFullAuditedBasicEntitys, IAggregateRoot
{
///
/// 自增主键
///
[SugarColumn(ColumnName = "Id", IsPrimaryKey = true, IsIdentity = true)]
public int Id { get; set; }
///
/// 订单号
///
[SugarColumn(ColumnName = "OrderNo")]
public string OrderNo { get; set; } = null!;
///
/// 订单类型(主数据枚举TrackOrderType)
///
[SugarColumn(ColumnName = "OrderType")]
public int OrderType { get; set; }
///
/// 子系统id
///
[SugarColumn(ColumnName = "SubSystemId")]
public int SubSystemId { get; set; }
///
/// 客户id(外部主体id)
///
[SugarColumn(ColumnName = "CustomId")]
public int CustomId { get; set; }
///
/// 订单是否完结(异步维护)
///
[SugarColumn(ColumnName = "IsCompleted")]
public bool IsCompleted { get; set; }
///
/// 订单是否推送完成(异步维护)
///
[SugarColumn(ColumnName = "IsPushCompleted")]
public bool IsPushCompleted { get; set; }
///
/// 最新轨迹内容(异步维护)
///
[SugarColumn(ColumnName = "LatestTrackContent")]
public string? LatestTrackContent { get; set; }
///
/// 最新轨迹内容英文(异步维护)
///
[SugarColumn(ColumnName = "LatestTrackEnContent")]
public string? LatestTrackEnContent { get; set; }
///
/// 最新轨迹时间(异步维护)
///
[SugarColumn(ColumnName = "LatestTrackTime")]
public DateTime? LatestTrackTime { get; set; }
///
/// 最新轨迹时区(异步维护)
///
[SugarColumn(ColumnName = "LatestTrackTimeZone")]
public float? LatestTrackTimeZone { get; set; }
///
/// 最新轨迹发生地(异步维护)
///
[SugarColumn(ColumnName = "LatestTrackPlace")]
public string? LatestTrackPlace { get; set; }
///
/// 目的城市
///
[SugarColumn(ColumnName = "ArrivalCity")]
public string ArrivalCity { get; set; } = null!;
///
/// 目的国家
///
[SugarColumn(ColumnName = "ArrivalCountry")]
public string ArrivalCountry { get; set; } = null!;
///
/// 目的港口
///
[SugarColumn(ColumnName = "ArrivalPort")]
public string? ArrivalPort { get; set; }
///
/// 起运城市
///
[SugarColumn(ColumnName = "LeaveCity")]
public string LeaveCity { get; set; } = null!;
///
/// 起运国家
///
[SugarColumn(ColumnName = "LeaveCountry")]
public string LeaveCountry { get; set; } = null!;
///
/// 起运港口
///
[SugarColumn(ColumnName = "LeavePort")]
public string? LeavePort { get; set; }
[Navigate(NavigateType.OneToMany, nameof(OrderFlightEntity.OrderId))]
public List OrderFlights { get; set; }
[Navigate(NavigateType.OneToMany, nameof(OrderFlightEntity.OrderId))]
public List OrderTemplates { get; set; }
}