diff --git a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_BOM_DTO.cs b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_BOM_DTO.cs index 2198333..88930bc 100644 --- a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_BOM_DTO.cs +++ b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_BOM_DTO.cs @@ -16,85 +16,70 @@ namespace TaskManager.Contracts.Dtos /// 供应商代码 /// public string SupplierCode { get; set; } - /// /// 供应商名称 /// public string SupplierName { get; set; } - /// /// BOM编码 /// public string BomCode { get; set; } - /// /// BOM名称 /// public string BomName { get; set; } - /// /// BOM版本 /// public string BomVersion { get; set; } - /// /// 奇瑞零件号 /// public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// public string CheryProductName { get; set; } - /// /// 供应商父件编码 /// public string VendorProductNo { get; set; } - /// /// 供应商父件名称 /// public string VendorProductName { get; set; } - /// - /// 父件类型(成品, 半成品) + /// 父件类型(成品,半成品) /// - public string VendorProductType { get; set; } - + public string? VendorProductType { get; set; } /// /// 父件单位 /// - public string MaterialUnit { get; set; } - + public string? MaterialUnit { get; set; } /// /// 子件编码 /// public string SubMaterialCode { get; set; } - /// /// 子件名称 /// public string SubMaterialName { get; set; } - /// - /// 子件类型(半成品, 原材料) + /// 子件类型(半成品,原材料) /// - public string SubMaterialType { get; set; } - + public string? SubMaterialType { get; set; } /// /// 子件单位 /// public string SubMaterialUnit { get; set; } - /// /// 子件用量 /// public decimal SubMaterialQuota { get; set; } - /// - /// BOM变更时间,格式(yyyy-MM-dd HH:mm:ss) + /// BOM变更时间,格式(yyyy-MM-ddHH:mm:ss) /// public string DataUpdateTime { get; set; } } + } diff --git a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_EMPLOYEE_DTO.cs b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_EMPLOYEE_DTO.cs index 54be819..ef6283d 100644 --- a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_EMPLOYEE_DTO.cs +++ b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_EMPLOYEE_DTO.cs @@ -16,95 +16,78 @@ namespace TaskManager.Contracts.Dtos /// 供应商代码 /// public string SupplierCode { get; set; } - /// /// 供应商名称 /// public string SupplierName { get; set; } - /// /// 工厂代码 /// public string PlantId { get; set; } - /// /// 工厂名称 /// public string PlantName { get; set; } - /// /// 车间代码 /// public string WorkshopId { get; set; } - /// /// 车间名称 /// public string WorkshopName { get; set; } - /// /// 产线代码 /// public string ProductionLineId { get; set; } - /// /// 产线名称 /// public string ProductionLineName { get; set; } - /// /// 工位代码 /// public string StationId { get; set; } - /// /// 工位名称 /// public string StationName { get; set; } - /// /// 工位人员账号 /// public string OperatorId { get; set; } - /// /// 工位人员姓名 /// public string OperatorName { get; set; } - /// /// 是否有资质(Y,N) /// - public bool HaveQuantity { get; set; } - + public string HaveQuantity { get; set; } /// - /// 供应商修改时间,格式(yyyy-MM-dd HH:mm:ss) + /// 供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) /// public string DataUpdateTime { get; set; } - /// /// 岗位代码 /// public string PositionId { get; set; } - /// /// 岗位名称 /// public string PositionName { get; set; } - /// - /// 资质等级(Level_4,Level_3,Level_2, Level_1) + /// 资质等级(Level_4,Level_3,Level_2,Level_1) /// public string QualificationLevel { get; set; } - /// /// 资质获取时间 /// public string CheckInTime { get; set; } - /// /// 资质失去时间 /// public string CheckOutTime { get; set; } } + } diff --git a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_INFO_DTO.cs b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_INFO_DTO.cs index bffe9eb..52172a5 100644 --- a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_INFO_DTO.cs +++ b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_INFO_DTO.cs @@ -16,90 +16,74 @@ namespace TaskManager.Contracts.Dtos /// 供应商代码 /// public string SupplierCode { get; set; } - /// /// 供应商名称 /// public string SupplierName { get; set; } - /// /// 工厂代码 /// public string PlantId { get; set; } - /// /// 工厂名称 /// public string PlantName { get; set; } - /// /// 车间代码 /// public string WorkshopId { get; set; } - /// /// 车间名称 /// public string WorkshopName { get; set; } - /// /// 产线代码 /// public string ProductionLineId { get; set; } - /// /// 产线名称 /// public string ProductionLineName { get; set; } - /// /// 工位代码 /// public string StationId { get; set; } - /// /// 工位名称 /// public string StationName { get; set; } - /// /// 是否关键工位(Y/N) /// - public bool KeyStation { get; set; } - + public string KeyStation { get; set; } /// - /// 供应商修改时间,格式(yyyy-MM-dd HH:mm:ss) + /// 供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) /// public string DataUpdateTime { get; set; } - /// /// 产线顺序 /// - public int ProductionLineOrder { get; set; } - + public decimal ProductionLineOrder { get; set; } /// /// 工位顺序 /// - public int StationOrder { get; set; } - + public decimal StationOrder { get; set; } /// /// 供应商总成零件号 /// public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// public string VendorProductName { get; set; } - /// /// 奇瑞零件号 /// public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// public string CheryProductName { get; set; } } + } diff --git a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_PRO_CPS_DTO.cs b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_PRO_CPS_DTO.cs index 7260019..4fd283e 100644 --- a/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_PRO_CPS_DTO.cs +++ b/API/TaskManager.Contracts/Dtos/01_09/SUPPLIER_PRO_CPS_DTO.cs @@ -16,240 +16,194 @@ namespace TaskManager.Contracts.Dtos /// 供应商代码 /// public string SupplierCode { get; set; } - /// /// 供应商名称 /// public string SupplierName { get; set; } - /// /// 供应商总成零件号 /// public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// public string VendorProductName { get; set; } - /// /// 供应商总成SN码 /// public string VendorProductSn { get; set; } - /// /// 供应商总成批次号 /// public string VendorProductBatch { get; set; } - /// /// 奇瑞零件号 /// public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// public string CheryProductName { get; set; } - /// /// 奇瑞SN码 /// public string CheryProductSn { get; set; } - /// /// 生产批次号 /// public string ProductBatchNo { get; set; } - /// /// 生产工单号 /// public string ManufactureNo { get; set; } - /// /// 工厂代码 /// public string PlantId { get; set; } - /// /// 工厂名称 /// public string PlantName { get; set; } - /// /// 车间代码 /// public string WorkshopId { get; set; } - /// /// 车间名称 /// public string WorkshopName { get; set; } - /// /// 产线代码 /// public string ProductionLineId { get; set; } - /// /// 产线名称 /// public string ProductionLineName { get; set; } - /// /// 工位代码 /// public string StationId { get; set; } - /// /// 工位名称 /// public string StationName { get; set; } - /// /// 工位人员编号 /// public string EmpCode { get; set; } - /// /// 工位人员姓名 /// public string EmpName { get; set; } - /// /// 控制项名称 /// public string VendorFieldName { get; set; } - /// /// 控制项代码 /// public string VendorFieldCode { get; set; } - /// /// 控制项点位 /// - public string GatherSpot { get; set; } - + public string? GatherSpot { get; set; } /// /// 控制项要求频率 /// - public decimal SamplingRate { get; set; } - + public decimal? SamplingRate { get; set; } /// - /// 上下限更新时间,格式(yyyy-MM-dd HH:mm:ss) + /// 上下限更新时间,格式(yyyy-MM-ddHH:mm:ss) /// - public string LimitUpdateTime { get; set; } - + public string? LimitUpdateTime { get; set; } /// /// 控制项描述 /// - public string VendorFieldDesc { get; set; } - + public string? VendorFieldDesc { get; set; } /// /// 载体编码 /// - public string CarrierCode { get; set; } - + public string? CarrierCode { get; set; } /// /// 投入数量 /// public decimal IntputQty { get; set; } - /// /// 一次合格数量 /// public decimal FttQty { get; set; } - /// - /// 参数 , 是传Y,否传N + /// 参数,是传Y,否传N /// public string Parameter { get; set; } - /// - /// 特性 , 是传Y,否传N + /// 特性,是传Y,否传N /// public string Characteristic { get; set; } - /// - /// CC项 , 是传Y,否传N + /// CC项,是传Y,否传N /// - public bool Cc { get; set; } - + public string Cc { get; set; } /// - /// SC项 , 是传Y,否传N + /// SC项,是传Y,否传N /// - public bool Sc { get; set; } - + public string Sc { get; set; } /// - /// SPC , 是传Y,否传N + /// SPC,是传Y,否传N /// - public bool Spc { get; set; } - + public string Spc { get; set; } /// /// 控制项标准值 /// public string StandardValue { get; set; } - /// /// 控制项上限 /// public decimal UpperLimit { get; set; } - /// /// 控制项下限 /// public decimal LowerLimit { get; set; } - /// /// 控制项实测值 /// public decimal DecimalValue { get; set; } - /// /// 控制项值的单位名称-中文 /// - public string UnitCn { get; set; } - + public string? UnitCn { get; set; } /// - /// 控制项单位英文 + /// 控控制项单位英文 /// public string UnitEn { get; set; } - /// /// 检测结果 /// public string CheckResult { get; set; } - /// - /// 在线检测(inline,offline,both) + /// 在线检测(inline,offline,both),可选项:inline-在生产线上进行检测.offline-从生产线上拿下来进行检测.both-inline和offline同时存在. /// - public string DetectionMode { get; set; } - + public string? DetectionMode { get; set; } /// /// 班次(白班,晚班,中班) /// public string WorkShift { get; set; } - /// - /// 采集时间,格式(yyyy-MM-dd HH:mm:ss) + /// 采集时间,格式(yyyy-MM-ddHH:mm:ss) /// public string CollectTime { get; set; } - /// /// 检测方式(人工,设备) /// public string CheckMode { get; set; } - /// /// 检测设备编号 /// public string DeviceCode { get; set; } - /// /// 检测设备名称 /// public string DeviceName { get; set; } } + } diff --git a/API/TaskManager.Contracts/Dtos/Dtos.cs b/API/TaskManager.Contracts/Dtos/Dtos.cs index e26e00f..7035ebb 100644 --- a/API/TaskManager.Contracts/Dtos/Dtos.cs +++ b/API/TaskManager.Contracts/Dtos/Dtos.cs @@ -9,7 +9,9 @@ using System.Text.Json.Serialization; namespace TaskManager.Contracts.Dtos { - + /// + /// + /// public class PAGE_OUT_DTO { /// 数据总数 @@ -100,51 +102,141 @@ namespace TaskManager.Contracts.Dtos public class SUPPLIER_PRO_PLANING_DETIAL_DTO: CherryReadBaseEntityDto { - //public string models { get; set; } - //public decimal? quantity1 { get; set; } - //public decimal? quantity2 { get; set; } - //public string startMonth { get; set; } - //public int isDelete { get; set; } - //public string updateByUser { get; set; } - //public string pattern { get; set; } - //public string omterior { get; set; } - //public string salseDepartment { get; set; } - //public string materialCode { get; set; } - - //public DateTime? updateTime { get; set; } - //public string type { get; set; } - //public decimal? quantity3 { get; set; } - //public string releaseEdition { get; set; } - //public decimal? quantity4 { get; set; } - //public int? version { get; set; } - //public decimal? quantity5 { get; set; } - //public decimal? quantity6 { get; set; } - //public DateTime? createTime { get; set; } - //public string plant { get; set; } - //public string assembly { get; set; } - //public string id { get; set; } - //public string createByUser { get; set; } - - [JsonProperty("models")] - public string Models { get; set; } - [JsonProperty("quantity1")] - public decimal? Quantity1 { get; set; } + - [JsonProperty("quantity2")] - public decimal? Quantity2 { get; set; } + /// + /// 需求发布版次:唯一版次ID + /// + [JsonPropertyName("releaseEdition")] + [MaxLength(50)] + public string ReleaseEdition { get; set; } = string.Empty; + + /// + /// 车型 + /// + [JsonPropertyName("models")] + [MaxLength(50)] + public string Models { get; set; } = string.Empty; + + + /// + /// 类型 + /// + [JsonPropertyName("type")] + [MaxLength(50)] + public string Type { get; set; } = string.Empty; + + /// + /// 动力总成 + /// + [JsonPropertyName("assembly")] + [MaxLength(50)] + public string Assembly { get; set; } = string.Empty; + + /// + /// 版型 + /// + [JsonPropertyName("pattern")] + [MaxLength(50)] + public string Pattern { get; set; } = string.Empty; - [JsonProperty("startMonth")] - public string StartMonth { get; set; } + + /// + /// 物料号 + /// + [JsonPropertyName("materialCode")] + [MaxLength(50)] + public string MaterialCode { get; set; } = string.Empty; + + /// + /// 起始月份-格式:yyyy-MM + /// + [JsonPropertyName("startMonth")] + [MaxLength(50)] + public string StartMonth { get; set; } = string.Empty; + + /// + /// 数量1 + /// + [JsonPropertyName("quantity1")] + public int Quantity1 { get; set; } = 1; + + /// + /// 数量2 + /// + [JsonPropertyName("quantity2")] + public int Quantity2 { get; set; } = 1; + + /// + /// 数量3 + /// + [JsonPropertyName("quantity3")] + public int Quantity3 { get; set; } = 1; + + /// + /// 数量4 + /// + [JsonPropertyName("quantity4")] + public int Quantity4 { get; set; } = 1; + + /// + /// 数量5 + /// + [JsonPropertyName("quantity5")] + public int Quantity5 { get; set; } = 1; + + /// + /// 数量6 + /// + [JsonPropertyName("quantity6")] + public int Quantity6 { get; set; } = 1; + + /// + /// 工厂 + /// + [JsonPropertyName("plant")] + [MaxLength(50)] + public string Plant { get; set; } = string.Empty; + + /// + /// 创建人 + /// + [JsonPropertyName("createByUser")] + [MaxLength(50)] + public string CreateByUser { get; set; } = string.Empty; + + /// + /// 创建时间 + /// + [JsonPropertyName("createTime")] + public DateTime CreateTime { get; set; } - [JsonProperty("isDelete")] - public int IsDelete { get; set; } + /// + /// 修改人 + /// + [JsonPropertyName("updateByUser")] + [MaxLength(50)] + public string UpdateByUser { get; set; } = string.Empty; + + /// + /// 修改时间 + /// + [JsonPropertyName("updateTime")] + public DateTime UpdateTime { get; set; } - [JsonProperty("updateByUser")] - public string UpdateByUser { get; set; } + /// + /// 是否删除(0:否,1:是) + /// + [JsonPropertyName("isDelete")] + public int IsDelete { get; set; } = 0; + + /// + /// 版本号 + /// + [JsonPropertyName("version")] + public int Version { get; set; } = 1; - [JsonProperty("pattern")] - public string Pattern { get; set; } [JsonProperty("omterior")] // 可能是拼写错误,保留原始名称 public string Omterior { get; set; } @@ -152,46 +244,6 @@ namespace TaskManager.Contracts.Dtos [JsonProperty("salseDepartment")] // 可能是拼写错误,保留原始名称 public string SalseDepartment { get; set; } - [JsonProperty("materialCode")] - public string MaterialCode { get; set; } - - [JsonProperty("updateTime")] - public DateTime? UpdateTime { get; set; } - - [JsonProperty("type")] - public string Type { get; set; } - - [JsonProperty("quantity3")] - public decimal? Quantity3 { get; set; } - - [JsonProperty("releaseEdition")] - public string ReleaseEdition { get; set; } - - [JsonProperty("quantity4")] - public decimal? Quantity4 { get; set; } - - [JsonProperty("version")] - public int Version { get; set; } - - [JsonProperty("quantity5")] - public decimal? Quantity5 { get; set; } - - [JsonProperty("quantity6")] - public decimal? Quantity6 { get; set; } - - [JsonProperty("createTime")] - public DateTime? CreateTime { get; set; } - - [JsonProperty("plant")] - public string Plant { get; set; } - - [JsonProperty("assembly")] - public string Assembly { get; set; } - - - - [JsonProperty("createByUser")] - public string CreateByUser { get; set; } } @@ -790,6 +842,7 @@ public class SUPPLIER_MRP_WARNING_DETAIL_DTO : CherryReadBaseEntityDto public class SUPPLIER_MRP_DATE_DETAIL_DTO : CherryReadBaseEntityDto { + public string ReleaseEdition { get; set; } public string MaterialCode { get; set; } public string MaterialDescription { get; set; } diff --git a/API/TaskManager.Entity/Entity.cs b/API/TaskManager.Entity/Entity.cs index 9c24fdf..5e17f10 100644 --- a/API/TaskManager.Entity/Entity.cs +++ b/API/TaskManager.Entity/Entity.cs @@ -6,6 +6,7 @@ using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Text; +using System.Text.Json.Serialization; using System.Threading.Tasks; namespace TaskManager.Entity @@ -66,30 +67,40 @@ namespace TaskManager.Entity } - public class TaskLog + public class TaskLog:BaseEntity { - [Key] - [DatabaseGenerated(DatabaseGeneratedOption.Identity)] - public long UId { get; set; } + + /// /// 详细描述 /// + [ExporterHeader(DisplayName = "信息")] public string Info { get; set; } /// /// 日志类型 /// + [ExporterHeader(DisplayName = "日志类型")] public string Type { get; set; } /// /// 任务名称 /// + [ExporterHeader(DisplayName = "任务名")] public string TaskName { get; set; } + + /// + /// 任务名称 + /// + [ExporterHeader(DisplayName = "任务ID")] + public Guid TaskId { get; set; } /// /// 创建时间 /// + [ExporterHeader(DisplayName = "创建时间")] public DateTime CreationTime { set; get; } /// /// 备注 /// + [ExporterHeader(DisplayName = "备注")] public string Remark { get; set; } } @@ -115,7 +126,13 @@ namespace TaskManager.Entity public class CherryReadBaseEntity:BaseEntity { + /// + /// 请求发出日期 + /// public string RequestDate { get; set; } + /// + /// 同步ID + /// public string Id { get; set; } @@ -128,27 +145,27 @@ namespace TaskManager.Entity /// public class TaskSub:BaseEntity { - [ExporterHeader(DisplayName = "用户名")] + [ExporterHeader(DisplayName = "表名")] /// /// 关联的数据表名称(如:订单表、用户表等,可为空) /// public string? TableName { get; set; } - + [ExporterHeader(DisplayName = "任务名称")] /// /// 任务名称(用于业务层面标识任务,如:数据同步任务、报表生成任务) /// public string? TaskName { get; set; } - + [ExporterHeader(DisplayName = "同步总数量")] /// /// 数据总量(任务处理的数据条目数) /// public int DataCount { get; set; } - + [ExporterHeader(DisplayName = "发布客户")] /// /// 发布给那个客户 /// public string? Subscriber { get; set; } - + [ExporterHeader(DisplayName = "失败次数")] /// /// 失败次数(任务执行失败的累计次数) /// @@ -157,38 +174,41 @@ namespace TaskManager.Entity /// /// 失败详情(记录失败原因、异常堆栈等信息,支持长文本) /// + [ExporterHeader(DisplayName = "失败信息")] public string? FailedInfo { get; set; } /// /// 所属域(多租户场景下标识租户,如:租户A、租户B) /// + [ExporterHeader(DisplayName = "域名")] public string? Domain { get; set; } /// /// 站点标识(多站点部署时标识所属站点,如:Site1、Site2) /// + [ExporterHeader(DisplayName = "站点")] public string? Site { get; set; } - + [ExporterHeader(DisplayName = "创建用户")] /// /// 从那个内部系统创建系统 /// public string? CreateUser { get; set; } - + [ExporterHeader(DisplayName = "创建时间")] /// /// 创建时间(任务创建的时间戳) /// public DateTime CreateTime { get; set; } - + [ExporterHeader(DisplayName = "备注")] /// /// 备注信息(任务相关的补充说明,支持长文本) /// public string? Remark { get; set; } - + [ExporterHeader(DisplayName = "更新客户系统名")] /// /// 最后更新人(记录任务最后修改者) /// public string? UpdateUser { get; set; } - + [ExporterHeader(DisplayName = "更新完成时间")] /// /// 最后更新时间(任务最后修改的时间戳,可为空) /// @@ -196,86 +216,157 @@ namespace TaskManager.Entity } - - - - - - /// /// 整车月度生产计划-2 /// public class SUPPLIER_PRO_PLANING : CherryReadBaseEntity { + /// + /// 主键ID + /// + [JsonPropertyName("id")] + public string Id { get; set; } - [JsonProperty("models")] - public string Models { get; set; } + /// + /// 需求发布版次:唯一版次ID + /// + [JsonPropertyName("releaseEdition")] + [MaxLength(50)] + public string ReleaseEdition { get; set; } = string.Empty; - [JsonProperty("quantity1")] - public decimal? Quantity1 { get; set; } + /// + /// 车型 + /// + [JsonPropertyName("models")] + [MaxLength(50)] + public string Models { get; set; } = string.Empty; - [JsonProperty("quantity2")] - public decimal? Quantity2 { get; set; } - [JsonProperty("startMonth")] - public string StartMonth { get; set; } + /// + /// 类型 + /// + [JsonPropertyName("type")] + [MaxLength(50)] + public string Type { get; set; } = string.Empty; - [JsonProperty("isDelete")] - public int IsDelete { get; set; } + /// + /// 动力总成 + /// + [JsonPropertyName("assembly")] + [MaxLength(50)] + public string Assembly { get; set; } = string.Empty; - [JsonProperty("updateByUser")] - public string UpdateByUser { get; set; } + /// + /// 版型 + /// + [JsonPropertyName("pattern")] + [MaxLength(50)] + public string Pattern { get; set; } = string.Empty; - [JsonProperty("pattern")] - public string Pattern { get; set; } - [JsonProperty("omterior")] // 可能是拼写错误,保留原始名称 - public string Omterior { get; set; } + /// + /// 物料号 + /// + [JsonPropertyName("materialCode")] + [MaxLength(50)] + public string MaterialCode { get; set; } = string.Empty; - [JsonProperty("salseDepartment")] // 可能是拼写错误,保留原始名称 - public string SalseDepartment { get; set; } + /// + /// 起始月份-格式:yyyy-MM + /// + [JsonPropertyName("startMonth")] + [MaxLength(50)] + public string StartMonth { get; set; } = string.Empty; - [JsonProperty("materialCode")] - public string MaterialCode { get; set; } + /// + /// 数量1 + /// + [JsonPropertyName("quantity1")] + public decimal Quantity1 { get; set; } = 1; - [JsonProperty("updateTime")] - public DateTime? UpdateTime { get; set; } + /// + /// 数量2 + /// + [JsonPropertyName("quantity2")] + public decimal Quantity2 { get; set; } = 1; - [JsonProperty("type")] - public string Type { get; set; } + /// + /// 数量3 + /// + [JsonPropertyName("quantity3")] + public decimal Quantity3 { get; set; } = 1; - [JsonProperty("quantity3")] - public decimal? Quantity3 { get; set; } + /// + /// 数量4 + /// + [JsonPropertyName("quantity4")] + public decimal Quantity4 { get; set; } = 1; - [JsonProperty("releaseEdition")] - public string ReleaseEdition { get; set; } + /// + /// 数量5 + /// + [JsonPropertyName("quantity5")] + public decimal Quantity5 { get; set; } = 1; - [JsonProperty("quantity4")] - public decimal? Quantity4 { get; set; } + /// + /// 数量6 + /// + [JsonPropertyName("quantity6")] + public decimal Quantity6 { get; set; } = 1; - [JsonProperty("version")] - public int Version { get; set; } + /// + /// 工厂 + /// + [JsonPropertyName("plant")] + [MaxLength(50)] + public string Plant { get; set; } = string.Empty; - [JsonProperty("quantity5")] - public decimal? Quantity5 { get; set; } + /// + /// 创建人 + /// + [JsonPropertyName("createByUser")] + [MaxLength(50)] + public string CreateByUser { get; set; } = string.Empty; - [JsonProperty("quantity6")] - public decimal? Quantity6 { get; set; } + /// + /// 创建时间 + /// + [JsonPropertyName("createTime")] + public DateTime CreateTime { get; set; } - [JsonProperty("createTime")] - public DateTime? CreateTime { get; set; } + /// + /// 修改人 + /// + [JsonPropertyName("updateByUser")] + [MaxLength(50)] + public string UpdateByUser { get; set; } = string.Empty; - [JsonProperty("plant")] - public string Plant { get; set; } + /// + /// 修改时间 + /// + [JsonPropertyName("updateTime")] + public DateTime UpdateTime { get; set; } - [JsonProperty("assembly")] - public string Assembly { get; set; } + /// + /// 是否删除(0:否,1:是) + /// + [JsonPropertyName("isDelete")] + public int IsDelete { get; set; } = 0; - + /// + /// 版本号 + /// + [JsonPropertyName("version")] + public int Version { get; set; } = 1; + + + [JsonProperty("omterior")] // 可能是拼写错误,保留原始名称 + public string Omterior { get; set; } + + [JsonProperty("salseDepartment")] // 可能是拼写错误,保留原始名称 + public string SalseDepartment { get; set; } - [JsonProperty("createByUser")] - public string CreateByUser { get; set; } } /// @@ -283,37 +374,172 @@ namespace TaskManager.Entity /// public class SUPPLIER_MRP_MONTH : CherryReadBaseEntity { - - 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 StartMonth { get; set; } - 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 string IsUpdate { get; set; } - public string CreateByUser { get; set; } - public DateTime CreateTime { get; set; } - public string UpdateByUser { get; set; } - public DateTime UpdateTime { get; set; } - public string IsDelete { get; set; } - public int Version { get; set; } + /// + /// 主键ID + /// + [JsonPropertyName("id")] + public string Id { get; set; } + + /// + /// 需求发布版次:M+6月物料需求计划风险确认接口对应需求版次,需求ID + /// + [JsonPropertyName("releaseEdition")] + [MaxLength(50)] + public string ReleaseEdition { get; set; } = string.Empty; + + /// + /// 零件号:奇瑞零件号 + /// + [JsonPropertyName("materialCode")] + [MaxLength(50)] + public string MaterialCode { get; set; } = string.Empty; + + /// + /// 零件名称 + /// + [JsonPropertyName("materialDescription")] + [MaxLength(50)] + public string MaterialDescription { get; set; } = string.Empty; + + /// + /// 工厂代码 + /// + [JsonPropertyName("plantId")] + [MaxLength(50)] + public string PlantId { get; set; } = string.Empty; + + /// + /// 工厂名称 + /// + [JsonPropertyName("plantName")] + [MaxLength(50)] + public string PlantName { get; set; } = string.Empty; + + /// + /// 起始月份-格式:yyyy-MM + /// + [JsonPropertyName("startMonth")] + [MaxLength(50)] + public string StartMonth { get; set; } = string.Empty; + + /// + /// 需求数量1 + /// + [JsonPropertyName("quantityDemand1")] + public decimal QuantityDemand1 { get; set; } = 1; + + /// + /// 需求数量2 + /// + [JsonPropertyName("quantityDemand2")] + public decimal QuantityDemand2 { get; set; } = 1; + + /// + /// 需求数量3 + /// + [JsonPropertyName("quantityDemand3")] + public decimal QuantityDemand3 { get; set; } = 1; + + /// + /// 需求数量4 + /// + [JsonPropertyName("quantityDemand4")] + public decimal QuantityDemand4 { get; set; } = 1; + + /// + /// 需求数量5 + /// + [JsonPropertyName("quantityDemand5")] + public decimal QuantityDemand5 { get; set; } = 1; + + /// + /// 需求数量6 + /// + [JsonPropertyName("quantityDemand6")] + public decimal QuantityDemand6 { get; set; } = 1; + + /// + /// 需求数量7 + /// + [JsonPropertyName("quantityDemand7")] + public decimal QuantityDemand7 { get; set; } = 1; + + /// + /// 需求数量8 + /// + [JsonPropertyName("quantityDemand8")] + public decimal QuantityDemand8 { get; set; } = 1; + + /// + /// 需求数量9 + /// + [JsonPropertyName("quantityDemand9")] + public decimal QuantityDemand9 { get; set; } = 1; + + /// + /// 需求数量10 + /// + [JsonPropertyName("quantityDemand10")] + public decimal QuantityDemand10 { get; set; } = 1; + + /// + /// 需求数量11 + /// + [JsonPropertyName("quantityDemand11")] + public decimal QuantityDemand11 { get; set; } = 1; + + /// + /// 需求数量12 + /// + [JsonPropertyName("quantityDemand12")] + public int QuantityDemand12 { get; set; } = 1; + + /// + /// 当文件夹数据发生变更时(更新需求=1/否则=0) + /// + [JsonPropertyName("isUpdate")] + [MaxLength(50)] + public string IsUpdate { get; set; } = string.Empty; + + /// + /// 创建人 + /// + [JsonPropertyName("createByUser")] + [MaxLength(50)] + public string CreateByUser { get; set; } = string.Empty; + + /// + /// 创建时间 + /// + [JsonPropertyName("createTime")] + public DateTime CreateTime { get; set; } + + /// + /// 修改人 + /// + [JsonPropertyName("updateByUser")] + [MaxLength(50)] + public string UpdateByUser { get; set; } = string.Empty; + /// + /// 修改时间 + /// + [JsonPropertyName("updateTime")] + public DateTime UpdateTime { get; set; } + /// + /// 是否删除(0:否,1是) + /// + [JsonPropertyName("isDelete")] + public int IsDelete { get; set; } = 1; + /// + /// 版本号 + /// + [JsonPropertyName("version")] + public int Version { get; set; } = 1; } @@ -351,53 +577,171 @@ namespace TaskManager.Entity /// public class SUPPLIER_MRP_DATE : CherryReadBaseEntity { - - 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; } - - public int QuantityDemand1 { get; set; } - public int QuantityDemand2 { get; set; } - public int QuantityDemand3 { get; set; } - public int QuantityDemand4 { get; set; } - public int QuantityDemand5 { get; set; } - public int QuantityDemand6 { get; set; } - public int QuantityDemand7 { get; set; } - public int QuantityDemand8 { get; set; } - public int QuantityDemand9 { get; set; } - public int QuantityDemand10 { get; set; } - public int QuantityDemand11 { get; set; } - public int QuantityDemand12 { get; set; } - public int QuantityDemand13 { get; set; } - public int QuantityDemand14 { get; set; } - public int QuantityDemand15 { get; set; } - public int QuantityDemand16 { get; set; } - public int QuantityDemand17 { get; set; } - public int QuantityDemand18 { get; set; } - public int QuantityDemand19 { get; set; } - public int QuantityDemand20 { get; set; } - public int QuantityDemand21 { get; set; } - public int QuantityDemand22 { get; set; } - public int QuantityDemand23 { get; set; } - public int QuantityDemand24 { get; set; } - public int QuantityDemand25 { get; set; } - public int QuantityDemand26 { get; set; } - public int QuantityDemand27 { get; set; } - public int QuantityDemand28 { get; set; } - public int QuantityDemand29 { get; set; } - public int QuantityDemand30 { get; set; } - public int QuantityDemand31 { get; set; } - - 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; } + + // + /// 主键ID + /// + [JsonPropertyName("id")] + public int Id { get; set; } + + /// + /// 需求发布版次:M+6月物料需求计划风险确认接口对应需求版次,需求ID + /// + [JsonPropertyName("releaseEdition")] + [MaxLength(50)] + public string ReleaseEdition { get; set; } = string.Empty; + + /// + /// 零件号:奇瑞零件号 + /// + [JsonPropertyName("materialCode")] + [MaxLength(50)] + public string MaterialCode { get; set; } = string.Empty; + + /// + /// 零件名称 + /// + [JsonPropertyName("materialDescription")] + [MaxLength(50)] + public string MaterialDescription { get; set; } = string.Empty; + + /// + /// 工厂代码 + /// + [JsonPropertyName("plantId")] + [MaxLength(50)] + public string PlantId { get; set; } = string.Empty; + + /// + /// 工厂名称 + /// + [JsonPropertyName("plantName")] + [MaxLength(50)] + public string PlantName { get; set; } = string.Empty; + + /// + /// 起始月份-格式:yyyy-MM + /// + [JsonPropertyName("startMonth")] + [MaxLength(50)] + public string StartMonth { get; set; } = string.Empty; + + /// + /// 需求数量1 + /// + [JsonPropertyName("quantityDemand1")] + public int QuantityDemand1 { get; set; } = 1; + + /// + /// 需求数量2 + /// + [JsonPropertyName("quantityDemand2")] + public int QuantityDemand2 { get; set; } = 1; + + /// + /// 需求数量3 + /// + [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) + /// + [JsonPropertyName("isUpdate")] + [MaxLength(50)] + public string IsUpdate { get; set; } = string.Empty; + + /// + /// 创建人 + /// + [JsonPropertyName("createByUser")] + [MaxLength(50)] + public string CreateByUser { get; set; } = string.Empty; + + /// + /// 创建时间 + /// + [JsonPropertyName("createTime")] + public DateTime CreateTime { get; set; } + + /// + /// 修改人 + /// + [JsonPropertyName("updateByUser")] + [MaxLength(50)] + public string UpdateByUser { get; set; } = string.Empty; + + /// + /// 修改时间 + /// + [JsonPropertyName("updateTime")] + public DateTime UpdateTime { get; set; } + + /// + /// 是否删除(0:否,1是) + /// + [JsonPropertyName("isDelete")] + public int IsDelete { get; set; } = 1; + + /// + /// 版本号 + /// + [JsonPropertyName("version")] + public int Version { get; set; } = 1; } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_BOM.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_BOM.cs index 863570c..aab8dc9 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_BOM.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_BOM.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,86 +15,88 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// BOM编码 /// + [ExporterHeader(DisplayName = "BOM编码")] public string BomCode { get; set; } - /// /// BOM名称 /// + [ExporterHeader(DisplayName = "BOM名称")] public string BomName { get; set; } - /// /// BOM版本 /// + [ExporterHeader(DisplayName = "BOM版本")] public string BomVersion { get; set; } - /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } - /// /// 供应商父件编码 /// + [ExporterHeader(DisplayName = "供应商父件编码")] public string VendorProductNo { get; set; } - /// /// 供应商父件名称 /// + [ExporterHeader(DisplayName = "供应商父件名称")] public string VendorProductName { get; set; } - /// - /// 父件类型(成品, 半成品) + /// 父件类型(成品,半成品) /// - public string VendorProductType { get; set; } - + [ExporterHeader(DisplayName = "父件类型(成品,半成品)")] + public string? VendorProductType { get; set; } /// /// 父件单位 /// - public string MaterialUnit { get; set; } - + [ExporterHeader(DisplayName = "父件单位")] + public string? MaterialUnit { get; set; } /// /// 子件编码 /// + [ExporterHeader(DisplayName = "子件编码")] public string SubMaterialCode { get; set; } - /// /// 子件名称 /// + [ExporterHeader(DisplayName = "子件名称")] public string SubMaterialName { get; set; } - /// - /// 子件类型(半成品, 原材料) + /// 子件类型(半成品,原材料) /// - public string SubMaterialType { get; set; } - + [ExporterHeader(DisplayName = "子件类型(半成品,原材料)")] + public string? SubMaterialType { get; set; } /// /// 子件单位 /// + [ExporterHeader(DisplayName = "子件单位")] public string SubMaterialUnit { get; set; } - /// /// 子件用量 /// + [ExporterHeader(DisplayName = "子件用量")] public decimal SubMaterialQuota { get; set; } - /// - /// BOM变更时间,格式(yyyy-MM-dd HH:mm:ss) + /// BOM变更时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "BOM变更时间,格式(yyyy-MM-ddHH:mm:ss)")] public string DataUpdateTime { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_EMPLOYEE.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_EMPLOYEE.cs index 9bfa531..6dc1d61 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_EMPLOYEE.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_EMPLOYEE.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,96 +15,97 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 车间代码 /// + [ExporterHeader(DisplayName = "车间代码")] public string WorkshopId { get; set; } - /// /// 车间名称 /// + [ExporterHeader(DisplayName = "车间名称")] public string WorkshopName { get; set; } - /// /// 产线代码 /// + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } - /// /// 产线名称 /// + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } - /// /// 工位代码 /// + [ExporterHeader(DisplayName = "工位代码")] public string StationId { get; set; } - /// /// 工位名称 /// + [ExporterHeader(DisplayName = "工位名称")] public string StationName { get; set; } - /// /// 工位人员账号 /// + [ExporterHeader(DisplayName = "工位人员账号")] public string OperatorId { get; set; } - /// /// 工位人员姓名 /// + [ExporterHeader(DisplayName = "工位人员姓名")] public string OperatorName { get; set; } - /// /// 是否有资质(Y,N) /// - public bool HaveQuantity { get; set; } - + [ExporterHeader(DisplayName = "是否有资质(Y,N)")] + public string HaveQuantity { get; set; } /// - /// 供应商修改时间,格式(yyyy-MM-dd HH:mm:ss) + /// 供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "供应商修改时间,格式(yyyy-MM-ddHH:mm:ss)")] public string DataUpdateTime { get; set; } - /// /// 岗位代码 /// + [ExporterHeader(DisplayName = "岗位代码")] public string PositionId { get; set; } - /// /// 岗位名称 /// + [ExporterHeader(DisplayName = "岗位名称")] public string PositionName { get; set; } - /// - /// 资质等级(Level_4,Level_3,Level_2, Level_1) + /// 资质等级(Level_4,Level_3,Level_2,Level_1) /// + [ExporterHeader(DisplayName = "资质等级(Level_4,Level_3,Level_2,Level_1)")] public string QualificationLevel { get; set; } - /// /// 资质获取时间 /// + [ExporterHeader(DisplayName = "资质获取时间")] public string CheckInTime { get; set; } - /// /// 资质失去时间 /// + [ExporterHeader(DisplayName = "资质失去时间")] public string CheckOutTime { get; set; } } } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_INFO.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_INFO.cs index 934d7e5..fc703c4 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_INFO.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_INFO.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,91 +15,93 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 车间代码 /// + [ExporterHeader(DisplayName = "车间代码")] public string WorkshopId { get; set; } - /// /// 车间名称 /// + [ExporterHeader(DisplayName = "车间名称")] public string WorkshopName { get; set; } - /// /// 产线代码 /// + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } - /// /// 产线名称 /// + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } - /// /// 工位代码 /// + [ExporterHeader(DisplayName = "工位代码")] public string StationId { get; set; } - /// /// 工位名称 /// + [ExporterHeader(DisplayName = "工位名称")] public string StationName { get; set; } - /// /// 是否关键工位(Y/N) /// - public bool KeyStation { get; set; } - + [ExporterHeader(DisplayName = "是否关键工位(Y/N)")] + public string KeyStation { get; set; } /// - /// 供应商修改时间,格式(yyyy-MM-dd HH:mm:ss) + /// 供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "供应商修改时间,格式(yyyy-MM-ddHH:mm:ss)")] public string DataUpdateTime { get; set; } - /// /// 产线顺序 /// - public int ProductionLineOrder { get; set; } - + [ExporterHeader(DisplayName = "产线顺序")] + public decimal ProductionLineOrder { get; set; } /// /// 工位顺序 /// - public int StationOrder { get; set; } - + [ExporterHeader(DisplayName = "工位顺序")] + public decimal StationOrder { get; set; } /// /// 供应商总成零件号 /// + [ExporterHeader(DisplayName = "供应商总成零件号")] public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] public string VendorProductName { get; set; } - /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_CPS.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_CPS.cs index 498a756..04caf72 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_CPS.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_CPS.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,241 +15,243 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 供应商总成零件号 /// + [ExporterHeader(DisplayName = "供应商总成零件号")] public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] public string VendorProductName { get; set; } - /// /// 供应商总成SN码 /// + [ExporterHeader(DisplayName = "供应商总成SN码")] public string VendorProductSn { get; set; } - /// /// 供应商总成批次号 /// + [ExporterHeader(DisplayName = "供应商总成批次号")] public string VendorProductBatch { get; set; } - /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } - /// /// 奇瑞SN码 /// + [ExporterHeader(DisplayName = "奇瑞SN码")] public string CheryProductSn { get; set; } - /// /// 生产批次号 /// + [ExporterHeader(DisplayName = "生产批次号")] public string ProductBatchNo { get; set; } - /// /// 生产工单号 /// + [ExporterHeader(DisplayName = "生产工单号")] public string ManufactureNo { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 车间代码 /// + [ExporterHeader(DisplayName = "车间代码")] public string WorkshopId { get; set; } - /// /// 车间名称 /// + [ExporterHeader(DisplayName = "车间名称")] public string WorkshopName { get; set; } - /// /// 产线代码 /// + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } - /// /// 产线名称 /// + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } - /// /// 工位代码 /// + [ExporterHeader(DisplayName = "工位代码")] public string StationId { get; set; } - /// /// 工位名称 /// + [ExporterHeader(DisplayName = "工位名称")] public string StationName { get; set; } - /// /// 工位人员编号 /// + [ExporterHeader(DisplayName = "工位人员编号")] public string EmpCode { get; set; } - /// /// 工位人员姓名 /// + [ExporterHeader(DisplayName = "工位人员姓名")] public string EmpName { get; set; } - /// /// 控制项名称 /// + [ExporterHeader(DisplayName = "控制项名称")] public string VendorFieldName { get; set; } - /// /// 控制项代码 /// + [ExporterHeader(DisplayName = "控制项代码")] public string VendorFieldCode { get; set; } - /// /// 控制项点位 /// - public string GatherSpot { get; set; } - + [ExporterHeader(DisplayName = "控制项点位")] + public string? GatherSpot { get; set; } /// /// 控制项要求频率 /// - public decimal SamplingRate { get; set; } - + [ExporterHeader(DisplayName = "控制项要求频率")] + public decimal? SamplingRate { get; set; } /// - /// 上下限更新时间,格式(yyyy-MM-dd HH:mm:ss) + /// 上下限更新时间,格式(yyyy-MM-ddHH:mm:ss) /// - public string LimitUpdateTime { get; set; } - + [ExporterHeader(DisplayName = "上下限更新时间,格式(yyyy-MM-ddHH:mm:ss)")] + public string? LimitUpdateTime { get; set; } /// /// 控制项描述 /// - public string VendorFieldDesc { get; set; } - + [ExporterHeader(DisplayName = "控制项描述")] + public string? VendorFieldDesc { get; set; } /// /// 载体编码 /// - public string CarrierCode { get; set; } - + [ExporterHeader(DisplayName = "载体编码")] + public string? CarrierCode { get; set; } /// /// 投入数量 /// + [ExporterHeader(DisplayName = "投入数量")] public decimal IntputQty { get; set; } - /// /// 一次合格数量 /// + [ExporterHeader(DisplayName = "一次合格数量")] public decimal FttQty { get; set; } - /// - /// 参数 , 是传Y,否传N + /// 参数,是传Y,否传N /// + [ExporterHeader(DisplayName = "参数,是传Y,否传N")] public string Parameter { get; set; } - /// - /// 特性 , 是传Y,否传N + /// 特性,是传Y,否传N /// + [ExporterHeader(DisplayName = "特性,是传Y,否传N")] public string Characteristic { get; set; } - /// - /// CC项 , 是传Y,否传N + /// CC项,是传Y,否传N /// - public bool Cc { get; set; } - + [ExporterHeader(DisplayName = "CC项,是传Y,否传N")] + public string Cc { get; set; } /// - /// SC项 , 是传Y,否传N + /// SC项,是传Y,否传N /// - public bool Sc { get; set; } - + [ExporterHeader(DisplayName = "SC项,是传Y,否传N")] + public string Sc { get; set; } /// - /// SPC , 是传Y,否传N + /// SPC,是传Y,否传N /// - public bool Spc { get; set; } - + [ExporterHeader(DisplayName = "SPC,是传Y,否传N")] + public string Spc { get; set; } /// /// 控制项标准值 /// + [ExporterHeader(DisplayName = "控制项标准值")] public string StandardValue { get; set; } - /// /// 控制项上限 /// + [ExporterHeader(DisplayName = "控制项上限")] public decimal UpperLimit { get; set; } - /// /// 控制项下限 /// + [ExporterHeader(DisplayName = "控制项下限")] public decimal LowerLimit { get; set; } - /// /// 控制项实测值 /// + [ExporterHeader(DisplayName = "控制项实测值")] public decimal DecimalValue { get; set; } - /// /// 控制项值的单位名称-中文 /// - public string UnitCn { get; set; } - + [ExporterHeader(DisplayName = "控制项值的单位名称-中文")] + public string? UnitCn { get; set; } /// - /// 控制项单位英文 + /// 控控制项单位英文 /// + [ExporterHeader(DisplayName = "控控制项单位英文")] public string UnitEn { get; set; } - /// /// 检测结果 /// + [ExporterHeader(DisplayName = "检测结果")] public string CheckResult { get; set; } - /// - /// 在线检测(inline,offline,both) + /// 在线检测(inline,offline,both),可选项:inline-在生产线上进行检测.offline-从生产线上拿下来进行检测.both-inline和offline同时存在. /// - public string DetectionMode { get; set; } - + [ExporterHeader(DisplayName = "在线检测(inline,offline,both),可选项:inline-在生产线上进行检测.offline-从生产线上拿下来进行检测.both-inline和offline同时存在.")] + public string? DetectionMode { get; set; } /// /// 班次(白班,晚班,中班) /// + [ExporterHeader(DisplayName = "班次(白班,晚班,中班)")] public string WorkShift { get; set; } - /// - /// 采集时间,格式(yyyy-MM-dd HH:mm:ss) + /// 采集时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "采集时间,格式(yyyy-MM-ddHH:mm:ss)")] public string CollectTime { get; set; } - /// /// 检测方式(人工,设备) /// + [ExporterHeader(DisplayName = "检测方式(人工,设备)")] public string CheckMode { get; set; } - /// /// 检测设备编号 /// + [ExporterHeader(DisplayName = "检测设备编号")] public string DeviceCode { get; set; } - /// /// 检测设备名称 /// + [ExporterHeader(DisplayName = "检测设备名称")] public string DeviceName { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_DATA.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_DATA.cs index 2ff8273..4eef893 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_DATA.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_DATA.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,221 +15,223 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 车间代码 /// + [ExporterHeader(DisplayName = "车间代码")] public string WorkshopId { get; set; } - /// /// 车间名称 /// + [ExporterHeader(DisplayName = "车间名称")] public string WorkshopName { get; set; } - /// /// 产线代码 /// + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } - /// /// 产线名称 /// + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } - /// /// 工位代码 /// + [ExporterHeader(DisplayName = "工位代码")] public string StationId { get; set; } - /// /// 工位名称 /// + [ExporterHeader(DisplayName = "工位名称")] public string StationName { get; set; } - /// /// 工位人员编号 /// + [ExporterHeader(DisplayName = "工位人员编号")] public string EmpCode { get; set; } - /// /// 工位人员姓名 /// + [ExporterHeader(DisplayName = "工位人员姓名")] public string EmpName { get; set; } - /// /// 供应商总成零件名称 /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] public string VendorProductName { get; set; } - /// /// 供应商总成零件号 /// + [ExporterHeader(DisplayName = "供应商总成零件号")] public string VendorProductNo { get; set; } - /// /// 供应商总成批次号 /// + [ExporterHeader(DisplayName = "供应商总成批次号")] public string VendorProductBatch { get; set; } - /// /// 供应商总成SN码 /// + [ExporterHeader(DisplayName = "供应商总成SN码")] public string VendorProductSn { get; set; } - /// /// 子件编码 /// + [ExporterHeader(DisplayName = "子件编码")] public string SubProdNo { get; set; } - /// /// 子件名称 /// + [ExporterHeader(DisplayName = "子件名称")] public string SubProdName { get; set; } - /// /// 子件批次号 /// + [ExporterHeader(DisplayName = "子件批次号")] public string SubBatchNo { get; set; } - /// /// 子件分包号 /// - public string ChildPackageInfo { get; set; } - + [ExporterHeader(DisplayName = "子件分包号")] + public string? ChildPackageInfo { get; set; } /// /// 子件扣料数量 /// + [ExporterHeader(DisplayName = "子件扣料数量")] public decimal SubProdNum { get; set; } - /// /// 子件SN码 /// + [ExporterHeader(DisplayName = "子件SN码")] public string SubProdSn { get; set; } - /// /// 子件物料来源 /// + [ExporterHeader(DisplayName = "子件物料来源")] public string ChildSource { get; set; } - /// /// 分供方代码 /// - public string SubSupplierCode { get; set; } - + [ExporterHeader(DisplayName = "分供方代码")] + public string? SubSupplierCode { get; set; } /// - /// 分供方名称(原注释“分分供方”可能为笔误,此处按“分供方”处理) + /// 分分供方名称 /// - public string SubSupplierName { get; set; } - + [ExporterHeader(DisplayName = "分分供方名称")] + public string? SubSupplierName { get; set; } /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } - /// /// 奇瑞SN码 /// + [ExporterHeader(DisplayName = "奇瑞SN码")] public string CheryProductSn { get; set; } - /// /// 生产工单号 /// + [ExporterHeader(DisplayName = "生产工单号")] public string ManufactureNo { get; set; } - /// /// 生产批次号 /// - public string ProductBatchNo { get; set; } - + [ExporterHeader(DisplayName = "生产批次号")] + public string? ProductBatchNo { get; set; } /// /// 班次(白班,晚班,中班) /// + [ExporterHeader(DisplayName = "班次(白班,晚班,中班)")] public string WorkShift { get; set; } - /// - /// 进工位的时间,格式(yyyy-MM-dd HH:mm:ss) + /// 进工位的时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "进工位的时间,格式(yyyy-MM-ddHH:mm:ss)")] public string MaterialInputTime { get; set; } - /// - /// 出工位的时间,格式(yyyy-MM-dd HH:mm:ss) + /// 出工位的时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "出工位的时间,格式(yyyy-MM-ddHH:mm:ss)")] public string MaterialOutputTime { get; set; } - /// - /// 装配设备编号(原注释“vendorFieldNum”可能为“设备编号”,此处按业务逻辑命名) + /// 装配设备编号 /// + [ExporterHeader(DisplayName = "装配设备编号")] public string VendorFieldNum { get; set; } - /// /// 装配设备名称 /// + [ExporterHeader(DisplayName = "装配设备名称")] public string VendorFieldName { get; set; } - /// - /// 设备判定的质量状态(合格与否,NG不合适 OK合适) + /// 设备判定的质量状态,合格与否,NG不合适OK合适 /// - public string InstrumentQualityStatus { get; set; } - + [ExporterHeader(DisplayName = "设备判定的质量状态,合格与否,NG不合适OK合适")] + public string? InstrumentQualityStatus { get; set; } /// - /// 人工判定的质量状态(合格与否,NG不合适 OK合适) + /// 人工判定的质量状态,合格与否,NG不合适OK合适 /// - public string ManualQualityStatus { get; set; } - + [ExporterHeader(DisplayName = "人工判定的质量状态,合格与否,NG不合适OK合适")] + public string? ManualQualityStatus { get; set; } /// - /// 最终质量状态(合格与否,NG不合适 OK合适) + /// 最终质量状态,合格与否,NG不合适OK合适 /// + [ExporterHeader(DisplayName = "最终质量状态,合格与否,NG不合适OK合适")] public string FinalQualityStatus { get; set; } - /// - /// 采集时间,格式(yyyy-MM-dd HH:mm:ss) + /// 采集时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "采集时间,格式(yyyy-MM-ddHH:mm:ss)")] public string CollectTime { get; set; } - /// - /// 子件绑定扫码时间,格式(yyyy-MM-dd HH:mm:ss) + /// 子件绑定扫码时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "子件绑定扫码时间,格式(yyyy-MM-ddHH:mm:ss)")] public string DateTime { get; set; } - /// /// 父件硬件版本号 /// - public string ParentHardwareRevision { get; set; } - + [ExporterHeader(DisplayName = "父件硬件版本号")] + public string? ParentHardwareRevision { get; set; } /// /// 父件软件版本号 /// - public string ParentSoftwareRevision { get; set; } - + [ExporterHeader(DisplayName = "父件软件版本号")] + public string? ParentSoftwareRevision { get; set; } /// /// 子件硬件版本号 /// - public string ChildHardwareRevision { get; set; } - + [ExporterHeader(DisplayName = "子件硬件版本号")] + public string? ChildHardwareRevision { get; set; } /// /// 子件软件版本号 /// - public string ChildSoftwareRevision { get; set; } + [ExporterHeader(DisplayName = "子件软件版本号")] + public string? ChildSoftwareRevision { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_FIRST_PASSYIELD.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_FIRST_PASSYIELD.cs index 1293295..863d20e 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_FIRST_PASSYIELD.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_FIRST_PASSYIELD.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,111 +15,113 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 供应商总成零件号 /// + [ExporterHeader(DisplayName = "供应商总成零件号")] public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] public string VendorProductName { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 车间代码 /// - public string WorkshopId { get; set; } - + [ExporterHeader(DisplayName = "车间代码")] + public string? WorkshopId { get; set; } /// /// 车间名称 /// - public string WorkshopName { get; set; } - + [ExporterHeader(DisplayName = "车间名称")] + public string? WorkshopName { get; set; } /// /// 产线代码 /// - public string ProductionLineId { get; set; } - + [ExporterHeader(DisplayName = "产线代码")] + public string? ProductionLineId { get; set; } /// /// 产线名称 /// - public string ProductionLineName { get; set; } - + [ExporterHeader(DisplayName = "产线名称")] + public string? ProductionLineName { get; set; } /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } - /// /// 生产工单号 /// + [ExporterHeader(DisplayName = "生产工单号")] public string ManufactureNo { get; set; } - /// /// 生产批次号 /// + [ExporterHeader(DisplayName = "生产批次号")] public string ProductBatchNo { get; set; } - /// - /// 批次计划数量:每个批次号对应的计划数量 + /// 批次计划数量:每个批次号对应的计划数量 /// + [ExporterHeader(DisplayName = "批次计划数量:每个批次号对应的计划数量")] public decimal WorkOrderNumber { get; set; } - /// /// 不合格数 /// + [ExporterHeader(DisplayName = "不合格数")] public decimal DefectiveNumber { get; set; } - /// - /// 合格数:当班次合格数汇总 + /// 合格数:当班次合格数汇总 /// + [ExporterHeader(DisplayName = "合格数:当班次合格数汇总")] public decimal AcceptableNumber { get; set; } - /// /// 一次合格率实际值 /// + [ExporterHeader(DisplayName = "一次合格率实际值")] public decimal OncePassRateRealValue { get; set; } - /// /// 一次合格率目标值 /// + [ExporterHeader(DisplayName = "一次合格率目标值")] public decimal OncePassRateTagValue { get; set; } - /// - /// 班次(白班,晚班,中班) + /// 班次(白班,晚班,中班) /// + [ExporterHeader(DisplayName = "班次(白班,晚班,中班)")] public string WorkShift { get; set; } - /// - /// 生产日期,格式(yyyy-MM-dd HH:mm:ss) + /// 生产日期,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "生产日期,格式(yyyy-MM-ddHH:mm:ss)")] public string StatisticalTime { get; set; } - /// - /// 值统计时间,格式(yyyy-MM-dd HH:mm:ss) + /// 值统计时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "值统计时间,格式(yyyy-MM-ddHH:mm:ss)")] public string DateTime { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_MATERIAL_STOCK.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_MATERIAL_STOCK.cs index 3be651c..ae5146f 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_MATERIAL_STOCK.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_MATERIAL_STOCK.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using Magicodes.ExporterAndImporter.Core; namespace TaskManager.Entity { @@ -14,151 +15,153 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 供应商子零件编号 /// + [ExporterHeader(DisplayName = "供应商子零件编号")] public string SupplierSubCode { get; set; } - /// /// 供应商子零件名称 /// + [ExporterHeader(DisplayName = "供应商子零件名称")] public string SupplierSubName { get; set; } - /// /// 分供方代码 /// + [ExporterHeader(DisplayName = "分供方代码")] public string SubSupplierCode { get; set; } - /// /// 分供方名称 /// + [ExporterHeader(DisplayName = "分供方名称")] public string SubSupplierName { get; set; } - /// - /// 分供方地址,分供方发货地址:省市区(县),不用于详细地址 + /// 分供方地址,分供方发货地址:省市区(县),不用于详细地址 /// + [ExporterHeader(DisplayName = "分供方地址,分供方发货地址:省市区(县),不用于详细地址")] public string SubSupplierAddress { get; set; } - /// /// 分供方子件编码 /// - public string ComponentCode { get; set; } - + [ExporterHeader(DisplayName = "分供方子件编码")] + public string? ComponentCode { get; set; } /// - /// 分供方子件名称 + /// 分供方子件名称, /// - public string ComponentName { get; set; } - + [ExporterHeader(DisplayName = "分供方子件名称,")] + public string? ComponentName { get; set; } /// /// 子件批次号 /// + [ExporterHeader(DisplayName = "子件批次号")] public string SubBatchNo { get; set; } - /// /// 子件批次数量 /// + [ExporterHeader(DisplayName = "子件批次数量")] public decimal SubBatchNum { get; set; } - /// /// 子件SN码 /// - public string SubBatchSn { get; set; } - + [ExporterHeader(DisplayName = "子件SN码")] + public string? SubBatchSn { get; set; } /// /// 检验人员编号 /// + [ExporterHeader(DisplayName = "检验人员编号")] public string EmpCode { get; set; } - /// /// 检验人员姓名 /// + [ExporterHeader(DisplayName = "检验人员姓名")] public string EmpName { get; set; } - /// /// 检测设备编号 /// + [ExporterHeader(DisplayName = "检测设备编号")] public string DeviceCode { get; set; } - /// /// 检测设备名称 /// + [ExporterHeader(DisplayName = "检测设备名称")] public string DeviceName { get; set; } - /// /// 参数名称/特性名称 /// + [ExporterHeader(DisplayName = "参数名称/特性名称")] public string FeatureName { get; set; } - /// /// 参数单位/特性单位 /// + [ExporterHeader(DisplayName = "参数单位/特性单位")] public string FeatureUnit { get; set; } - /// /// 参数/特性标准值 /// + [ExporterHeader(DisplayName = "参数/特性标准值")] public string StandardValue { get; set; } - /// /// 参数/特性上限值 /// + [ExporterHeader(DisplayName = "参数/特性上限值")] public string FeatureUpper { get; set; } - /// /// 参数/特性下限值 /// + [ExporterHeader(DisplayName = "参数/特性下限值")] public string FeatureLower { get; set; } - /// /// 参数/特性实测值 /// + [ExporterHeader(DisplayName = "参数/特性实测值")] public string FeatureValue { get; set; } - /// /// 来料检验单号 /// + [ExporterHeader(DisplayName = "来料检验单号")] public string CheckNo { get; set; } - /// /// 批次的最终判定结果,OK合格/NG不合格 /// + [ExporterHeader(DisplayName = "批次的最终判定结果,OK合格/NG不合格")] public string CheckResult { get; set; } - /// - /// 检验时间,格式(yyyy-MM-dd HH:mm:ss) + /// 检验时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "检验时间,格式(yyyy-MM-ddHH:mm:ss)")] public string CheckTime { get; set; } - /// /// 控制项要求频率 /// - public decimal SamplingRate { get; set; } - + [ExporterHeader(DisplayName = "控制项要求频率")] + public decimal? SamplingRate { get; set; } /// - /// 上下限更新时间,格式(yyyy-MM-dd HH:mm:ss) + /// 上下限更新时间,格式(yyyy-MM-ddHH:mm:ss) /// - public string LimitUpdateTime { get; set; } - + [ExporterHeader(DisplayName = "上下限更新时间,格式(yyyy-MM-ddHH:mm:ss)")] + public string? LimitUpdateTime { get; set; } /// /// 控制项描述 /// - public string VendorFieldDesc { get; set; } - + [ExporterHeader(DisplayName = "控制项描述")] + public string? VendorFieldDesc { get; set; } /// /// 控制项代码 /// + [ExporterHeader(DisplayName = "控制项代码")] public string VendorFieldCode { get; set; } - /// - /// 库存有效日期,格式(yyyy-MM-dd HH:mm:ss) + /// 库存有效日期,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "库存有效日期,格式(yyyy-MM-ddHH:mm:ss)")] public string DeadLine { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_SCHEDULING.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_SCHEDULING.cs index ea5efe5..1d4a01b 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_SCHEDULING.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_SCHEDULING.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,96 +15,98 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 供应商总成零件号 /// + [ExporterHeader(DisplayName = "供应商总成零件号")] public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] public string VendorProductName { get; set; } - /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } - /// /// 计划单号 /// + [ExporterHeader(DisplayName = "计划单号")] public string PlanNo { get; set; } - /// /// 生产工单号 /// + [ExporterHeader(DisplayName = "生产工单号")] public string ManufactureNo { get; set; } - /// /// 生产批次号 /// + [ExporterHeader(DisplayName = "生产批次号")] public string ProductBatchNo { get; set; } - /// /// 批次计划数量 /// + [ExporterHeader(DisplayName = "批次计划数量")] public decimal ManufactureNum { get; set; } - /// /// 批次投入数量 /// - public decimal ManufactureInputNum { get; set; } - + [ExporterHeader(DisplayName = "批次投入数量")] + public decimal? ManufactureInputNum { get; set; } /// /// 批次产出数量 /// + [ExporterHeader(DisplayName = "批次产出数量")] public decimal ManufactureOutputNum { get; set; } - /// - /// 排产状态(0:未生产,1:生产中,2:已完工,3:已取消,4:已终止) + /// 排产状态,0未生产1.生产中,2.已完工,3.已取消,4.已终止 /// - public int PlanStatus { get; set; } - + [ExporterHeader(DisplayName = "排产状态,0未生产1.生产中,2.已完工,3.已取消,4.已终止")] + public string PlanStatus { get; set; } /// - /// 计划开始时间(格式:yyyy-MM-dd HH:mm:ss) + /// 计划开始时间,时间格式:yyyy-MM-ddHH:mm:ss /// + [ExporterHeader(DisplayName = "计划开始时间,时间格式:yyyy-MM-ddHH:mm:ss")] public string PlanBeginTime { get; set; } - /// - /// 计划结束时间(格式:yyyy-MM-dd HH:mm:ss) + /// 计划结束时间,时间格式:yyyy-MM-ddHH:mm:ss /// + [ExporterHeader(DisplayName = "计划结束时间,时间格式:yyyy-MM-ddHH:mm:ss")] public string PlanEndTime { get; set; } - /// - /// 实际开始时间(格式:yyyy-MM-dd HH:mm:ss) + /// 实际开始时间,时间格式:yyyy-MM-ddHH:mm:ss /// - public string ActualBeginTime { get; set; } - + [ExporterHeader(DisplayName = "实际开始时间,时间格式:yyyy-MM-ddHH:mm:ss")] + public string? ActualBeginTime { get; set; } /// - /// 实际结束时间(格式:yyyy-MM-dd HH:mm:ss) + /// 实际结束时间,时间格式:yyyy-MM-ddHH:mm:ss /// - public string ActualEndTime { get; set; } + [ExporterHeader(DisplayName = "实际结束时间,时间格式:yyyy-MM-ddHH:mm:ss")] + public string? ActualEndTime { get; set; } } + } diff --git a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_STATION_FIRST_PASSYIELD.cs b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_STATION_FIRST_PASSYIELD.cs index 29689d6..f2c5652 100644 --- a/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_STATION_FIRST_PASSYIELD.cs +++ b/API/TaskManager.Entity/Entitys/01_09/SUPPLIER_PRO_STATION_FIRST_PASSYIELD.cs @@ -1,4 +1,5 @@ -using System; +using Magicodes.ExporterAndImporter.Core; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -14,121 +15,123 @@ namespace TaskManager.Entity /// /// 供应商代码 /// + [ExporterHeader(DisplayName = "供应商代码")] public string SupplierCode { get; set; } - /// /// 供应商名称 /// + [ExporterHeader(DisplayName = "供应商名称")] public string SupplierName { get; set; } - /// /// 工厂代码 /// + [ExporterHeader(DisplayName = "工厂代码")] public string PlantId { get; set; } - /// /// 工厂名称 /// + [ExporterHeader(DisplayName = "工厂名称")] public string PlantName { get; set; } - /// /// 车间代码 /// + [ExporterHeader(DisplayName = "车间代码")] public string WorkshopId { get; set; } - /// /// 车间名称 /// + [ExporterHeader(DisplayName = "车间名称")] public string WorkshopName { get; set; } - /// /// 产线代码 /// + [ExporterHeader(DisplayName = "产线代码")] public string ProductionLineId { get; set; } - /// /// 产线名称 /// + [ExporterHeader(DisplayName = "产线名称")] public string ProductionLineName { get; set; } - /// /// 工位代码 /// + [ExporterHeader(DisplayName = "工位代码")] public string StationId { get; set; } - /// /// 工位名称 /// + [ExporterHeader(DisplayName = "工位名称")] public string StationName { get; set; } - /// /// 奇瑞零件号 /// + [ExporterHeader(DisplayName = "奇瑞零件号")] public string CheryProductNo { get; set; } - /// /// 奇瑞零件名称 /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] public string CheryProductName { get; set; } - /// /// 供应商总成零件号 /// + [ExporterHeader(DisplayName = "供应商总成零件号")] public string VendorProductNo { get; set; } - /// /// 供应商总成零件名称 /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] public string VendorProductName { get; set; } - /// /// 生产批次号 /// + [ExporterHeader(DisplayName = "生产批次号")] public string ProductBatchNo { get; set; } - /// - /// 生产工单号(跟排产工单号关联) + /// 生产工单号,(跟排产工单号关联) /// + [ExporterHeader(DisplayName = "生产工单号,(跟排产工单号关联)")] public string ManufactureNo { get; set; } - /// /// 批次计划数量 /// + [ExporterHeader(DisplayName = "批次计划数量")] public decimal WorkOrderNumber { get; set; } - /// /// 不合格数 /// + [ExporterHeader(DisplayName = "不合格数")] public decimal DefectiveNumber { get; set; } - /// /// 合格数 /// + [ExporterHeader(DisplayName = "合格数")] public decimal AcceptableNumber { get; set; } - /// - /// 一次合格率实际值(使用小数表示,如 0.9601 表示 96.01%,整数位最多10位,小数位最多3位) + /// 一次合格率实际值,使用小数表示,如0.9601表示合格率为96.01%整数位最多10位,小数位最多3位 /// + [ExporterHeader(DisplayName = "一次合格率实际值,使用小数表示,如0.9601表示合格率为96.01%整数位最多10位,小数位最多3位")] public decimal OncePassRateRealValue { get; set; } - /// - /// 一次合格率目标值(使用小数表示,如 0.96 表示 96.00%,整数位最多10位,小数位最多3位) + /// 一次合格率目标值,使用小数表示,如0.96表示合格率目标为96.00%。整数位最多10位,小数位最多3位 /// + [ExporterHeader(DisplayName = "一次合格率目标值,使用小数表示,如0.96表示合格率目标为96.00%。整数位最多10位,小数位最多3位")] public decimal OncePassRateTagValue { get; set; } - /// - /// 班次(白班,晚班,中班) + /// 班次,班次如何区分需备注(白班,晚班,中班) /// + [ExporterHeader(DisplayName = "班次,班次如何区分需备注(白班,晚班,中班)")] public string WorkShift { get; set; } - /// - /// 生产日期,格式:yyyy-MM-dd HH:mm:ss + /// 生产日期,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "生产日期,格式(yyyy-MM-ddHH:mm:ss)")] public string StatisticalTime { get; set; } - /// - /// 值统计时间,格式:yyyy-MM-dd HH:mm:ss + /// 值统计时间,格式(yyyy-MM-ddHH:mm:ss) /// + [ExporterHeader(DisplayName = "值统计时间,格式(yyyy-MM-ddHH:mm:ss)")] public string DateTime { get; set; } } + } diff --git a/API/TaskManager.EntityFramework/JobDbContext.cs b/API/TaskManager.EntityFramework/JobDbContext.cs index 75abd59..3af16ee 100644 --- a/API/TaskManager.EntityFramework/JobDbContext.cs +++ b/API/TaskManager.EntityFramework/JobDbContext.cs @@ -115,40 +115,7 @@ namespace TaskManager.EntityFramework /// public DbSet SUPPLIER_PRO_FLAW { get; set; } - ///// - ///// 环境业务数据 - ///// - //public DbSet SUPPLIER_PRO_ENVIRONMENT { get; set; } - - ///// - ///// 设备OEE达成率 - ///// - //public DbSet SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE { get; set; } - - ///// - ///// OEE时间明细 - ///// - //public DbSet SUPPLIER_PRO_OEE_TIME_DETAILS { get; set; } - - ///// - ///// 物料主数据 - ///// - //public DbSet SUPPLIER_PRO_MATERIAL_DATA { get; set; } - - ///// - ///// 附件类数据 - ///// - //public DbSet SUPPLIER_PRO_ATTACHMENT_DATA { get; set; } - - ///// - ///// 工艺装备 - ///// - //public DbSet SUPPLIER_PRO_PROCESS_EQUIPMENT { get; set; } - - ///// - ///// 工艺 - ///// - //public DbSet SUPPLIER_PRO_PROCESS { get; set; } + /// /// 整车月度生产计划-2 @@ -252,7 +219,548 @@ namespace TaskManager.EntityFramework // 其他配置... - # region 工位一次合格率 + #region 来料检验数据 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_PRO_MATERIAL_STOCK"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商子零件编号 + b.Property(e => e.SupplierSubCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商子零件名称 + b.Property(e => e.SupplierSubName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //分供方代码 + b.Property(e => e.SubSupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //分供方名称 + b.Property(e => e.SubSupplierName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //分供方地址,分供方发货地址:省市区(县),不用于详细地址 + b.Property(e => e.SubSupplierAddress).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //分供方子件编码 + b.Property(e => e.ComponentCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(false); + //分供方子件名称, + b.Property(e => e.ComponentName).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(false); + //子件批次号 + b.Property(e => e.SubBatchNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //子件批次数量 + b.Property(e => e.SubBatchNum).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //子件SN码 + b.Property(e => e.SubBatchSn).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //检验人员编号 + b.Property(e => e.EmpCode).HasColumnType("VARCHAR").HasMaxLength(16).IsRequired(); + //检验人员姓名 + b.Property(e => e.EmpName).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //检测设备编号 + b.Property(e => e.DeviceCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //检测设备名称 + b.Property(e => e.DeviceName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //参数名称/特性名称 + b.Property(e => e.FeatureName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //参数单位/特性单位 + b.Property(e => e.FeatureUnit).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //参数/特性标准值 + b.Property(e => e.StandardValue).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //参数/特性上限值 + b.Property(e => e.FeatureUpper).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //参数/特性下限值 + b.Property(e => e.FeatureLower).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //参数/特性实测值 + b.Property(e => e.FeatureValue).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //来料检验单号 + b.Property(e => e.CheckNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //批次的最终判定结果,OK合格/NG不合格 + b.Property(e => e.CheckResult).HasColumnType("CHAR").HasMaxLength(2).IsRequired(); + //检验时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.CheckTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //控制项要求频率 + b.Property(e => e.SamplingRate).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(false); + //上下限更新时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.LimitUpdateTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(false); + //控制项描述 + b.Property(e => e.VendorFieldDesc).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //控制项代码 + b.Property(e => e.VendorFieldCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //库存有效日期,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.DeadLine).HasColumnType("VARCHAR").HasMaxLength(10).IsRequired(); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region 排产数据 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_PRO_SCHEDULING"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工厂代码 + b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工厂名称 + b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商总成零件号 + b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商总成零件名称 + b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //奇瑞零件号 + b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件名称 + b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //计划单号 + b.Property(e => e.PlanNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //生产工单号 + b.Property(e => e.ManufactureNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //生产批次号 + b.Property(e => e.ProductBatchNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //批次计划数量 + b.Property(e => e.ManufactureNum).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //批次投入数量 + b.Property(e => e.ManufactureInputNum).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(false); + //批次产出数量 + b.Property(e => e.ManufactureOutputNum).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //排产状态,0未生产1.生产中,2.已完工,3.已取消,4.已终止 + b.Property(e => e.PlanStatus).HasColumnType("CHAR").HasMaxLength(1).IsRequired(); + //计划开始时间,时间格式:yyyy-MM-ddHH:mm:ss + b.Property(e => e.PlanBeginTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //计划结束时间,时间格式:yyyy-MM-ddHH:mm:ss + b.Property(e => e.PlanEndTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //实际开始时间,时间格式:yyyy-MM-ddHH:mm:ss + b.Property(e => e.ActualBeginTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(false); + //实际结束时间,时间格式:yyyy-MM-ddHH:mm:ss + b.Property(e => e.ActualEndTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(false); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region 供应商基础信息 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_INFO"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工厂代码 + b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工厂名称 + b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //车间代码 + b.Property(e => e.WorkshopId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //车间名称 + b.Property(e => e.WorkshopName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //产线代码 + b.Property(e => e.ProductionLineId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //产线名称 + b.Property(e => e.ProductionLineName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工位代码 + b.Property(e => e.StationId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位名称 + b.Property(e => e.StationName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //是否关键工位(Y/N) + b.Property(e => e.KeyStation).HasColumnType("CHAR").HasMaxLength(1).IsRequired(); + //供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.DataUpdateTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //产线顺序 + b.Property(e => e.ProductionLineOrder).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 0).IsRequired(); + //工位顺序 + b.Property(e => e.StationOrder).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 0).IsRequired(); + //供应商总成零件号 + b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商总成零件名称 + b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //奇瑞零件号 + b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //奇瑞零件名称 + b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region 人员资质信息 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_EMPLOYEE"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工厂代码 + b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工厂名称 + b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //车间代码 + b.Property(e => e.WorkshopId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //车间名称 + b.Property(e => e.WorkshopName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //产线代码 + b.Property(e => e.ProductionLineId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //产线名称 + b.Property(e => e.ProductionLineName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //工位代码 + b.Property(e => e.StationId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工位名称 + b.Property(e => e.StationName).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位人员账号 + b.Property(e => e.OperatorId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位人员姓名 + b.Property(e => e.OperatorName).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //是否有资质(Y,N) + b.Property(e => e.HaveQuantity).HasColumnType("CHAR").HasMaxLength(1).IsRequired(); + //供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.DataUpdateTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //岗位代码 + b.Property(e => e.PositionId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //岗位名称 + b.Property(e => e.PositionName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //资质等级(Level_4,Level_3,Level_2,Level_1) + b.Property(e => e.QualificationLevel).HasColumnType("VARCHAR").HasMaxLength(16).IsRequired(); + //资质获取时间 + b.Property(e => e.CheckInTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //资质失去时间 + b.Property(e => e.CheckOutTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region BOM主数据 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_BOM"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //BOM编码 + b.Property(e => e.BomCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //BOM名称 + b.Property(e => e.BomName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //BOM版本 + b.Property(e => e.BomVersion).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件号 + b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件名称 + b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //供应商父件编码 + b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商父件名称 + b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //父件类型(成品,半成品) + b.Property(e => e.VendorProductType).HasColumnType("nvarchar").HasMaxLength(50).IsRequired(false); + //父件单位 + b.Property(e => e.MaterialUnit).HasColumnType("VARCHAR").HasMaxLength(8).IsRequired(false); + //子件编码 + b.Property(e => e.SubMaterialCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //子件名称 + b.Property(e => e.SubMaterialName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //子件类型(半成品,原材料) + b.Property(e => e.SubMaterialType).HasColumnType("nvarchar").HasMaxLength(50).IsRequired(false); + //子件单位 + b.Property(e => e.SubMaterialUnit).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //子件用量 + b.Property(e => e.SubMaterialQuota).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //BOM变更时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.DataUpdateTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region 过程控制项质量数据 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_PRO_CPS"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商总成零件号 + b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商总成零件名称 + b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //供应商总成SN码 + b.Property(e => e.VendorProductSn).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商总成批次号 + b.Property(e => e.VendorProductBatch).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件号 + b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件名称 + b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //奇瑞SN码 + b.Property(e => e.CheryProductSn).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //生产批次号 + b.Property(e => e.ProductBatchNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //生产工单号 + b.Property(e => e.ManufactureNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工厂代码 + b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工厂名称 + b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //车间代码 + b.Property(e => e.WorkshopId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //车间名称 + b.Property(e => e.WorkshopName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //产线代码 + b.Property(e => e.ProductionLineId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //产线名称 + b.Property(e => e.ProductionLineName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //工位代码 + b.Property(e => e.StationId).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工位名称 + b.Property(e => e.StationName).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位人员编号 + b.Property(e => e.EmpCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位人员姓名 + b.Property(e => e.EmpName).HasColumnType("VARCHAR").HasMaxLength(10).IsRequired(); + //控制项名称 + b.Property(e => e.VendorFieldName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //控制项代码 + b.Property(e => e.VendorFieldCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //控制项点位 + b.Property(e => e.GatherSpot).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(false); + //控制项要求频率 + b.Property(e => e.SamplingRate).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(false); + //上下限更新时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.LimitUpdateTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(false); + //控制项描述 + b.Property(e => e.VendorFieldDesc).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(false); + //载体编码 + b.Property(e => e.CarrierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(false); + //投入数量 + b.Property(e => e.IntputQty).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //一次合格数量 + b.Property(e => e.FttQty).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //参数,是传Y,否传N + b.Property(e => e.Parameter).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //特性,是传Y,否传N + b.Property(e => e.Characteristic).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //CC项,是传Y,否传N + b.Property(e => e.Cc).HasColumnType("CHAR").HasMaxLength(1).IsRequired(); + //SC项,是传Y,否传N + b.Property(e => e.Sc).HasColumnType("CHAR").HasMaxLength(1).IsRequired(); + //SPC,是传Y,否传N + b.Property(e => e.Spc).HasColumnType("CHAR").HasMaxLength(1).IsRequired(); + //控制项标准值 + b.Property(e => e.StandardValue).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //控制项上限 + b.Property(e => e.UpperLimit).HasColumnType("DECIMAL").HasPrecision(precision: 26, scale: 15).IsRequired(); + //控制项下限 + b.Property(e => e.LowerLimit).HasColumnType("DECIMAL").HasPrecision(precision: 26, scale: 15).IsRequired(); + //控制项实测值 + b.Property(e => e.DecimalValue).HasColumnType("DECIMAL").HasPrecision(precision: 26, scale: 15).IsRequired(); + //控制项值的单位名称-中文 + b.Property(e => e.UnitCn).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(false); + //控控制项单位英文 + b.Property(e => e.UnitEn).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //检测结果 + b.Property(e => e.CheckResult).HasColumnType("VARCHAR").HasMaxLength(8).IsRequired(); + //在线检测(inline,offline,both),可选项:inline-在生产线上进行检测.offline-从生产线上拿下来进行检测.both-inline和offline同时存在. + b.Property(e => e.DetectionMode).HasColumnType("VARCHAR").HasMaxLength(20).IsRequired(false); + //班次(白班,晚班,中班) + b.Property(e => e.WorkShift).HasColumnType("VARCHAR").HasMaxLength(10).IsRequired(); + //采集时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.CollectTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //检测方式(人工,设备) + b.Property(e => e.CheckMode).HasColumnType("VARCHAR").HasMaxLength(10).IsRequired(); + //检测设备编号 + b.Property(e => e.DeviceCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //检测设备名称 + b.Property(e => e.DeviceName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region 生产过程数据 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_PRO_DATA"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工厂代码 + b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工厂名称 + b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //车间代码 + b.Property(e => e.WorkshopId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //车间名称 + b.Property(e => e.WorkshopName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //产线代码 + b.Property(e => e.ProductionLineId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //产线名称 + b.Property(e => e.ProductionLineName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //工位代码 + b.Property(e => e.StationId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位名称 + b.Property(e => e.StationName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //工位人员编号 + b.Property(e => e.EmpCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工位人员姓名 + b.Property(e => e.EmpName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商总成零件名称 + b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //供应商总成零件号 + b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商总成批次号 + b.Property(e => e.VendorProductBatch).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商总成SN码 + b.Property(e => e.VendorProductSn).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //子件编码 + b.Property(e => e.SubProdNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //子件名称 + b.Property(e => e.SubProdName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //子件批次号 + b.Property(e => e.SubBatchNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //子件分包号 + b.Property(e => e.ChildPackageInfo).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //子件扣料数量 + b.Property(e => e.SubProdNum).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //子件SN码 + b.Property(e => e.SubProdSn).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //子件物料来源 + b.Property(e => e.ChildSource).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //分供方代码 + b.Property(e => e.SubSupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(false); + //分分供方名称 + b.Property(e => e.SubSupplierName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(false); + //奇瑞零件号 + b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件名称 + b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //奇瑞SN码 + b.Property(e => e.CheryProductSn).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //生产工单号 + b.Property(e => e.ManufactureNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //生产批次号 + b.Property(e => e.ProductBatchNo).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //班次(白班,晚班,中班) + b.Property(e => e.WorkShift).HasColumnType("VARCHAR").HasMaxLength(10).IsRequired(); + //进工位的时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.MaterialInputTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //出工位的时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.MaterialOutputTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //装配设备编号 + b.Property(e => e.VendorFieldNum).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //装配设备名称 + b.Property(e => e.VendorFieldName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //设备判定的质量状态,合格与否,NG不合适OK合适 + b.Property(e => e.InstrumentQualityStatus).HasColumnType("VARCHAR").HasMaxLength(8).IsRequired(false); + //人工判定的质量状态,合格与否,NG不合适OK合适 + b.Property(e => e.ManualQualityStatus).HasColumnType("VARCHAR").HasMaxLength(8).IsRequired(false); + //最终质量状态,合格与否,NG不合适OK合适 + b.Property(e => e.FinalQualityStatus).HasColumnType("VARCHAR").HasMaxLength(8).IsRequired(); + //采集时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.CollectTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //子件绑定扫码时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.DateTime).HasColumnType("CHAR").HasMaxLength(16).IsRequired(); + //父件硬件版本号 + b.Property(e => e.ParentHardwareRevision).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //父件软件版本号 + b.Property(e => e.ParentSoftwareRevision).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //子件硬件版本号 + b.Property(e => e.ChildHardwareRevision).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + //子件软件版本号 + b.Property(e => e.ChildSoftwareRevision).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(false); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + #region 产品一次合格率 + modelBuilder.Entity(b => + { + b.ToTable("SUPPLIER_PRO_FIRST_PASSYIELD"); + //供应商代码 + b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商名称 + b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //供应商总成零件号 + b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //供应商总成零件名称 + b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //工厂代码 + b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //工厂名称 + b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64).IsRequired(); + //车间代码 + b.Property(e => e.WorkshopId).HasColumnType("nvarchar").HasMaxLength(50).IsRequired(false); + //车间名称 + b.Property(e => e.WorkshopName).HasColumnType("nvarchar").HasMaxLength(50).IsRequired(false); + //产线代码 + b.Property(e => e.ProductionLineId).HasColumnType("nvarchar").HasMaxLength(50).IsRequired(false); + //产线名称 + b.Property(e => e.ProductionLineName).HasColumnType("nvarchar").HasMaxLength(50).IsRequired(false); + //奇瑞零件号 + b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //奇瑞零件名称 + b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(100).IsRequired(); + //生产工单号 + b.Property(e => e.ManufactureNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //生产批次号 + b.Property(e => e.ProductBatchNo).HasColumnType("VARCHAR").HasMaxLength(32).IsRequired(); + //批次计划数量:每个批次号对应的计划数量 + b.Property(e => e.WorkOrderNumber).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //不合格数 + b.Property(e => e.DefectiveNumber).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //合格数:当班次合格数汇总 + b.Property(e => e.AcceptableNumber).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //一次合格率实际值 + b.Property(e => e.OncePassRateRealValue).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //一次合格率目标值 + b.Property(e => e.OncePassRateTagValue).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5).IsRequired(); + //班次(白班,晚班,中班) + b.Property(e => e.WorkShift).HasColumnType("VARCHAR").HasMaxLength(10).IsRequired(); + //生产日期,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.StatisticalTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + //值统计时间,格式(yyyy-MM-ddHH:mm:ss) + b.Property(e => e.DateTime).HasColumnType("CHAR").HasMaxLength(19).IsRequired(); + b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired(); + b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500).IsRequired(false); + b.Property(e => e.ReadState).HasDefaultValue(false); + b.Property(e => e.WriteState).HasDefaultValue(false); + b.HasKey(e => e.UId); + + }); + #endregion + + + + + #region 工位一次合格率 modelBuilder.Entity(b => { b.ToTable("SUPPLIER_PRO_STATION_FIRST_PASSYIELD"); diff --git a/API/Wood.Service/Controllers/LogController.cs b/API/Wood.Service/Controllers/LogController.cs index c37e785..9aea8d6 100644 --- a/API/Wood.Service/Controllers/LogController.cs +++ b/API/Wood.Service/Controllers/LogController.cs @@ -1,36 +1,41 @@  +using Magicodes.ExporterAndImporter.Excel; using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; using System; using System.Collections.Generic; using System.Linq; +using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; using TaskManager.Controllers; using TaskManager.Entity; using TaskManager.EntityFramework; +using TaskManager.EntityFramework.Repository; +using Wood.Service.Controllers; namespace TaskManager.Controllers { - public class LogController:ControllerBase + public class LogController:NormalBaseController { - private readonly JobDbContext _dbContext; - public LogController(JobDbContext dbContext) + public LogController(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) { - _dbContext = dbContext; } + public async Task> GetAll() { - var log = await _dbContext.TaskLogs.ToListAsync(); + var log = await _context.TaskLogs.ToListAsync(); return log; } [HttpGet("AddError")] public async Task AddError(string message,string taskname) { - _dbContext.TaskLogs.Add(new TaskLog() { Info = message, Type = "错误",TaskName=taskname ,CreationTime=DateTime.Now}); - var result =await _dbContext.SaveChangesAsync(); + _context.TaskLogs.Add(new TaskLog() { Info = message, Type = "错误",TaskName=taskname ,CreationTime=DateTime.Now}); + var result =await _context.SaveChangesAsync(); if (result > 0) { return true; @@ -40,16 +45,63 @@ namespace TaskManager.Controllers [HttpGet("AddInfo")] public async Task AddInfo(string message, string taskname) { - _dbContext.TaskLogs.Add(new TaskLog() { Info = message, Type = "记录", TaskName = taskname, CreationTime = DateTime.Now }); - var result = await _dbContext.SaveChangesAsync(); + _context.TaskLogs.Add(new TaskLog() { Info = message, Type = "记录", TaskName = taskname, CreationTime = DateTime.Now }); + var result = await _context.SaveChangesAsync(); if (result > 0) { return true; } return false; } - + + + public async Task Export([FromQuery] int pageNumber = 1, + [FromQuery] int pageSize = 10, + [FromQuery] string sortBy = "", + [FromQuery] bool isAscending = true, + [FromQuery] Dictionary filters = null) + { + var pagingParams = new PagingParams + { + PageNumber = pageNumber, + PageSize = pageSize, + SortBy = sortBy, + IsAscending = isAscending, + Filters = filters + }; + + // 可以在这里构建表达式树过滤条件 + Expression> filter = null; + + var pagedResult = await _repository.GetPagedAsync(null, pagingParams); + return await ExportFile(pagedResult.Data, Guid.NewGuid().ToString() + ".xlsx"); + + + } + protected async Task ExportFile(ICollection dtos, string fileName) where T : class, new() + { + var excelExporter = HttpContext.RequestServices.GetRequiredService(); + var res = await excelExporter.ExportAsByteArray(dtos); + return new FileStreamResult(new MemoryStream(res), "application/octet-stream") { FileDownloadName = DateTime.Now.ToString("yyyyMMddHHmm") + "_" + fileName }; + } + + } + + /// 导出 + /// + /// 第几页 + /// 每页条数 + /// 排序列 + /// 是否升序 + /// 查询条件 + /// + + + + + + //private readonly IServiceProvider _serviceProvider; //public LogController(IServiceProvider serviceProvider) //{ @@ -63,5 +115,5 @@ namespace TaskManager.Controllers //} - -} + + } diff --git a/API/Wood.Service/Controllers/NormalBaseController.cs b/API/Wood.Service/Controllers/NormalBaseController.cs new file mode 100644 index 0000000..8a877f4 --- /dev/null +++ b/API/Wood.Service/Controllers/NormalBaseController.cs @@ -0,0 +1,110 @@ +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Text; +using System.Threading.Tasks; +using TaskManager.Entity; +using TaskManager.EntityFramework; +using TaskManager.EntityFramework.Repository; + +namespace Wood.Service.Controllers +{ + public class NormalBaseController:ControllerBase where T:BaseEntity + { + + protected readonly JobDbContext _context; + protected readonly IServiceProvider _builder; + protected readonly IConfiguration _configuration; + protected readonly IRepository _repository; + public NormalBaseController(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) + { + _builder = builder; + _context = context; + _configuration = configuration; + _repository = repository; + } + + + /// + /// 通过UID获得实体 + /// + /// + /// + [HttpGet("{id}")] + public async Task> GetById(int id) + { + var entity = await _repository.GetByIdAsync(id); + if (entity == null) return NotFound(); + return entity; + } + + /// + /// 创建实体 + /// + /// + /// + [HttpPost] + public async Task> Create(T entity) + { + entity.CreationTime = DateTime.Now; + var createdEntity = await _repository.AddAsync(entity); + return new JsonResult(new { Code = 200, Message = "创建成功!" }); + } + /// + /// 更新实体UID + /// + /// + /// + [HttpPut("{id}")] + public async Task Update(T entity) + { + var _first = await _repository.GetByIdAsync(entity.UId); + if (_first == null) + { + return new JsonResult(new { Code = 400, Message = "修改失败!" }); + } + + + await _repository.UpdateAsync(entity); + return new JsonResult(new { Code = 200, Message = "修改成功!" }); + } + /// + /// 删除实体通过UID + /// + /// + /// + [HttpDelete("{id}")] + public async Task Delete(int id) + { + await _repository.DeleteAsync(id); + return new JsonResult(new { Code = 200, Message = "删除成功!" }); ; + } + [HttpGet] + public async Task>> GetPaged( + [FromQuery] int pageNumber = 1, + [FromQuery] int pageSize = 10, + [FromQuery] string sortBy = "", + [FromQuery] bool isAscending = true, + [FromQuery] Dictionary filters = null) + { + var pagingParams = new PagingParams + { + PageNumber = pageNumber, + PageSize = pageSize, + SortBy = sortBy, + IsAscending = isAscending, + Filters = filters + }; + + // 可以在这里构建表达式树过滤条件 + Expression> filter = null; + + var pagedResult = await _repository.GetPagedAsync(filter, pagingParams); + return Ok(pagedResult); + } + + } +} diff --git a/API/Wood.Service/Controllers/TaskConifgureController.cs b/API/Wood.Service/Controllers/TaskConifgureController.cs index 61d552c..e98d7d2 100644 --- a/API/Wood.Service/Controllers/TaskConifgureController.cs +++ b/API/Wood.Service/Controllers/TaskConifgureController.cs @@ -18,6 +18,7 @@ using TaskManager.Controllers; using TaskManager.Entity; using TaskManager.EntityFramework; using TaskManager.EntityFramework.Repository; +using Wood.Service.Controllers; namespace TaskManager.Controllers { @@ -25,20 +26,13 @@ namespace TaskManager.Controllers //[Route("[controller]")] [AllowAnonymous] - public class TaskConifgureController : ControllerBase + public class TaskConifgureController :NormalBaseController { - private readonly JobDbContext _context; - private readonly IServiceProvider _builder; - private readonly IConfiguration _configuration; - private readonly IRepository _repository; - public TaskConifgureController(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) + public TaskConifgureController(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) { - _builder = builder; - _context = context; - _configuration = configuration; - _repository = repository; } + protected async Task ExportFile(ICollection dtos, string fileName) where T : class, new() { var excelExporter = HttpContext.RequestServices.GetRequiredService(); @@ -85,38 +79,7 @@ namespace TaskManager.Controllers } /// - /// 导出 - /// - /// 第几页 - /// 每页条数 - /// 排序列 - /// 是否升序 - /// 查询条件 - /// - - public async Task Export([FromQuery] int pageNumber = 1, - [FromQuery] int pageSize = 10, - [FromQuery] string sortBy = "", - [FromQuery] bool isAscending = true, - [FromQuery] Dictionary filters = null) - { - var pagingParams = new PagingParams - { - PageNumber = pageNumber, - PageSize = pageSize, - SortBy = sortBy, - IsAscending = isAscending, - Filters = filters - }; - - // 可以在这里构建表达式树过滤条件 - Expression> filter = null; - - var pagedResult = await _repository.GetPagedAsync(null, pagingParams); - return await ExportFile(pagedResult.Data, Guid.NewGuid().ToString() + ".xlsx"); - - - } + @@ -618,82 +581,23 @@ namespace TaskManager.Controllers } } - - - - } - - /// - /// 获得所有揭露 - /// - /// - [HttpGet] - public async Task>> GetAll() - { - return await _repository.GetAllAsync() as List; - } - - /// - /// 通过UID获得实体 - /// - /// - /// - [HttpGet("{id}")] - public async Task> GetById(int id) - { - var entity = await _repository.GetByIdAsync(id); - if (entity == null) return NotFound(); - return entity; } - /// - /// 创建实体 - /// - /// - /// - [HttpPost] - public async Task> Create(TaskConifgure entity) - { - entity.CreationTime = DateTime.Now; - var createdEntity = await _repository.AddAsync(entity); - return new JsonResult(new { Code = 200, Message = "创建成功!" }); - } - /// - /// 更新实体UID + + /// 导出 /// - /// + /// 第几页 + /// 每页条数 + /// 排序列 + /// 是否升序 + /// 查询条件 /// - [HttpPut("{id}")] - public async Task Update(TaskConifgure entity) - { - var _first = await _repository.GetByIdAsync(entity.UId); - if (_first == null) - { - return new JsonResult(new { Code = 400, Message = "修改失败!" }); - } - - await _repository.UpdateAsync(entity); - return new JsonResult(new { Code = 200, Message = "修改成功!" }); - } - /// - /// 删除实体通过UID - /// - /// - /// - [HttpDelete("{id}")] - public async Task Delete(int id) - { - await _repository.DeleteAsync(id); - return new JsonResult(new { Code = 200, Message = "删除成功!" }); ; - } - [HttpGet] - public async Task>> GetPaged( - [FromQuery] int pageNumber = 1, - [FromQuery] int pageSize = 10, - [FromQuery] string sortBy = "", - [FromQuery] bool isAscending = true, - [FromQuery] Dictionary filters = null) + public async Task Export([FromQuery] int pageNumber = 1, + [FromQuery] int pageSize = 10, + [FromQuery] string sortBy = "", + [FromQuery] bool isAscending = true, + [FromQuery] Dictionary filters = null) { var pagingParams = new PagingParams { @@ -707,11 +611,12 @@ namespace TaskManager.Controllers // 可以在这里构建表达式树过滤条件 Expression> filter = null; - var pagedResult = await _repository.GetPagedAsync(filter, pagingParams); - return Ok(pagedResult); - } + var pagedResult = await _repository.GetPagedAsync(null, pagingParams); + return await ExportFile(pagedResult.Data, Guid.NewGuid().ToString() + ".xlsx"); + } + // 使用 Hangfire 注册定时任务