using MiniExcelLibs.Attributes; using System.ComponentModel.DataAnnotations; using System; using System.ComponentModel; using CMS.Plugin.HIAWms.Domain.Shared.Enums; namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialStocks; /// /// 出入库单据详情导出模型 /// public class WmsMaterialStockExportModel { /// /// 物料ID /// [ExcelColumn(Name = "物料ID", Width = 25)] public string MaterialId { get; set; } /// /// 物料名称 /// [ExcelColumn(Name = "物料名称", Width = 25)] public string MaterialName { get; set; } /// /// 容器编号 /// [ExcelColumn(Name = "容器编号", Width = 25)] public string ContainerNo { get; set; } /// /// 容器状态 /// [ExcelColumn(Name = "容器状态", Width = 25)] public ContainerStatusEnum ContainerStatus { get; set; } /// /// 容器类型 /// [ExcelColumn(Name = "容器类型", Width = 25)] public ContainerTypeEnum ContainerType { get; set; } /// /// 物料编号 /// [ExcelColumn(Name = "物料编号", Width = 25)] public string MaterialNo { get; set; } /// /// 库存数量 /// [ExcelColumn(Name = "库存数量", Width = 25)] public int StockNumber { get; set; } /// /// 物料批次 /// [ExcelColumn(Name = "物料批次", Width = 25)] public string MaterialBatch { get; set; } /// /// 供应商编号 /// [ExcelColumn(Name = "供应商编号", Width = 25)] public string SupplierCode { get; set; } /// /// 机型/规格 /// [ExcelColumn(Name = "机型/规格", Width = 25)] public string MaterialModel { get; set; } /// /// 库位编号 /// [ExcelColumn(Name = "库位编号", Width = 25)] public string PlaceNo { get; set; } /// /// 库位状态; /// [ExcelColumn(Name = "库位状态;", Width = 25)] public PlaceStatusEnum PlaceStatus { get; set; } /// /// 库位类型 /// [ExcelColumn(Name = "库位类型", Width = 25)] public PlaceTypeEnum StorageTypeNo { get; set; } /// /// 区域编号 /// [ExcelColumn(Name = "区域编号", Width = 25)] public string AreaCode { get; set; } /// /// 库区名称 /// [ExcelColumn(Name = "库区名称", Width = 25)] public string AreaName { get; set; } /// /// 检验状态(1:未检验,2:检验通过,3:检验不通过) /// [ExcelColumn(Name = "检验状态(1:未检验,2:检验通过,3:检验不通过)", Width = 25)] public MaterialCheckStatusEnum? CheckStatus { get; set; } /// /// 是否锁定(2:未锁定,1:已锁定) /// [ExcelColumn(Name = "是否锁定(2:未锁定,1:已锁定)", Width = 25)] public YesNoEnum IsLock { get; set; } /// /// 是否空托(2:否,1:是) /// [ExcelColumn(Name = "是否空托(2:否,1:是)", Width = 25)] public YesNoEnum EmptyContainer { get; set; } /// /// 入库时间 /// [ExcelColumn(Name = "入库时间", Width = 25)] public DateTime InStockTime { get; set; } /// /// 备注 /// [ExcelColumn(Name = "备注", Width = 25)] public string Remark { get; set; } /// /// 冗余字段1 - 预留扩展用途 /// [ExcelColumn(Name = "冗余字段1 - 预留扩展用途", Width = 25)] public string RedundantField1 { get; set; } /// /// 冗余字段2 - 预留扩展用途 /// [ExcelColumn(Name = "冗余字段2 - 预留扩展用途", Width = 25)] public string RedundantField2 { get; set; } /// /// 冗余字段3 - 预留扩展用途 /// [ExcelColumn(Name = "冗余字段3 - 预留扩展用途", Width = 25)] public string RedundantField3 { get; set; } /// /// /// [ExcelColumn(Name = "", Width = 25)] public DateTime CreationTime { get; set; } /// /// /// [ExcelColumn(Name = "", Width = 25)] public DateTime LastModificationTime { get; set; } public Dictionary GetExportData() { var exportData = new Dictionary(); foreach (var property in this.GetType().GetProperties()) { exportData.Add(property.Name, property.GetValue(this)); } return exportData; } }