using System.ComponentModel.DataAnnotations; 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; } /// /// 客户id(外部主体id) /// [SugarColumn(ColumnName = "CustomId")] public int CustomId { get; set; } /// /// 订单是否完结(异步维护) /// [SugarColumn(ColumnName = "IsCompleted")] public bool IsCompleted { get; set; } /// /// 最新轨迹内容(异步维护) /// [SugarColumn(ColumnName = "LatestTraceContent")] public string LatestTraceContent { get; set; } /// /// 最新轨迹内容英文(异步维护) /// [SugarColumn(ColumnName = "LatestTraceEnContent")] public string LatestTraceEnContent { get; set; } /// /// 最新轨迹时间(异步维护) /// [SugarColumn(ColumnName = "LatestTraceTime")] public DateTime? LatestTraceTime { get; set; } /// /// 订单明细(json字符串) /// [SugarColumn(ColumnName = "OrderDetails")] public string OrderDetails { get; set; } /// /// 订单号 /// [SugarColumn(ColumnName = "OrderNo")] public string OrderNo { get; set; } /// /// 订单类型(主数据枚举TrackOrderType) /// [SugarColumn(ColumnName = "OrderType")] public int OrderType { get; set; } /// /// 子系统id /// [SugarColumn(ColumnName = "SubSystemId")] public int SubSystemId { get; set; } public bool IsEqual(NoInfo noInfo) { return OrderType == noInfo.NoType && OrderNo == noInfo.OrderNo; } } public struct NoInfo { /// /// 订单类型,必填 /// [Required] public int NoType { get; set; } /// /// 订单号,必填 /// [Required] [MaxLength(100)] public string OrderNo { get; set; } public NoInfo(int noType, string orderNo) { NoType = noType; OrderNo = orderNo; } public override string ToString() { return $"[订单类型: {NoType}, 订单号: {OrderNo}]"; } }