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;
}
}