diff --git a/API/TaskManager.Contracts/Dtos/10_17/Class1.cs b/API/TaskManager.Contracts/Dtos/10_17/Class1.cs deleted file mode 100644 index c8dfe71..0000000 --- a/API/TaskManager.Contracts/Dtos/10_17/Class1.cs +++ /dev/null @@ -1,12 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace TaskManager.Contracts.Dtos._10_17 -{ - internal class Class1 - { - } -} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_DATE_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_DATE_DTO.cs new file mode 100644 index 0000000..e917547 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_DATE_DTO.cs @@ -0,0 +1,252 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 日物料需求计划风险确认 + /// + public class SUPPLIER_CON_DATE_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 需求发布版次,取自日物料需求计划接口中的需求发布版次,针对与这个版次的需求进行风险反馈 + /// + [ExporterHeader(DisplayName = "需求发布版次")] + [ImporterHeader(Name = "需求发布版次")] + public string ReleaseEdition { get; set; } + /// + /// 零件号,奇瑞零件号 + /// + [ExporterHeader(DisplayName = "零件号,奇瑞零件号")] + [ImporterHeader(Name = "零件号,奇瑞零件号")] + public string MaterialCode { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 反馈结果,1-异常;0-无异常(匹配峰值需求缺口,如果可满足峰值,即选择无异常) + /// + [ExporterHeader(DisplayName = "反馈结果")] + [ImporterHeader(Name = "反馈结果")] + public string FeedbackResults { get; set; } + /// + /// 风险类型,当反馈结果=1时,此字段必输1.生产节拍不足2.人员不足3.原材料不足4.设备异常5.其他 + /// + [ExporterHeader(DisplayName = "风险类型")] + [ImporterHeader(Name = "风险类型")] + public string? VentureType { get; set; } + /// + /// 具体风险,当反馈结果=1时,此字段必输描述具体风险 + /// + [ExporterHeader(DisplayName = "具体风险")] + [ImporterHeader(Name = "具体风险")] + public string? VentureSpecific { get; set; } + /// + /// 应对措施,当反馈结果=1时,此字段必输描述具体应对措施 + /// + [ExporterHeader(DisplayName = "应对措施")] + [ImporterHeader(Name = "应对措施")] + public string? Measures { get; set; } + /// + /// 起始日期,格式:yyyy-MM-dd + /// + [ExporterHeader(DisplayName = "起始日期")] + [ImporterHeader(Name = "起始日期")] + public string StartDate { get; set; } + /// + /// 满足数量1,数量锁定,7日内满足数量必须等于需求数量 + /// + [ExporterHeader(DisplayName = "满足数量1")] + [ImporterHeader(Name = "满足数量1")] + public decimal QuantityMeet1 { get; set; } + /// + /// 满足数量2, + /// + [ExporterHeader(DisplayName = "满足数量2")] + [ImporterHeader(Name = "满足数量2")] + public decimal QuantityMeet2 { get; set; } + /// + /// 满足数量3, + /// + [ExporterHeader(DisplayName = "满足数量3")] + [ImporterHeader(Name = "满足数量3")] + public decimal QuantityMeet3 { get; set; } + /// + /// 满足数量4, + /// + [ExporterHeader(DisplayName = "满足数量4")] + [ImporterHeader(Name = "满足数量4")] + public decimal QuantityMeet4 { get; set; } + /// + /// 满足数量5, + /// + [ExporterHeader(DisplayName = "满足数量5")] + [ImporterHeader(Name = "满足数量5")] + public decimal QuantityMeet5 { get; set; } + /// + /// 满足数量6, + /// + [ExporterHeader(DisplayName = "满足数量6")] + [ImporterHeader(Name = "满足数量6")] + public decimal QuantityMeet6 { get; set; } + /// + /// 满足数量7, + /// + [ExporterHeader(DisplayName = "满足数量7")] + [ImporterHeader(Name = "满足数量7")] + public decimal QuantityMeet7 { get; set; } + /// + /// 满足数量8,根据物料需求计划接口发布的需求天数,针对企业自身产能情况反馈可满足数量注:目前发送数据为滚动12天的数据,13至31天的字段为预留,未来可能会增加至31天 + /// + [ExporterHeader(DisplayName = "满足数量8")] + [ImporterHeader(Name = "满足数量8")] + public decimal QuantityMeet8 { get; set; } + /// + /// 满足数量9, + /// + [ExporterHeader(DisplayName = "满足数量9")] + [ImporterHeader(Name = "满足数量9")] + public decimal QuantityMeet9 { get; set; } + /// + /// 满足数量10, + /// + [ExporterHeader(DisplayName = "满足数量10")] + [ImporterHeader(Name = "满足数量10")] + public decimal QuantityMeet10 { get; set; } + /// + /// 满足数量11, + /// + [ExporterHeader(DisplayName = "满足数量11")] + [ImporterHeader(Name = "满足数量11")] + public decimal QuantityMeet11 { get; set; } + /// + /// 满足数量12, + /// + [ExporterHeader(DisplayName = "满足数量12")] + [ImporterHeader(Name = "满足数量12")] + public decimal QuantityMeet12 { get; set; } + /// + /// 满足数量13, + /// + [ExporterHeader(DisplayName = "满足数量13")] + [ImporterHeader(Name = "满足数量13")] + public decimal? QuantityMeet13 { get; set; } + /// + /// 满足数量14, + /// + [ExporterHeader(DisplayName = "满足数量14")] + [ImporterHeader(Name = "满足数量14")] + public decimal? QuantityMeet14 { get; set; } + /// + /// 满足数量15, + /// + [ExporterHeader(DisplayName = "满足数量15")] + [ImporterHeader(Name = "满足数量15")] + public decimal? QuantityMeet15 { get; set; } + /// + /// 满足数量16, + /// + [ExporterHeader(DisplayName = "满足数量16")] + [ImporterHeader(Name = "满足数量16")] + public decimal? QuantityMeet16 { get; set; } + /// + /// 满足数量17, + /// + [ExporterHeader(DisplayName = "满足数量17")] + [ImporterHeader(Name = "满足数量17")] + public decimal? QuantityMeet17 { get; set; } + /// + /// 满足数量18, + /// + [ExporterHeader(DisplayName = "满足数量18")] + [ImporterHeader(Name = "满足数量18")] + public decimal? QuantityMeet18 { get; set; } + /// + /// 满足数量19, + /// + [ExporterHeader(DisplayName = "满足数量19")] + [ImporterHeader(Name = "满足数量19")] + public decimal? QuantityMeet19 { get; set; } + /// + /// 满足数量20, + /// + [ExporterHeader(DisplayName = "满足数量20")] + [ImporterHeader(Name = "满足数量20")] + public decimal? QuantityMeet20 { get; set; } + /// + /// 满足数量21, + /// + [ExporterHeader(DisplayName = "满足数量21")] + [ImporterHeader(Name = "满足数量21")] + public decimal? QuantityMeet21 { get; set; } + /// + /// 满足数量22, + /// + [ExporterHeader(DisplayName = "满足数量22")] + [ImporterHeader(Name = "满足数量22")] + public decimal? QuantityMeet22 { get; set; } + /// + /// 满足数量23, + /// + [ExporterHeader(DisplayName = "满足数量23")] + [ImporterHeader(Name = "满足数量23")] + public decimal? QuantityMeet23 { get; set; } + /// + /// 满足数量24, + /// + [ExporterHeader(DisplayName = "满足数量24")] + [ImporterHeader(Name = "满足数量24")] + public decimal? QuantityMeet24 { get; set; } + /// + /// 满足数量25, + /// + [ExporterHeader(DisplayName = "满足数量25")] + [ImporterHeader(Name = "满足数量25")] + public decimal? QuantityMeet25 { get; set; } + /// + /// 满足数量26, + /// + [ExporterHeader(DisplayName = "满足数量26")] + [ImporterHeader(Name = "满足数量26")] + public decimal? QuantityMeet26 { get; set; } + /// + /// 满足数量27, + /// + [ExporterHeader(DisplayName = "满足数量27")] + [ImporterHeader(Name = "满足数量27")] + public decimal? QuantityMeet27 { get; set; } + /// + /// 满足数量28, + /// + [ExporterHeader(DisplayName = "满足数量28")] + [ImporterHeader(Name = "满足数量28")] + public decimal? QuantityMeet28 { get; set; } + /// + /// 满足数量29, + /// + [ExporterHeader(DisplayName = "满足数量29")] + [ImporterHeader(Name = "满足数量29")] + public decimal? QuantityMeet29 { get; set; } + /// + /// 满足数量30, + /// + [ExporterHeader(DisplayName = "满足数量30")] + [ImporterHeader(Name = "满足数量30")] + public decimal? QuantityMeet30 { get; set; } + /// + /// 满足数量31, + /// + [ExporterHeader(DisplayName = "满足数量31")] + [ImporterHeader(Name = "满足数量31")] + public decimal? QuantityMeet31 { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_MMRP_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_MMRP_DTO.cs new file mode 100644 index 0000000..21ef18b --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_MMRP_DTO.cs @@ -0,0 +1,138 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// M+6月物料需求计划风险确认 + /// + public class SUPPLIER_CON_MMRP_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 需求发布版次,取自M+6月物料需求计划接口中的需求发布版次,针对与这个版次的需求进行风险反馈 + /// + [ExporterHeader(DisplayName = "需求发布版次")] + [ImporterHeader(Name = "需求发布版次")] + public string ReleaseEdition { get; set; } + /// + /// 零件号,奇瑞零件号 + /// + [ExporterHeader(DisplayName = "零件号")] + [ImporterHeader(Name = "零件号")] + public string MaterialCode { get; set; } + /// + /// 工厂代码, + /// + [ExporterHeader(DisplayName = "工厂代码,")] + [ImporterHeader(Name = "工厂代码,")] + public string PlantId { get; set; } + /// + /// 反馈结果,1-异常;0-无异常(匹配峰值需求缺口,如果可满足峰值,即选择无异常) + /// + [ExporterHeader(DisplayName = "反馈结果")] + [ImporterHeader(Name = "反馈结果")] + public string FeedbackResults { get; set; } + /// + /// 风险类型,当反馈结果=1时,此字段必输1.生产节拍不足2.人员不足3.原材料不足4.设备异常5.其他 + /// + [ExporterHeader(DisplayName = "风险类型")] + [ImporterHeader(Name = "风险类型")] + public string? VentureType { get; set; } + /// + /// 具体风险,当反馈结果=1时,此字段必输描述具体风险 + /// + [ExporterHeader(DisplayName = "具体风险")] + [ImporterHeader(Name = "具体风险")] + public string? VentureSpecific { get; set; } + /// + /// 应对措施,当反馈结果=1时,此字段必输描述具体应对措施 + /// + [ExporterHeader(DisplayName = "应对措施")] + [ImporterHeader(Name = "应对措施")] + public string? Measures { get; set; } + /// + /// 起始月份-格式:yyyy-MM + /// + [ExporterHeader(DisplayName = "起始月份")] + [ImporterHeader(Name = "起始月份")] + public string StartMonth { get; set; } + /// + /// 满足数量1 + /// + [ExporterHeader(DisplayName = "满足数量1")] + [ImporterHeader(Name = "满足数量1")] + public decimal QuantityMeet1 { get; set; } + /// + /// 满足数量2 + /// + [ExporterHeader(DisplayName = "满足数量2")] + [ImporterHeader(Name = "满足数量2")] + public decimal QuantityMeet2 { get; set; } + /// + /// 满足数量3 + /// + [ExporterHeader(DisplayName = "满足数量3")] + [ImporterHeader(Name = "满足数量3")] + public decimal QuantityMeet3 { get; set; } + /// + /// 满足数量4 + /// + [ExporterHeader(DisplayName = "满足数量4")] + [ImporterHeader(Name = "满足数量4")] + public decimal QuantityMeet4 { get; set; } + /// + /// 满足数量5 + /// + [ExporterHeader(DisplayName = "满足数量5")] + [ImporterHeader(Name = "满足数量5")] + public decimal QuantityMeet5 { get; set; } + /// + /// 满足数量6 + /// + [ExporterHeader(DisplayName = "满足数量6")] + [ImporterHeader(Name = "满足数量6")] + public decimal QuantityMeet6 { get; set; } + /// + /// 满足数量7 + /// + [ExporterHeader(DisplayName = "满足数量7")] + [ImporterHeader(Name = "满足数量7")] + public decimal? QuantityMeet7 { get; set; } + /// + /// 满足数量8 + /// + [ExporterHeader(DisplayName = "满足数量8")] + [ImporterHeader(Name = "满足数量8")] + public decimal? QuantityMeet8 { get; set; } + /// + /// 满足数量9 + /// + [ExporterHeader(DisplayName = "满足数量9")] + [ImporterHeader(Name = "满足数量9")] + public decimal? QuantityMeet9 { get; set; } + /// + /// 满足数量10 + /// + [ExporterHeader(DisplayName = "满足数量10")] + [ImporterHeader(Name = "满足数量10")] + public decimal? QuantityMeet10 { get; set; } + /// + /// 满足数量11 + /// + [ExporterHeader(DisplayName = "满足数量11")] + [ImporterHeader(Name = "满足数量11")] + public decimal? QuantityMeet11 { get; set; } + /// + /// 满足数量12 + /// + [ExporterHeader(DisplayName = "满足数量12")] + [ImporterHeader(Name = "满足数量12")] + public decimal? QuantityMeet12 { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_PO_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_PO_DTO.cs new file mode 100644 index 0000000..cc67661 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_CON_PO_DTO.cs @@ -0,0 +1,60 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 采购订单风险确认 + /// + public class SUPPLIER_CON_PO_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 采购订单号 + /// + [ExporterHeader(DisplayName = "采购订单号")] + [ImporterHeader(Name = "采购订单号")] + public string PurchaseOrder { get; set; } + /// + /// 行项目号 + /// + [ExporterHeader(DisplayName = "行项目号")] + [ImporterHeader(Name = "行项目号")] + public string SerialNumber { get; set; } + /// + /// 满足数量 + /// + [ExporterHeader(DisplayName = "满足数量")] + [ImporterHeader(Name = "满足数量")] + public decimal QuantityMeet { get; set; } + /// + /// 反馈结果,1-异常;0-无异常(匹配峰值需求缺口,如果可满足峰值,即选择无异常) + /// + [ExporterHeader(DisplayName = "反馈结果")] + [ImporterHeader(Name = "反馈结果")] + public string FeedbackResults { get; set; } + /// + /// 风险类型,当反馈结果=1时,此字段必输1.生产节拍不足2.人员不足3.原材料不足4.设备异常5.其他 + /// + [ExporterHeader(DisplayName = "风险类型")] + [ImporterHeader(Name = "风险类型")] + public string? VentureType { get; set; } + /// + /// 具体风险,当反馈结果=1时,此字段必输描述具体风险 + /// + [ExporterHeader(DisplayName = "具体风险")] + [ImporterHeader(Name = "具体风险")] + public string? VentureSpecific { get; set; } + /// + /// 应对措施,当反馈结果=1时,此字段必输描述具体应对措施 + /// + [ExporterHeader(DisplayName = "应对措施")] + [ImporterHeader(Name = "应对措施")] + public string? Measures { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_EMPLOYEE_DT_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_EMPLOYEE_DT_DTO.cs new file mode 100644 index 0000000..beba2d9 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_EMPLOYEE_DT_DTO.cs @@ -0,0 +1,130 @@ +using Magicodes.ExporterAndImporter.Core; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace TaskManager.Entity +{ + /// + /// 人员资质信息 + /// + public class SUPPLIER_EMPLOYEE_DT_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 工厂名称 + /// + [ExporterHeader(DisplayName = "工厂名称")] + [ImporterHeader(Name = "工厂名称")] + public string PlantName { get; set; } + /// + /// 车间代码 + /// + [ExporterHeader(DisplayName = "车间代码")] + [ImporterHeader(Name = "车间代码")] + public string WorkshopId { get; set; } + /// + /// 车间名称 + /// + [ExporterHeader(DisplayName = "车间名称")] + [ImporterHeader(Name = "车间名称")] + public string WorkshopName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string ProductionLineName { get; set; } + /// + /// 工位代码 + /// + [ExporterHeader(DisplayName = "工位代码")] + [ImporterHeader(Name = "工位代码")] + public string StationId { get; set; } + /// + /// 工位名称 + /// + [ExporterHeader(DisplayName = "工位名称")] + [ImporterHeader(Name = "工位名称")] + public string StationName { get; set; } + /// + /// 工位人员账号 + /// + [ExporterHeader(DisplayName = "工位人员账号")] + [ImporterHeader(Name = "工位人员账号")] + public string OperatorId { get; set; } + /// + /// 工位人员姓名 + /// + [ExporterHeader(DisplayName = "工位人员姓名")] + [ImporterHeader(Name = "工位人员姓名")] + public string OperatorName { get; set; } + /// + /// 是否有资质(Y,N) + /// + [ExporterHeader(DisplayName = "是否有资质(Y,N)")] + [ImporterHeader(Name = "是否有资质(Y,N)")] + public string HaveQuantity { get; set; } + /// + /// 供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "供应商修改时间")] + [ImporterHeader(Name = "供应商修改时间")] + public string DataUpdateTime { get; set; } + /// + /// 岗位代码 + /// + [ExporterHeader(DisplayName = "岗位代码")] + [ImporterHeader(Name = "岗位代码")] + public string PositionId { get; set; } + /// + /// 岗位名称 + /// + [ExporterHeader(DisplayName = "岗位名称")] + [ImporterHeader(Name = "岗位名称")] + public string PositionName { get; set; } + /// + /// 资质等级(Level_4,Level_3,Level_2,Level_1) + /// + [ExporterHeader(DisplayName = "资质等级")] + [ImporterHeader(Name = "资质等级")] + public string QualificationLevel { get; set; } + /// + /// 资质获取时间 + /// + [ExporterHeader(DisplayName = "资质获取时间")] + [ImporterHeader(Name = "资质获取时间")] + public string CheckInTime { get; set; } + /// + /// 资质失去时间 + /// + [ExporterHeader(DisplayName = "资质失去时间")] + [ImporterHeader(Name = "资质失去时间")] + public string CheckOutTime { get; set; } + } +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_INFO_DT_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_INFO_DT_DTO.cs new file mode 100644 index 0000000..6de67b5 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_INFO_DT_DTO.cs @@ -0,0 +1,125 @@ +using Magicodes.ExporterAndImporter.Core; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace TaskManager.Entity +{ + /// + /// 供应商基础信息 + /// + public class SUPPLIER_INFO_DT_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 工厂名称 + /// + [ExporterHeader(DisplayName = "工厂名称")] + [ImporterHeader(Name = "工厂名称")] + public string PlantName { get; set; } + /// + /// 车间代码 + /// + [ExporterHeader(DisplayName = "车间代码")] + [ImporterHeader(Name = "车间代码")] + public string WorkshopId { get; set; } + /// + /// 车间名称 + /// + [ExporterHeader(DisplayName = "车间名称")] + [ImporterHeader(Name = "车间名称")] + public string WorkshopName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string ProductionLineName { get; set; } + /// + /// 工位代码 + /// + [ExporterHeader(DisplayName = "工位代码")] + [ImporterHeader(Name = "工位代码")] + public string StationId { get; set; } + /// + /// 工位名称 + /// + [ExporterHeader(DisplayName = "工位名称")] + [ImporterHeader(Name = "工位名称")] + public string StationName { get; set; } + /// + /// 是否关键工位(Y/N) + /// + [ExporterHeader(DisplayName = "是否关键工位(Y/N)")] + [ImporterHeader(Name = "是否关键工位(Y/N)")] + public string KeyStation { get; set; } + /// + /// 供应商修改时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "供应商修改时间")] + [ImporterHeader(Name = "供应商修改时间")] + public string DataUpdateTime { get; set; } + /// + /// 产线顺序 + /// + [ExporterHeader(DisplayName = "产线顺序")] + [ImporterHeader(Name = "产线顺序")] + public decimal ProductionLineOrder { get; set; } + /// + /// 工位顺序 + /// + [ExporterHeader(DisplayName = "工位顺序")] + [ImporterHeader(Name = "工位顺序")] + public decimal StationOrder { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_ATTACHMENT_DATA_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_ATTACHMENT_DATA_DTO.cs new file mode 100644 index 0000000..54f54be --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_ATTACHMENT_DATA_DTO.cs @@ -0,0 +1,115 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 附件类数据 + /// + public class SUPPLIER_PRO_ATTACHMENT_DATA_DTO + { + + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 数据类型(1产前管理;2人员资质;3监控视频) + /// + [ExporterHeader(DisplayName = "数据类型")] + [ImporterHeader(Name = "数据类型")] + public string Type { get; set; } + /// + /// 文件名 + /// + [ExporterHeader(DisplayName = "文件名")] + [ImporterHeader(Name = "文件名")] + public string FileName { get; set; } + /// + /// 图文地址 + /// + [ExporterHeader(DisplayName = "图文地址")] + [ImporterHeader(Name = "图文地址")] + public string FileUrl { get; set; } + /// + /// 生成时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "生成时间")] + [ImporterHeader(Name = "生成时间")] + public string DateTime { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string ProductionLineName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 工位名称 + /// + [ExporterHeader(DisplayName = "工位名称")] + [ImporterHeader(Name = "工位名称")] + public string StationName { get; set; } + /// + /// 工位代码 + /// + [ExporterHeader(DisplayName = "工位代码")] + [ImporterHeader(Name = "工位代码")] + public string StationId { get; set; } + /// + /// 设备名称 + /// + [ExporterHeader(DisplayName = "设备名称")] + [ImporterHeader(Name = "设备名称")] + public string DeviceName { get; set; } + /// + /// 设备编码 + /// + [ExporterHeader(DisplayName = "设备编码")] + [ImporterHeader(Name = "设备编码")] + public string? DeviceId { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 供应商总成SN码 + /// + [ExporterHeader(DisplayName = "供应商总成SN码")] + [ImporterHeader(Name = "供应商总成SN码")] + public string? VendorProductSn { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_ENVIRONMENT_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_ENVIRONMENT_DTO.cs new file mode 100644 index 0000000..ae3ae92 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_ENVIRONMENT_DTO.cs @@ -0,0 +1,115 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 环境业务数据 + /// + public class SUPPLIER_PRO_ENVIRONMENT_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 工厂名称 + /// + [ExporterHeader(DisplayName = "工厂名称")] + [ImporterHeader(Name = "工厂名称")] + public string PlantName { get; set; } + /// + /// 车间代码 + /// + [ExporterHeader(DisplayName = "车间代码")] + [ImporterHeader(Name = "车间代码")] + public string WorkshopId { get; set; } + /// + /// 车间名称 + /// + [ExporterHeader(DisplayName = "车间名称")] + [ImporterHeader(Name = "车间名称")] + public string WorkshopName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string ProductionLineName { get; set; } + /// + /// 环境指标名称,例如:温度、湿度、洁净度等 + /// + [ExporterHeader(DisplayName = "环境指标名称")] + [ImporterHeader(Name = "环境指标名称")] + public string EnvIndicatorName { get; set; } + /// + /// 指标实测值,(最大支持11位整数+5位小数) + /// + [ExporterHeader(DisplayName = "指标实测值")] + [ImporterHeader(Name = "指标实测值")] + public decimal? NumValue { get; set; } + /// + /// 上限值,(最大支持11位整数+5位小数) + /// + [ExporterHeader(DisplayName = "上限值")] + [ImporterHeader(Name = "上限值")] + public decimal UpperLimit { get; set; } + /// + /// 下限值,(最大支持11位整数+5位小数) + /// + [ExporterHeader(DisplayName = "下限值")] + [ImporterHeader(Name = "下限值")] + public decimal LowerLimit { get; set; } + /// + /// 单位,相应的单位名称,如度数 + /// + [ExporterHeader(DisplayName = "单位")] + [ImporterHeader(Name = "单位")] + public string ChineseUnit { get; set; } + /// + /// 采集仪器代码,环境采集的仪器/工具代码 + /// + [ExporterHeader(DisplayName = "采集仪器代码")] + [ImporterHeader(Name = "采集仪器代码")] + public string EquipmentCode { get; set; } + /// + /// 采集仪器名称,环境采集的仪器/工具名称 + /// + [ExporterHeader(DisplayName = "采集仪器名称")] + [ImporterHeader(Name = "采集仪器名称")] + public string EquipmentName { get; set; } + /// + /// 数据采集的点位 + /// + [ExporterHeader(DisplayName = "数据采集的点位")] + [ImporterHeader(Name = "数据采集的点位")] + public string? DataCollectionPoint { get; set; } + /// + /// 数据采集的时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "数据采集的时间")] + [ImporterHeader(Name = "数据采集的时间")] + public string CollectTime { get; set; } + } + + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_FLAW_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_FLAW_DTO.cs new file mode 100644 index 0000000..32085fe --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_FLAW_DTO.cs @@ -0,0 +1,179 @@ +using Magicodes.ExporterAndImporter.Core; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 缺陷业务数据 + /// + public class SUPPLIER_PRO_FLAW_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 工厂名称 + /// + [ExporterHeader(DisplayName = "工厂名称")] + [ImporterHeader(Name = "工厂名称")] + public string PlantName { get; set; } + /// + /// 车间代码 + /// + [ExporterHeader(DisplayName = "车间代码")] + [ImporterHeader(Name = "车间代码")] + public string WorkshopId { get; set; } + /// + /// 车间名称 + /// + [ExporterHeader(DisplayName = "车间名称")] + [ImporterHeader(Name = "车间名称")] + public string WorkshopName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string ProductionLineName { get; set; } + /// + /// 工位代码 + /// + [ExporterHeader(DisplayName = "工位代码")] + [ImporterHeader(Name = "工位代码")] + public string StationId { get; set; } + /// + /// 工位名称 + /// + [ExporterHeader(DisplayName = "工位名称")] + [ImporterHeader(Name = "工位名称")] + public string StationName { get; set; } + /// + /// 缺陷代码 + /// + [ExporterHeader(DisplayName = "缺陷代码")] + [ImporterHeader(Name = "缺陷代码")] + public string DefectsCode { get; set; } + /// + /// 缺陷名称 + /// + [ExporterHeader(DisplayName = "缺陷名称")] + [ImporterHeader(Name = "缺陷名称")] + public string DefectsName { get; set; } + /// + /// 缺陷分类(外观,尺寸,材料,功能,性能,其他) + /// + [ExporterHeader(DisplayName = "缺陷分类")] + [ImporterHeader(Name = "缺陷分类")] + public string ClassOfName { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 供应商总成批次号 + /// + [ExporterHeader(DisplayName = "供应商总成批次号")] + [ImporterHeader(Name = "供应商总成批次号")] + public string VendorProductBatch { get; set; } + /// + /// 供应商总成SN码 + /// + [ExporterHeader(DisplayName = "供应商总成SN码")] + [ImporterHeader(Name = "供应商总成SN码")] + public string VendorProductSn { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 奇瑞SN码 + /// + [ExporterHeader(DisplayName = "奇瑞SN码")] + [ImporterHeader(Name = "奇瑞SN码")] + public string CheryProductSn { get; set; } + /// + /// 生产批次号 + /// + [ExporterHeader(DisplayName = "生产批次号")] + [ImporterHeader(Name = "生产批次号")] + public string ProductBatchNo { get; set; } + /// + /// 生产工单号,或生产批次(工单业务数据) + /// + [ExporterHeader(DisplayName = "生产工单号")] + [ImporterHeader(Name = "生产工单号")] + public string ManufactureNo { get; set; } + /// + /// 班次(白班,晚班,中班) + /// + [ExporterHeader(DisplayName = "班次")] + [ImporterHeader(Name = "班次")] + public string WorkShift { get; set; } + /// + /// 缺陷件数 + /// + [ExporterHeader(DisplayName = "缺陷件数")] + [ImporterHeader(Name = "缺陷件数")] + public decimal Numberofdefect { get; set; } + /// + /// 缺陷描述 + /// + [ExporterHeader(DisplayName = "缺陷描述")] + [ImporterHeader(Name = "缺陷描述")] + public string DefectsDesc { get; set; } + /// + /// 缺陷等级,(1.严重、2.一般、3.轻微) + /// + [ExporterHeader(DisplayName = "缺陷等级")] + [ImporterHeader(Name = "缺陷等级")] + public string DefectsLevel { get; set; } + /// + /// 缺陷录入时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "缺陷录入时间")] + [ImporterHeader(Name = "缺陷录入时间")] + public string StatisticalTime { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_MATERIAL_DATA_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_MATERIAL_DATA_DTO.cs new file mode 100644 index 0000000..0d272eb --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_MATERIAL_DATA_DTO.cs @@ -0,0 +1,132 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 物料主数据 + /// + public class SUPPLIER_PRO_MATERIAL_DATA_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 供应商物料号 + /// + [ExporterHeader(DisplayName = "供应商物料号")] + [ImporterHeader(Name = "供应商物料号")] + public string VendorProductNo { get; set; } + /// + /// 供应商物料名称 + /// + [ExporterHeader(DisplayName = "供应商物料名称")] + [ImporterHeader(Name = "供应商物料名称")] + public string VendorProductName { get; set; } + /// + /// 类型(成品,半成品,原材料) + /// + [ExporterHeader(DisplayName = "类型")] + [ImporterHeader(Name = "类型")] + public decimal Type { get; set; } + /// + /// 供应商零件版本号 + /// + [ExporterHeader(DisplayName = "供应商零件版本号")] + [ImporterHeader(Name = "供应商零件版本号")] + public string? VendorHardwareRevision { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 奇瑞硬件版本号 + /// + [ExporterHeader(DisplayName = "奇瑞硬件版本号")] + [ImporterHeader(Name = "奇瑞硬件版本号")] + public string OemHardwareRevision { get; set; } + /// + /// 奇瑞软件版本号 + /// + [ExporterHeader(DisplayName = "奇瑞软件版本号")] + [ImporterHeader(Name = "奇瑞软件版本号")] + public string? OemSoftwareRevision { get; set; } + /// + /// 车型 + /// + [ExporterHeader(DisplayName = "车型")] + [ImporterHeader(Name = "车型")] + public string? OemModel { get; set; } + /// + /// 项目名称 + /// + [ExporterHeader(DisplayName = "项目名称")] + [ImporterHeader(Name = "项目名称")] + public string? OemProjectName { get; set; } + /// + /// 是否SOP(Y/N) + /// + [ExporterHeader(DisplayName = "是否SOP")] + [ImporterHeader(Name = "是否SOP")] + public string? Launched { get; set; } + /// + /// 数据同步执行时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "数据同步执行时间")] + [ImporterHeader(Name = "数据同步执行时间")] + public string? DateTime { get; set; } + /// + /// 供应商工厂代码 + /// + [ExporterHeader(DisplayName = "供应商工厂代码")] + [ImporterHeader(Name = "供应商工厂代码")] + public string? PlantId { get; set; } + /// + /// 供应商工厂名称 + /// + [ExporterHeader(DisplayName = "供应商工厂名称")] + [ImporterHeader(Name = "供应商工厂名称")] + public string? PlantName { get; set; } + /// + /// 芯片采购类型(AVAP,CS,CMcontro) + /// + [ExporterHeader(DisplayName = "芯片采购类型")] + [ImporterHeader(Name = "芯片采购类型")] + public string? ProcurementType { get; set; } + /// + /// 芯片MPN标识码 + /// + [ExporterHeader(DisplayName = "芯片MPN标识码")] + [ImporterHeader(Name = "芯片MPN标识码")] + public string? MpnCode { get; set; } + /// + /// 芯片MPN标识名称 + /// + [ExporterHeader(DisplayName = "芯片MPN标识名称")] + [ImporterHeader(Name = "芯片MPN标识名称")] + public string? MpnName { get; set; } + /// + /// 物料有效期(天) + /// + [ExporterHeader(DisplayName = "物料有效期")] + [ImporterHeader(Name = "物料有效期")] + public string ValidDays { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE_DTO.cs new file mode 100644 index 0000000..778b0a6 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE_DTO.cs @@ -0,0 +1,150 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 设备OEE达成率 + /// + public class SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 工厂名称 + /// + [ExporterHeader(DisplayName = "工厂名称")] + [ImporterHeader(Name = "工厂名称")] + public string PlantName { get; set; } + /// + /// 车间代码 + /// + [ExporterHeader(DisplayName = "车间代码")] + [ImporterHeader(Name = "车间代码")] + public string WorkshopId { get; set; } + /// + /// 车间名称 + /// + [ExporterHeader(DisplayName = "车间名称")] + [ImporterHeader(Name = "车间名称")] + public string WorkshopName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string ProductionLineName { get; set; } + /// + /// 工位代码 + /// + [ExporterHeader(DisplayName = "工位代码")] + [ImporterHeader(Name = "工位代码")] + public string StationId { get; set; } + /// + /// 工位名称 + /// + [ExporterHeader(DisplayName = "工位名称")] + [ImporterHeader(Name = "工位名称")] + public string StationName { get; set; } + /// + /// 设备代码 + /// + [ExporterHeader(DisplayName = "设备代码")] + [ImporterHeader(Name = "设备代码")] + public string DeviceId { get; set; } + /// + /// 设备名称 + /// + [ExporterHeader(DisplayName = "设备名称")] + [ImporterHeader(Name = "设备名称")] + public string? DeviceName { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 生产批次号 + /// + [ExporterHeader(DisplayName = "生产批次号")] + [ImporterHeader(Name = "生产批次号")] + public string ProductBatchNo { get; set; } + /// + /// 生产工单号 + /// + [ExporterHeader(DisplayName = "生产工单号")] + [ImporterHeader(Name = "生产工单号")] + public string ManufactureNo { get; set; } + /// + /// OEE实际值 + /// + [ExporterHeader(DisplayName = "OEE实际值")] + [ImporterHeader(Name = "OEE实际值")] + public decimal Rate { get; set; } + /// + /// OEE目标值 + /// + [ExporterHeader(DisplayName = "OEE目标值")] + [ImporterHeader(Name = "OEE目标值")] + public decimal RateTagValue { get; set; } + /// + /// 班次(白班,晚班,中班) + /// + [ExporterHeader(DisplayName = "班次")] + [ImporterHeader(Name = "班次")] + public string WorkShift { get; set; } + /// + /// 生产日期,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "生产日期")] + [ImporterHeader(Name = "生产日期")] + public string StatisticalTime { get; set; } + /// + /// 值统计时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "值统计时间")] + [ImporterHeader(Name = "值统计时间")] + public string DateTime { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_OEE_TIME_DETAILS_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_OEE_TIME_DETAILS_DTO.cs new file mode 100644 index 0000000..79bc4b2 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_OEE_TIME_DETAILS_DTO.cs @@ -0,0 +1,120 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// OEE时间明细 + /// + public class SUPPLIER_PRO_OEE_TIME_DETAILS_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工厂代码 + /// + [ExporterHeader(DisplayName = "工厂代码")] + [ImporterHeader(Name = "工厂代码")] + public string PlantId { get; set; } + /// + /// 工厂名称 + /// + [ExporterHeader(DisplayName = "工厂名称")] + [ImporterHeader(Name = "工厂名称")] + public string PlantName { get; set; } + /// + /// 车间代码 + /// + [ExporterHeader(DisplayName = "车间代码")] + [ImporterHeader(Name = "车间代码")] + public string WorkshopId { get; set; } + /// + /// 车间名称 + /// + [ExporterHeader(DisplayName = "")] + [ImporterHeader(Name = "")] + public string? WorkshopName { get; set; } + /// + /// 产线代码 + /// + [ExporterHeader(DisplayName = "产线代码")] + [ImporterHeader(Name = "产线代码")] + public string ProductionLineId { get; set; } + /// + /// 产线名称 + /// + [ExporterHeader(DisplayName = "产线名称")] + [ImporterHeader(Name = "产线名称")] + public string? ProductionLineName { get; set; } + /// + /// 工位代码 + /// + [ExporterHeader(DisplayName = "工位代码")] + [ImporterHeader(Name = "工位代码")] + public string StationId { get; set; } + /// + /// 工位名称 + /// + [ExporterHeader(DisplayName = "工位名称")] + [ImporterHeader(Name = "工位名称")] + public string StationName { get; set; } + /// + /// 设备代码 + /// + [ExporterHeader(DisplayName = "设备代码")] + [ImporterHeader(Name = "设备代码")] + public string DeviceId { get; set; } + /// + /// 设备名称 + /// + [ExporterHeader(DisplayName = "设备名称")] + [ImporterHeader(Name = "设备名称")] + public string DeviceName { get; set; } + /// + /// 记录ID + /// + [ExporterHeader(DisplayName = "记录ID")] + [ImporterHeader(Name = "记录ID")] + public string RecId { get; set; } + /// + /// 大类(1计划工作,2计划停机,3非计划停机) + /// + [ExporterHeader(DisplayName = "大类")] + [ImporterHeader(Name = "大类")] + public string Type { get; set; } + /// + /// 小类编码 + /// + [ExporterHeader(DisplayName = "小类编码")] + [ImporterHeader(Name = "小类编码")] + public string SubType { get; set; } + /// + /// 小类描述 + /// + [ExporterHeader(DisplayName = "小类描述")] + [ImporterHeader(Name = "小类描述")] + public string SubTypeName { get; set; } + /// + /// 开始时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "开始时间")] + [ImporterHeader(Name = "开始时间")] + public string StartTime { get; set; } + /// + /// 结束时间,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "结束时间")] + [ImporterHeader(Name = "结束时间")] + public string EndTime { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_DTO.cs new file mode 100644 index 0000000..e8168e0 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_DTO.cs @@ -0,0 +1,126 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 工艺 + /// + public class SUPPLIER_PRO_PROCESS_DTO + { + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 工艺编码 + /// + [ExporterHeader(DisplayName = "工艺编码")] + [ImporterHeader(Name = "工艺编码")] + public string TechCode { get; set; } + /// + /// 工艺名称 + /// + [ExporterHeader(DisplayName = "工艺名称")] + [ImporterHeader(Name = "工艺名称")] + public string TechName { get; set; } + /// + /// 有效期,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "有效期")] + [ImporterHeader(Name = "有效期")] + public string ValidPeriod { get; set; } + /// + /// 工艺版本 + /// + [ExporterHeader(DisplayName = "工艺版本")] + [ImporterHeader(Name = "工艺版本")] + public string TechVersion { get; set; } + /// + /// 模具编码 + /// + [ExporterHeader(DisplayName = "模具编码")] + [ImporterHeader(Name = "模具编码")] + public string MoldCode { get; set; } + /// + /// 模具名称 + /// + [ExporterHeader(DisplayName = "模具名称")] + [ImporterHeader(Name = "模具名称")] + public string MoldName { get; set; } + /// + /// 最大加工能力 + /// + [ExporterHeader(DisplayName = "最大加工能力")] + [ImporterHeader(Name = "最大加工能力")] + public string MaxProcessingCapacity { get; set; } + /// + /// 工序编码 + /// + [ExporterHeader(DisplayName = "工序编码")] + [ImporterHeader(Name = "工序编码")] + public string ProcessCode { get; set; } + /// + /// 工序名称 + /// + [ExporterHeader(DisplayName = "工序名称")] + [ImporterHeader(Name = "工序名称")] + public string ProcessName { get; set; } + /// + /// 工序顺序号 + /// + [ExporterHeader(DisplayName = "工序顺序号")] + [ImporterHeader(Name = "工序顺序号")] + public decimal ProcessOrder { get; set; } + /// + /// 设备编码 + /// + [ExporterHeader(DisplayName = "设备编码")] + [ImporterHeader(Name = "设备编码")] + public string DeviceCode { get; set; } + /// + /// 工序节拍 + /// + [ExporterHeader(DisplayName = "工序节拍")] + [ImporterHeader(Name = "工序节拍")] + public decimal Rhythm { get; set; } + /// + /// 节拍单位 + /// + [ExporterHeader(DisplayName = "节拍单位")] + [ImporterHeader(Name = "节拍单位")] + public string RhythmUnit { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_EQUIPMENT_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_EQUIPMENT_DTO.cs new file mode 100644 index 0000000..0cb3a83 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_EQUIPMENT_DTO.cs @@ -0,0 +1,192 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 工艺装备 + /// + public class SUPPLIER_PRO_PROCESS_EQUIPMENT_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 工艺装备类型分类(1模具;2检具;3夹具) + /// + [ExporterHeader(DisplayName = "工艺装备类型分类")] + [ImporterHeader(Name = "工艺装备类型分类")] + public decimal DeviceType { get; set; } + /// + /// 工艺装备编码 + /// + [ExporterHeader(DisplayName = "工艺装备编码")] + [ImporterHeader(Name = "工艺装备编码")] + public string DeviceCode { get; set; } + /// + /// 工艺装备名称 + /// + [ExporterHeader(DisplayName = "工艺装备名称")] + [ImporterHeader(Name = "工艺装备名称")] + public string DeviceName { get; set; } + /// + /// 生产厂家 + /// + [ExporterHeader(DisplayName = "生产厂家")] + [ImporterHeader(Name = "生产厂家")] + public string Manufacturer { get; set; } + /// + /// 工艺装备型号 + /// + [ExporterHeader(DisplayName = "工艺装备型号")] + [ImporterHeader(Name = "工艺装备型号")] + public string ModelNumber { get; set; } + /// + /// 工艺装备序列号 + /// + [ExporterHeader(DisplayName = "工艺装备序列号")] + [ImporterHeader(Name = "工艺装备序列号")] + public string SerialNumber { get; set; } + /// + /// 工艺装备制造日期,格式(yyyy-MM-dd) + /// + [ExporterHeader(DisplayName = "工艺装备制造日期")] + [ImporterHeader(Name = "工艺装备制造日期")] + public string ProductionDate { get; set; } + /// + /// 主要材质 + /// + [ExporterHeader(DisplayName = "主要材质")] + [ImporterHeader(Name = "主要材质")] + public string Material { get; set; } + /// + /// 当前存放地点 + /// + [ExporterHeader(DisplayName = "当前存放地点")] + [ImporterHeader(Name = "当前存放地点")] + public string CurrentLocation { get; set; } + /// + /// 工艺装备状态 + /// + [ExporterHeader(DisplayName = "工艺装备状态")] + [ImporterHeader(Name = "工艺装备状态")] + public string DeviceStatus { get; set; } + /// + /// 穴腔数量 + /// + [ExporterHeader(DisplayName = "穴腔数量")] + [ImporterHeader(Name = "穴腔数量")] + public decimal CavityCount { get; set; } + /// + /// 模具尺寸规格 + /// + [ExporterHeader(DisplayName = "模具尺寸规格")] + [ImporterHeader(Name = "模具尺寸规格")] + public string MoldSize { get; set; } + /// + /// 设计寿命单位 + /// + [ExporterHeader(DisplayName = "设计寿命单位")] + [ImporterHeader(Name = "设计寿命单位")] + public string DesignLifeUnits { get; set; } + /// + /// 设计寿命 + /// + [ExporterHeader(DisplayName = "设计寿命")] + [ImporterHeader(Name = "设计寿命")] + public string DesignLifeValue { get; set; } + /// + /// 当前剩余寿命, + /// + [ExporterHeader(DisplayName = "当前剩余寿命")] + [ImporterHeader(Name = "当前剩余寿命")] + public string CurrentUsageCount { get; set; } + /// + /// 模具大修次数 + /// + [ExporterHeader(DisplayName = "模具大修次数")] + [ImporterHeader(Name = "模具大修次数")] + public decimal OverhaulCount { get; set; } + /// + /// 图纸编号描述 + /// + [ExporterHeader(DisplayName = "图纸编号描述")] + [ImporterHeader(Name = "图纸编号描述")] + public string CoolingChannelLayout { get; set; } + /// + /// 检测精度 + /// + [ExporterHeader(DisplayName = "检测精度")] + [ImporterHeader(Name = "检测精度")] + public string DetectionAccuracy { get; set; } + /// + /// 最近校准日期,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "最近校准日期")] + [ImporterHeader(Name = "最近校准日期")] + public string CalibrationDate { get; set; } + /// + /// 校准到期天数 + /// + [ExporterHeader(DisplayName = "校准到期天数")] + [ImporterHeader(Name = "校准到期天数")] + public string CalibrationDueDays { get; set; } + /// + /// 允许误差范围 + /// + [ExporterHeader(DisplayName = "允许误差范围")] + [ImporterHeader(Name = "允许误差范围")] + public string ToleranceRange { get; set; } + /// + /// 磨损阈值 + /// + [ExporterHeader(DisplayName = "磨损阈值")] + [ImporterHeader(Name = "磨损阈值")] + public string WearThreshold { get; set; } + /// + /// 检测范围 + /// + [ExporterHeader(DisplayName = "检测范围")] + [ImporterHeader(Name = "检测范围")] + public string DetectionRange { get; set; } + /// + /// 检测单位 + /// + [ExporterHeader(DisplayName = "检测单位")] + [ImporterHeader(Name = "检测单位")] + public string UnitType { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_EQUIPMENT_DT_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_EQUIPMENT_DT_DTO.cs new file mode 100644 index 0000000..0a63fd4 --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_PRO_PROCESS_EQUIPMENT_DT_DTO.cs @@ -0,0 +1,192 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity.Entitys +{ + /// + /// 工艺装备 + /// + public class SUPPLIER_PRO_PROCESS_EQUIPMENT_DT_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 奇瑞零件号 + /// + [ExporterHeader(DisplayName = "奇瑞零件号")] + [ImporterHeader(Name = "奇瑞零件号")] + public string CheryProductNo { get; set; } + /// + /// 奇瑞零件名称 + /// + [ExporterHeader(DisplayName = "奇瑞零件名称")] + [ImporterHeader(Name = "奇瑞零件名称")] + public string CheryProductName { get; set; } + /// + /// 供应商总成零件号 + /// + [ExporterHeader(DisplayName = "供应商总成零件号")] + [ImporterHeader(Name = "供应商总成零件号")] + public string VendorProductNo { get; set; } + /// + /// 供应商总成零件名称 + /// + [ExporterHeader(DisplayName = "供应商总成零件名称")] + [ImporterHeader(Name = "供应商总成零件名称")] + public string VendorProductName { get; set; } + /// + /// 工艺装备类型分类(1模具;2检具;3夹具) + /// + [ExporterHeader(DisplayName = "工艺装备类型分类")] + [ImporterHeader(Name = "工艺装备类型分类")] + public decimal DeviceType { get; set; } + /// + /// 工艺装备编码 + /// + [ExporterHeader(DisplayName = "工艺装备编码")] + [ImporterHeader(Name = "工艺装备编码")] + public string DeviceCode { get; set; } + /// + /// 工艺装备名称 + /// + [ExporterHeader(DisplayName = "工艺装备名称")] + [ImporterHeader(Name = "工艺装备名称")] + public string DeviceName { get; set; } + /// + /// 生产厂家 + /// + [ExporterHeader(DisplayName = "生产厂家")] + [ImporterHeader(Name = "生产厂家")] + public string Manufacturer { get; set; } + /// + /// 工艺装备型号 + /// + [ExporterHeader(DisplayName = "工艺装备型号")] + [ImporterHeader(Name = "工艺装备型号")] + public string ModelNumber { get; set; } + /// + /// 工艺装备序列号 + /// + [ExporterHeader(DisplayName = "工艺装备序列号")] + [ImporterHeader(Name = "工艺装备序列号")] + public string SerialNumber { get; set; } + /// + /// 工艺装备制造日期,格式(yyyy-MM-dd) + /// + [ExporterHeader(DisplayName = "工艺装备制造日期")] + [ImporterHeader(Name = "工艺装备制造日期")] + public string ProductionDate { get; set; } + /// + /// 主要材质 + /// + [ExporterHeader(DisplayName = "主要材质")] + [ImporterHeader(Name = "主要材质")] + public string Material { get; set; } + /// + /// 当前存放地点 + /// + [ExporterHeader(DisplayName = "当前存放地点")] + [ImporterHeader(Name = "当前存放地点")] + public string CurrentLocation { get; set; } + /// + /// 工艺装备状态 + /// + [ExporterHeader(DisplayName = "工艺装备状态")] + [ImporterHeader(Name = "工艺装备状态")] + public string DeviceStatus { get; set; } + /// + /// 穴腔数量 + /// + [ExporterHeader(DisplayName = "穴腔数量")] + [ImporterHeader(Name = "穴腔数量")] + public decimal CavityCount { get; set; } + /// + /// 模具尺寸规格 + /// + [ExporterHeader(DisplayName = "模具尺寸规格")] + [ImporterHeader(Name = "模具尺寸规格")] + public string MoldSize { get; set; } + /// + /// 设计寿命单位 + /// + [ExporterHeader(DisplayName = "设计寿命单位")] + [ImporterHeader(Name = "设计寿命单位")] + public string DesignLifeUnits { get; set; } + /// + /// 设计寿命 + /// + [ExporterHeader(DisplayName = "设计寿命")] + [ImporterHeader(Name = "设计寿命")] + public string DesignLifeValue { get; set; } + /// + /// 当前剩余寿命, + /// + [ExporterHeader(DisplayName = "当前剩余寿命")] + [ImporterHeader(Name = "当前剩余寿命")] + public string CurrentUsageCount { get; set; } + /// + /// 模具大修次数 + /// + [ExporterHeader(DisplayName = "模具大修次数")] + [ImporterHeader(Name = "模具大修次数")] + public decimal OverhaulCount { get; set; } + /// + /// 图纸编号描述 + /// + [ExporterHeader(DisplayName = "图纸编号描述")] + [ImporterHeader(Name = "图纸编号描述")] + public string CoolingChannelLayout { get; set; } + /// + /// 检测精度 + /// + [ExporterHeader(DisplayName = "检测精度")] + [ImporterHeader(Name = "检测精度")] + public string DetectionAccuracy { get; set; } + /// + /// 最近校准日期,格式(yyyy-MM-ddHH:mm:ss) + /// + [ExporterHeader(DisplayName = "最近校准日期")] + [ImporterHeader(Name = "最近校准日期")] + public string CalibrationDate { get; set; } + /// + /// 校准到期天数 + /// + [ExporterHeader(DisplayName = "校准到期天数")] + [ImporterHeader(Name = "校准到期天数")] + public string CalibrationDueDays { get; set; } + /// + /// 允许误差范围 + /// + [ExporterHeader(DisplayName = "允许误差范围")] + [ImporterHeader(Name = "允许误差范围")] + public string ToleranceRange { get; set; } + /// + /// 磨损阈值 + /// + [ExporterHeader(DisplayName = "磨损阈值")] + [ImporterHeader(Name = "磨损阈值")] + public string WearThreshold { get; set; } + /// + /// 检测范围 + /// + [ExporterHeader(DisplayName = "检测范围")] + [ImporterHeader(Name = "检测范围")] + public string DetectionRange { get; set; } + /// + /// 检测单位 + /// + [ExporterHeader(DisplayName = "检测单位")] + [ImporterHeader(Name = "检测单位")] + public string UnitType { get; set; } + } + +} diff --git a/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_SINV_DATA_DTO.cs b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_SINV_DATA_DTO.cs new file mode 100644 index 0000000..5d9649f --- /dev/null +++ b/API/TaskManager.Contracts/Dtos/10_17/SUPPLIER_SINV_DATA_DTO.cs @@ -0,0 +1,90 @@ +using Magicodes.ExporterAndImporter.Core; + +namespace TaskManager.Entity +{ + /// + /// 供应商共享库存 + /// + public class SUPPLIER_SINV_DATA_DTO + { + /// + /// 供应商代码 + /// + [ExporterHeader(DisplayName = "供应商代码")] + [ImporterHeader(Name = "供应商代码")] + public string SupplierCode { get; set; } + /// + /// 供应商名称 + /// + [ExporterHeader(DisplayName = "供应商名称")] + [ImporterHeader(Name = "供应商名称")] + public string SupplierName { get; set; } + /// + /// 零件号 + /// + [ExporterHeader(DisplayName = "零件号")] + [ImporterHeader(Name = "零件号")] + public string MaterialCode { get; set; } + /// + /// 零件名称 + /// + [ExporterHeader(DisplayName = "零件名称")] + [ImporterHeader(Name = "零件名称")] + public string MaterialDescription { get; set; } + /// + /// 物料类型(成品,半成品,原材料) + /// + [ExporterHeader(DisplayName = "物料类型")] + [ImporterHeader(Name = "物料类型")] + public string MaterialType { get; set; } + /// + /// 当前库存数量 + /// + [ExporterHeader(DisplayName = "当前库存数量")] + [ImporterHeader(Name = "当前库存数量")] + public decimal QuantityCurrent { get; set; } + /// + /// 原材料在途数量 + /// + [ExporterHeader(DisplayName = "原材料在途数量")] + [ImporterHeader(Name = "原材料在途数量")] + public decimal QuantityPlan { get; set; } + /// + /// 库存状态(生产件,呆滞件,备件,KD件) + /// + [ExporterHeader(DisplayName = "库存状态")] + [ImporterHeader(Name = "库存状态")] + public string InventoryStatus { get; set; } + /// + /// 安全库存 + /// + [ExporterHeader(DisplayName = "安全库存")] + [ImporterHeader(Name = "安全库存")] + public decimal SafetyStock { get; set; } + /// + /// 生产/采购周期:成品即半成品为生产周期(天),原材料为采购周期(天) + /// + [ExporterHeader(DisplayName = "生产/采购周期")] + [ImporterHeader(Name = "生产/采购周期")] + public string ProductionCycle { get; set; } + /// + /// 库存更新时间-格式:yyyy-MM-ddHH:mm:ss + /// + [ExporterHeader(DisplayName = "库存更新时间")] + [ImporterHeader(Name = "库存更新时间")] + public string DataUpdateTime { get; set; } + /// + /// 批次 + /// + [ExporterHeader(DisplayName = "批次")] + [ImporterHeader(Name = "批次")] + public string? SupplierBatch { get; set; } + /// + /// 有效期截止日期 非必填 + /// + [ExporterHeader(DisplayName = "有效期截止日期")] + [ImporterHeader(Name = "有效期截止日期")] + public string? SupplieryxqDate { get; set; } + } + +} diff --git a/API/TaskManager.Entity/11-18/SUPPLIER_CON_MMRP.cs b/API/TaskManager.Entity/11-18/SUPPLIER_CON_MMRP.cs index ebea2f2..4b1d1ba 100644 --- a/API/TaskManager.Entity/11-18/SUPPLIER_CON_MMRP.cs +++ b/API/TaskManager.Entity/11-18/SUPPLIER_CON_MMRP.cs @@ -5,7 +5,7 @@ namespace TaskManager.Entity.Entitys /// /// M+6月物料需求计划风险确认 /// - public class SUPPLIER_CON_MMRP : BaseEntity + public class SUPPLIER_CON_MMRP : BaseEntity { /// /// 供应商代码 diff --git a/API/TaskManager.Entity/Entity.cs b/API/TaskManager.Entity/Entity.cs index 6a644a0..6fc2b37 100644 --- a/API/TaskManager.Entity/Entity.cs +++ b/API/TaskManager.Entity/Entity.cs @@ -197,22 +197,10 @@ namespace TaskManager.Entity } - public class BaseEntity_NoTask + public class BaseEntity_NoTask: BaseEntity { - [Key] - [DatabaseGenerated(DatabaseGeneratedOption.Identity)] - [ExporterHeader(IsIgnore = true)] - public long UId { get; set; } - /// - /// 写状态 - /// - public bool WriteState { get; set; } - [ExporterHeader(IsIgnore = true)] - public bool ReadState { get; set; } - [ExporterHeader(IsIgnore = true)] - public DateTime CreationTime { get; set; } - [ExporterHeader(IsIgnore = true)] - public string? Remark { get; set; } + [NotMapped] + private new Guid TaskId { get; set; } } @@ -252,7 +240,7 @@ namespace TaskManager.Entity /// 数据总量(任务处理的数据条目数) /// public int DataCount { get; set; } - [ExporterHeader(DisplayName = "发布客户")] + [ExporterHeader(DisplayName = "客户名")] /// /// 发布给那个客户 /// @@ -476,7 +464,7 @@ namespace TaskManager.Entity /// [JsonPropertyName("version")] [ExporterHeader(DisplayName = "版本号")] - public int Version { get; set; } = 1; + public int Version { get; set; } =0; [JsonProperty("omterior")] [ExporterHeader(DisplayName = "内外饰")] // 推测拼写错误并自定义显示名 @@ -549,84 +537,84 @@ namespace TaskManager.Entity /// [JsonPropertyName("quantityDemand1")] [ExporterHeader(DisplayName = "需求数量1")] - public decimal QuantityDemand1 { get; set; } = 1; + public decimal QuantityDemand1 { get; set; } = 0; /// /// 需求数量2 /// [JsonPropertyName("quantityDemand2")] [ExporterHeader(DisplayName = "需求数量2")] - public decimal QuantityDemand2 { get; set; } = 1; + public decimal QuantityDemand2 { get; set; } = 0; /// /// 需求数量3 /// [JsonPropertyName("quantityDemand3")] [ExporterHeader(DisplayName = "需求数量3")] - public decimal QuantityDemand3 { get; set; } = 1; + public decimal QuantityDemand3 { get; set; } = 0; /// /// 需求数量4 /// [JsonPropertyName("quantityDemand4")] [ExporterHeader(DisplayName = "需求数量4")] - public decimal QuantityDemand4 { get; set; } = 1; + public decimal QuantityDemand4 { get; set; } = 0; /// /// 需求数量5 /// [JsonPropertyName("quantityDemand5")] [ExporterHeader(DisplayName = "需求数量5")] - public decimal QuantityDemand5 { get; set; } = 1; + public decimal QuantityDemand5 { get; set; } = 0; /// /// 需求数量6 /// [JsonPropertyName("quantityDemand6")] [ExporterHeader(DisplayName = "需求数量6")] - public decimal QuantityDemand6 { get; set; } = 1; + public decimal QuantityDemand6 { get; set; } = 0; /// /// 需求数量7 /// [JsonPropertyName("quantityDemand7")] [ExporterHeader(DisplayName = "需求数量7")] - public decimal QuantityDemand7 { get; set; } = 1; + public decimal QuantityDemand7 { get; set; } = 0; /// /// 需求数量8 /// [JsonPropertyName("quantityDemand8")] [ExporterHeader(DisplayName = "需求数量8")] - public decimal QuantityDemand8 { get; set; } = 1; + public decimal QuantityDemand8 { get; set; } = 0; /// /// 需求数量9 /// [JsonPropertyName("quantityDemand9")] [ExporterHeader(DisplayName = "需求数量9")] - public decimal QuantityDemand9 { get; set; } = 1; + public decimal QuantityDemand9 { get; set; } =0; /// /// 需求数量10 /// [JsonPropertyName("quantityDemand10")] [ExporterHeader(DisplayName = "需求数量10")] - public decimal QuantityDemand10 { get; set; } = 1; + public decimal QuantityDemand10 { get; set; } =0; /// /// 需求数量11 /// [JsonPropertyName("quantityDemand11")] [ExporterHeader(DisplayName = "需求数量11")] - public decimal QuantityDemand11 { get; set; } = 1; + public decimal QuantityDemand11 { get; set; } =0; /// /// 需求数量12 /// [JsonPropertyName("quantityDemand12")] [ExporterHeader(DisplayName = "需求数量12")] - public int QuantityDemand12 { get; set; } = 1; + public int QuantityDemand12 { get; set; } =0; /// /// 当文件夹数据发生变更时(更新需求=1/否则=0) @@ -742,13 +730,13 @@ namespace TaskManager.Entity /// 需求起始日期的需求数量 /// [ExporterHeader(DisplayName = "第1天需求数量")] - public int QuantityDemand1 { get; set; } = 1; + public int QuantityDemand1 { get; set; } =0; /// /// 起始日期+1天的需求数量 /// [ExporterHeader(DisplayName = "第2天需求数量")] - public int QuantityDemand2 { get; set; } = 1; + public int QuantityDemand2 { get; set; } =0; /// /// 起始日期+2天的需求数量(以此类推) @@ -876,13 +864,13 @@ namespace TaskManager.Entity /// 删除标识(0=未删除,1=已删除) /// [ExporterHeader(DisplayName = "删除标识")] - public int IsDelete { get; set; } = 1; // 默认已删除(根据原始数据默认值) + public int IsDelete { get; set; } =0; // 默认已删除(根据原始数据默认值) /// /// 数据版本号(乐观锁控制) /// [ExporterHeader(DisplayName = "数据版本号")] - public int Version { get; set; } = 1; + public int Version { get; set; } =0; @@ -1145,7 +1133,7 @@ namespace TaskManager.Entity /// 到货数量 /// [ExporterHeader(DisplayName = "到货数量")] - public int QuantityDelivery { get; set; } = 1; + public int QuantityDelivery { get; set; } =0; /// /// 备注:含批次号信息 @@ -1334,13 +1322,13 @@ namespace TaskManager.Entity /// 是否删除(0:否,1是) /// [ExporterHeader(DisplayName = "删除标记")] - public int IsDelete { get; set; } = 1; + public int IsDelete { get; set; } =0; /// /// 版本号 /// [ExporterHeader(DisplayName = "版本号")] - public int Version { get; set; } = 1; + public int Version { get; set; } =0; @@ -1445,13 +1433,13 @@ namespace TaskManager.Entity /// 是否删除(0:否,1是) /// [ExporterHeader(DisplayName = "删除标记")] - public int IsDelete { get; set; } = 1; + public int IsDelete { get; set; } =0; /// /// 版本号 /// [ExporterHeader(DisplayName = "版本号")] - public int Version { get; set; } = 1; + public int Version { get; set; } =0; @@ -1661,7 +1649,7 @@ namespace TaskManager.Entity /// 数量 /// [ExporterHeader(DisplayName = "数量")] - public int QuantityDelivery { get; set; } = 1; + public int QuantityDelivery { get; set; } =0; /// /// 创建时间 @@ -2093,7 +2081,7 @@ namespace TaskManager.Entity /// 在途数量 /// [ExporterHeader(DisplayName = "在途数量")] - public decimal? QuantityInTransit { get; set; } = 1; + public decimal? QuantityInTransit { get; set; } =0; /// /// 按时到货比(百分比,如:95表示95%) diff --git a/API/TaskManager.EntityFramework/JobDbContext.cs b/API/TaskManager.EntityFramework/JobDbContext.cs index aab1a05..fbf4c87 100644 --- a/API/TaskManager.EntityFramework/JobDbContext.cs +++ b/API/TaskManager.EntityFramework/JobDbContext.cs @@ -1570,7 +1570,7 @@ namespace TaskManager.EntityFramework b.Property(e => e.ReadState).HasDefaultValue(false); b.Property(e => e.WriteState).HasDefaultValue(false); b.HasKey(e => e.UId); - + b.Ignore(e => e.TaskId); }); //人员资质信息 @@ -1620,7 +1620,7 @@ namespace TaskManager.EntityFramework b.Property(e => e.ReadState).HasDefaultValue(false); b.Property(e => e.WriteState).HasDefaultValue(false); b.HasKey(e => e.UId); - + b.Ignore(e => e.TaskId); }); //附件类数据 @@ -1666,7 +1666,7 @@ namespace TaskManager.EntityFramework b.Property(e => e.ReadState).HasDefaultValue(false); b.Property(e => e.WriteState).HasDefaultValue(false); b.HasKey(e => e.UId); - + b.Ignore(e => e.TaskId); }); //工艺装备 @@ -1738,7 +1738,7 @@ namespace TaskManager.EntityFramework b.Property(e => e.ReadState).HasDefaultValue(false); b.Property(e => e.WriteState).HasDefaultValue(false); b.HasKey(e => e.UId); - + b.Ignore(e => e.TaskId); }); #endregion diff --git a/API/TaskManager.EntityFramework/Migrations/20250604031956_2025060402.Designer.cs b/API/TaskManager.EntityFramework/Migrations/20250604031956_2025060402.Designer.cs new file mode 100644 index 0000000..17845b3 --- /dev/null +++ b/API/TaskManager.EntityFramework/Migrations/20250604031956_2025060402.Designer.cs @@ -0,0 +1,5223 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using TaskManager.EntityFramework; + +#nullable disable + +namespace TaskManager.EntityFramework.Migrations +{ + [DbContext(typeof(JobDbContext))] + [Migration("20250604031956_2025060402")] + partial class _2025060402 + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "8.0.0") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_CON_DATE", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("FeedbackResults") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("MaterialCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("Measures") + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("QuantityMeet1") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet10") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet11") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet12") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet13") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet14") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet15") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet16") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet17") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet18") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet19") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet2") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet20") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet21") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet22") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet23") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet24") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet25") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet26") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet27") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet28") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet29") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet3") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet30") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet31") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet4") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet5") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet6") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet7") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet8") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet9") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("ReleaseEdition") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StartDate") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("CHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VentureSpecific") + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("VentureType") + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_CON_DATE", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_CON_MMRP", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("FeedbackResults") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("MaterialCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("Measures") + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("QuantityMeet1") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet10") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet11") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet12") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet2") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet3") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet4") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet5") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet6") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet7") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet8") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityMeet9") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("ReleaseEdition") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StartMonth") + .IsRequired() + .HasMaxLength(7) + .HasColumnType("CHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VentureSpecific") + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("VentureType") + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_CON_MMRP", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_CON_PO", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("FeedbackResults") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("Measures") + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("PurchaseOrder") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("QuantityMeet") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SerialNumber") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VentureSpecific") + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("VentureType") + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_CON_PO", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_ATTACHMENT_DATA", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("DeviceId") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("FileName") + .IsRequired() + .HasMaxLength(300) + .HasColumnType("VARCHAR"); + + b.Property("FileUrl") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("Type") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductSn") + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_ATTACHMENT_DATA", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_ATTACHMENT_DATA_DT", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("DeviceId") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("FileName") + .IsRequired() + .HasMaxLength(300) + .HasColumnType("VARCHAR"); + + b.Property("FileUrl") + .IsRequired() + .HasMaxLength(1000) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("Type") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductSn") + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_ATTACHMENT_DATA_DT", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_ENVIRONMENT", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("ChineseUnit") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CollectTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataCollectionPoint") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("EnvIndicatorName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("EquipmentCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("EquipmentName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("LowerLimit") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("NumValue") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpperLimit") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_ENVIRONMENT", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_FLAW", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ClassOfName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DefectsCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DefectsDesc") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("VARCHAR"); + + b.Property("DefectsLevel") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("DefectsName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("Numberofdefect") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StatisticalTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductBatch") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WorkShift") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_FLAW", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_MATERIAL_DATA", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("Launched") + .HasMaxLength(6) + .HasColumnType("VARCHAR"); + + b.Property("MpnCode") + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("MpnName") + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("OemHardwareRevision") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("OemModel") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("OemProjectName") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("OemSoftwareRevision") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProcurementType") + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("Type") + .HasPrecision(1) + .HasColumnType("DECIMAL"); + + b.Property("ValidDays") + .IsRequired() + .HasMaxLength(12) + .HasColumnType("CHAR"); + + b.Property("VendorHardwareRevision") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_MATERIAL_DATA", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("DeviceId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceName") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("Rate") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("RateTagValue") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StatisticalTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkShift") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_OEE_TIME_DETAILS", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DeviceId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(33) + .HasColumnType("VARCHAR"); + + b.Property("EndTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("RecId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StartTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubType") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubTypeName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("Type") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_OEE_TIME_DETAILS", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_PROCESS", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DeviceCode") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("MaxProcessingCapacity") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("MoldCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("MoldName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProcessCode") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProcessName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProcessOrder") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("Rhythm") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("RhythmUnit") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("TechCode") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TechName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TechVersion") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("ValidPeriod") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_PROCESS", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_PROCESS_EQUIPMENT", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CalibrationDate") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CalibrationDueDays") + .IsRequired() + .HasMaxLength(12) + .HasColumnType("CHAR"); + + b.Property("CavityCount") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CoolingChannelLayout") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("CurrentLocation") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CurrentUsageCount") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DesignLifeUnits") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DesignLifeValue") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DetectionAccuracy") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("DetectionRange") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("DeviceStatus") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DeviceType") + .HasPrecision(1) + .HasColumnType("DECIMAL"); + + b.Property("Manufacturer") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("Material") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ModelNumber") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("MoldSize") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("OverhaulCount") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("ProductionDate") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("CHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SerialNumber") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("ToleranceRange") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("UnitType") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WearThreshold") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_PROCESS_EQUIPMENT", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.Entitys.SUPPLIER_PRO_PROCESS_EQUIPMENT_DT", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CalibrationDate") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CalibrationDueDays") + .IsRequired() + .HasMaxLength(12) + .HasColumnType("CHAR"); + + b.Property("CavityCount") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CoolingChannelLayout") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("CurrentLocation") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CurrentUsageCount") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DesignLifeUnits") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DesignLifeValue") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DetectionAccuracy") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("DetectionRange") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("DeviceStatus") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("DeviceType") + .HasPrecision(1) + .HasColumnType("DECIMAL"); + + b.Property("Manufacturer") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("Material") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ModelNumber") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("MoldSize") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("OverhaulCount") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("ProductionDate") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("CHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SerialNumber") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ToleranceRange") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("UnitType") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WearThreshold") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_PROCESS_EQUIPMENT_DT", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_BOM", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("BomCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("BomName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("BomVersion") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("MaterialUnit") + .HasMaxLength(8) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SubMaterialCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubMaterialName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("SubMaterialQuota") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("SubMaterialType") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("SubMaterialUnit") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductType") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_BOM", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_DEL_STATE", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataCreateTime") + .HasColumnType("datetime2"); + + b.Property("DeliveryNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityDelivery") + .HasColumnType("int"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("ReceivingCrossings") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("RoadReceiveTime") + .HasColumnType("datetime2"); + + b.Property("RoadShippedTime") + .HasColumnType("datetime2"); + + b.Property("SerialNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("SerialSrate") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("SupplierReceiveTime") + .HasColumnType("datetime2"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_DEL_STATE"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_EMPLOYEE", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheckInTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CheckOutTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("HaveQuantity") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("OperatorId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("OperatorName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PositionId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PositionName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("QualificationLevel") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_EMPLOYEE", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_EMPLOYEE_DT", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheckInTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CheckOutTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("HaveQuantity") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("OperatorId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("OperatorName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PositionId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PositionName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("QualificationLevel") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_EMPLOYEE_DT", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_INFO", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("KeyStation") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineOrder") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StationOrder") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_INFO", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_INFO_DT", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("KeyStation") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineOrder") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StationOrder") + .HasPrecision(16) + .HasColumnType("DECIMAL"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_INFO_DT", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_INV_DATA", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityCurrent") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("StockState") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_INV_DATA"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_MRP_DATE", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("IsUpdate") + .HasColumnType("nvarchar(max)"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityDemand1") + .HasColumnType("int"); + + b.Property("QuantityDemand10") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand11") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand12") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand13") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand14") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand15") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand16") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand17") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand18") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand19") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand2") + .HasColumnType("int"); + + b.Property("QuantityDemand20") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand21") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand22") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand23") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand24") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand25") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand26") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand27") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand28") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand29") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand3") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand30") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand31") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand4") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand5") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand6") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand7") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand8") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand9") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("ReleaseEdition") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("StartDate") + .HasColumnType("datetime2"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_MRP_DATE"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_MRP_MONTH", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "createByUser"); + + b.Property("CreateTime") + .HasColumnType("datetime2") + .HasAnnotation("Relational:JsonPropertyName", "createTime"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int") + .HasAnnotation("Relational:JsonPropertyName", "isDelete"); + + b.Property("IsUpdate") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "isUpdate"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "materialCode"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "materialDescription"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "plantId"); + + b.Property("PlantName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "plantName"); + + b.Property("QuantityDemand1") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand1"); + + b.Property("QuantityDemand10") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand10"); + + b.Property("QuantityDemand11") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand11"); + + b.Property("QuantityDemand12") + .HasColumnType("int") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand12"); + + b.Property("QuantityDemand2") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand2"); + + b.Property("QuantityDemand3") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand3"); + + b.Property("QuantityDemand4") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand4"); + + b.Property("QuantityDemand5") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand5"); + + b.Property("QuantityDemand6") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand6"); + + b.Property("QuantityDemand7") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand7"); + + b.Property("QuantityDemand8") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand8"); + + b.Property("QuantityDemand9") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantityDemand9"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("ReleaseEdition") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "releaseEdition"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("StartMonth") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "startMonth"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "updateByUser"); + + b.Property("UpdateTime") + .HasColumnType("datetime2") + .HasAnnotation("Relational:JsonPropertyName", "updateTime"); + + b.Property("Version") + .HasColumnType("int") + .HasAnnotation("Relational:JsonPropertyName", "version"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_MRP_MONTH"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_MRP_STATE", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("ConfirmTime") + .HasColumnType("datetime2"); + + b.Property("CreatQuantity") + .HasColumnType("decimal(18,2)"); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateRequired") + .HasColumnType("datetime2"); + + b.Property("DemandSrate") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("DemandType") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("OnTimePercentage") + .HasColumnType("decimal(18,2)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityDelivery") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityDemand") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityInTransit") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityReceive") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("SummaryCreatQuantity") + .HasColumnType("decimal(18,2)"); + + b.Property("SummaryQuantityDelivery") + .HasColumnType("decimal(18,2)"); + + b.Property("SummaryQuantityInTransit") + .HasColumnType("decimal(18,2)"); + + b.Property("SummaryQuantityReceive") + .HasColumnType("decimal(18,2)"); + + b.Property("SummarySign") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_MRP_STATE"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_MRP_WARNING", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateGap") + .HasColumnType("decimal(18,2)"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("InventoryGap") + .HasColumnType("decimal(18,2)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityCurrent") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityInTransit") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityPlanned") + .HasColumnType("decimal(18,2)"); + + b.Property("QuantityPlannedDelivery") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("ReckonDate") + .HasColumnType("datetime2"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_MRP_WARNING"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PO", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("Batch") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Country") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DeliveryDate") + .HasColumnType("datetime2"); + + b.Property("DeliveryPlace") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("ItemType") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialUnit") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Note") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PurchaseOrder") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Purchaser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityDelivery") + .HasColumnType("int"); + + b.Property("QuantityDemand") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("SerialNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Supplier") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("TradeTerms") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("VoucherDate") + .HasColumnType("datetime2"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PO"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_CPS", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CarrierCode") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("Cc") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("Characteristic") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CheckMode") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("CheckResult") + .IsRequired() + .HasMaxLength(8) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CollectTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DecimalValue") + .HasPrecision(26, 15) + .HasColumnType("DECIMAL"); + + b.Property("DetectionMode") + .HasMaxLength(20) + .HasColumnType("VARCHAR"); + + b.Property("DeviceCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("EmpCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("EmpName") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("FttQty") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("GatherSpot") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("IntputQty") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("LimitUpdateTime") + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("LowerLimit") + .HasPrecision(26, 15) + .HasColumnType("DECIMAL"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("Parameter") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SamplingRate") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("Sc") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("Spc") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("StandardValue") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UnitCn") + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("UnitEn") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("UpperLimit") + .HasPrecision(26, 15) + .HasColumnType("DECIMAL"); + + b.Property("VendorFieldCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorFieldDesc") + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorFieldName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductBatch") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WorkShift") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_CPS", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_CSCHEDUL", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("AssemblyMaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ModelCategory") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Models") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MotorMaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("OnLineDate") + .HasColumnType("datetime2"); + + b.Property("OnLineTime") + .HasMaxLength(8) + .HasColumnType("nvarchar(8)"); + + b.Property("Plant") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ProductionLineId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ProductionLineName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("SortDate") + .HasColumnType("datetime2"); + + b.Property("SortTime") + .HasMaxLength(8) + .HasColumnType("nvarchar(8)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("Vin") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_CSCHEDUL"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_DATA", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ChildHardwareRevision") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ChildPackageInfo") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ChildSoftwareRevision") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ChildSource") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("CollectTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("CHAR"); + + b.Property("EmpCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("EmpName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("FinalQualityStatus") + .IsRequired() + .HasMaxLength(8) + .HasColumnType("VARCHAR"); + + b.Property("InstrumentQualityStatus") + .HasMaxLength(8) + .HasColumnType("VARCHAR"); + + b.Property("ManualQualityStatus") + .HasMaxLength(8) + .HasColumnType("VARCHAR"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("MaterialInputTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("MaterialOutputTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("ParentHardwareRevision") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ParentSoftwareRevision") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SubBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubProdName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("SubProdNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubProdNum") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("SubProdSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SubSupplierCode") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubSupplierName") + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorFieldName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorFieldNum") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductBatch") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductSn") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WorkShift") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_DATA", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_FIRST_PASSYIELD", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("AcceptableNumber") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("DefectiveNumber") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("OncePassRateRealValue") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("OncePassRateTagValue") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("ProductionLineName") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StatisticalTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkOrderNumber") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("WorkShift") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("WorkshopName") + .HasMaxLength(50) + .HasColumnType("nvarchar"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_FIRST_PASSYIELD", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_HSCHEDUL", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Models") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("OnLineTime") + .HasColumnType("datetime2"); + + b.Property("ProductionLineId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ProductionLineName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ProductionType") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("Vin") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_HSCHEDUL"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_MATERIAL_STOCK", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CheckNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CheckResult") + .IsRequired() + .HasMaxLength(2) + .HasColumnType("CHAR"); + + b.Property("CheckTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("ComponentCode") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ComponentName") + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DeadLine") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("DeviceCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("DeviceName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("EmpCode") + .IsRequired() + .HasMaxLength(16) + .HasColumnType("VARCHAR"); + + b.Property("EmpName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("FeatureLower") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("FeatureName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("FeatureUnit") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("FeatureUpper") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("FeatureValue") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("LimitUpdateTime") + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SamplingRate") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("StandardValue") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("SubBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubBatchNum") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("SubBatchSn") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SubSupplierAddress") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("SubSupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SubSupplierName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SupplierSubCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierSubName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorFieldCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("VendorFieldDesc") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_MATERIAL_STOCK", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_PLANING", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("Assembly") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "assembly"); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "createByUser"); + + b.Property("CreateTime") + .HasColumnType("datetime2") + .HasAnnotation("Relational:JsonPropertyName", "createTime"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)") + .HasAnnotation("Relational:JsonPropertyName", "id"); + + b.Property("IsDelete") + .HasColumnType("int") + .HasAnnotation("Relational:JsonPropertyName", "isDelete"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "materialCode"); + + b.Property("Models") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "models"); + + b.Property("Omterior") + .HasColumnType("nvarchar(max)"); + + b.Property("Pattern") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "pattern"); + + b.Property("Plant") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "plant"); + + b.Property("Quantity1") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantity1"); + + b.Property("Quantity2") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantity2"); + + b.Property("Quantity3") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantity3"); + + b.Property("Quantity4") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantity4"); + + b.Property("Quantity5") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantity5"); + + b.Property("Quantity6") + .HasColumnType("decimal(18,2)") + .HasAnnotation("Relational:JsonPropertyName", "quantity6"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("ReleaseEdition") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "releaseEdition"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("SalseDepartment") + .HasColumnType("nvarchar(max)"); + + b.Property("StartMonth") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "startMonth"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("Type") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "type"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)") + .HasAnnotation("Relational:JsonPropertyName", "updateByUser"); + + b.Property("UpdateTime") + .HasColumnType("datetime2") + .HasAnnotation("Relational:JsonPropertyName", "updateTime"); + + b.Property("Version") + .HasColumnType("int") + .HasAnnotation("Relational:JsonPropertyName", "version"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_PLANING"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_SCHEDULING", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("ActualBeginTime") + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("ActualEndTime") + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("ManufactureInputNum") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ManufactureNum") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ManufactureOutputNum") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("PlanBeginTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("PlanEndTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("PlanNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlanStatus") + .IsRequired() + .HasMaxLength(1) + .HasColumnType("CHAR"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_SCHEDULING", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_STATION_FIRST_PASSYIELD", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("AcceptableNumber") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("CheryProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("CheryProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("DefectiveNumber") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ManufactureNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("OncePassRateRealValue") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("OncePassRateTagValue") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("PlantId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("PlantName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("ProductBatchNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("ProductionLineName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("StationId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("StationName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("StatisticalTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("VendorProductName") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("VendorProductNo") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkOrderNumber") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("WorkShift") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopId") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("WorkshopName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_STATION_FIRST_PASSYIELD", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_PRO_TSCHEDUL", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("FinalOnLineTime") + .HasColumnType("datetime2"); + + b.Property("FinalWorkshop") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Models") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("OnLineTime") + .HasColumnType("datetime2"); + + b.Property("ProductionLineId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ProductionLineName") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("Vin") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_PRO_TSCHEDUL"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_RETURN", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DemandPickupTime") + .HasColumnType("datetime2"); + + b.Property("Feedback") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("Judge") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("LotNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PickUpCrossings") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PickUpLocation") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("Plant") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityDelivery") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("ReturnNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ReturnReason") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ReturnType") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("SerialNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("SerialSrate") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_RETURN"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_SA_WEEK", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DateReceived") + .HasColumnType("datetime2"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("IsDelete") + .HasColumnType("int"); + + b.Property("MaterialCode") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("MaterialDescription") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PlantId") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("PurchasingGroup") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("QuantityDemand") + .HasColumnType("decimal(18,2)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("ScheduleAgreement") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("SerialNumber") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("UpdateByUser") + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("Version") + .HasColumnType("int"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_SA_WEEK"); + }); + + modelBuilder.Entity("TaskManager.Entity.SUPPLIER_SINV_DATA", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataUpdateTime") + .IsRequired() + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("Id") + .HasColumnType("nvarchar(max)"); + + b.Property("InventoryStatus") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("MaterialCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("VARCHAR"); + + b.Property("MaterialDescription") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("VARCHAR"); + + b.Property("MaterialType") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("VARCHAR"); + + b.Property("ProductionCycle") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("VARCHAR"); + + b.Property("QuantityCurrent") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("QuantityPlan") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("ReadState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.Property("Remark") + .HasMaxLength(500) + .HasColumnType("NVarchar"); + + b.Property("RequestDate") + .HasColumnType("nvarchar(max)"); + + b.Property("SafetyStock") + .HasPrecision(16, 5) + .HasColumnType("DECIMAL"); + + b.Property("SupplierBatch") + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SupplierCode") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("VARCHAR"); + + b.Property("SupplierName") + .IsRequired() + .HasMaxLength(64) + .HasColumnType("VARCHAR"); + + b.Property("SupplieryxqDate") + .HasMaxLength(19) + .HasColumnType("CHAR"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("WriteState") + .ValueGeneratedOnAdd() + .HasColumnType("bit") + .HasDefaultValue(false); + + b.HasKey("UId"); + + b.ToTable("SUPPLIER_SINV_DATA", (string)null); + }); + + modelBuilder.Entity("TaskManager.Entity.TaskAllocation", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Creator") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("Subscriber") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TableName") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("TaskName") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("nvarchar(50)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("TaskAllocation"); + }); + + modelBuilder.Entity("TaskManager.Entity.TaskConifgure", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("Api") + .HasColumnType("nvarchar(max)"); + + b.Property("Client") + .HasColumnType("nvarchar(max)"); + + b.Property("Corn") + .HasColumnType("nvarchar(max)"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("IsAuto") + .HasColumnType("bit"); + + b.Property("Module") + .HasColumnType("nvarchar(max)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("TableName") + .HasColumnType("nvarchar(max)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("TaskName") + .HasColumnType("nvarchar(max)"); + + b.Property("Url") + .HasColumnType("nvarchar(max)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("TaskConifgure"); + }); + + modelBuilder.Entity("TaskManager.Entity.TaskLog", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("Info") + .HasColumnType("nvarchar(max)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("TaskName") + .HasColumnType("nvarchar(max)"); + + b.Property("Type") + .HasColumnType("nvarchar(max)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("TaskLogs"); + }); + + modelBuilder.Entity("TaskManager.Entity.TaskSub", b => + { + b.Property("UId") + .ValueGeneratedOnAdd() + .HasColumnType("bigint"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("UId")); + + b.Property("CreateTime") + .HasColumnType("datetime2"); + + b.Property("CreateUser") + .HasColumnType("nvarchar(max)"); + + b.Property("CreationTime") + .HasColumnType("datetime2"); + + b.Property("DataCount") + .HasColumnType("int"); + + b.Property("Domain") + .HasColumnType("nvarchar(max)"); + + b.Property("FailedCount") + .HasColumnType("int"); + + b.Property("FailedInfo") + .HasColumnType("nvarchar(max)"); + + b.Property("ReadState") + .HasColumnType("bit"); + + b.Property("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property("Site") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property("Subscriber") + .HasColumnType("nvarchar(max)"); + + b.Property("SyncedPageCount") + .HasColumnType("int"); + + b.Property("TableName") + .HasColumnType("nvarchar(max)"); + + b.Property("TaskId") + .HasColumnType("uniqueidentifier"); + + b.Property("TaskName") + .HasColumnType("nvarchar(max)"); + + b.Property("UpdateTime") + .HasColumnType("datetime2"); + + b.Property("UpdateUser") + .HasColumnType("nvarchar(max)"); + + b.Property("WriteState") + .HasColumnType("bit"); + + b.HasKey("UId"); + + b.ToTable("TaskSub"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/API/TaskManager.EntityFramework/Migrations/20250604031956_2025060402.cs b/API/TaskManager.EntityFramework/Migrations/20250604031956_2025060402.cs new file mode 100644 index 0000000..0d5222e --- /dev/null +++ b/API/TaskManager.EntityFramework/Migrations/20250604031956_2025060402.cs @@ -0,0 +1,22 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace TaskManager.EntityFramework.Migrations +{ + /// + public partial class _2025060402 : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + + } + } +} diff --git a/API/Wood.Admin.WebApi/Startup.cs b/API/Wood.Admin.WebApi/Startup.cs index f777392..042d041 100644 --- a/API/Wood.Admin.WebApi/Startup.cs +++ b/API/Wood.Admin.WebApi/Startup.cs @@ -97,50 +97,50 @@ namespace Wood.Admin.WebApi services.AddSqlSugar(Configuration); services.AddHttpClient(); - services.AddScoped(); + //services.AddScoped(); - services.AddScoped(); + //services.AddScoped(); - // 注册所有需要通过 GetRequiredService 获取的服务 + //// 注册所有需要通过 GetRequiredService 获取的服务 - // 1. 整车月度生产计划相关 - services.AddScoped(); + //// 1. 整车月度生产计划相关 + //services.AddScoped(); - // 2. M+6月物料需求计划相关 - services.AddScoped(); + //// 2. M+6月物料需求计划相关 + //services.AddScoped(); - // 3. 日物料需求计划相关 - services.AddScoped(); + //// 3. 日物料需求计划相关 + //services.AddScoped(); - // 4. 计划协议相关 - services.AddScoped(); + //// 4. 计划协议相关 + //services.AddScoped(); - // 5. 采购订单相关 - services.AddScoped(); + //// 5. 采购订单相关 + //services.AddScoped(); - // 6. 过焊装未过总装相关 - services.AddScoped(); + //// 6. 过焊装未过总装相关 + //services.AddScoped(); - // 7. 过涂装未过总装相关 - services.AddScoped(); // 注意类型名是否包含大小写问题(如驼峰命名) + //// 7. 过涂装未过总装相关 + //services.AddScoped(); // 注意类型名是否包含大小写问题(如驼峰命名) - // 8. 排序供货相关 - services.AddScoped(); + //// 8. 排序供货相关 + //services.AddScoped(); - // 9. 看板配送单相关 - services.AddScoped(); + //// 9. 看板配送单相关 + //services.AddScoped(); - // 10. 退货单相关 - services.AddScoped(); + //// 10. 退货单相关 + //services.AddScoped(); - // 11. 奇瑞RDC共享库存相关 - services.AddScoped(); + //// 11. 奇瑞RDC共享库存相关 + //services.AddScoped(); - // 12. 日MRP预警推移相关 - services.AddScoped(); + //// 12. 日MRP预警推移相关 + //services.AddScoped(); - // 13. 供应商共享库存相关 - services.AddScoped(); + //// 13. 供应商共享库存相关 + //services.AddScoped(); // 14. 风险确认相关服务(如果类型名正确) @@ -217,8 +217,22 @@ namespace Wood.Admin.WebApi //添加跨域 //services.AddCors(); - services.AddCors(); - + //services.AddCors(); + + + services.AddCors(options => + { + options.AddPolicy("AllowAll", builder => + { + builder + .AllowAnyOrigin() // 允许所有来源 + .AllowAnyMethod() // 允许所有 HTTP 方法(GET、POST 等) + .AllowAnyHeader(); // 允许所有请求头 + }); + }); + + + //添加缓存支持 services.AddMemoryCache(); @@ -265,10 +279,10 @@ namespace Wood.Admin.WebApi services.AddAuthorization(); // 添加 Quartz 服务 - services.AddQuartz(q => - { - q.UseSimpleTypeLoader(); - }); + //services.AddQuartz(q => + //{ + // q.UseSimpleTypeLoader(); + //}); //获取所有Service业务层进行扫描注入 //业务层命名格式:Wood.xxx.Service @@ -387,11 +401,15 @@ namespace Wood.Admin.WebApi //文件拦截中间件 app.UseMiddleware(); - app.UseCors(builder => - { - builder.WithOrigins(GlobalContext.SystemConfig!.AllowCorsSite.Split(',')).AllowAnyHeader().AllowAnyMethod().AllowCredentials(); - }); - app.UseRouting(); + + app.UseCors("AllowAll"); + + + //app.UseCors(builder => + //{ + // builder.WithOrigins(GlobalContext.SystemConfig!.AllowCorsSite.Split(',')).AllowAnyHeader().AllowAnyMethod().AllowCredentials(); + //}); + app.UseRouting(); // 使用身份验证中间件 app.UseAuthentication(); @@ -404,7 +422,7 @@ namespace Wood.Admin.WebApi }); //启用 自动job - app.UseAutoJob(); + //app.UseAutoJob(); //获取所有Service业务层 扫描事件 //业务层命名格式:Wood.xxx.Service diff --git a/API/Wood.Admin.WebApi/Wood.Admin.WebApi.csproj b/API/Wood.Admin.WebApi/Wood.Admin.WebApi.csproj index dd5fcd3..91eb673 100644 --- a/API/Wood.Admin.WebApi/Wood.Admin.WebApi.csproj +++ b/API/Wood.Admin.WebApi/Wood.Admin.WebApi.csproj @@ -59,3 +59,4 @@ + diff --git a/API/Wood.Admin.WebApi/appsettings.json b/API/Wood.Admin.WebApi/appsettings.json index 9fdde1b..abea926 100644 --- a/API/Wood.Admin.WebApi/appsettings.json +++ b/API/Wood.Admin.WebApi/appsettings.json @@ -8,7 +8,7 @@ }, "AllowedHosts": "*", "SystemConfig": { - "AllowCorsSite": "http://127.0.0.1:7005", // 允许的其他站点访问Api + "AllowCorsSite": "http://127.0.0.1:7005,http://localhost:7005,192.168.1.228:7005,192.168.1.228:7630", // 允许的其他站点访问Api "CacheProvider": "Memory", // 缓存使用方式 Memory Redis "RedisConnectionString": "127.0.0.1:6379", //redis 链接字符串 "EnableInitDb": true, //是否开启数据库初始化, diff --git a/API/Wood.Service/Controllers/CheryRecurringJobBaseController.cs b/API/Wood.Service/Controllers/CheryRecurringJobBaseController.cs index 65f6d96..cc3fccb 100644 --- a/API/Wood.Service/Controllers/CheryRecurringJobBaseController.cs +++ b/API/Wood.Service/Controllers/CheryRecurringJobBaseController.cs @@ -16,6 +16,7 @@ using System.Text.RegularExpressions; using System.Threading.Tasks; using TaskManager.Entity; using TaskManager.EntityFramework; +using Wood.Entity; @@ -23,7 +24,7 @@ using TaskManager.EntityFramework; namespace TaskManager.Controllers { [AllowAnonymous] - public class CheryRecurringJobBaseController :ControllerBase, IDoExecute + public class CheryRecurringJobBaseController :ControllerBase, IDoExecute,IScoped { protected string appKey = "8EG566b9bedd2bf46d"; protected string appSecret = "48edc4425647425d87f806a1ba492580"; @@ -35,8 +36,6 @@ namespace TaskManager.Controllers protected virtual string TaskName { set; get; } = "SupplierProPlaning"; protected readonly LogController _logger; - - public CheryRecurringJobBaseController( @@ -58,8 +57,6 @@ namespace TaskManager.Controllers /// 返回DTOJson protected async Task Post(string url, string path, string jsonData) { - - try { // 生成签名参数 diff --git a/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs b/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs index cabf5ca..f3a74de 100644 --- a/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs +++ b/API/Wood.Service/Controllers/CheryRecurringJobInputPageController.cs @@ -1,25 +1,31 @@ -using System.Data; -using System.Drawing.Printing; -using System.Linq.Expressions; -using System.Text; -using System.Text.Json; -using System.Text.Json.Serialization; -using Azure.Core; +using Azure.Core; using Dapper; using Magicodes.ExporterAndImporter.Core.Extension; using Magicodes.ExporterAndImporter.Excel; using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Http.HttpResults; using Microsoft.AspNetCore.Mvc; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; +using Omu.ValueInjecter; +using System.Data; +using System.Drawing.Printing; +using System.Linq.Expressions; +using System.Security.Policy; +using System.Text; +using System.Text.Json; +using System.Text.Json.Serialization; using TaskManager.Contracts.Dtos; using TaskManager.Entity; using TaskManager.EntityFramework; using TaskManager.EntityFramework.Repository; +using static Dapper.SqlMapper; namespace TaskManager.Controllers { - public class CheryRecurringJobInputPageController : RecurringJobBaseController where T : BaseEntity ,new() + public class CheryRecurringJobInputPageController : RecurringJobBaseController + where T : BaseEntity ,new() + where TDTO:class,new() { protected readonly IRepository _repository; public CheryRecurringJobInputPageController(HttpClient httpClient, JobDbContext jobDbContext, LogController log, IRepository repository) : base(httpClient, jobDbContext, log) @@ -27,6 +33,32 @@ namespace TaskManager.Controllers _repository = repository; } + + + /// + /// 手工发送调用接口 + /// + /// 任务名称 + /// 请求日期 + /// 客户(Chery) + /// + [HttpGet] + public virtual async Task CustomInvokeAsync(string taskName, string client) + { + var first = _jobDbContext.TaskConifgure.FirstOrDefault(p => p.TaskName == taskName && p.Client == client); + if (first == null) + { + await _logger.AddError($"手工调用接口{taskName}任务没找到", taskName); + return; + } + Url = first.Url; + Path = first.Api; + TaskName = first.TaskName; + Client = client; + await SyncTaskSubTable(TaskName, Client); + } + + protected override async Task DoExecutingAsync(string url, string path, string takName, string client) { Url = url; @@ -36,7 +68,7 @@ namespace TaskManager.Controllers await SyncTaskSubTable(TaskName,Client); } - private async Task PostPageAsync(PagedRequest t) + private async Task PostPageAsync(PagedRequest t) { try { @@ -108,20 +140,18 @@ namespace TaskManager.Controllers private async Task SyncTaskSubTable(string taskName, string client) { - if (string.IsNullOrEmpty(taskName) || string.IsNullOrEmpty(client)) { await _logger.AddError("任务名称或客户端不能为空",taskName); return; } - - var sublist = _jobDbContext.TaskSub.Where(p => p.TaskName == taskName && p.WriteState == false && p.Subscriber == client).ToList(); + var sublist = _jobDbContext.TaskSub.Where(p => p.TaskName == taskName && p.WriteState == false && p.Subscriber == client ).ToList(); int pageSize = 1000; if (!sublist.Any()) { foreach (var sub in sublist) { - string querystr = $"select * from {sub.TableName} where TaskId='{sub.TaskId}' and WriteState=0 order by uid";//任务表 + string querystr = $"select * from {sub.TableName} where TaskId='{sub.TaskId}' and WriteState=0 and ReadState=1 order by uid";//任务表 var entites = _jobDbContext.Database.GetDbConnection().Query(querystr);//明细表 if (entites.Any()) @@ -129,20 +159,28 @@ namespace TaskManager.Controllers var total = entites.Count(); int totalPages = (int)Math.Ceiling((double)total / pageSize); - for (int i = 1; i <= totalPages; i++) + for (int i = sub.SyncedPageCount; i <= totalPages; i++) { var records = entites.Skip((i - 1) * pageSize) .Take(pageSize).ToList(); - - PagedRequest pagedRequest = new PagedRequest() + #region dto转换作为参数发给客户API 因为实体比DTO字段多 + List dtos = new List(); + foreach (var itm in records) + { + TDTO dto = new TDTO(); + dto.InjectFrom(itm); + dtos.Add(dto); + } + PagedRequest pagedRequest = new PagedRequest() { batchNo = GenerateRandomStringWith8EG(), total = entites.Count(), pageSize = pageSize, - list = records, + list = dtos, pageNum = i }; + #endregion foreach (var itm in records) { itm.WriteState = true; @@ -217,7 +255,7 @@ namespace TaskManager.Controllers return new JsonResult(new { Code = 200, Message = "删除成功!" }); ; } [HttpGet] - public async Task>> GetPaged( + public async Task GetPaged( [FromQuery] int pageNumber = 1, [FromQuery] int pageSize = 10, [FromQuery] string sortBy = "", diff --git a/API/Wood.Service/Controllers/CheryRecurringJobOutPageController.cs b/API/Wood.Service/Controllers/CheryRecurringJobOutPageController.cs index 862e7fd..6c17be5 100644 --- a/API/Wood.Service/Controllers/CheryRecurringJobOutPageController.cs +++ b/API/Wood.Service/Controllers/CheryRecurringJobOutPageController.cs @@ -1,20 +1,23 @@ -using System.Data; -using System.Linq.Expressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using Magicodes.ExporterAndImporter.Core.Extension; +using Magicodes.ExporterAndImporter.Core.Extension; using Magicodes.ExporterAndImporter.Excel; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Http.HttpResults; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.RazorPages; using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Storage; using Microsoft.Extensions.DependencyInjection; using Omu.ValueInjecter; +using System.Data; +using System.Data.Common; +using System.Linq.Expressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.Threading.Tasks; using TaskManager.Contracts.Dtos; using TaskManager.Controllers; - using TaskManager.Entity; using TaskManager.EntityFramework; using TaskManager.EntityFramework.Repository; @@ -31,9 +34,35 @@ namespace TaskManager.Controllers { _repository = repository; } + protected virtual async Task ConfirmDataInsertAsync(List plist,JobDbContext dbContext, DbTransaction dbTransaction) + { + } + private async Task InsertDataAsync(List list) + { + if (list.Any()) + { + using (var transaction = await _jobDbContext.Database.BeginTransactionAsync()) + { + var tran = transaction.GetDbTransaction(); + try + { + _jobDbContext.BulkInsert(list); + await ConfirmDataInsertAsync(list, _jobDbContext, tran); + // 提交事务 + await transaction.CommitAsync(); + } + catch (Exception ex) + { + await transaction.RollbackAsync(); + new JsonResult(new { Code = 400, Message = ex.Message }); + } + } + } + + } [NonAction] public async Task> FetchAllDataAsync(string inputdate) { @@ -48,8 +77,6 @@ namespace TaskManager.Controllers { PagedResponse firstResponse = await GetPageAsync(new PAGE_DTO() { Date = date, IsForce = false}); - - if (firstResponse == null || firstResponse.Code != 200) { await _logger.AddError("首次请求失败,无法获取分页信息。", TaskName); @@ -57,12 +84,11 @@ namespace TaskManager.Controllers } if (firstResponse.Data.Total == "0") { - await _logger.AddError("首次请求失败,Total为0是否已经全部读取过。", TaskName); + await _logger.AddInfo("首次请求失败,Total为0是否已经全部读取过。", TaskName); return allData; - } - + if (readedcount != int.Parse(firstResponse.Data.Total))//记录数不相等 { var ids = _jobDbContext.Set().Where(p => p.RequestDate == inputdate).Select(p => p.Id).ToList();//已经同步的ID @@ -94,9 +120,11 @@ namespace TaskManager.Controllers } } - _jobDbContext.BulkInsert(pagefirstList); + if (pagefirstList.Any()) + { + await InsertDataAsync(pagefirstList); + } - // 计算总页数 int totalPages = (int)Math.Ceiling((double)totalItems / pageSize); @@ -111,7 +139,6 @@ namespace TaskManager.Controllers if (pageResponse?.Data.Rows != null && pageResponse.Data.Rows.Count > 0) { List pageList = new List(); - if (readedcount > 0) { var listrows = pageResponse.Data.Rows.Where(p => !ids.Contains(p.Id)); @@ -126,7 +153,6 @@ namespace TaskManager.Controllers } else { - foreach (var itm in pageResponse.Data.Rows) { T entity = new T(); @@ -136,27 +162,22 @@ namespace TaskManager.Controllers allData.Add(itm); } } - - - - - _jobDbContext.BulkInsert(pageList); - await _logger.AddInfo($"成功获取 {pageResponse.Data.Rows.Count} 条记录", TaskName); + if (pageList.Any()) + { + await InsertDataAsync(pageList); + } } else { - await _logger.AddError($"第 {currentPage} 页未返回数据", TaskName); + await _logger.AddInfo($"第 {currentPage} 页未返回数据", TaskName); } // 简单的请求间隔,避免过于频繁 await Task.Delay(200); } - - await _logger.AddInfo($"所有数据获取完成,总共获取了 {allData.Count} 条记录", TaskName); } - } else { @@ -193,7 +214,6 @@ namespace TaskManager.Controllers } else { - foreach (var itm in firstResponse.Data.Rows) { T entity = new T(); @@ -203,7 +223,10 @@ namespace TaskManager.Controllers allData.Add(itm); } } - _jobDbContext.BulkInsert(pagefirstList); + if (pagefirstList.Any()) + { + await InsertDataAsync(pagefirstList); + } //Console.WriteLine($"总记录数: {totalItems}, 每页大小: {pageSize}"); // 计算总页数 int totalPages = (int)Math.Ceiling((double)totalItems / pageSize); @@ -232,7 +255,6 @@ namespace TaskManager.Controllers } else { - foreach (var itm in pageResponse.Data.Rows) { T entity = new T(); @@ -242,8 +264,12 @@ namespace TaskManager.Controllers allData.Add(itm); } } - _jobDbContext.BulkInsert(pageList); - await _logger.AddInfo($"成功获取 {pageResponse.Data.Rows.Count} 条记录", TaskName); + if (pageList.Any()) + { + await InsertDataAsync(pageList); + } + + //await _logger.AddInfo($"成功获取 {pageResponse.Data.Rows.Count} 条记录", TaskName); } else { @@ -256,11 +282,8 @@ namespace TaskManager.Controllers } } - // 首次请求获取总条数和分页信息 - - return allData; } @@ -303,11 +326,26 @@ namespace TaskManager.Controllers } } - [NonAction] - public virtual async Task TestAsync(string url, string path, string taskName, string inputdate) + /// + /// 手工获取调用接口 + /// + /// 任务名称 + /// 请求日期 + /// 客户(Chery) + /// + [HttpGet] + public virtual async Task CustomInvokeAsync(string taskName, string inputdate,string client) { - Url = url; - Path = path; + var first= _jobDbContext.TaskConifgure.FirstOrDefault(p => p.TaskName == taskName && p.Client == client); + if (first == null) + { + await _logger.AddError($"手工调用接口{taskName}没找到", taskName); + + return; + } + + Url =first.Url; + Path = first.Api; TaskName = taskName; await FetchAllDataAsync(inputdate); } @@ -389,7 +427,7 @@ namespace TaskManager.Controllers /// 过滤条件 /// [HttpGet] - public async Task>> GetPaged( + public async Task GetPaged( [FromQuery] int pageNumber = 1, [FromQuery] int pageSize = 10, [FromQuery] string sortBy = "", @@ -409,7 +447,7 @@ namespace TaskManager.Controllers Expression> filter = null; var pagedResult = await _repository.GetPagedAsync(filter, pagingParams); - return Ok(pagedResult); + return Ok(pagedResult); } /// diff --git a/API/Wood.Service/Controllers/CherySupplierConDateService.cs b/API/Wood.Service/Controllers/CherySupplierConDateService.cs new file mode 100644 index 0000000..f621d30 --- /dev/null +++ b/API/Wood.Service/Controllers/CherySupplierConDateService.cs @@ -0,0 +1,16 @@ +using TaskManager.Contracts.Dtos; +using TaskManager.Entity.Entitys; +using TaskManager.EntityFramework; + +namespace TaskManager.Controllers +{ + public class SupplierConDateService : CheryRecurringJobInputPageController + { + public SupplierConDateService(HttpClient httpClient, JobDbContext jobDbContext, LogController log, IRepository repository) : base(httpClient, jobDbContext, log, repository) + { + } + + + + } +} diff --git a/API/Wood.Service/Controllers/CherySupplierConMmrpService.cs b/API/Wood.Service/Controllers/CherySupplierConMmrpService.cs new file mode 100644 index 0000000..c1be7f4 --- /dev/null +++ b/API/Wood.Service/Controllers/CherySupplierConMmrpService.cs @@ -0,0 +1,77 @@ +using Microsoft.AspNetCore.Mvc; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Storage; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Math; +using Org.BouncyCastle.Bcpg.Sig; +using SkiaSharp; +using System.Xml; +using TaskManager.Entity; +using TaskManager.Entity.Entitys; +using TaskManager.EntityFramework; + +namespace TaskManager.Controllers +{ + public class CherySupplierConMmrpService : CheryRecurringJobInputPageController + { + public CherySupplierConMmrpService(HttpClient httpClient, JobDbContext jobDbContext, LogController log, IRepository repository) : base(httpClient, jobDbContext, log, repository) + { + } + /// + /// 审批通过 + /// + /// + /// + public async Task Confirm([FromBody] List entites) + { + + var taskId = Guid.NewGuid(); + var task = new TaskSub(); + task.TaskId = taskId; + task.TaskName = TaskName; + task.Subscriber = Client; + task.TableName = "SUPPLIER_CON_MMRP"; + task.DataCount = entites.Count; + task.Domain = "1"; + task.Site = "1"; + task.FailedCount = 0; + task.CreateTime = DateTime.Now; + task.CreateUser = "admin"; + task.CreationTime = DateTime.Now; + task.SyncedPageCount = 0; + + entites.ForEach(p => + { + p.ReadState = true; + p.TaskId = taskId; + + + }); + + using (var transaction = await _jobDbContext.Database.BeginTransactionAsync()) + { + var tran = transaction.GetDbTransaction(); + try + { + await _jobDbContext.BulkUpdateAsync(entites, options => { options.Transaction = tran; }); + await _jobDbContext.AddAsync(task); + _jobDbContext.SaveChanges(); + + // 提交事务 + await transaction.CommitAsync(); + } + catch (Exception ex) + { + await transaction.RollbackAsync(); + new JsonResult(new { Code = 400, Message = ex.Message }); + } + } + + return new JsonResult(new { Code = 200, Message = "修改成功!" }); + + + } + + + + } +} diff --git a/API/Wood.Service/Controllers/CherySupplierMrpMonthService.cs b/API/Wood.Service/Controllers/CherySupplierMrpMonthService.cs index b64264a..b34f612 100644 --- a/API/Wood.Service/Controllers/CherySupplierMrpMonthService.cs +++ b/API/Wood.Service/Controllers/CherySupplierMrpMonthService.cs @@ -1,15 +1,63 @@ -using TaskManager.Contracts.Dtos; +using Magicodes.ExporterAndImporter.Core; +using System.Data.Common; +using TaskManager.Contracts.Dtos; using TaskManager.Controllers; using TaskManager.Entity; +using TaskManager.Entity.Entitys; using TaskManager.EntityFramework; -using TaskManager.EntityFramework; +using Z.BulkOperations; + namespace TaskManager.Controllers { + + /// + /// M+6月物料需求计划风险确认 + /// public class CherySupplierMrpMonthService : CheryRecurringJobOutPageController { public CherySupplierMrpMonthService(HttpClient httpClient, JobDbContext jobDbContext, LogController log, IRepository repository) : base(httpClient, jobDbContext, log, repository) { + + + } + protected override async Task ConfirmDataInsertAsync(List plist, JobDbContext dbContext, DbTransaction dbTransaction) + { + if (plist.Count > 0) + { + List list = new List(); + plist.ForEach(p => + { + var con = new SUPPLIER_CON_MMRP(); + con.SupplierCode = "8EG"; + con.ReleaseEdition = p.ReleaseEdition; + con.MaterialCode = p.MaterialCode; + con.PlantId = p.PlantId; + con.FeedbackResults = "0"; + con.VentureType = "1"; + con.VentureSpecific = "1"; + con.Measures = "1"; + con.StartMonth = p.StartMonth; + con.QuantityMeet1 = p.QuantityDemand1; + con.QuantityMeet2 = p.QuantityDemand2; + con.QuantityMeet3 = p.QuantityDemand3; + con.QuantityMeet4 = p.QuantityDemand4; + con.QuantityMeet5 = p.QuantityDemand5; + con.QuantityMeet6 = p.QuantityDemand6; + con.QuantityMeet7 = p.QuantityDemand7; + con.QuantityMeet8 = p.QuantityDemand8; + con.QuantityMeet9 = p.QuantityDemand9; + con.QuantityMeet10 = p.QuantityDemand10; + con.QuantityMeet11 = p.QuantityDemand11; + con.QuantityMeet12 = p.QuantityDemand12; + list.Add(con); + }); + + await dbContext.BulkInsertAsync(list, options=> { options.Transaction = dbTransaction; options.UseTableLock = false; }); + } + return; } + + } } diff --git a/API/Wood.Service/Controllers/NormalBaseController.cs b/API/Wood.Service/Controllers/NormalBaseController.cs index 7d7ee6d..6d434d9 100644 --- a/API/Wood.Service/Controllers/NormalBaseController.cs +++ b/API/Wood.Service/Controllers/NormalBaseController.cs @@ -17,13 +17,14 @@ using Microsoft.Extensions.DependencyInjection; using TaskManager.Entity; using TaskManager.EntityFramework; using TaskManager.EntityFramework.Repository; +using Wood.Entity; using Wood.Util; namespace Wood.Service.Controllers { [AllowAnonymous] - public class NormalBaseController:ControllerBase where T:BaseEntity ,new() + public class NormalBaseController:ControllerBase,IScoped where T:BaseEntity ,new() { protected readonly JobDbContext _context; @@ -130,7 +131,7 @@ namespace Wood.Service.Controllers Expression> filter = null; var pagedResult = await _repository.GetPagedAsync(filter, pagingParams); - return new JsonResult(pagedResult); + return Ok(pagedResult); } /// diff --git a/API/Wood.Service/Controllers/SupplierConDateService.cs b/API/Wood.Service/Controllers/SupplierConDateService.cs deleted file mode 100644 index 6c610cf..0000000 --- a/API/Wood.Service/Controllers/SupplierConDateService.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace TaskManager.Controllers -{ - public class SupplierConDateService - { - } -} diff --git a/API/Wood.Service/Controllers/SupplierConMmrpService.cs b/API/Wood.Service/Controllers/SupplierConMmrpService.cs deleted file mode 100644 index 78425e1..0000000 --- a/API/Wood.Service/Controllers/SupplierConMmrpService.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace TaskManager.Controllers -{ - public class SupplierConMmrpService - { - } -} diff --git a/API/Wood.Service/Controllers/TaskConifgureController.cs b/API/Wood.Service/Controllers/TaskConifgureController.cs index eccf650..81ba2cf 100644 --- a/API/Wood.Service/Controllers/TaskConifgureController.cs +++ b/API/Wood.Service/Controllers/TaskConifgureController.cs @@ -71,164 +71,164 @@ namespace TaskManager.Controllers - /// - /// 执行铁定任务 - /// - /// - /// - [NonAction] - public async Task testTask(string taskName) - { - var first = await _context.TaskConifgure.FirstOrDefaultAsync(p => p.TaskName == taskName); - var url = first.Url; - var path = first.Api; - var controller = _builder.GetRequiredService(); - await controller.TestAsync(url, path, taskName, "2025-04-21"); - - } - [NonAction] - public async Task TaskAllAsync(string date) - { - var tasks = _context.TaskConifgure.Where(p => p.IsAuto == true && !string.IsNullOrEmpty(p.Corn) - && !string.IsNullOrEmpty(p.Api) && !string.IsNullOrEmpty(p.Url)).ToList(); - - - foreach (var task in tasks) - { - try - { - var url = task.Url; - var path = task.Api; - var taskname = task.TaskName; - - switch (task.TaskName) - { - //case "整车月度生产计划1": + ///// + ///// 执行铁定任务 + ///// + ///// + ///// + //[NonAction] + //public async Task testTask(string taskName) + //{ + // var first = await _context.TaskConifgure.FirstOrDefaultAsync(p => p.TaskName == taskName); + // var url = first.Url; + // var path = first.Api; + // var controller = _builder.GetRequiredService(); + // await controller.TestAsync(url, path, taskName, "2025-04-21"); + + //} + //[NonAction] + //public async Task TaskAllAsync(string date) + //{ + // var tasks = _context.TaskConifgure.Where(p => p.IsAuto == true && !string.IsNullOrEmpty(p.Corn) + // && !string.IsNullOrEmpty(p.Api) && !string.IsNullOrEmpty(p.Url)).ToList(); + + + // foreach (var task in tasks) + // { + // try + // { + // var url = task.Url; + // var path = task.Api; + // var taskname = task.TaskName; + + // switch (task.TaskName) + // { + // //case "整车月度生产计划1": - // // 添加的代码块 - // var controller1 = _builder.GetRequiredService(); - // await controller1.TestAsync(url, path, taskname, "2025-05-29"); - // break; + // // // 添加的代码块 + // // var controller1 = _builder.GetRequiredService(); + // // await controller1.TestAsync(url, path, taskname, "2025-05-29"); + // // break; - case "M+6月物料需求计划1": + // case "M+6月物料需求计划1": - // 添加的代码块 - var controller2 = _builder.GetRequiredService(); - await controller2.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller2 = _builder.GetRequiredService(); + // await controller2.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "整车月度生产计划2": + // case "整车月度生产计划2": - // 添加的代码块 - var controller3 = _builder.GetRequiredService(); - await controller3.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller3 = _builder.GetRequiredService(); + // await controller3.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "M+6月物料需求计划2": + // case "M+6月物料需求计划2": - // 添加的代码块 - var controller4 = _builder.GetRequiredService(); - await controller4.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller4 = _builder.GetRequiredService(); + // await controller4.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "日物料需求计划": + // case "日物料需求计划": - // 添加的代码块 - var controller5 = _builder.GetRequiredService(); - await controller5.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller5 = _builder.GetRequiredService(); + // await controller5.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "计划协议": + // case "计划协议": - // 添加的代码块 - var controller6 = _builder.GetRequiredService(); - await controller6.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller6 = _builder.GetRequiredService(); + // await controller6.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "采购订单": + // case "采购订单": - // 添加的代码块 - var controller7 = _builder.GetRequiredService(); - await controller7.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller7 = _builder.GetRequiredService(); + // await controller7.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "过焊装未过总装": + // case "过焊装未过总装": - // 添加的代码块 - var controller8 = _builder.GetRequiredService(); - await controller8.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller8 = _builder.GetRequiredService(); + // await controller8.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "过涂装未过总装": + // case "过涂装未过总装": - // 添加的代码块 - var controller9 = _builder.GetRequiredService(); - await controller9.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller9 = _builder.GetRequiredService(); + // await controller9.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "排序供货": + // case "排序供货": - // 添加的代码块 - var controller10 = _builder.GetRequiredService(); - await controller10.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller10 = _builder.GetRequiredService(); + // await controller10.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "看板配送单": + // case "看板配送单": - // 添加的代码块 - var controller11 = _builder.GetRequiredService(); - await controller11.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller11 = _builder.GetRequiredService(); + // await controller11.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "退货单": + // case "退货单": - // 添加的代码块 - var controller12 = _builder.GetRequiredService(); - await controller12.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller12 = _builder.GetRequiredService(); + // await controller12.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "奇瑞RDC共享库存": + // case "奇瑞RDC共享库存": - // 添加的代码块 - var controller13 = _builder.GetRequiredService(); - await controller13.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller13 = _builder.GetRequiredService(); + // await controller13.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "日MRP状态监控": + // case "日MRP状态监控": - // 添加的代码块 - var controller14 = _builder.GetRequiredService(); - await controller14.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller14 = _builder.GetRequiredService(); + // await controller14.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "日MRP预警推移": + // case "日MRP预警推移": - // 添加的代码块 - var controller15 = _builder.GetRequiredService(); - await controller15.TestAsync(url, path, taskname, "2025-05-29"); - break; - case "供应商共享库存-上午": + // // 添加的代码块 + // var controller15 = _builder.GetRequiredService(); + // await controller15.TestAsync(url, path, taskname, "2025-05-29"); + // break; + // case "供应商共享库存-上午": - // 添加的代码块 - var controller19 = _builder.GetRequiredService(); - await controller19.TestAsync(url, path, taskname, "2025-05-29"); - break; + // // 添加的代码块 + // var controller19 = _builder.GetRequiredService(); + // await controller19.TestAsync(url, path, taskname, "2025-05-29"); + // break; - case "供应商共享库存-晚上": + // case "供应商共享库存-晚上": - // 添加的代码块 - var controller20 = _builder.GetRequiredService(); - await controller20.TestAsync(url, path, taskname, "2025-05-29"); - break; - } + // // 添加的代码块 + // var controller20 = _builder.GetRequiredService(); + // await controller20.TestAsync(url, path, taskname, "2025-05-29"); + // break; + // } - } - catch - { + // } + // catch + // { - } + // } @@ -241,8 +241,8 @@ namespace TaskManager.Controllers - } - } + // } + //} @@ -521,7 +521,7 @@ namespace TaskManager.Controllers ); break; case "M+6月物料需求计划风险确认": - RecurringJob.AddOrUpdate( + RecurringJob.AddOrUpdate( task.TaskName, x => ((IDoExecute)x).ExecuteAsync(url, path, task.TaskName, client), task.Corn, diff --git a/API/Wood.Service/Datas/SupplierEmployeeDtService.cs b/API/Wood.Service/Datas/SupplierEmployeeDtService.cs index 12c6c1b..a8a2029 100644 --- a/API/Wood.Service/Datas/SupplierEmployeeDtService.cs +++ b/API/Wood.Service/Datas/SupplierEmployeeDtService.cs @@ -19,9 +19,10 @@ namespace Wood.Service.Datas { - public class SupplierEmployeeDtService : NormalBaseController + public class SupplierEmployeeDtService : NormalBaseController { - public SupplierEmployeeDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) + + public SupplierEmployeeDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) { } @@ -37,7 +38,7 @@ namespace Wood.Service.Datas await file.CopyToAsync(memStream); var importer = new ExcelImporter(); - ImportResult impResult = await importer.Import(memStream); + ImportResult impResult = await importer.Import(memStream); if (impResult.HasError) { StringBuilder sb = new StringBuilder(); diff --git a/API/Wood.Service/Datas/SupplierInfoDtService.cs b/API/Wood.Service/Datas/SupplierInfoDtService.cs index 7678632..9f9dcc0 100644 --- a/API/Wood.Service/Datas/SupplierInfoDtService.cs +++ b/API/Wood.Service/Datas/SupplierInfoDtService.cs @@ -19,9 +19,9 @@ namespace Wood.Service.Datas { - public class SupplierInfoDtService : NormalBaseController + public class SupplierInfoDtService : NormalBaseController { - public SupplierInfoDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) + public SupplierInfoDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) { } @@ -37,7 +37,7 @@ namespace Wood.Service.Datas await file.CopyToAsync(memStream); var importer = new ExcelImporter(); - ImportResult impResult = await importer.Import(memStream); + ImportResult impResult = await importer.Import(memStream); if (impResult.HasError) { StringBuilder sb = new StringBuilder(); diff --git a/API/Wood.Service/Datas/SupplierProAttachmentDataDtService.cs b/API/Wood.Service/Datas/SupplierProAttachmentDataDtService.cs index 8d498cc..8283525 100644 --- a/API/Wood.Service/Datas/SupplierProAttachmentDataDtService.cs +++ b/API/Wood.Service/Datas/SupplierProAttachmentDataDtService.cs @@ -20,9 +20,9 @@ namespace Wood.Service.Datas { - public class SupplierProAttachmentDataDtService : NormalBaseController + public class SupplierProAttachmentDataDtService : NormalBaseController { - public SupplierProAttachmentDataDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) + public SupplierProAttachmentDataDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) { } @@ -38,7 +38,7 @@ namespace Wood.Service.Datas await file.CopyToAsync(memStream); var importer = new ExcelImporter(); - ImportResult impResult = await importer.Import(memStream); + ImportResult impResult = await importer.Import(memStream); if (impResult.HasError) { StringBuilder sb = new StringBuilder(); diff --git a/API/Wood.Service/Datas/SupplierProProcessEquipmentDtService.cs b/API/Wood.Service/Datas/SupplierProProcessEquipmentDtService.cs index b30084d..6029e51 100644 --- a/API/Wood.Service/Datas/SupplierProProcessEquipmentDtService.cs +++ b/API/Wood.Service/Datas/SupplierProProcessEquipmentDtService.cs @@ -20,9 +20,9 @@ namespace Wood.Service.Datas { - public class SupplierProProcessEquipmentDtService : NormalBaseController + public class SupplierProProcessEquipmentDtService : NormalBaseController { - public SupplierProProcessEquipmentDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) + public SupplierProProcessEquipmentDtService(JobDbContext context, IServiceProvider builder, IConfiguration configuration, IRepository repository) : base(context, builder, configuration, repository) { } @@ -38,7 +38,7 @@ namespace Wood.Service.Datas await file.CopyToAsync(memStream); var importer = new ExcelImporter(); - ImportResult impResult = await importer.Import(memStream); + ImportResult impResult = await importer.Import(memStream); if (impResult.HasError) { StringBuilder sb = new StringBuilder(); diff --git a/API/Wood.Service/SystemManage/UserService.cs b/API/Wood.Service/SystemManage/UserService.cs index 40320bd..a391fa5 100644 --- a/API/Wood.Service/SystemManage/UserService.cs +++ b/API/Wood.Service/SystemManage/UserService.cs @@ -165,10 +165,64 @@ namespace Wood.Service.SystemManage throw Oops.Oh("登录失败,没有相关用户信息!"); } - /// - /// 用户租户登录 - /// - [AllowAnonymous] + /// + /// 用户登录 + /// + /// 可用租户信息 + [AllowAnonymous] + public async Task LoginExtned(UserLoginParam param) + { + if (!(int.TryParse(param.CaptchaCode, out int val) && _cache.TryGetCache(param.Captcha, out int cacheVal) && val == cacheVal)) + { + _cache.RemoveCache(param.Captcha); + throw Oops.Oh("验证码错误!"); + } + + _cache.SetCache(param.Captcha, param.UserName, DateTime.Now.AddMinutes(5)); + + var users = await _userRepository.AsQueryable() + .Where(it => it.UserName == param.UserName) + .Where(it => it.Status == 1) + .ToListAsync(); + + if (users == null || users.Count < 1) + throw Oops.Oh($"不存在用户【{param.UserName}】!"); + List passOk = new List(); //密码验证通过的账户信息 + foreach (var item in users) + { + if (param!.Password == CryptogramHelper.GMSM4Decrypt(item.Password)) + passOk.Add(item); + } + + if (passOk.Any()) + { + var tenantIds = passOk.Select(it => it.TenantId).ToList(); + var tenants = await _tenantRepository.AsQueryable() + .Where(it => tenantIds.Contains(it.Id)) + .Select(it => new { it.Id, it.TenantName, it.Status }) + .ToListAsync(); + + if (tenants.All(it => it.Status != 1)) + throw Oops.Oh("登录失败,账号已经冻结!"); + + return tenants; + } + throw Oops.Oh("登录失败,没有相关用户信息!"); + } + + + + + + + + + + + /// + /// 用户租户登录 + /// + [AllowAnonymous] public async Task TenantLogin(UserTenantLoginParam param) { if (_cache.TryGetCache(param.Captcha, out string? cacheVal) && cacheVal == param.UserName) diff --git a/Web/.env.development b/Web/.env.development index 2635439..8b26cbf 100644 --- a/Web/.env.development +++ b/Web/.env.development @@ -2,4 +2,4 @@ ENV = 'development' # base api -VITE_API_BASE_URL = 'http://127.0.0.1:7001' +VITE_API_BASE_URL = 'http://192.168.1.228:7629' diff --git a/Web/.env.production b/Web/.env.production index b763518..825588d 100644 --- a/Web/.env.production +++ b/Web/.env.production @@ -2,5 +2,5 @@ ENV = 'production' # base api -VITE_API_BASE_URL = 'http://127.0.0.1:5001' +VITE_API_BASE_URL = 'http://192.168.1.228:7629'