using Admin.NET.Core;
using System.ComponentModel.DataAnnotations;
namespace Admin.NET.Application;
    /// 
    /// 事务记录基础输入参数
    /// 
    public class WmsRecordTransBaseInput
    {
        /// 
        /// 移动类型
        /// 
        public virtual MoveTypeEnum? MoveType { get; set; }
        
        /// 
        /// 移动类型名称
        /// 
        public virtual string MoveTypeName { get; set; }
        
        /// 
        /// 单据类型
        /// 
        public virtual OrderTypeEnum? OrderType { get; set; }
        
        /// 
        /// 单据类型名称
        /// 
        public virtual string OrderTypeName { get; set; }
        
        /// 
        /// 业务类型
        /// 
        public virtual BusinessTypeEnum? BusinessType { get; set; }
        
        /// 
        /// 业务类型名称
        /// 
        public virtual string BusinessTypeName { get; set; }
        
        /// 
        /// 备注
        /// 
        public virtual string Remarks { get; set; }
        
        /// 
        /// 物料编号
        /// 
        public virtual string MaterialCode { get; set; }
        
        /// 
        /// 物料名称
        /// 
        public virtual string MaterialName { get; set; }
        
        /// 
        /// 单位
        /// 
        public virtual string Unit { get; set; }
        
        /// 
        /// 源库位编号
        /// 
        public virtual string SourcePlaceCode { get; set; }
        
        /// 
        /// 源库位名称
        /// 
        public virtual string SourcePlaceName { get; set; }
        
        /// 
        /// 源容器编号
        /// 
        public virtual string SourceContainerCode { get; set; }
        
        /// 
        /// 源容器名称
        /// 
        public virtual string SourceContainerName { get; set; }
        
        /// 
        /// 源库区编码
        /// 
        public virtual string SourceAreaCode { get; set; }
        
        /// 
        /// 源库区名称
        /// 
        public virtual string SourceAreaName { get; set; }
        
        /// 
        /// 目标库位编码
        /// 
        public virtual string ToPlaceCode { get; set; }
        
        /// 
        /// 目标库位名称
        /// 
        public virtual string ToPlaceName { get; set; }
        
        /// 
        /// 目标库区编码
        /// 
        public virtual string ToAreaCode { get; set; }
        
        /// 
        /// 目标区名称
        /// 
        public virtual string ToAreaName { get; set; }
        
        /// 
        /// 供应商编号
        /// 
        public virtual string SupplierCode { get; set; }
        
        /// 
        /// 供应商名称
        /// 
        public virtual string SupplierName { get; set; }
        
        /// 
        /// ERP单号
        /// 
        public virtual string ErpOrderNo { get; set; }
        
        /// 
        /// ERP库存地
        /// 
        public virtual string ErpCode { get; set; }
        
        /// 
        /// 跟踪码
        /// 
        public virtual string SNCode { get; set; }
        
        /// 
        /// 供应商批次
        /// 
        public virtual string SupplierBatch { get; set; }
        
        /// 
        /// 批次
        /// 
        public virtual string Batch { get; set; }
        
        /// 
        /// 创建时间
        /// 
        public virtual DateTime? CreateTime { get; set; }
        
        /// 
        /// 修改时间
        /// 
        public virtual DateTime? UpdateTime { get; set; }
        
        /// 
        /// 创建人Id
        /// 
        public virtual long? CreateUserId { get; set; }
        
        /// 
        /// 创建人
        /// 
        public virtual string CreateUserName { get; set; }
        
        /// 
        /// 修改人Id
        /// 
        public virtual long? UpdateUserId { get; set; }
        
        /// 
        /// 修改人
        /// 
        public virtual string UpdateUserName { get; set; }
        
        /// 
        /// 软删除
        /// 
        public virtual bool IsDelete { get; set; }
        
        /// 
        /// ERP凭证
        /// 
        public virtual string ErpVoucher { get; set; }
        
        /// 
        /// 事务类型
        /// 
        public virtual TransTypeEnum? TransType { get; set; }
        
        /// 
        /// 事务类型名称
        /// 
        public virtual string TransTypeName { get; set; }
        
        /// 
        /// 单据号
        /// 
        public virtual string OrderNo { get; set; }
        
        /// 
        /// 关联单号
        /// 
        public virtual string RelationNo { get; set; }
        
        /// 
        /// 单据行号
        /// 
        public virtual string OrderNoLineNumber { get; set; }
        
        /// 
        /// 关联单行号
        /// 
        public virtual string RelationNoLineNumber { get; set; }
        
        /// 
        /// 源数量
        /// 
        public virtual decimal? SourceQuantity { get; set; }
        
        /// 
        /// 源跟踪码
        /// 
        public virtual string SourceSNCode { get; set; }
        
        /// 
        /// 目标数量
        /// 
        public virtual decimal? ToQuantity { get; set; }
        
        /// 
        /// 目标容器编号
        /// 
        public virtual string ToContainerCode { get; set; }
        
        /// 
        /// 目标容器名称
        /// 
        public virtual string ToContainerName { get; set; }
        
        /// 
        /// 变更数量
        /// 
        public virtual decimal? ChangeQuantity { get; set; }
        
        /// 
        /// 客户编号
        /// 
        public virtual string CustCode { get; set; }
        
        /// 
        /// 客户中文名称
        /// 
        public virtual string CustChinaName { get; set; }
        
        /// 
        /// 客户英文名称
        /// 
        public virtual string CustEnglishName { get; set; }
        
    }
    /// 
    /// 事务记录分页查询输入参数
    /// 
    public class WmsRecordTransInput : BasePageInput
    {
        /// 
        /// 关键字查询
        /// 
        public string? SearchKey { get; set; }
        /// 
        /// 移动类型
        /// 
        public MoveTypeEnum? MoveType { get; set; }
        
        /// 
        /// 单据类型
        /// 
        public OrderTypeEnum? OrderType { get; set; }
        
        /// 
        /// 业务类型
        /// 
        public int? BusinessType { get; set; }
        
        /// 
        /// 物料编号
        /// 
        public string? MaterialCode { get; set; }
        
        /// 
        /// 物料名称
        /// 
        public string? MaterialName { get; set; }
        
        /// 
        /// 单位
        /// 
        public string? Unit { get; set; }
        
        /// 
        /// 源库位编号
        /// 
        public string? SourcePlaceCode { get; set; }
        
        /// 
        /// 源库位名称
        /// 
        public string? SourcePlaceName { get; set; }
        
        /// 
        /// 源容器编号
        /// 
        public string? SourceContainerCode { get; set; }
        
        /// 
        /// 源容器名称
        /// 
        public string? SourceContainerName { get; set; }
        
        /// 
        /// 源库区编码
        /// 
        public string? SourceAreaCode { get; set; }
        
        /// 
        /// 源库区名称
        /// 
        public string? SourceAreaName { get; set; }
        
        /// 
        /// 目标库位编码
        /// 
        public string? ToPlaceCode { get; set; }
        
        /// 
        /// 目标库位名称
        /// 
        public string? ToPlaceName { get; set; }
        
        /// 
        /// 目标库区编码
        /// 
        public string? ToAreaCode { get; set; }
        
        /// 
        /// 目标区名称
        /// 
        public string? ToAreaName { get; set; }
    /// 
    /// 目标容器编号
    /// 
    public string? ToContainerCode { get; set; }
    /// 
    /// 目标容器名称
    /// 
    public string? ToContainerName { get; set; }
    /// 
    /// 供应商编号
    /// 
    public string? SupplierCode { get; set; }
    /// 
    /// 源跟踪码
    /// 
    public string? SourceSNCode { get; set; }
    /// 
    /// 目标跟踪码
    /// 
    public string? ToSNCode { get; set; }
    /// 
    /// 供应商名称
    /// 
    public string? SupplierName { get; set; }
        
        /// 
        /// ERP单号
        /// 
        public string? ErpOrderNo { get; set; }
        
        /// 
        /// ERP库存地
        /// 
        public string? ErpCode { get; set; }
        
        /// 
        /// 供应商批次
        /// 
        public string? SupplierBatch { get; set; }
        
        /// 
        /// 批次
        /// 
        public string? Batch { get; set; }
        
        /// 
        /// ERP凭证
        /// 
        public string? ErpVoucher { get; set; }
        
        /// 
        /// 事务类型
        /// 
        public TransTypeEnum? TransType { get; set; }
        
        /// 
        /// 单据号
        /// 
        public string? OrderNo { get; set; }
        
        /// 
        /// 关联单号
        /// 
        public string? RelationNo { get; set; }
        
        /// 
        /// 客户编号
        /// 
        public string? CustCode { get; set; }
    /// 
    /// 创建时间范围
    /// 
    public List CreateTimeRange { get; set; }
}
    /// 
    /// 事务记录增加输入参数
    /// 
    public class AddWmsRecordTransInput : WmsRecordTransBaseInput
    {
        /// 
        /// 软删除
        /// 
        [Required(ErrorMessage = "软删除不能为空")]
        public override bool IsDelete { get; set; }
        
    }
    /// 
    /// 事务记录删除输入参数
    /// 
    public class DeleteWmsRecordTransInput : BaseIdInput
    {
    }
    /// 
    /// 事务记录更新输入参数
    /// 
    public class UpdateWmsRecordTransInput : AddWmsRecordTransInput
    {
        /// 
        /// 主键Id
        /// 
        [Required(ErrorMessage = "主键Id不能为空")]
        public long Id { get; set; }
        
    }
    /// 
    /// 事务记录主键查询输入参数
    /// 
    public class QueryByIdWmsRecordTransInput : DeleteWmsRecordTransInput
    {
    }