From 90571dd3876f376b1f3f2627b4f9feab224ddb99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A6=20=E8=B5=B5?= <89237069@qq.com> Date: Thu, 29 May 2025 14:54:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- API/TaskManager.Contracts/Dtos/Dtos.cs | 619 ++++++- .../TaskManager.Contracts.csproj | 2 + .../11-18/SUPPLIER_PRO_ENVIRONMENT.cs | 2 +- .../11-18/SUPPLIER_SINV_DATA.cs | 4 +- API/TaskManager.Entity/Entity.cs | 1427 ++++++++++++++--- .../Controllers/SupplierSinvDataService.cs | 1 + 6 files changed, 1741 insertions(+), 314 deletions(-) diff --git a/API/TaskManager.Contracts/Dtos/Dtos.cs b/API/TaskManager.Contracts/Dtos/Dtos.cs index 7035ebb..bab83f5 100644 --- a/API/TaskManager.Contracts/Dtos/Dtos.cs +++ b/API/TaskManager.Contracts/Dtos/Dtos.cs @@ -4,6 +4,7 @@ using System.ComponentModel.DataAnnotations; using System.Globalization; using System.Text.Json; using System.Text.Json.Serialization; +using Magicodes.ExporterAndImporter.Core; namespace TaskManager.Contracts.Dtos @@ -374,21 +375,91 @@ namespace TaskManager.Contracts.Dtos public class SUPPLIER_SA_WEEK_DETAIL_DTO : CherryReadBaseEntityDto { - - public string ScheduleAgreement { get; set; } - public string SerialNumber { get; set; } - public string MaterialCode { get; set; } - public string MaterialDescription { get; set; } - public string PurchasingGroup { get; set; } - public string PlantId { get; set; } - public int QuantityDemand { get; set; } - public string DateReceived { get; set; } - public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } - public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + /// + /// 计划协议号 + /// + [MaxLength(50)] + public string ScheduleAgreement { get; set; } = ""; + + /// + /// 行项目号 + /// + [MaxLength(50)] + public string SerialNumber { get; set; } = ""; + + /// + /// 零件号:奇瑞零件号 + /// + [MaxLength(50)] + public string MaterialCode { get; set; } = ""; + + /// + /// 零件名称 + /// + [MaxLength(50)] + public string MaterialDescription { get; set; } = ""; + + /// + /// 采购组 + /// + [MaxLength(50)] + public string PurchasingGroup { get; set; } = ""; + + /// + /// 工厂代码 + /// + [MaxLength(50)] + public string PlantId { get; set; } = ""; + + /// + /// 需求数量 + /// + public int QuantityDemand { get; set; } = 1; + + /// + /// 交货日期-格式:yyyy-MM-dd + /// + [MaxLength(50)] + public DateTime? DateReceived { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + public string CreateByUser { get; set; } = ""; + + /// + /// 创建时间 + /// + [MaxLength(50)] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + public string UpdateByUser { get; set; } = ""; + + /// + /// 修改时间 + /// + [MaxLength(50)] + public DateTime? UpdateTime { get; set; } + + /// + /// 是否删除(0:否,1是) + /// + public int IsDelete { get; set; } = 1; + + /// + /// 版本号 + /// + public int Version { get; set; } = 1; + + + + + } public class SUPPLIER_SA_WEEK_DTO : PAGE_OUT_DTO @@ -410,32 +481,173 @@ namespace TaskManager.Contracts.Dtos public class SUPPLIER_PO_DETAIL_DTO:CherryReadBaseEntityDto { - + + /// + /// 采购订单号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "采购订单号")] public string PurchaseOrder { get; set; } + + /// + /// 行项目号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "行项目号")] public string SerialNumber { get; set; } + + /// + /// 工厂代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } + + /// + /// 工厂名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - public string VoucherDate { get; set; } + + /// + /// 凭证日期-格式:yyyy-MM-dd + /// + [ExporterHeader(DisplayName = "凭证日期", Format = "yyyy-MM-dd")] + public DateTime? VoucherDate { get; set; } + + /// + /// 需方联系人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "需方联系人")] public string Purchaser { get; set; } + + /// + /// 供方联系人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "供方联系人")] public string Supplier { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } - public decimal? QuantityDemand { get; set; } + + /// + /// 需求数量 + /// + [ExporterHeader(DisplayName = "需求数量")] + public decimal? QuantityDemand { get; set; }=0; + + /// + /// 物料单位 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料单位")] public string MaterialUnit { get; set; } - public string DeliveryDate { get; set; } + + /// + /// 交货日期-格式:yyyy-MM-dd + /// + [ExporterHeader(DisplayName = "交货日期", Format = "yyyy-MM-dd")] + public DateTime? DeliveryDate { get; set; } + + /// + /// 交货地点 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "交货地点")] public string DeliveryPlace { get; set; } - public decimal? QuantityDelivery { get; set; } + + /// + /// 到货数量 + /// + [ExporterHeader(DisplayName = "到货数量")] + public decimal? QuantityDelivery { get; set; } = 0; + + /// + /// 备注:含批次号信息 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "备注")] public string Note { get; set; } + + /// + /// 项目类别文本 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "项目类别")] public string ItemType { get; set; } + + /// + /// 国际贸易条件 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "贸易条件")] public string TradeTerms { get; set; } + + /// + /// 出口国家 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "出口国家")] public string Country { get; set; } + + /// + /// 批次 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "批次")] public string Batch { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public string CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public string UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 是否删除(0:否,1是) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; } @@ -499,21 +711,102 @@ namespace TaskManager.Contracts.Dtos public class SUPPLIER_PRO_HSCHEDUL_DETAIL_DTO : CherryReadBaseEntityDto { - + + /// + /// 车型 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "车型")] public string Models { get; set; } + + /// + /// VIN + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "VIN")] public string Vin { get; set; } + + /// + /// 产线代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } + + /// + /// 产线名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } + + /// + /// 生产备注(报工类型) + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "报工类型")] public string ProductionType { get; set; } - public string OnLineTime { get; set; } + + /// + /// 上线日期时间-格式:yyyy-MM-dd HH:mm:ss + /// + [ExporterHeader(DisplayName = "上线时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? OnLineTime { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 是否删除(0:否,1是) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + } public class SUPPLIER_PRO_HSCHEDUL_DTO : PAGE_OUT_DTO @@ -527,27 +820,110 @@ namespace TaskManager.Contracts.Dtos #endregion #region 过涂装未过总装(输出) - - - public class SUPPLIER_PRO_TSCHEDUL_DETAIL_DTO : CherryReadBaseEntityDto { - + /// + /// 车型 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "车型")] public string Models { get; set; } + + /// + /// VIN + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "VIN")] public string Vin { get; set; } + + /// + /// 产线代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } + + /// + /// 产线名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } - public string OnLineTime { get; set; } + + /// + /// 上线日期时间-格式:yyyy-MM-dd HH:mm:ss + /// + [ExporterHeader(DisplayName = "上线时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? OnLineTime { get; set; } + + /// + /// 总装车间 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "总装车间")] public string FinalWorkshop { get; set; } - public string FinalOnLineTime { get; set; } + + /// + /// 总装上线日期时间-格式:yyyy-MM-dd HH:mm:ss + /// + [ExporterHeader(DisplayName = "总装上线时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? FinalOnLineTime { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } + + /// + /// 是否删除(0:否,1是) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + + } public class SUPPLIER_PRO_TSCHEDUL_DTO : PAGE_OUT_DTO @@ -564,6 +940,7 @@ namespace TaskManager.Contracts.Dtos public class SUPPLIER_PRO_CSCHEDUL_DETAIL_DTO : CherryReadBaseEntityDto { + public string Models { get; set; } public string Vin { get; set; } public string ProductionLineId { get; set; } @@ -842,53 +1219,127 @@ public class SUPPLIER_MRP_WARNING_DETAIL_DTO : CherryReadBaseEntityDto public class SUPPLIER_MRP_DATE_DETAIL_DTO : CherryReadBaseEntityDto { + /// + /// 需求发布版次(用于接口反馈数据的唯一标识) + /// 字符串长度限制:50 字节 + /// + [StringLength(50)] // 使用数据注解限制长度(需引用 System.ComponentModel.DataAnnotations) + public string ReleaseEdition { get; set; } = string.Empty; - public string ReleaseEdition { get; set; } - public string MaterialCode { get; set; } - public string MaterialDescription { get; set; } - public string PlantId { get; set; } - public string PlantName { get; set; } - public string StartDate { get; set; } + /// + /// 奇瑞零件号 + /// 字符串长度限制:50 字节 + /// + [StringLength(50)] + public string MaterialCode { get; set; } = string.Empty; - public decimal? QuantityDemand1 { get; set; } - public decimal? QuantityDemand2 { get; set; } - public decimal? QuantityDemand3 { get; set; } - public decimal? QuantityDemand4 { get; set; } - public decimal? QuantityDemand5 { get; set; } - public decimal? QuantityDemand6 { get; set; } - public decimal? QuantityDemand7 { get; set; } - public decimal? QuantityDemand8 { get; set; } - public decimal? QuantityDemand9 { get; set; } - public decimal? QuantityDemand10 { get; set; } - public decimal? QuantityDemand11 { get; set; } - public decimal? QuantityDemand12 { get; set; } - public decimal? QuantityDemand13 { get; set; } - public decimal? QuantityDemand14 { get; set; } - public decimal? QuantityDemand15 { get; set; } - public decimal? QuantityDemand16 { get; set; } - public decimal? QuantityDemand17 { get; set; } - public decimal? QuantityDemand18 { get; set; } - public decimal? QuantityDemand19 { get; set; } - public decimal? QuantityDemand20 { get; set; } - public decimal? QuantityDemand21 { get; set; } - public decimal? QuantityDemand22 { get; set; } - public decimal? QuantityDemand23 { get; set; } - public decimal? QuantityDemand24 { get; set; } - public decimal? QuantityDemand25 { get; set; } - public decimal? QuantityDemand26 { get; set; } - public decimal? QuantityDemand27 { get; set; } - public decimal? QuantityDemand28 { get; set; } - public decimal? QuantityDemand29 { get; set; } - public decimal? QuantityDemand30 { get; set; } - public decimal? QuantityDemand31 { get; set; } + /// + /// 零件名称 + /// 字符串长度限制:50 字节 + /// + [StringLength(50)] + public string MaterialDescription { get; set; } = string.Empty; - public string IsUpdate { get; set; } - public string CreateByUser { get; set; } - public string CreateTime { get; set; } - public string UpdateByUser { get; set; } - public string UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + /// + /// 工厂代码 + /// 字符串长度限制:50 字节 + /// + [StringLength(50)] + public string PlantId { get; set; } = string.Empty; + + /// + /// 工厂名称 + /// 字符串长度限制:50 字节 + /// + [StringLength(50)] + public string PlantName { get; set; } = string.Empty; + + /// + /// 需求起始日期(格式:yyyy-MM-dd) + /// + public DateTime StartDate { get; set; } + + /// + /// 需求起始日期的需求数量 + /// + public int QuantityDemand1 { get; set; } = 1; + + /// + /// 起始日期+1天的需求数量 + /// + public int QuantityDemand2 { get; set; } = 1; + + /// + /// 起始日期+2天的需求数量(以此类推) + /// + public int QuantityDemand3 { get; set; } = 1; + + // 省略 QuantityDemand4 至 QuantityDemand31 的重复注释(格式与上述一致) + public decimal QuantityDemand4 { get; set; } = 0; + public decimal QuantityDemand5 { get; set; } = 0; + public decimal QuantityDemand6 { get; set; } = 0; + public decimal QuantityDemand7 { get; set; } = 0; + public decimal QuantityDemand8 { get; set; } = 0; + public decimal QuantityDemand9 { get; set; } = 0; + public decimal QuantityDemand10 { get; set; } = 0; + public decimal QuantityDemand11 { get; set; } = 0; + public decimal QuantityDemand12 { get; set; } = 0; + public decimal QuantityDemand13 { get; set; } = 0; + public decimal QuantityDemand14 { get; set; } = 0; + public decimal QuantityDemand15 { get; set; } = 0; + public decimal QuantityDemand16 { get; set; } = 0; + public decimal QuantityDemand17 { get; set; } = 0; + public decimal QuantityDemand18 { get; set; } = 0; + public decimal QuantityDemand19 { get; set; } = 0; + public decimal QuantityDemand20 { get; set; } = 0; + public decimal QuantityDemand21 { get; set; } = 0; + public decimal QuantityDemand22 { get; set; } = 0; + public decimal QuantityDemand23 { get; set; } = 0; + public decimal QuantityDemand24 { get; set; } = 0; + public decimal QuantityDemand25 { get; set; } = 0; + public decimal QuantityDemand26 { get; set; } = 0; + public decimal QuantityDemand27 { get; set; } = 0; + public decimal QuantityDemand28 { get; set; } = 0; + public decimal QuantityDemand29 { get; set; } = 0; + public decimal QuantityDemand30 { get; set; } = 0; + public decimal QuantityDemand31 { get; set; } = 0; + + /// + /// 数据变更标识(1=更新需求,0=未变更) + /// + public string IsUpdate { get; set; } = string.Empty; + + /// + /// 创建人(字符串长度默认 50 字节) + /// + [StringLength(50)] + public string CreateByUser { get; set; } = string.Empty; + + /// + /// 创建时间(自动填充当前时间) + /// + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人(字符串长度默认 50 字节) + /// + [StringLength(50)] + public string UpdateByUser { get; set; } = string.Empty; + + /// + /// 修改时间(自动更新为最后修改时间) + /// + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 删除标识(0=未删除,1=已删除) + /// + public int IsDelete { get; set; } = 0; // 默认已删除(根据原始数据默认值) + + /// + /// 数据版本号(乐观锁控制) + /// + public int Version { get; set; } = 0; } diff --git a/API/TaskManager.Contracts/TaskManager.Contracts.csproj b/API/TaskManager.Contracts/TaskManager.Contracts.csproj index 3b5b170..90c35bc 100644 --- a/API/TaskManager.Contracts/TaskManager.Contracts.csproj +++ b/API/TaskManager.Contracts/TaskManager.Contracts.csproj @@ -7,6 +7,8 @@ + + diff --git a/API/TaskManager.Entity/11-18/SUPPLIER_PRO_ENVIRONMENT.cs b/API/TaskManager.Entity/11-18/SUPPLIER_PRO_ENVIRONMENT.cs index a5a9e8a..1989fa2 100644 --- a/API/TaskManager.Entity/11-18/SUPPLIER_PRO_ENVIRONMENT.cs +++ b/API/TaskManager.Entity/11-18/SUPPLIER_PRO_ENVIRONMENT.cs @@ -30,7 +30,7 @@ namespace TaskManager.Entity.Entitys /// /// 车间代码 /// - [ExporterHeader(DisplayName = "车间代码)] + [ExporterHeader(DisplayName = "车间代码")] public string WorkshopId { get; set; } /// /// 车间名称 diff --git a/API/TaskManager.Entity/11-18/SUPPLIER_SINV_DATA.cs b/API/TaskManager.Entity/11-18/SUPPLIER_SINV_DATA.cs index 6ca6682..e4dcf9b 100644 --- a/API/TaskManager.Entity/11-18/SUPPLIER_SINV_DATA.cs +++ b/API/TaskManager.Entity/11-18/SUPPLIER_SINV_DATA.cs @@ -1,11 +1,11 @@ using Magicodes.ExporterAndImporter.Core; -namespace TaskManager.Entity.Entitys +namespace TaskManager.Entity { /// /// 供应商共享库存 /// - public class SUPPLIER_SINV_DATA : BaseEntity + public class SUPPLIER_SINV_DATA : CherryReadBaseEntity { /// /// 供应商代码 diff --git a/API/TaskManager.Entity/Entity.cs b/API/TaskManager.Entity/Entity.cs index 5e17f10..86efa2d 100644 --- a/API/TaskManager.Entity/Entity.cs +++ b/API/TaskManager.Entity/Entity.cs @@ -283,37 +283,37 @@ namespace TaskManager.Entity /// 数量1 /// [JsonPropertyName("quantity1")] - public decimal Quantity1 { get; set; } = 1; + public decimal? Quantity1 { get; set; } = 0; /// /// 数量2 /// [JsonPropertyName("quantity2")] - public decimal Quantity2 { get; set; } = 1; + public decimal? Quantity2 { get; set; } = 0; /// /// 数量3 /// [JsonPropertyName("quantity3")] - public decimal Quantity3 { get; set; } = 1; + public decimal? Quantity3 { get; set; } = 0; /// /// 数量4 /// [JsonPropertyName("quantity4")] - public decimal Quantity4 { get; set; } = 1; + public decimal? Quantity4 { get; set; } = 0; /// /// 数量5 /// [JsonPropertyName("quantity5")] - public decimal Quantity5 { get; set; } = 1; + public decimal? Quantity5 { get; set; } = 0; /// /// 数量6 /// [JsonPropertyName("quantity6")] - public decimal Quantity6 { get; set; } = 1; + public decimal? Quantity6 { get; set; } = 0; /// /// 工厂 @@ -362,10 +362,10 @@ namespace TaskManager.Entity [JsonProperty("omterior")] // 可能是拼写错误,保留原始名称 - public string Omterior { get; set; } + public string Omterior { get; set; } = String.Empty; [JsonProperty("salseDepartment")] // 可能是拼写错误,保留原始名称 - public string SalseDepartment { get; set; } + public string SalseDepartment { get; set; } = String.Empty; } @@ -376,11 +376,7 @@ namespace TaskManager.Entity { - /// - /// 主键ID - /// - [JsonPropertyName("id")] - public string Id { get; set; } + /// /// 需求发布版次:M+6月物料需求计划风险确认接口对应需求版次,需求ID @@ -533,13 +529,13 @@ namespace TaskManager.Entity /// 是否删除(0:否,1是) /// [JsonPropertyName("isDelete")] - public int IsDelete { get; set; } = 1; + public int IsDelete { get; set; } = 0; /// /// 版本号 /// [JsonPropertyName("version")] - public int Version { get; set; } = 1; + public int Version { get; set; } = 0; } @@ -578,169 +574,128 @@ namespace TaskManager.Entity public class SUPPLIER_MRP_DATE : CherryReadBaseEntity { - // - /// 主键ID - /// - [JsonPropertyName("id")] - public int Id { get; set; } + /// - /// 需求发布版次:M+6月物料需求计划风险确认接口对应需求版次,需求ID + /// 需求发布版次(用于接口反馈数据的唯一标识) + /// 字符串长度限制:50 字节 /// - [JsonPropertyName("releaseEdition")] - [MaxLength(50)] + [StringLength(50)] // 使用数据注解限制长度(需引用 System.ComponentModel.DataAnnotations) public string ReleaseEdition { get; set; } = string.Empty; /// - /// 零件号:奇瑞零件号 + /// 奇瑞零件号 + /// 字符串长度限制:50 字节 /// - [JsonPropertyName("materialCode")] - [MaxLength(50)] + [StringLength(50)] public string MaterialCode { get; set; } = string.Empty; /// /// 零件名称 + /// 字符串长度限制:50 字节 /// - [JsonPropertyName("materialDescription")] - [MaxLength(50)] + [StringLength(50)] public string MaterialDescription { get; set; } = string.Empty; /// /// 工厂代码 + /// 字符串长度限制:50 字节 /// - [JsonPropertyName("plantId")] - [MaxLength(50)] + [StringLength(50)] public string PlantId { get; set; } = string.Empty; /// /// 工厂名称 + /// 字符串长度限制:50 字节 /// - [JsonPropertyName("plantName")] - [MaxLength(50)] + [StringLength(50)] public string PlantName { get; set; } = string.Empty; /// - /// 起始月份-格式:yyyy-MM + /// 需求起始日期(格式:yyyy-MM-dd) /// - [JsonPropertyName("startMonth")] - [MaxLength(50)] - public string StartMonth { get; set; } = string.Empty; + public DateTime StartDate { get; set; } /// - /// 需求数量1 + /// 需求起始日期的需求数量 /// - [JsonPropertyName("quantityDemand1")] public int QuantityDemand1 { get; set; } = 1; /// - /// 需求数量2 + /// 起始日期+1天的需求数量 /// - [JsonPropertyName("quantityDemand2")] public int QuantityDemand2 { get; set; } = 1; /// - /// 需求数量3 + /// 起始日期+2天的需求数量(以此类推) /// - [JsonPropertyName("quantityDemand3")] public int QuantityDemand3 { get; set; } = 1; - /// - /// 需求数量4 - /// - [JsonPropertyName("quantityDemand4")] - public int QuantityDemand4 { get; set; } = 1; - - /// - /// 需求数量5 - /// - [JsonPropertyName("quantityDemand5")] - public int QuantityDemand5 { get; set; } = 1; - - /// - /// 需求数量6 - /// - [JsonPropertyName("quantityDemand6")] - public int QuantityDemand6 { get; set; } = 1; - - /// - /// 需求数量7 - /// - [JsonPropertyName("quantityDemand7")] - public int QuantityDemand7 { get; set; } = 1; - - /// - /// 需求数量8 - /// - [JsonPropertyName("quantityDemand8")] - public int QuantityDemand8 { get; set; } = 1; - - /// - /// 需求数量9 - /// - [JsonPropertyName("quantityDemand9")] - public int QuantityDemand9 { get; set; } = 1; - - /// - /// 需求数量10 - /// - [JsonPropertyName("quantityDemand10")] - public int QuantityDemand10 { get; set; } = 1; - - /// - /// 需求数量11 - /// - [JsonPropertyName("quantityDemand11")] - public int QuantityDemand11 { get; set; } = 1; - - /// - /// 需求数量12 - /// - [JsonPropertyName("quantityDemand12")] - public int QuantityDemand12 { get; set; } = 1; - - /// - /// 当文件夹数据发生变更时(更新需求=1/否则=0) + // 省略 QuantityDemand4 至 QuantityDemand31 的重复注释(格式与上述一致) + public decimal QuantityDemand4 { get; set; } = 0; + public decimal QuantityDemand5 { get; set; } = 0; + public decimal QuantityDemand6 { get; set; } = 0; + public decimal QuantityDemand7 { get; set; } = 0; + public decimal QuantityDemand8 { get; set; } = 0; + public decimal QuantityDemand9 { get; set; } = 0; + public decimal QuantityDemand10 { get; set; } = 0; + public decimal QuantityDemand11 { get; set; } = 0; + public decimal QuantityDemand12 { get; set; } = 0; + public decimal QuantityDemand13 { get; set; } = 0; + public decimal QuantityDemand14 { get; set; } = 0; + public decimal QuantityDemand15 { get; set; } = 0; + public decimal QuantityDemand16 { get; set; } = 0; + public decimal QuantityDemand17 { get; set; } = 0; + public decimal QuantityDemand18 { get; set; } = 0; + public decimal QuantityDemand19 { get; set; } = 0; + public decimal QuantityDemand20 { get; set; } = 0; + public decimal QuantityDemand21 { get; set; } = 0; + public decimal QuantityDemand22 { get; set; } = 0; + public decimal QuantityDemand23 { get; set; } = 0; + public decimal QuantityDemand24 { get; set; } = 0; + public decimal QuantityDemand25 { get; set; } = 0; + public decimal QuantityDemand26 { get; set; } = 0; + public decimal QuantityDemand27 { get; set; } = 0; + public decimal QuantityDemand28 { get; set; } = 0; + public decimal QuantityDemand29 { get; set; } = 0; + public decimal QuantityDemand30 { get; set; } = 0; + public decimal QuantityDemand31 { get; set; } = 0; + + /// + /// 数据变更标识(1=更新需求,0=未变更) /// - [JsonPropertyName("isUpdate")] - [MaxLength(50)] public string IsUpdate { get; set; } = string.Empty; /// - /// 创建人 + /// 创建人(字符串长度默认 50 字节) /// - [JsonPropertyName("createByUser")] - [MaxLength(50)] + [StringLength(50)] public string CreateByUser { get; set; } = string.Empty; /// - /// 创建时间 + /// 创建时间(自动填充当前时间) /// - [JsonPropertyName("createTime")] - public DateTime CreateTime { get; set; } + public DateTime CreateTime { get; set; } = DateTime.Now; /// - /// 修改人 + /// 修改人(字符串长度默认 50 字节) /// - [JsonPropertyName("updateByUser")] - [MaxLength(50)] + [StringLength(50)] public string UpdateByUser { get; set; } = string.Empty; /// - /// 修改时间 + /// 修改时间(自动更新为最后修改时间) /// - [JsonPropertyName("updateTime")] - public DateTime UpdateTime { get; set; } + public DateTime UpdateTime { get; set; } = DateTime.Now; /// - /// 是否删除(0:否,1是) + /// 删除标识(0=未删除,1=已删除) /// - [JsonPropertyName("isDelete")] - public int IsDelete { get; set; } = 1; + public int IsDelete { get; set; } = 1; // 默认已删除(根据原始数据默认值) /// - /// 版本号 + /// 数据版本号(乐观锁控制) /// - [JsonPropertyName("version")] public int Version { get; set; } = 1; } @@ -799,21 +754,88 @@ namespace TaskManager.Entity /// public class SUPPLIER_SA_WEEK : CherryReadBaseEntity { - - public string ScheduleAgreement { get; set; } - public string SerialNumber { get; set; } - public string MaterialCode { get; set; } - public string MaterialDescription { get; set; } - public string PurchasingGroup { get; set; } - public string PlantId { get; set; } - public int QuantityDemand { get; set; } - public string DateReceived { get; set; } - public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } - public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 计划协议号 + /// + [MaxLength(50)] + public string ScheduleAgreement { get; set; } = ""; + + /// + /// 行项目号 + /// + [MaxLength(50)] + public string SerialNumber { get; set; } = ""; + + /// + /// 零件号:奇瑞零件号 + /// + [MaxLength(50)] + public string MaterialCode { get; set; } = ""; + + /// + /// 零件名称 + /// + [MaxLength(50)] + public string MaterialDescription { get; set; } = ""; + + /// + /// 采购组 + /// + [MaxLength(50)] + public string PurchasingGroup { get; set; } = ""; + + /// + /// 工厂代码 + /// + [MaxLength(50)] + public string PlantId { get; set; } = ""; + + /// + /// 需求数量 + /// + public decimal? QuantityDemand { get; set; } = 0; + + /// + /// 交货日期-格式:yyyy-MM-dd + /// + [MaxLength(50)] + public DateTime? DateReceived { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + public string CreateByUser { get; set; } = ""; + + /// + /// 创建时间 + /// + [MaxLength(50)] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + public string UpdateByUser { get; set; } = ""; + + /// + /// 修改时间 + /// + [MaxLength(50)] + public DateTime? UpdateTime { get; set; } + + /// + /// 是否删除(0:否,1是) + /// + public int IsDelete { get; set; } = 1; + + /// + /// 版本号 + /// + public int Version { get; set; } = 1; + } /// @@ -821,36 +843,181 @@ namespace TaskManager.Entity /// public class SUPPLIER_PO : CherryReadBaseEntity { - + + + /// + /// 采购订单号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "采购订单号")] public string PurchaseOrder { get; set; } + + /// + /// 行项目号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "行项目号")] public string SerialNumber { get; set; } + + /// + /// 工厂代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } + + /// + /// 工厂名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - public string VoucherDate { get; set; } + + /// + /// 凭证日期-格式:yyyy-MM-dd + /// + [ExporterHeader(DisplayName = "凭证日期", Format = "yyyy-MM-dd")] + public DateTime? VoucherDate { get; set; } + + /// + /// 需方联系人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "需方联系人")] public string Purchaser { get; set; } + + /// + /// 供方联系人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "供方联系人")] public string Supplier { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } - public int QuantityDemand { get; set; } + + /// + /// 需求数量 + /// + [ExporterHeader(DisplayName = "需求数量")] + public decimal? QuantityDemand { get; set; } + + /// + /// 物料单位 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料单位")] public string MaterialUnit { get; set; } - public string DeliveryDate { get; set; } + + /// + /// 交货日期-格式:yyyy-MM-dd + /// + [ExporterHeader(DisplayName = "交货日期", Format = "yyyy-MM-dd")] + public DateTime? DeliveryDate { get; set; } + + /// + /// 交货地点 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "交货地点")] public string DeliveryPlace { get; set; } - public int QuantityDelivery { get; set; } + + /// + /// 到货数量 + /// + [ExporterHeader(DisplayName = "到货数量")] + public int QuantityDelivery { get; set; } = 1; + + /// + /// 备注:含批次号信息 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "备注")] public string Note { get; set; } + + /// + /// 项目类别文本 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "项目类别")] public string ItemType { get; set; } + + /// + /// 国际贸易条件 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "贸易条件")] public string TradeTerms { get; set; } + + /// + /// 出口国家 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "出口国家")] public string Country { get; set; } - public string Batch { get; set; } - public string CreateByUser { get; set; } - public string CreateTime { get; set; } - public string UpdateByUser { get; set; } - public string UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } - } - /// - /// 采购订单风险确认 + /// + /// 批次 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "批次")] + public string Batch { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] + public string CreateByUser { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] + public string UpdateByUser { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 是否删除(0:否,1是) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + + } + + /// + /// 采购订单风险确认 /// //public class SUPPLIER_CON_PO : BaseEntity //{ @@ -871,22 +1038,103 @@ namespace TaskManager.Entity /// public class SUPPLIER_PRO_HSCHEDUL : CherryReadBaseEntity { - + + + + /// + /// 车型 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "车型")] public string Models { get; set; } + + /// + /// VIN + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "VIN")] public string Vin { get; set; } + + /// + /// 产线代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } + + /// + /// 产线名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } + + /// + /// 生产备注(报工类型) + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "报工类型")] public string ProductionType { get; set; } - public string OnLineTime { get; set; } + + /// + /// 上线日期时间-格式:yyyy-MM-dd HH:mm:ss + /// + [ExporterHeader(DisplayName = "上线时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? OnLineTime { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 是否删除(0:否,1是) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 1; + + /// + /// 版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 1; + + } @@ -896,22 +1144,108 @@ namespace TaskManager.Entity /// public class SUPPLIER_PRO_TSCHEDUL : CherryReadBaseEntity { - + + + /// + /// 车型 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "车型")] public string Models { get; set; } + + /// + /// VIN + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "VIN")] public string Vin { get; set; } + + /// + /// 产线代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } + + /// + /// 产线名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } - public string OnLineTime { get; set; } + + /// + /// 上线日期时间-格式:yyyy-MM-dd HH:mm:ss + /// + [ExporterHeader(DisplayName = "上线时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? OnLineTime { get; set; } + + /// + /// 总装车间 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "总装车间")] public string FinalWorkshop { get; set; } - public string FinalOnLineTime { get; set; } + + /// + /// 总装上线日期时间-格式:yyyy-MM-dd HH:mm:ss + /// + [ExporterHeader(DisplayName = "总装上线时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? FinalOnLineTime { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 是否删除(0:否,1是) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 1; + + /// + /// 版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 1; + + } @@ -921,53 +1255,270 @@ namespace TaskManager.Entity /// public class SUPPLIER_PRO_CSCHEDUL : CherryReadBaseEntity { - + + + /// + /// 车型 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "车型")] public string Models { get; set; } + + /// + /// VIN码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "VIN码")] public string Vin { get; set; } + + /// + /// 产线编号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线编号")] public string ProductionLineId { get; set; } + + /// + /// 产线名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } + + /// + /// 物料编码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料编码")] public string MaterialCode { get; set; } + + /// + /// 物料描述 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "物料描述")] public string MaterialDescription { get; set; } - public string SortDate { get; set; } + + /// + /// 排序日期 + /// + [ExporterHeader(DisplayName = "排序日期", Format = "yyyy-MM-dd")] + public DateTime? SortDate { get; set; } + + /// + /// 排序时间 + /// + [MaxLength(8)] // HH:mm:ss 固定8位 + [ExporterHeader(DisplayName = "排序时间")] public string SortTime { get; set; } - public string OnLineDate { get; set; } + + /// + /// 上线日期 + /// + [ExporterHeader(DisplayName = "上线日期", Format = "yyyy-MM-dd")] + public DateTime? OnLineDate { get; set; } + + /// + /// 上线时间 + /// + [MaxLength(8)] // HH:mm:ss 固定8位 + [ExporterHeader(DisplayName = "上线时间")] public string OnLineTime { get; set; } + + /// + /// 车型类别 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "车型类别")] public string ModelCategory { get; set; } + + /// + /// 动力总成物料号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "动力总成物料号")] public string AssemblyMaterialCode { get; set; } + + /// + /// 发动机物料号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "发动机物料号")] public string MotorMaterialCode { get; set; } + + /// + /// 工厂 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂")] public string Plant { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } - } - /// - /// 看板配送单 - /// - public class SUPPLIER_DEL_STATE : CherryReadBaseEntity - { - + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? UpdateTime { get; set; } + + /// + /// 删除标记(0:未删除,1:已删除) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 数据版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + } + + /// + /// 看板配送单 + /// + public class SUPPLIER_DEL_STATE : CherryReadBaseEntity + { + + + /// + /// 配送单号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "配送单号")] public string DeliveryNumber { get; set; } + + /// + /// 行项目号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "行项目号")] public string SerialNumber { get; set; } - public string SerialSrate { get; set; } // Matches input, may check for typo (e.g. SerialState?) + + /// + /// 配送单状态 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "配送单状态")] + public string SerialSrate { get; set; } + + /// + /// 零件号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件号")] public string MaterialCode { get; set; } + + /// + /// 零件名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件名称")] public string MaterialDescription { get; set; } + + /// + /// 工厂代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } + + /// + /// 收货道口 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "收货道口")] public string ReceivingCrossings { get; set; } - public int QuantityDelivery { get; set; } - public string DataCreateTime { get; set; } - public string SupplierReceiveTime { get; set; } - public string RoadShippedTime { get; set; } - public string RoadReceiveTime { get; set; } + + /// + /// 数量 + /// + [ExporterHeader(DisplayName = "数量")] + public int QuantityDelivery { get; set; } = 1; + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "数据创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? DataCreateTime { get; set; } + + /// + /// 供应商接收时间 + /// + [ExporterHeader(DisplayName = "供应商接收时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? SupplierReceiveTime { get; set; } + + /// + /// 道口发货时间 + /// + [ExporterHeader(DisplayName = "道口发货时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? RoadShippedTime { get; set; } + + /// + /// 道口收货时间 + /// + [ExporterHeader(DisplayName = "道口收货时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? RoadReceiveTime { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime CreateTime { get; set; } = DateTime.Now; + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime UpdateTime { get; set; } = DateTime.Now; + + /// + /// 删除标记(0:未删除,1:已删除) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 数据版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + } /// @@ -975,28 +1526,154 @@ namespace TaskManager.Entity /// public class SUPPLIER_RETURN : CherryReadBaseEntity { + + + /// + /// 退货单号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "退货单号")] public string ReturnNumber { get; set; } + + /// + /// 行项目号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "行项目号")] public string SerialNumber { get; set; } - public string SerialSrate { get; set; } // Matches input, possibly a typo (e.g. SerialState?) + + /// + /// 退货单状态 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "退货单状态")] + public string SerialSrate { get; set; } + + /// + /// 取货地 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "取货地")] public string PickUpLocation { get; set; } - public string DemandPickupTime { get; set; } + + /// + /// 需求取货时间 + /// + [ExporterHeader(DisplayName = "需求取货时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? DemandPickupTime { get; set; } + + /// + /// 取货道口 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "取货道口")] public string PickUpCrossings { get; set; } + + /// + /// 反馈信息 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "反馈信息")] public string Feedback { get; set; } + + /// + /// 工厂 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂")] public string Plant { get; set; } + + /// + /// 零件号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件号")] public string MaterialCode { get; set; } + + /// + /// 零件名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件名称")] public string MaterialDescription { get; set; } - public int QuantityDelivery { get; set; } + + /// + /// 数量 + /// + [ExporterHeader(DisplayName = "数量")] + public decimal QuantityDelivery { get; set; } = 0; + + /// + /// 退货类型(0-不合格品;1-合格品) + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "退货类型")] public string ReturnType { get; set; } + + /// + /// 批次号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "批次号")] public string LotNumber { get; set; } + + /// + /// 判定人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "判定人")] public string Judge { get; set; } + + /// + /// 退货原因 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "退货原因")] public string ReturnReason { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? UpdateTime { get; set; } + + /// + /// 删除标记(0:未删除,1:已删除) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 数据版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + + + } /// @@ -1004,21 +1681,92 @@ namespace TaskManager.Entity /// public class SUPPLIER_INV_DATA : CherryReadBaseEntity { - + + + /// + /// 工厂代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } + + /// + /// 工厂名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } + + /// + /// 零件号 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件号")] public string MaterialCode { get; set; } + + /// + /// 零件名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件名称")] public string MaterialDescription { get; set; } - public int QuantityCurrent { get; set; } + + /// + /// 当前库存数量 + /// + [ExporterHeader(DisplayName = "当前库存数量")] + public decimal? QuantityCurrent { get; set; } = 0; + + /// + /// 库存状态 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "库存状态")] public string StockState { get; set; } - public string DataUpdateTime { get; set; } + + /// + /// 更新时间 + /// + [ExporterHeader(DisplayName = "数据更新时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? DataUpdateTime { get; set; } + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? UpdateTime { get; set; } + + /// + /// 删除标记(0:未删除,1:已删除) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 数据版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; } @@ -1047,32 +1795,168 @@ namespace TaskManager.Entity /// public class SUPPLIER_MRP_STATE : CherryReadBaseEntity { - + + /// + /// 工厂代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } + + /// + /// 工厂名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - public string DemandSrate { get; set; } // Matches input, possibly a typo (e.g. DemandState?) + + /// + /// 需求状态 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "需求状态")] + public string DemandSrate { get; set; } + + /// + /// 需求类型 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "需求类型")] public string DemandType { get; set; } + + /// + /// 零件号(奇瑞零件号) + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件号")] public string MaterialCode { get; set; } + + /// + /// 零件名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件名称")] public string MaterialDescription { get; set; } + + /// + /// 集货标识 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "集货标识")] public string SummarySign { get; set; } - public string DateRequired { get; set; } - public int QuantityDemand { get; set; } - public string ConfirmTime { get; set; } - public int CreatQuantity { get; set; } - public int QuantityDelivery { get; set; } - public int QuantityReceive { get; set; } - public int QuantityInTransit { get; set; } - public int OnTimePercentage { get; set; } - public int SummaryCreatQuantity { get; set; } - public int SummaryQuantityDelivery { get; set; } - public int SummaryQuantityReceive { get; set; } - public int SummaryQuantityInTransit { get; set; } + + /// + /// 需求日期 + /// + [ExporterHeader(DisplayName = "需求日期", Format = "yyyy-MM-dd")] + public DateTime? DateRequired { get; set; } + + /// + /// 需求数量 + /// + [ExporterHeader(DisplayName = "需求数量")] + public decimal? QuantityDemand { get; set; } = 0; + + /// + /// 需求确认时间 + /// + [ExporterHeader(DisplayName = "需求确认时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? ConfirmTime { get; set; } + + /// + /// 已建单数量 + /// + [ExporterHeader(DisplayName = "已建单数量")] + public decimal? CreatQuantity { get; set; } = 0; + + /// + /// 已发货数量 + /// + [ExporterHeader(DisplayName = "已发货数量")] + public decimal? QuantityDelivery { get; set; } = 0; + + /// + /// 已收货数量 + /// + [ExporterHeader(DisplayName = "已收货数量")] + public decimal? QuantityReceive { get; set; } = 0; + + /// + /// 在途数量 + /// + [ExporterHeader(DisplayName = "在途数量")] + public decimal? QuantityInTransit { get; set; } = 1; + + /// + /// 按时到货比(百分比,如:95表示95%) + /// + [ExporterHeader(DisplayName = "按时到货比")] + public decimal? OnTimePercentage { get; set; } + + /// + /// 集货件已建单数量 + /// + [ExporterHeader(DisplayName = "集货件已建单数量")] + public decimal? SummaryCreatQuantity { get; set; } = 0; + + /// + /// 集货件已发货数量 + /// + [ExporterHeader(DisplayName = "集货件已发货数量")] + public decimal? SummaryQuantityDelivery { get; set; } = 0; + + /// + /// 集货件已收货数量 + /// + [ExporterHeader(DisplayName = "集货件已收货数量")] + public decimal? SummaryQuantityReceive { get; set; } = 0; + + /// + /// 集货件已在途数量 + /// + [ExporterHeader(DisplayName = "集货件已在途数量")] + public decimal? SummaryQuantityInTransit { get; set; } = 0; + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? CreateTime { get; set; } + + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? UpdateTime { get; set; } + + /// + /// 删除标记(0:未删除,1:已删除) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 数据版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + } @@ -1081,23 +1965,112 @@ namespace TaskManager.Entity /// public class SUPPLIER_MRP_WARNING : CherryReadBaseEntity { + + + + /// + /// 工厂代码 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } + + /// + /// 零件号(奇瑞零件号) + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件号")] public string MaterialCode { get; set; } + + /// + /// 零件名称 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "零件名称")] public string MaterialDescription { get; set; } - public int QuantityCurrent { get; set; } - public string ReckonDate { get; set; } - public int QuantityPlanned { get; set; } - public int QuantityPlannedDelivery { get; set; } - public int QuantityInTransit { get; set; } - public int DateGap { get; set; } - public int InventoryGap { get; set; } + + /// + /// 当前库存 + /// + [ExporterHeader(DisplayName = "当前库存")] + public decimal? QuantityCurrent { get; set; } = 0; + + /// + /// 需求日期 + /// + [ExporterHeader(DisplayName = "需求日期", Format = "yyyy-MM-dd")] + public DateTime? ReckonDate { get; set; } + + /// + /// 需求数量 + /// + [ExporterHeader(DisplayName = "需求数量")] + public decimal? QuantityPlanned { get; set; } = 0; + + /// + /// 满足数量 + /// + [ExporterHeader(DisplayName = "满足数量")] + public decimal? QuantityPlannedDelivery { get; set; } = 0; + + /// + /// 在途数量 + /// + [ExporterHeader(DisplayName = "在途数量")] + public decimal? QuantityInTransit { get; set; } = 0; + + /// + /// 日GAP(日需求数量与满足数量差异) + /// + [ExporterHeader(DisplayName = "日GAP")] + public decimal? DateGap { get; set; } = 0; + + /// + /// 库存GAP(库存推移差异) + /// + [ExporterHeader(DisplayName = "库存GAP")] + public decimal? InventoryGap { get; set; } = 0; + + /// + /// 创建人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "创建人")] public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } + + /// + /// 创建时间 + /// + [ExporterHeader(DisplayName = "创建时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? CreateTime { get; set; } + /// + /// 修改人 + /// + [MaxLength(50)] + [ExporterHeader(DisplayName = "修改人")] public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public int IsDelete { get; set; } - public int Version { get; set; } + + /// + /// 修改时间 + /// + [ExporterHeader(DisplayName = "修改时间", Format = "yyyy-MM-dd HH:mm:ss")] + public DateTime? UpdateTime { get; set; } + + /// + /// 删除标记(0:未删除,1:已删除) + /// + [ExporterHeader(DisplayName = "删除标记")] + public int IsDelete { get; set; } = 0; + + /// + /// 数据版本号 + /// + [ExporterHeader(DisplayName = "版本号")] + public int Version { get; set; } = 0; + + + } } diff --git a/API/Wood.Service/Controllers/SupplierSinvDataService.cs b/API/Wood.Service/Controllers/SupplierSinvDataService.cs index 73fa20a..6998569 100644 --- a/API/Wood.Service/Controllers/SupplierSinvDataService.cs +++ b/API/Wood.Service/Controllers/SupplierSinvDataService.cs @@ -1,6 +1,7 @@ using TaskManager.Contracts.Dtos; using TaskManager.Controllers; using TaskManager.Entity; +using TaskManager.Entity.Entitys; using TaskManager.EntityFramework; namespace TaskManager.Controllers