wanggang
1 year ago
28 changed files with 567 additions and 944 deletions
@ -1,829 +0,0 @@ |
|||||
using System; |
|
||||
using System.ComponentModel.DataAnnotations; |
|
||||
using Magicodes.ExporterAndImporter.Core; |
|
||||
using Magicodes.ExporterAndImporter.Excel; |
|
||||
using Win.Sfs.SettleAccount.Enums; |
|
||||
|
|
||||
namespace Win.Sfs.SettleAccount.Reports; |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// PUB结算与发运对比
|
|
||||
/// </summary>
|
|
||||
public class PubSaSeCompareDiff |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 期间
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "期间")] |
|
||||
public int Version { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 日顺序号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "日顺序号")] |
|
||||
public string SeqNumber { get; set; } |
|
||||
/// <summary>
|
|
||||
/// PJIS日顺序号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "PJIS日顺序号")] |
|
||||
public string PJISSeqNumber { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
public decimal? SAQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
public decimal? SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产号")] |
|
||||
public string PN { set; get; } |
|
||||
/// <summary>
|
|
||||
/// 客户物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户物料号")] |
|
||||
public string LU { set; get; } |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类型")] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发运客户物料号
|
|
||||
/// </summary>
|
|
||||
public string SeCustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发运厂内物料号
|
|
||||
/// </summary>
|
|
||||
public string SeFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算客户物料号
|
|
||||
/// </summary>
|
|
||||
public string SaCustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算厂内物料号
|
|
||||
/// </summary>
|
|
||||
public string SaFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户物料号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 物料描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "物料描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内物料号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内物料号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 是否已经移除
|
|
||||
/// </summary>
|
|
||||
public bool IsRemove { get; set; } |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// PUB结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExport |
|
||||
{ |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// PUB结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
public interface IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 零件描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "零件描述")] |
|
||||
[ExporterHeader(DisplayName = "物料描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内零件号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// PUB结算与发运对比汇总
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareSumExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 厂内物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内物料号")] |
|
||||
[ExporterHeader(DisplayName = "LU")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 物料描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "物料描述")] |
|
||||
[ExporterHeader(DisplayName = "物料描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 直供件BBAC结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExportZhiGongJianBBAC : PubSaSeCompareDetailExport, IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
[ExporterHeader(DisplayName = "交货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产码
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产码")] |
|
||||
[ExporterHeader(DisplayName = "ASN发货单号")] |
|
||||
public string PN { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户零件号")] |
|
||||
[ExporterHeader(DisplayName = "客户零件号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 零件描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "零件描述")] |
|
||||
[ExporterHeader(DisplayName = "零件描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "厂内零件号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内零件号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
[ExporterHeader(DisplayName = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
/// <summary>
|
|
||||
/// 匹配类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "匹配类型")] |
|
||||
[ExporterHeader(DisplayName = "是否完全匹配")] |
|
||||
[ValueMapping("是", true)] |
|
||||
[ValueMapping("否", false)] |
|
||||
public bool MateType => DiffQty == 0; |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
[ExporterHeader(DisplayName = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
[ExporterHeader(DisplayName = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
} |
|
||||
|
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 直供件HBPO结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExportZhiGongJianHBPO : PubSaSeCompareDetailExport, IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
[ExporterHeader(DisplayName = "交货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产码
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产码")] |
|
||||
[ExporterHeader(DisplayName = "ASN发货单号")] |
|
||||
public string PN { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户零件号")] |
|
||||
[ExporterHeader(DisplayName = "客户零件号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 零件描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "零件描述")] |
|
||||
[ExporterHeader(DisplayName = "零件描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "厂内零件号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内零件号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
[ExporterHeader(DisplayName = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
/// <summary>
|
|
||||
/// 匹配类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "匹配类型")] |
|
||||
[ExporterHeader(DisplayName = "是否完全匹配")] |
|
||||
[ValueMapping("是", true)] |
|
||||
[ValueMapping("否", false)] |
|
||||
public bool MateType => DiffQty == 0; |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
[ExporterHeader(DisplayName = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
[ExporterHeader(DisplayName = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 买单件BBAC结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExportMaiDanJianBBAC : PubSaSeCompareDetailExport, IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
[ExporterHeader(DisplayName = "交货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产码
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产码")] |
|
||||
[ExporterHeader(DisplayName = "索引号")] |
|
||||
public string PN { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户零件号")] |
|
||||
[ExporterHeader(DisplayName = "客户零件号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 零件描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "零件描述")] |
|
||||
[ExporterHeader(DisplayName = "零件描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "厂内零件号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内零件号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
[ExporterHeader(DisplayName = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
/// <summary>
|
|
||||
/// 匹配类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "匹配类型")] |
|
||||
[ExporterHeader(DisplayName = "是否完全匹配")] |
|
||||
[ValueMapping("是", true)] |
|
||||
[ValueMapping("否", false)] |
|
||||
public bool MateType => DiffQty == 0; |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
[ExporterHeader(DisplayName = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
[ExporterHeader(DisplayName = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 买单件HBPO结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExportMaiDanJianHBPO : PubSaSeCompareDetailExport, IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
[ExporterHeader(DisplayName = "交货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产码
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产码")] |
|
||||
[ExporterHeader(DisplayName = "索引号")] |
|
||||
public string PN { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户零件号")] |
|
||||
[ExporterHeader(DisplayName = "客户零件号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 零件描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "零件描述")] |
|
||||
[ExporterHeader(DisplayName = "零件描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "厂内零件号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内零件号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
[ExporterHeader(DisplayName = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
/// <summary>
|
|
||||
/// 匹配类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "匹配类型")] |
|
||||
[ExporterHeader(DisplayName = "是否完全匹配")] |
|
||||
[ValueMapping("是", true)] |
|
||||
[ValueMapping("否", false)] |
|
||||
public bool MateType => DiffQty == 0; |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
[ExporterHeader(DisplayName = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
[ExporterHeader(DisplayName = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 备件结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExportBeiJian : PubSaSeCompareDetailExport, IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
[ExporterHeader(DisplayName = "交货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产码
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产码")] |
|
||||
[ExporterHeader(DisplayName = "索引号")] |
|
||||
public string PN { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户零件号")] |
|
||||
[ExporterHeader(DisplayName = "客户零件号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 零件描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "零件描述")] |
|
||||
[ExporterHeader(DisplayName = "零件描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "厂内零件号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内零件号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内零件号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内零件号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
[ExporterHeader(DisplayName = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
/// <summary>
|
|
||||
/// 匹配类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "匹配类型")] |
|
||||
[ExporterHeader(DisplayName = "是否完全匹配")] |
|
||||
[ValueMapping("是", true)] |
|
||||
[ValueMapping("否", false)] |
|
||||
public bool MateType => DiffQty == 0; |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
[ExporterHeader(DisplayName = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
[ExporterHeader(DisplayName = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
} |
|
||||
|
|
||||
/// <summary>
|
|
||||
/// 印度件结算与发运对比明细
|
|
||||
/// </summary>
|
|
||||
[ExcelExporter(MaxRowNumberOnASheet = 900000)] |
|
||||
public class PubSaSeCompareDetailExportYinDuJian : PubSaSeCompareDetailExport, IPubSaSeCompareDetailExport |
|
||||
{ |
|
||||
/// <summary>
|
|
||||
/// 类别
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "类别")] |
|
||||
[ExporterHeader(DisplayName = "类别")] |
|
||||
[ValueMapping("有结算有发运", 1)] |
|
||||
[ValueMapping("有结算无发运", 2)] |
|
||||
[ValueMapping("无结算有发运", 3)] |
|
||||
public EnumPubSaSeCompareCategory Category { get; set; } |
|
||||
/// <summary>
|
|
||||
/// Wms发货单号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "Wms发货单号")] |
|
||||
[ExporterHeader(DisplayName = "交货单号")] |
|
||||
public string WmsBillNum { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货日期")] |
|
||||
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
|
||||
public DateTime? ShippingDate { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 生产码
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "生产码")] |
|
||||
[ExporterHeader(DisplayName = "ASN发货单号")] |
|
||||
public string PN { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 客户物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户物料号")] |
|
||||
[ExporterHeader(DisplayName = "客户物料号")] |
|
||||
public string CustomerPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 物料描述
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "物料描述")] |
|
||||
[ExporterHeader(DisplayName = "物料描述")] |
|
||||
public string PartCodeDesc { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 厂内物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "厂内物料号")] |
|
||||
[ExporterHeader(DisplayName = "厂内物料号")] |
|
||||
public string FactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 替换厂内物料号
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "替换厂内物料号")] |
|
||||
[ExporterHeader(DisplayName = "替换厂内物料号")] |
|
||||
public string ReplaceFactoryPartCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数据中的过账日期
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "客户下线时间")] |
|
||||
[ExporterHeader(DisplayName = "客户下线时间")] |
|
||||
public DateTime? CustomerOfflineTime { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 结算数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "结算数量")] |
|
||||
[ExporterHeader(DisplayName = "结算数量")] |
|
||||
public decimal SAQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 发货数量
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "发货数量")] |
|
||||
[ExporterHeader(DisplayName = "WMS发货数量")] |
|
||||
public decimal SEQty { get; set; } |
|
||||
/// <summary>
|
|
||||
/// 差异数量
|
|
||||
/// </summary>
|
|
||||
[ExporterHeader(DisplayName = "差异数量")] |
|
||||
public decimal DiffQty => SAQty - SEQty; |
|
||||
/// <summary>
|
|
||||
/// 匹配类型
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "匹配类型")] |
|
||||
[ExporterHeader(DisplayName = "是否完全匹配")] |
|
||||
[ValueMapping("是", true)] |
|
||||
[ValueMapping("否", false)] |
|
||||
public bool MateType => DiffQty == 0; |
|
||||
/// <summary>
|
|
||||
/// WMS目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "WMS目标库位")] |
|
||||
[ExporterHeader(DisplayName = "WMS目标库位")] |
|
||||
public string ToLocCode { get; set; } |
|
||||
/// <summary>
|
|
||||
/// ERP目标库位
|
|
||||
/// </summary>
|
|
||||
[Display(Name = "ERP目标库位")] |
|
||||
[ExporterHeader(DisplayName = "ERP目标库位")] |
|
||||
public string ToErpLocCode { get; set; } |
|
||||
} |
|
@ -0,0 +1,116 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
using Win.Sfs.SettleAccount.Enums; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 结算、发运明细对比报告
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 类别
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "类别")] |
||||
|
[ExporterHeader(DisplayName = "类别")] |
||||
|
[ValueMapping("有结算有发运", 1)] |
||||
|
[ValueMapping("有结算无发运", 2)] |
||||
|
[ValueMapping("无结算有发运", 3)] |
||||
|
public EnumPubSaSeCompareCategory Category { get; set; } |
||||
|
/// <summary>
|
||||
|
/// Wms发货单号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "Wms发货单号")] |
||||
|
[ExporterHeader(DisplayName = "交货单号")] |
||||
|
public string WmsBillNum { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发货日期
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "发货日期")] |
||||
|
[ExporterHeader(DisplayName = "发货日期", Format = "yyyy-MM-dd")] |
||||
|
public DateTime? ShippingDate { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "生产码")] |
||||
|
public virtual string PN { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 客户零件号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "客户零件号")] |
||||
|
[ExporterHeader(DisplayName = "客户零件号")] |
||||
|
public string CustomerPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 零件描述
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "零件描述")] |
||||
|
[ExporterHeader(DisplayName = "零件描述")] |
||||
|
public string PartCodeDesc { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 厂内零件号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "厂内零件号")] |
||||
|
[ExporterHeader(DisplayName = "厂内零件号")] |
||||
|
public string FactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 替换厂内零件号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "替换厂内零件号")] |
||||
|
[ExporterHeader(DisplayName = "替换厂内零件号")] |
||||
|
public string ReplaceFactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算数据中的过账日期
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "客户下线时间")] |
||||
|
[ExporterHeader(DisplayName = "客户下线时间", Format = "yyyy-MM-dd")] |
||||
|
public DateTime? CustomerOfflineTime { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "结算数量")] |
||||
|
[ExporterHeader(DisplayName = "结算数量")] |
||||
|
public decimal SAQty { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发货数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "发货数量")] |
||||
|
[ExporterHeader(DisplayName = "WMS发货数量")] |
||||
|
public decimal SEQty { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 差异数量
|
||||
|
/// </summary>
|
||||
|
[ExporterHeader(DisplayName = "差异数量")] |
||||
|
public decimal DiffQty => SAQty - SEQty; |
||||
|
/// <summary>
|
||||
|
/// 匹配类型
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "匹配类型")] |
||||
|
[ExporterHeader(DisplayName = "是否完全匹配")] |
||||
|
[ValueMapping("是", true)] |
||||
|
[ValueMapping("否", false)] |
||||
|
public bool MateType => DiffQty == 0; |
||||
|
/// <summary>
|
||||
|
/// WMS目标库位
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "WMS目标库位")] |
||||
|
[ExporterHeader(DisplayName = "WMS目标库位")] |
||||
|
public string ToLocCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// ERP目标库位
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "ERP目标库位")] |
||||
|
[ExporterHeader(DisplayName = "ERP目标库位")] |
||||
|
public string ToErpLocCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 是否是当期
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "当期")] |
||||
|
[ValueMapping("当期数据", true)] |
||||
|
[ValueMapping("", false)] |
||||
|
public bool IsCurrent { get; set; } |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 备件结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReportBeiJian : SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "索引号")] |
||||
|
public override string PN { get; set; } |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 买单件BBAC结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReportMaiDanJianBBAC : SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "索引号")] |
||||
|
public override string PN { get; set; } |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 买单件HBPO结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReportMaiDanJianHBPO : SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "索引号")] |
||||
|
public override string PN { get; set; } |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 印度件结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReportYinDuJian : SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "ASN发货单号")] |
||||
|
public override string PN { get; set; } |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 直供件BBAC结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReportZhiGongJianBBAC : SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "ASN发货单号")] |
||||
|
public override string PN { get; set; } |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 直供件HBPO结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareDetailReportZhiGongJianHBPO : SaSeCompareDetailReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 生产码
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产码")] |
||||
|
[ExporterHeader(DisplayName = "ASN发货单号")] |
||||
|
public override string PN { get; set; } |
||||
|
} |
@ -0,0 +1,153 @@ |
|||||
|
using System; |
||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Win.Sfs.SettleAccount.Enums; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 结算、发运对比
|
||||
|
/// </summary>
|
||||
|
public class SaSeCompareDiff |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 期间
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "期间")] |
||||
|
public int Version { get; set; } |
||||
|
/// <summary>
|
||||
|
/// Wms发货单号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "Wms发货单号")] |
||||
|
public string WmsBillNum { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发货日期
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "发货日期")] |
||||
|
public DateTime? ShippingDate { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 日顺序号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "日顺序号")] |
||||
|
public string SeqNumber { get; set; } |
||||
|
/// <summary>
|
||||
|
/// PJIS日顺序号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "PJIS日顺序号")] |
||||
|
public string PJISSeqNumber { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算数据中的过账日期
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "客户下线时间")] |
||||
|
public DateTime? CustomerOfflineTime { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "结算数量")] |
||||
|
public decimal? SAQty { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发货数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "发货数量")] |
||||
|
public decimal? SEQty { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 生产号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "生产号")] |
||||
|
public string PN { set; get; } |
||||
|
/// <summary>
|
||||
|
/// 客户物料号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "客户物料号")] |
||||
|
public string LU { set; get; } |
||||
|
/// <summary>
|
||||
|
/// WMS目标库位
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "WMS目标库位")] |
||||
|
public string ToLocCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// ERP目标库位
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "ERP目标库位")] |
||||
|
public string ToErpLocCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 类型
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "类型")] |
||||
|
public EnumPubSaSeCompareCategory Category { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发运客户物料号
|
||||
|
/// </summary>
|
||||
|
public string SeCustomerPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发运厂内物料号
|
||||
|
/// </summary>
|
||||
|
public string SeFactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算客户物料号
|
||||
|
/// </summary>
|
||||
|
public string SaCustomerPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算厂内物料号
|
||||
|
/// </summary>
|
||||
|
public string SaFactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 客户物料号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "客户物料号")] |
||||
|
public string CustomerPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 物料描述
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "物料描述")] |
||||
|
public string PartCodeDesc { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 厂内物料号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "厂内物料号")] |
||||
|
public string FactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 替换厂内物料号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "替换厂内物料号")] |
||||
|
public string ReplaceFactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 是否已经移除
|
||||
|
/// </summary>
|
||||
|
public bool IsRemove { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 是否是当期
|
||||
|
/// </summary>
|
||||
|
public bool IsCurrent { get; set; } |
||||
|
} |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// PUB结算与发运对比明细
|
||||
|
/// </summary>
|
||||
|
public interface IPubSaSeCompareDetailExport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 类别
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "类别")] |
||||
|
public EnumPubSaSeCompareCategory Category { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 零件描述
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "零件描述")] |
||||
|
public string PartCodeDesc { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 替换厂内零件号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "替换厂内零件号")] |
||||
|
public string ReplaceFactoryPartCode { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 结算数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "结算数量")] |
||||
|
public decimal SAQty { get; set; } |
||||
|
/// <summary>
|
||||
|
/// 发货数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "发货数量")] |
||||
|
public decimal SEQty { get; set; } |
||||
|
} |
@ -0,0 +1,46 @@ |
|||||
|
using System.ComponentModel.DataAnnotations; |
||||
|
using Magicodes.ExporterAndImporter.Core; |
||||
|
using Magicodes.ExporterAndImporter.Excel; |
||||
|
|
||||
|
namespace Win.Sfs.SettleAccount.Reports; |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 结算、发运汇总对比报告
|
||||
|
/// </summary>
|
||||
|
[ExcelExporter(MaxRowNumberOnASheet = 500_000)] |
||||
|
public class SaSeCompareSumReport |
||||
|
{ |
||||
|
/// <summary>
|
||||
|
/// 厂内物料号
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "厂内物料号")] |
||||
|
[ExporterHeader(DisplayName = "LU")] |
||||
|
public string FactoryPartCode { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 物料描述
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "物料描述")] |
||||
|
[ExporterHeader(DisplayName = "物料描述")] |
||||
|
public string PartCodeDesc { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 结算数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "结算数量")] |
||||
|
[ExporterHeader(DisplayName = "结算数量")] |
||||
|
public decimal SAQty { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 发货数量
|
||||
|
/// </summary>
|
||||
|
[Display(Name = "发货数量")] |
||||
|
[ExporterHeader(DisplayName = "WMS发货数量")] |
||||
|
public decimal SEQty { get; set; } |
||||
|
|
||||
|
/// <summary>
|
||||
|
/// 差异数量
|
||||
|
/// </summary>
|
||||
|
[ExporterHeader(DisplayName = "差异数量")] |
||||
|
public decimal DiffQty => SAQty - SEQty; |
||||
|
} |
Loading…
Reference in new issue