using SqlSugar;
using WIDESEA_Core.DB.Models;
namespace WIDESEA_Model.Models;
/// 
/// 系统出库订单头历史表
///
[SugarTable("Dt_OutOrder_Hty", "系统出库订单头历史表")]
public class Dt_OutOrder_Hty : BaseEntity
{
    /// 
    /// 备  注:主键,自动增长
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "Id", IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "主键,自动增长")]
    public int Id { get; set; }
    /// 
    /// 备  注:出库单号
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "OrderNumber", ColumnDescription = "出库单号", IsNullable = false, Length = 30)]
    public string OrderNumber { get; set; } = null!;
    /// 
    /// 备  注: 出库日期
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "OrderDate", ColumnDescription = "出库日期", IsNullable = false)]
    public DateTime OrderDate { get; set; }
    /// 
    /// 备  注: 仓库ID
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "WarehouseId", ColumnDescription = "仓库ID", IsNullable = false)]
    public int WarehouseId { get; set; }
    /// 
    /// 备  注: 单据状态
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "Status", ColumnDescription = "单据状态", IsNullable = false)]
    public int Status { get; set; }
    /// 
    /// 备  注: 上有系统单据ID
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "UpperOutOrderId", ColumnDescription = "上有系统单据ID", IsNullable = false)]
    public int? UpperOutOrderId { get; set; }
    /// 
    /// 备  注: 备注
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "Remarks", ColumnDescription = "备注", IsNullable = false, Length = 100)]
    public string? Remarks { get; set; }
    /// 
    /// 备  注: 完成时间
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "FinishTime", ColumnDescription = "完成时间", IsNullable = true)]
    public DateTime FinishTime { get; set; }
    /// 
    /// 备  注: 操作类型
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "OperateType", ColumnDescription = "操作类型", IsNullable = false)]
    public int OperateType { get; set; }
    /// 
    /// 备  注: 源单ID
    /// 默认值:
    ///
    [SugarColumn(ColumnName = "SourceId", ColumnDescription = "源单ID", IsNullable = false)]
    public int SourceId { get; set; }
    /// 
    /// 订单明细数据
    /// 
    [SugarColumn(IsIgnore = true)]
    [Navigate(NavigateType.OneToOne, nameof(Id), nameof(Dt_OutOrderDetail_Hty.Id))]
    public Dt_OutOrderDetail_Hty? orderDetailList { get; set; }
}