using MiniExcelLibs.Attributes; using System.ComponentModel.DataAnnotations; using System.ComponentModel; using CMS.Plugin.HIAWms.Domain.Shared.Enums; namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterials { /// /// WmsMaterial导出模型 /// public class MaterialExportModel { /// /// 物料编码(唯一标识) /// /// MAT-2023-001 [ExcelColumn(Name = "物料编码", Width = 25)] public string MaterialCode { get; set; } /// /// 物料名称 /// /// 304不锈钢管 [ExcelColumn(Name = "物料名称", Width = 25)] public string MaterialName { get; set; } /// /// 采购类型 /// /// /// 0:标准采购 1:紧急采购 2:协议采购 /// /// 0 [ExcelColumn(Name = "采购类型", Width = 25)] public PurchaseTypeEnum PurchaseType { get; set; } /// /// 物料类型 /// /// /// 1:原材料 2:半成品 3:成品 /// /// 1 [ExcelColumn(Name = "物料类型", Width = 25)] public MaterialTypeEnum MaterialType { get; set; } /// /// 主计量单位 /// /// kg [ExcelColumn(Name = "主单位", Width = 25)] public string PrimaryUnit { get; set; } /// /// 规格/技术标准 /// /// GB/T 8163-2018 [ExcelColumn(Name = "规格/标准", Width = 25)] public string Standard { get; set; } /// /// 外径(单位:毫米) /// /// 50.5 [ExcelColumn(Name = "外径(mm)", Width = 25)] public decimal OuterDiameter { get; set; } /// /// 壁厚(单位:毫米) /// /// 2.5 [ExcelColumn(Name = "壁厚(mm)", Width = 25)] public decimal WallThickness { get; set; } /// /// 材质说明 /// /// 304不锈钢 [ExcelColumn(Name = "材质", Width = 25)] public string MaterialQuality { get; set; } /// /// 型号 /// [ExcelColumn(Name = "型号", Width = 25)] public string MaterialModel { get; set; } /// /// 长度(单位:米) /// /// 6.0 [ExcelColumn(Name = "长度(m)", Width = 25)] public decimal Length { get; set; } /// /// 是否主支管标识 /// /// true [ExcelColumn(Name = "是否主支管", Width = 25)] [Description("是/否")] public YesNoEnum IsMainBranch { get; set; } /// /// 生产工厂名称 /// /// 上海第一工厂 [ExcelColumn(Name = "生产工厂", Width = 25)] public string Factory { get; set; } /// /// 认证证书编号 /// /// CER-2023-001 [ExcelColumn(Name = "证书编号", Width = 25)] public string Certification { 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 string Remark { 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; } } }