using System.ComponentModel.DataAnnotations; using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared; namespace Win_in.Sfs.Basedata.Application.Contracts; /// /// 库位 /// [Display(Name = "库位")] public class LocationDTO : SfsBaseDataDTOBase, IHasCode, IHasName, IHasLocationSwitch { /// /// 代码 /// [Display(Name = "代码")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string Code { get; set; } /// /// 名称 /// [Display(Name = "名称")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string Name { get; set; } /// /// 描述 /// [Display(Name = "描述")] [StringLength(SfsEfCorePropertyConst.RemarkLength, ErrorMessage = "{0}最多输入{1}个字符")] public string Description { get; set; } /// /// 库位类型 /// [Display(Name = "库位类型")] public EnumLocationType Type { get; set; } /// /// ERP库位代码 /// [Display(Name = "ERP库位代码")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string ErpLocationCode { get; set; } /// /// 仓库代码 /// [Display(Name = "仓库代码")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string WarehouseCode { get; set; } /// /// 区域代码 /// [Display(Name = "区域代码")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string AreaCode { get; set; } /// /// 库位组代码 /// [Display(Name = "库位组代码")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string LocationGroupCode { get; set; } /// /// 工作组代码 /// [Display(Name = "工作组代码")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string WorkGroupCode { get; set; } /// /// 货架号 /// [Display(Name = "货架号")] [StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")] public string ShelfCode { get; set; } /// /// 行号 /// [Display(Name = "行号")] public int RowCode { get; set; } /// /// 列号 /// [Display(Name = "列号")] public int ColumnCode { get; set; } /// /// 默认库存状态 /// [Display(Name = "默认库存状态")] public EnumInventoryStatus DefaultInventoryStatus { get; set; } /// /// 拣料优先级 /// [Display(Name = "拣料优先级")] public int PickPriority { get; set; } /// /// 拣料顺序 /// [Display(Name = "拣料顺序")] public int PickOrder { get; set; } /// /// 可以混物品 /// [Display(Name = "可以混物品")] public bool EnableMixItem { get; set; } = true; /// /// 可以混批次 /// [Display(Name = "可以混批次")] public bool EnableMixLot { get; set; } = true; /// /// 可以混状态 /// [Display(Name = "可以混状态")] public bool EnableMixStatus { get; set; } = true; /// /// 可以负库存 /// [Display(Name = "可以负库存")] public bool EnableNegative { get; set; } = true; /// /// 可以保留零库存 /// [Display(Name = "可以保留零库存")] public bool EnableKeepZero { get; set; } = true; /// /// 可以机会盘点 /// [Display(Name = "可以机会盘点")] public bool EnableOpportunityCount { get; set; } = true; /// /// 可以领料 /// [Display(Name = "可以领料")] public bool EnablePick { get; set; } = true; /// /// 可以过量领料 /// [Display(Name = "可以过量领料")] public bool EnableOverPick { get; set; } = true; /// /// 可以整包存储 /// [Display(Name = "可以整包存储")] public bool EnableWholeStore { get; set; } = true; /// /// 可以散件存储 /// [Display(Name = "可以散件存储")] public bool EnableBreakStore { get; set; } = true; /// /// 可以发出 /// [Display(Name = "可以发出")] public bool EnableShip { get; set; } = true; /// /// 可以接收 /// [Display(Name = "可以接收")] public bool EnableReceive { get; set; } = true; /// /// 可以退货给供应商 /// [Display(Name = "可以退货给供应商")] public bool EnableReturnToSupplier { get; set; } = true; /// /// 可以接收客户退货 /// [Display(Name = "可以接收客户退货")] public bool EnableReturnFromCustomer { get; set; } = true; /// /// 是否可以拆箱 /// [Display(Name = "是否可以拆箱")] public bool EnableSplitBox { get; set; } = true; /// /// 是否可以拆托 /// [Display(Name = "是否可以拆托")] public bool EnableSplitPallet { get; set; } = true; }