You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

329 lines
12 KiB

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.ChangeTracking;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.Extensions.Configuration;
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TaskManager.Entity;
using TaskManager.Entity.Entitys;
using Wood.Util;
namespace TaskManager.EntityFramework
{
public class JobDbContext:DbContext
{
private const string ConnectionStringName = "DefaultConnection";
// 保存配置的字段
private readonly IConfiguration _configuration;
// 使用依赖注入的构造函数
public JobDbContext(DbContextOptions<JobDbContext> options, IConfiguration configuration)
: base(options)
{
_configuration = configuration;
// 设置命令超时时间
//this.Database.SetCommandTimeout(TimeSpan.FromMinutes(10));
}
public JobDbContext(DbContextOptions<JobDbContext> options)
: base(options)
{
}
public JobDbContext()
{
this.Database.SetCommandTimeout(System.TimeSpan.FromMinutes(50));
}
public JobDbContext(string strConn)
{
this.Database.SetCommandTimeout(System.TimeSpan.FromMinutes(50));
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
// 配置数据库连接字符串
//if (!optionsBuilder.IsConfigured)
//{
// // 从配置中获取连接字符串
// // var connectionString = _configuration.GetConnectionString("Server=192.168.1.228;Database=TaskManager;User ID=sa;Password=ChangkeTec@2021;TrustServerCertificate=True");
// //if (string.IsNullOrEmpty(connectionString))
// //{
// // throw new InvalidOperationException("无法从配置中获取数据库连接字符串");
// //}
// // 配置SQL Server连接
// optionsBuilder.UseSqlServer("Server=192.168.1.228;Database=TaskManager;User ID=sa;Password=ChangkeTec@2021;TrustServerCertificate=True");
//}
optionsBuilder.UseSqlServer("Server = 192.168.1.228; Database = TaskManager2; User ID = sa; Password = ChangkeTec@2021; TrustServerCertificate = True");
}
/// <summary>
/// 来料检验数据
/// </summary>
public DbSet<SUPPLIER_PRO_MATERIAL_STOCK> SUPPLIER_PRO_MATERIAL_STOCK { get; set; } // 类名与属性名一致
/// <summary>
/// 排产数据
/// </summary>
public DbSet<SUPPLIER_PRO_SCHEDULING> SUPPLIER_PRO_SCHEDULING { get; set; }
/// <summary>
/// 供应商基础信息
/// </summary>
public DbSet<SUPPLIER_INFO> SUPPLIER_INFO { get; set; }
/// <summary>
/// 人员资质信息
/// </summary>
public DbSet<SUPPLIER_EMPLOYEE> SUPPLIER_EMPLOYEE { get; set; }
/// <summary>
/// BOM主数据
/// </summary>
public DbSet<SUPPLIER_BOM> SUPPLIER_BOM { get; set; }
/// <summary>
/// 过程控制项质量数据
/// </summary>
public DbSet<SUPPLIER_PRO_CPS> SUPPLIER_PRO_CPS { get; set; }
/// <summary>
/// 生产过程数据
/// </summary>
public DbSet<SUPPLIER_PRO_DATA> SUPPLIER_PRO_DATA { get; set; }
/// <summary>
/// 产品一次合格率
/// </summary>
public DbSet<SUPPLIER_PRO_FIRST_PASSYIELD> SUPPLIER_PRO_FIRST_PASSYIELD { get; set; }
/// <summary>
/// 工位一次合格率
/// </summary>
public DbSet<SUPPLIER_PRO_STATION_FIRST_PASSYIELD> SUPPLIER_PRO_STATION_FIRST_PASSYIELD { get; set; }
/// <summary>
/// 缺陷业务数据
/// </summary>
public DbSet<SUPPLIER_PRO_FLAW> SUPPLIER_PRO_FLAW { get; set; }
/// <summary>
/// 环境业务数据
/// </summary>
public DbSet<SUPPLIER_PRO_ENVIRONMENT> SUPPLIER_PRO_ENVIRONMENT { get; set; }
/// <summary>
/// 设备OEE达成率
/// </summary>
public DbSet<SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE> SUPPLIER_PRO_OEE_ACHIEVEMENT_RATE { get; set; }
/// <summary>
/// OEE时间明细
/// </summary>
public DbSet<SUPPLIER_PRO_OEE_TIME_DETAILS> SUPPLIER_PRO_OEE_TIME_DETAILS { get; set; }
/// <summary>
/// 物料主数据
/// </summary>
public DbSet<SUPPLIER_PRO_MATERIAL_DATA> SUPPLIER_PRO_MATERIAL_DATA { get; set; }
/// <summary>
/// 附件类数据
/// </summary>
public DbSet<SUPPLIER_PRO_ATTACHMENT_DATA> SUPPLIER_PRO_ATTACHMENT_DATA { get; set; }
/// <summary>
/// 工艺装备
/// </summary>
public DbSet<SUPPLIER_PRO_PROCESS_EQUIPMENT> SUPPLIER_PRO_PROCESS_EQUIPMENT { get; set; }
/// <summary>
/// 工艺
/// </summary>
public DbSet<SUPPLIER_PRO_PROCESS> SUPPLIER_PRO_PROCESS { get; set; }
/// <summary>
/// 整车月度生产计划-2
/// </summary>
public DbSet<SUPPLIER_PRO_PLANING> SUPPLIER_PRO_PLANING { get; set; }
/// <summary>
/// M+6月物料需求计划
/// </summary>
public DbSet<SUPPLIER_MRP_MONTH> SUPPLIER_MRP_MONTH { get; set; }
/// <summary>
/// M+6月物料需求计划风险确认
/// </summary>
public DbSet<SUPPLIER_CON_MMRP> SUPPLIER_CON_MMRP { get; set; }
/// <summary>
/// 日物料需求计划
/// </summary>
public DbSet<SUPPLIER_MRP_DATE> SUPPLIER_MRP_DATE { get; set; }
/// <summary>
/// 日物料需求计划风险确认
/// </summary>
public DbSet<SUPPLIER_CON_DATE> SUPPLIER_CON_DATE { get; set; }
/// <summary>
/// 计划协议
/// </summary>
public DbSet<SUPPLIER_SA_WEEK> SUPPLIER_SA_WEEK { get; set; }
/// <summary>
/// 采购订单
/// </summary>
public DbSet<SUPPLIER_PO> SUPPLIER_PO { get; set; }
/// <summary>
/// 采购订单风险确认
/// </summary>
public DbSet<SUPPLIER_CON_PO> SUPPLIER_CON_PO { get; set; }
/// <summary>
/// 过焊装未过总装
/// </summary>
public DbSet<SUPPLIER_PRO_HSCHEDUL> SUPPLIER_PRO_HSCHEDUL { get; set; }
/// <summary>
/// 过涂装未过总装
/// </summary>
public DbSet<SUPPLIER_PRO_TSCHEDUL> SUPPLIER_PRO_TSCHEDUL { get; set; }
/// <summary>
/// 排序供货
/// </summary>
public DbSet<SUPPLIER_PRO_CSCHEDUL> SUPPLIER_PRO_CSCHEDUL { get; set; }
/// <summary>
/// 看板配送单
/// </summary>
public DbSet<SUPPLIER_DEL_STATE> SUPPLIER_DEL_STATE { get; set; }
/// <summary>
/// 退货单
/// </summary>
public DbSet<SUPPLIER_RETURN> SUPPLIER_RETURN { get; set; }
/// <summary>
/// 奇瑞RDC共享库存
/// </summary>
public DbSet<SUPPLIER_INV_DATA> SUPPLIER_INV_DATA { get; set; }
/// <summary>
/// 供应商共享库存
/// </summary>
public DbSet<SUPPLIER_SINV_DATA> SUPPLIER_SINV_DATA { get; set; }
/// <summary>
/// 日MRP状态监控
/// </summary>
public DbSet<SUPPLIER_MRP_STATE> SUPPLIER_MRP_STATE { get; set; }
public DbSet<TaskLog> TaskLogs { get; set; }
public DbSet<TaskConifgure> TaskConifgure { get; set; }
//public DbSet<TaskConifgure> TaskConifgures { get; set; }
// 配置实体映射
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
//modelBuilder.Entity<TaskConifgure>(entity =>
//{
// entity.ToTable("TaskConifgure");
//});
// 配置表名
// 其他配置...
//工位一次合格率
modelBuilder.Entity<SUPPLIER_PRO_STATION_FIRST_PASSYIELD>(b =>
{
b.ToTable("SUPPLIER_PRO_STATION_FIRST_PASSYIELD");
//供应商代码
b.Property(e => e.SupplierCode).HasColumnType("VARCHAR").HasMaxLength(32);
//供应商名称
b.Property(e => e.SupplierName).HasColumnType("VARCHAR").HasMaxLength(64);
//工厂代码
b.Property(e => e.PlantId).HasColumnType("VARCHAR").HasMaxLength(32);
//工厂名称
b.Property(e => e.PlantName).HasColumnType("VARCHAR").HasMaxLength(64);
//车间代码
b.Property(e => e.WorkshopId).HasColumnType("VARCHAR").HasMaxLength(32);
//车间名称
b.Property(e => e.WorkshopName).HasColumnType("VARCHAR").HasMaxLength(64);
//产线代码
b.Property(e => e.ProductionLineId).HasColumnType("VARCHAR").HasMaxLength(32);
//产线名称
b.Property(e => e.ProductionLineName).HasColumnType("VARCHAR").HasMaxLength(100);
//工位代码
b.Property(e => e.StationId).HasColumnType("VARCHAR").HasMaxLength(32);
//工位名称
b.Property(e => e.StationName).HasColumnType("VARCHAR").HasMaxLength(64);
//奇瑞零件号
b.Property(e => e.CheryProductNo).HasColumnType("VARCHAR").HasMaxLength(32);
//奇瑞零件名称
b.Property(e => e.CheryProductName).HasColumnType("VARCHAR").HasMaxLength(100);
//供应商总成零件号
b.Property(e => e.VendorProductNo).HasColumnType("VARCHAR").HasMaxLength(32);
//供应商总成零件名称
b.Property(e => e.VendorProductName).HasColumnType("VARCHAR").HasMaxLength(100);
//生产批次号
b.Property(e => e.ProductBatchNo).HasColumnType("VARCHAR").HasMaxLength(32);
//生产工单号,(跟排产工单号关联)
b.Property(e => e.ManufactureNo).HasColumnType("VARCHAR").HasMaxLength(32);
//批次计划数量
b.Property(e => e.WorkOrderNumber).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5);
//不合格数
b.Property(e => e.DefectiveNumber).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5);
//合格数
b.Property(e => e.AcceptableNumber).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5);
//一次合格率实际值,使用小数表示,如0.9601表示合格率为96.01%整数位最多10位,小数位最多3位
b.Property(e => e.OncePassRateRealValue).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5);
//一次合格率目标值,使用小数表示,如0.96表示合格率目标为96.00%。整数位最多10位,小数位最多3位
b.Property(e => e.OncePassRateTagValue).HasColumnType("DECIMAL").HasPrecision(precision: 16, scale: 5);
//班次,班次如何区分需备注(白班,晚班,中班)
b.Property(e => e.WorkShift).HasColumnType("VARCHAR").HasMaxLength(10);
//生产日期,格式(yyyy-MM-ddHH:mm:ss)
b.Property(e => e.StatisticalTime).HasColumnType("CHAR").HasMaxLength(19);
//值统计时间,格式(yyyy-MM-ddHH:mm:ss)
b.Property(e => e.DateTime).HasColumnType("CHAR").HasMaxLength(19);
b.Property(e => e.UId).HasColumnType("bigint").ValueGeneratedOnAdd().IsRequired();
b.Property(e => e.Remark).HasColumnType("NVarchar").HasMaxLength(500);
b.HasKey(e => e.UId);
});
}
}
}