zs
2025-05-13 0cd95d98fdf7ed22d53398242feb2a3ca185cf09
Weben_CMSרÓôúÂëÉú³ÉÆ÷/Weben_CMS_TemplateDemo/server/src/CMS.Plugin.HIAWms.Application.Contracts/Dtos/WmsMaterial/WmsMaterialExportModel.cs
@@ -1,157 +1,181 @@
using MiniExcelLibs.Attributes;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel;
using CMS.Plugin.HIAWms.Domain.Shared.Enums;
namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterial
{
    /// <summary>
    /// WmsMaterial导出模型
    /// </summary>
    public class MaterialExportModel
    {
        /// <summary>
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.WmsMaterial;
/// <summary>
/// ç‰©æ–™åŸºç¡€ä¿¡æ¯è¡¨å¯¼å‡ºæ¨¡åž‹
/// </summary>
public  class WmsMaterialExportModel
{
            /// <summary>
        /// ç‰©æ–™ç¼–码(唯一标识)
        /// </summary>
        /// <example>MAT-2023-001</example>
        [ExcelColumn(Name = "物料编码", Width = 25)]
        [ExcelColumn(Name = "物料编码(唯一标识)", Width = 25)]
        public string MaterialCode { get; set; }
        /// <summary>
        /// æ˜¯å¦æœ‰æ•ˆç‰©æ–™
        /// </summary>
        [ExcelColumn(Name = "是否有效物料", Width = 25)]
        public bool IsValid { get; set; }
        /// <summary>
        /// æ˜¯å¦è‡ªäº§
        /// </summary>
        [ExcelColumn(Name = "是否自产", Width = 25)]
        public bool? IsSelfMade { get; set; }
        /// <summary>
        /// æ•°é‡
        /// </summary>
        [ExcelColumn(Name = "数量", Width = 25)]
        public int Num { get; set; }
        /// <summary>
        /// è‡ªæœ‰æ•°é‡
        /// </summary>
        [ExcelColumn(Name = "自有数量", Width = 25)]
        public int? SelfNum { get; set; }
        /// <summary>
        /// ç‰©æ–™åç§°
        /// </summary>
        /// <example>304不锈钢管</example>
        [ExcelColumn(Name = "物料名称", Width = 25)]
        public string MaterialName { get; set; }
        /// <summary>
        /// é‡‡è´­ç±»åž‹
        /// å¯ç©ºé•¿åº¦
        /// </summary>
        /// <remarks>
        /// 0:标准采购 1:紧急采购 2:协议采购
        /// </remarks>
        /// <example>0</example>
        [ExcelColumn(Name = "采购类型", Width = 25)]
        [ExcelColumn(Name = "可空长度", Width = 25)]
        public decimal? NullLength { get; set; }
        /// <summary>
        /// é‡‡è´­ç±»åž‹ï¼ˆæžšä¸¾å€¼ï¼‰
        /// </summary>
        [ExcelColumn(Name = "采购类型(枚举值)", Width = 25)]
        public PurchaseTypeEnum PurchaseType { get; set; }
        /// <summary>
        /// ç‰©æ–™ç±»åž‹
        /// ç‰©æ–™ç±»åž‹ï¼ˆæžšä¸¾å€¼ï¼‰
        /// </summary>
        /// <remarks>
        /// 1:原材料 2:半成品 3:成品
        /// </remarks>
        /// <example>1</example>
        [ExcelColumn(Name = "物料类型", Width = 25)]
        [ExcelColumn(Name = "物料类型(枚举值)", Width = 25)]
        public MaterialTypeEnum MaterialType { get; set; }
        /// <summary>
        /// ä¸»è®¡é‡å•位
        /// ä¸»å•位(如:kg、m、个)
        /// </summary>
        /// <example>kg</example>
        [ExcelColumn(Name = "主单位", Width = 25)]
        [ExcelColumn(Name = "主单位(如:kg、m、个)", Width = 25)]
        public string PrimaryUnit { get; set; }
        /// <summary>
        /// è§„æ ¼/技术标准
        /// è§„æ ¼/标准(如:GB/T 8163-2018)
        /// </summary>
        /// <example>GB/T 8163-2018</example>
        [ExcelColumn(Name = "规格/标准", Width = 25)]
        [ExcelColumn(Name = "规格/标准(如:GB/T 8163-2018)", Width = 25)]
        public string Standard { get; set; }
        /// <summary>
        /// å¤–径(单位:毫米)
        /// å¤–径(单位:mm)
        /// </summary>
        /// <example>50.5</example>
        [ExcelColumn(Name = "外径(mm)", Width = 25)]
        [ExcelColumn(Name = "外径(单位:mm)", Width = 25)]
        public decimal OuterDiameter { get; set; }
        /// <summary>
        /// å£åŽšï¼ˆå•ä½ï¼šæ¯«ç±³ï¼‰
        /// å£åŽšï¼ˆå•ä½ï¼šmm)
        /// </summary>
        /// <example>2.5</example>
        [ExcelColumn(Name = "壁厚(mm)", Width = 25)]
        [ExcelColumn(Name = "壁厚(单位:mm)", Width = 25)]
        public decimal WallThickness { get; set; }
        /// <summary>
        /// æè´¨è¯´æ˜Ž
        /// æè´¨ï¼ˆå¦‚:304不锈钢)
        /// </summary>
        /// <example>304不锈钢</example>
        [ExcelColumn(Name = "材质", Width = 25)]
        [ExcelColumn(Name = "材质(如:304不锈钢)", Width = 25)]
        public string MaterialQuality { get; set; }
        /// <summary>
        /// é•¿åº¦ï¼ˆå•位:米)
        /// é•¿åº¦ï¼ˆå•位:m)
        /// </summary>
        /// <example>6.0</example>
        [ExcelColumn(Name = "长度(m)", Width = 25)]
        [ExcelColumn(Name = "长度(单位:m)", Width = 25)]
        public decimal Length { get; set; }
        /// <summary>
        /// æ˜¯å¦ä¸»æ”¯ç®¡æ ‡è¯†
        /// æ˜¯å¦ä¸ºä¸»æ”¯ç®¡
        /// </summary>
        /// <example>true</example>
        [ExcelColumn(Name = "是否主支管", Width = 25)]
        [Description("是/否")]
        [ExcelColumn(Name = "是否为主支管", Width = 25)]
        public YesNoEnum IsMainBranch { get; set; }
        /// <summary>
        /// ç”Ÿäº§å·¥åŽ‚åç§°
        /// ç”Ÿäº§å·¥åŽ‚
        /// </summary>
        /// <example>上海第一工厂</example>
        [ExcelColumn(Name = "生产工厂", Width = 25)]
        public string Factory { get; set; }
        /// <summary>
        /// è®¤è¯è¯ä¹¦ç¼–号
        /// è¯ä¹¦ç¼–号
        /// </summary>
        /// <example>CER-2023-001</example>
        [ExcelColumn(Name = "证书编号", Width = 25)]
        public string Certification { get; set; }
        /// <summary>
        /// é¢„留扩展字段1
        /// å†—余字段1 - é¢„留扩展用途
        /// </summary>
        /// <remarks>
        /// å¯ç”¨äºŽä¸´æ—¶å­˜å‚¨ä¾›åº”商编码等扩展信息
        /// </remarks>
        [ExcelColumn(Name = "扩展字段1", Width = 25)]
        [ExcelColumn(Name = "冗余字段1 - é¢„留扩展用途", Width = 25)]
        public string RedundantField1 { get; set; }
        /// <summary>
        /// é¢„留扩展字段2
        /// å†—余字段2 - é¢„留扩展用途
        /// </summary>
        /// <remarks>
        /// å¯ç”¨äºŽä¸´æ—¶å­˜å‚¨æ‰¹æ¬¡å·ç­‰æ‰©å±•信息
        /// </remarks>
        [ExcelColumn(Name = "扩展字段2", Width = 25)]
        [ExcelColumn(Name = "冗余字段2 - é¢„留扩展用途", Width = 25)]
        public string RedundantField2 { get; set; }
        /// <summary>
        /// é¢„留扩展字段3
        /// å†—余字段3 - é¢„留扩展用途
        /// </summary>
        /// <remarks>
        /// å¯ç”¨äºŽä¸´æ—¶å­˜å‚¨è‡ªå®šä¹‰åˆ†ç±»ç­‰æ‰©å±•信息
        /// </remarks>
        [ExcelColumn(Name = "扩展字段3", Width = 25)]
        [ExcelColumn(Name = "冗余字段3 - é¢„留扩展用途", Width = 25)]
        public string RedundantField3 { get; set; }
        /// <summary>
        /// å¤‡æ³¨
        /// </summary>
        [ExcelColumn(Name = "备注",Width = 25)]
        [ExcelColumn(Name = "备注", Width = 25)]
        public string Remark { get; set; }
        public Dictionary<string, object> GetExportData()
        {
            var exportData = new Dictionary<string, object>();
            foreach (var property in this.GetType().GetProperties())
            {
                exportData.Add(property.Name, property.GetValue(this));
            }
        /// <summary>
        /// åˆ›å»ºæ—¶é—´
        /// </summary>
        [ExcelColumn(Name = "创建时间", Width = 25)]
        public DateTime CreationTime { get; set; }
            return exportData;
        }
    }
}
        /// <summary>
        /// ä¿®æ”¹æ—¶é—´
        /// </summary>
        [ExcelColumn(Name = "修改时间", Width = 25)]
        public DateTime LastModificationTime { get; set; }
        /// <summary>
        /// åˆ›å»ºäºº
        /// </summary>
        [ExcelColumn(Name = "创建人", Width = 25)]
        public string CreatorName { get; set; }
        /// <summary>
        /// ä¿®æ”¹äºº
        /// </summary>
        [ExcelColumn(Name = "修改人", Width = 25)]
        public string LastModifierName { get; set; }
    public Dictionary<string, object> GetExportData()
        {
            var exportData = new Dictionary<string, object>();
            foreach (var property in this.GetType().GetProperties())
            {
                exportData.Add(property.Name, property.GetValue(this));
            }
            return exportData;
        }
}