This commit is contained in:
何美荣 2025-11-28 16:08:38 +08:00
commit 32f9fa3f02
10 changed files with 273234 additions and 1 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,98 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class wyw2025112801 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<int>(
name: "ENABLE_STATUS",
table: "T_SE_TRAIN_RECORD_USER",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<int>(
name: "EXAMETIMES",
table: "T_SE_TRAIN_RECORD_USER",
type: "int",
nullable: false,
defaultValue: 1);
migrationBuilder.AddColumn<Guid>(
name: "RECORD_UUSER_ID",
table: "T_SE_TRAIN_RECORD_PAPER",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.AddColumn<Guid>(
name: "USER_ID_TEACHER",
table: "T_SE_TRAIN_NOTIFY",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.CreateIndex(
name: "IX_T_SE_TRAIN_RECORD_PAPER_RECORD_UUSER_ID",
table: "T_SE_TRAIN_RECORD_PAPER",
column: "RECORD_UUSER_ID");
migrationBuilder.CreateIndex(
name: "IX_T_SE_TRAIN_NOTIFY_USER_ID_TEACHER",
table: "T_SE_TRAIN_NOTIFY",
column: "USER_ID_TEACHER");
migrationBuilder.AddForeignKey(
name: "FK_T_SE_TRAIN_NOTIFY_T_FM_USER_USER_ID_TEACHER",
table: "T_SE_TRAIN_NOTIFY",
column: "USER_ID_TEACHER",
principalTable: "T_FM_USER",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
migrationBuilder.AddForeignKey(
name: "FK_T_SE_TRAIN_RECORD_PAPER_T_SE_TRAIN_RECORD_USER_RECORD_UUSER_ID",
table: "T_SE_TRAIN_RECORD_PAPER",
column: "RECORD_UUSER_ID",
principalTable: "T_SE_TRAIN_RECORD_USER",
principalColumn: "ID",
onDelete: ReferentialAction.Restrict);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_T_SE_TRAIN_NOTIFY_T_FM_USER_USER_ID_TEACHER",
table: "T_SE_TRAIN_NOTIFY");
migrationBuilder.DropForeignKey(
name: "FK_T_SE_TRAIN_RECORD_PAPER_T_SE_TRAIN_RECORD_USER_RECORD_UUSER_ID",
table: "T_SE_TRAIN_RECORD_PAPER");
migrationBuilder.DropIndex(
name: "IX_T_SE_TRAIN_RECORD_PAPER_RECORD_UUSER_ID",
table: "T_SE_TRAIN_RECORD_PAPER");
migrationBuilder.DropIndex(
name: "IX_T_SE_TRAIN_NOTIFY_USER_ID_TEACHER",
table: "T_SE_TRAIN_NOTIFY");
migrationBuilder.DropColumn(
name: "ENABLE_STATUS",
table: "T_SE_TRAIN_RECORD_USER");
migrationBuilder.DropColumn(
name: "EXAMETIMES",
table: "T_SE_TRAIN_RECORD_USER");
migrationBuilder.DropColumn(
name: "RECORD_UUSER_ID",
table: "T_SE_TRAIN_RECORD_PAPER");
migrationBuilder.DropColumn(
name: "USER_ID_TEACHER",
table: "T_SE_TRAIN_NOTIFY");
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,35 @@
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class wyw2025112802 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<int>(
name: "IN_OUT",
table: "T_SE_TRAIN_NOTIFY",
type: "int",
nullable: false,
defaultValue: 5);
migrationBuilder.AddColumn<int>(
name: "TRAINTYPE",
table: "T_SE_TRAIN_NOTIFY",
type: "int",
nullable: false,
defaultValue: 50);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IN_OUT",
table: "T_SE_TRAIN_NOTIFY");
migrationBuilder.DropColumn(
name: "TRAINTYPE",
table: "T_SE_TRAIN_NOTIFY");
}
}
}

View File

@ -74055,6 +74055,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<decimal>("HOURS") b.Property<decimal>("HOURS")
.HasColumnType("decimal(18,2)"); .HasColumnType("decimal(18,2)");
b.Property<int>("IN_OUT")
.HasColumnType("int");
b.Property<bool>("IS_DELETED") b.Property<bool>("IS_DELETED")
.HasColumnType("bit"); .HasColumnType("bit");
@ -74099,6 +74102,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<int>("STATUS") b.Property<int>("STATUS")
.HasColumnType("int"); .HasColumnType("int");
b.Property<int>("TRAINTYPE")
.HasColumnType("int");
b.Property<string>("TRAIN_ADDR") b.Property<string>("TRAIN_ADDR")
.HasMaxLength(100) .HasMaxLength(100)
.HasColumnType("nvarchar(100)"); .HasColumnType("nvarchar(100)");
@ -74130,6 +74136,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<Guid?>("TRAIN_TYPE") b.Property<Guid?>("TRAIN_TYPE")
.HasColumnType("uniqueidentifier"); .HasColumnType("uniqueidentifier");
b.Property<Guid?>("USER_ID_TEACHER")
.HasColumnType("uniqueidentifier");
b.HasKey("ID"); b.HasKey("ID");
b.HasIndex("LAUNCH_DEPARTMENT_ID"); b.HasIndex("LAUNCH_DEPARTMENT_ID");
@ -74144,6 +74153,8 @@ namespace APT.Data.Migrations.Migrations
b.HasIndex("TRAIN_TYPE"); b.HasIndex("TRAIN_TYPE");
b.HasIndex("USER_ID_TEACHER");
b.ToTable("T_SE_TRAIN_NOTIFY"); b.ToTable("T_SE_TRAIN_NOTIFY");
}); });
@ -74801,6 +74812,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<Guid>("RECORD_ID") b.Property<Guid>("RECORD_ID")
.HasColumnType("uniqueidentifier"); .HasColumnType("uniqueidentifier");
b.Property<Guid?>("RECORD_UUSER_ID")
.HasColumnType("uniqueidentifier");
b.Property<int>("SCORE") b.Property<int>("SCORE")
.HasColumnType("int"); .HasColumnType("int");
@ -74816,6 +74830,8 @@ namespace APT.Data.Migrations.Migrations
b.HasIndex("RECORD_ID"); b.HasIndex("RECORD_ID");
b.HasIndex("RECORD_UUSER_ID");
b.HasIndex("TEST_ID"); b.HasIndex("TEST_ID");
b.HasIndex("USER_ID"); b.HasIndex("USER_ID");
@ -74943,9 +74959,15 @@ namespace APT.Data.Migrations.Migrations
.HasMaxLength(50) .HasMaxLength(50)
.HasColumnType("nvarchar(50)"); .HasColumnType("nvarchar(50)");
b.Property<int>("ENABLE_STATUS")
.HasColumnType("int");
b.Property<int>("ENTITY_ORG_TPYE") b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int"); .HasColumnType("int");
b.Property<int>("EXAMETIMES")
.HasColumnType("int");
b.Property<int?>("EXAMINATION_RESULTS") b.Property<int?>("EXAMINATION_RESULTS")
.HasColumnType("int"); .HasColumnType("int");
@ -124080,6 +124102,11 @@ namespace APT.Data.Migrations.Migrations
.HasForeignKey("TRAIN_TYPE") .HasForeignKey("TRAIN_TYPE")
.OnDelete(DeleteBehavior.Restrict); .OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER", "Nav_UserTeacher")
.WithMany()
.HasForeignKey("USER_ID_TEACHER")
.OnDelete(DeleteBehavior.Restrict);
b.Navigation("Nav_LaunchDepartment"); b.Navigation("Nav_LaunchDepartment");
b.Navigation("Nav_LaunchUser"); b.Navigation("Nav_LaunchUser");
@ -124091,6 +124118,8 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_TrainDepartment"); b.Navigation("Nav_TrainDepartment");
b.Navigation("Nav_TrainType"); b.Navigation("Nav_TrainType");
b.Navigation("Nav_UserTeacher");
}); });
modelBuilder.Entity("APT.MS.Domain.Entities.SE.T_SE_TRAIN_NOTIFY_CONTENT_REL", b => modelBuilder.Entity("APT.MS.Domain.Entities.SE.T_SE_TRAIN_NOTIFY_CONTENT_REL", b =>
@ -124345,6 +124374,11 @@ namespace APT.Data.Migrations.Migrations
.OnDelete(DeleteBehavior.Restrict) .OnDelete(DeleteBehavior.Restrict)
.IsRequired(); .IsRequired();
b.HasOne("APT.MS.Domain.Entities.SE.T_SE_TRAIN_RECORD_USER", "Nav_RecordUser")
.WithMany()
.HasForeignKey("RECORD_UUSER_ID")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("APT.MS.Domain.Entities.SE.T_SE_TEST", "Nav_Test") b.HasOne("APT.MS.Domain.Entities.SE.T_SE_TEST", "Nav_Test")
.WithMany() .WithMany()
.HasForeignKey("TEST_ID") .HasForeignKey("TEST_ID")
@ -124359,6 +124393,8 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_Record"); b.Navigation("Nav_Record");
b.Navigation("Nav_RecordUser");
b.Navigation("Nav_Test"); b.Navigation("Nav_Test");
b.Navigation("Nav_User"); b.Navigation("Nav_User");

View File

@ -10519,6 +10519,7 @@ builder.Property(t => t.NAME).HasMaxLength(100);
builder.HasOne(t => t.Nav_TrainType).WithMany().HasForeignKey(t => t.TRAIN_TYPE).OnDelete(DeleteBehavior.Restrict); builder.HasOne(t => t.Nav_TrainType).WithMany().HasForeignKey(t => t.TRAIN_TYPE).OnDelete(DeleteBehavior.Restrict);
builder.Property(t => t.TRAIN_ADDR).HasMaxLength(100); builder.Property(t => t.TRAIN_ADDR).HasMaxLength(100);
builder.Property(t => t.TRAIN_TEACHER).HasMaxLength(100); builder.Property(t => t.TRAIN_TEACHER).HasMaxLength(100);
builder.HasOne(t => t.Nav_UserTeacher).WithMany().HasForeignKey(t => t.USER_ID_TEACHER).OnDelete(DeleteBehavior.Restrict);
builder.Property(t => t.TRAIN_MODEL).HasMaxLength(50); builder.Property(t => t.TRAIN_MODEL).HasMaxLength(50);
builder.Property(t => t.TRAIN_PLAN).HasMaxLength(500); builder.Property(t => t.TRAIN_PLAN).HasMaxLength(500);
builder.Ignore(t => t.PUBLISH); builder.Ignore(t => t.PUBLISH);
@ -10593,7 +10594,8 @@ builder.HasOne(t => t.Nav_ImgFile).WithMany().HasForeignKey(t => t.IMG_FILE_ID).
public override void Configure(EntityTypeBuilder<T_SE_TRAIN_RECORD_PAPER> builder) public override void Configure(EntityTypeBuilder<T_SE_TRAIN_RECORD_PAPER> builder)
{ {
base.Configure(builder); base.Configure(builder);
builder.HasOne(t => t.Nav_Record).WithMany(t=>t.Nav_Papers).HasForeignKey(t => t.RECORD_ID).OnDelete(DeleteBehavior.Restrict); builder.HasOne(t => t.Nav_RecordUser).WithMany().HasForeignKey(t => t.RECORD_UUSER_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Record).WithMany(t=>t.Nav_Papers).HasForeignKey(t => t.RECORD_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_User).WithMany().HasForeignKey(t => t.USER_ID).OnDelete(DeleteBehavior.Restrict); builder.HasOne(t => t.Nav_User).WithMany().HasForeignKey(t => t.USER_ID).OnDelete(DeleteBehavior.Restrict);
builder.HasOne(t => t.Nav_Test).WithMany().HasForeignKey(t => t.TEST_ID).OnDelete(DeleteBehavior.Restrict); builder.HasOne(t => t.Nav_Test).WithMany().HasForeignKey(t => t.TEST_ID).OnDelete(DeleteBehavior.Restrict);
} }

View File

@ -128,6 +128,23 @@ namespace APT.MS.Domain.Entities.SE
[FormFieldEdit] [FormFieldEdit]
[FormFieldQuery] [FormFieldQuery]
public string TRAIN_TEACHER { get; set; } public string TRAIN_TEACHER { get; set; }
/// <summary>
/// 培训老师
/// </summary>
[Description("培训老师")]
[FormFieldTable]
[FormFieldEdit]
[FormFieldQuery]
[DataFieldForeignKey("Nav_UserTeacher")]
public Guid? USER_ID_TEACHER { get; set; }
/// <summary>
/// 培训老师
/// </summary>
[Description("培训老师")]
public T_FM_USER Nav_UserTeacher { get; set; }
/// <summary> /// <summary>
/// 培训形式 /// 培训形式
/// </summary> /// </summary>
@ -246,5 +263,20 @@ namespace APT.MS.Domain.Entities.SE
/// 培训计划明细ID /// 培训计划明细ID
/// </summary> /// </summary>
public Guid? PLANDETAILID { get; set; } public Guid? PLANDETAILID { get; set; }
/// <summary>
/// 培训性质
/// </summary>
[Description("培训性质")]
[FormFieldEdit]
public TrainInOut IN_OUT { get; set; }
/// <summary>
/// 培训形式 线上培训/线下培训 委外培训
/// </summary>
[Description("培训形式")]
[FormFieldEdit]
[EnumName("TrainType")]
public TrainType TRAINTYPE { get; set; }
} }
} }

View File

@ -10,6 +10,19 @@ namespace APT.MS.Domain.Entities.SE
[Description("人员试题")] [Description("人员试题")]
public class T_SE_TRAIN_RECORD_PAPER : MesEntityBase public class T_SE_TRAIN_RECORD_PAPER : MesEntityBase
{ {
/// <summary>
/// 人员试卷 必填
/// </summary>
[Description("人员试卷")]
[FormFieldEdit]
[DataFieldForeignKey("Nav_RecordUser")]
public Guid? RECORD_UUSER_ID { get; set; }
/// <summary>
/// 人员试卷
/// </summary>
[Description("人员试卷")]
public T_SE_TRAIN_RECORD_USER Nav_RecordUser { get; set; }
/// <summary> /// <summary>
/// 培训记录 /// 培训记录
/// </summary> /// </summary>
@ -21,6 +34,7 @@ namespace APT.MS.Domain.Entities.SE
/// </summary> /// </summary>
[Description("导航: 培训记录")] [Description("导航: 培训记录")]
public T_SE_TRAIN_RECORD Nav_Record { get; set; } public T_SE_TRAIN_RECORD Nav_Record { get; set; }
/// <summary> /// <summary>
/// 人员ID /// 人员ID
/// </summary> /// </summary>
@ -44,6 +58,7 @@ namespace APT.MS.Domain.Entities.SE
/// </summary> /// </summary>
[Description("导航: 试题")] [Description("导航: 试题")]
public T_SE_TEST Nav_Test { get; set; } public T_SE_TEST Nav_Test { get; set; }
/// <summary> /// <summary>
/// 答案 与Nav_Test.ANSWER一致为零则表示还未答题 /// 答案 与Nav_Test.ANSWER一致为零则表示还未答题
/// </summary> /// </summary>

View File

@ -1,4 +1,5 @@
using APT.BaseData.Domain.Entities.FM; using APT.BaseData.Domain.Entities.FM;
using APT.BaseData.Domain.Enums;
using APT.Infrastructure.Core; using APT.Infrastructure.Core;
using APT.MS.Domain.Enums; using APT.MS.Domain.Enums;
using System; using System;
@ -71,5 +72,23 @@ namespace APT.MS.Domain.Entities.SE
[FormFieldTable] [FormFieldTable]
[EnumName("SETrainRecordUserStatusEnum")] [EnumName("SETrainRecordUserStatusEnum")]
public SETrainRecordUserStatusEnum STATUS { get; set; } public SETrainRecordUserStatusEnum STATUS { get; set; }
/// <summary>
///考试次数
/// </summary>
[Description("考试次数")]
[FormFieldTable]
[FormFieldEdit]
public int EXAMETIMES { get; set; } = 1;
/// <summary>
/// 启用标志
/// </summary>
[Description("启用标志")]
[FormFieldTable]
[FormFieldEdit]
[FormFieldQuery]
[EnumName("FMEnableStatusEnum")]
public FMEnableStatusEnum ENABLE_STATUS { get; set; }
} }
} }

View File

@ -2253,6 +2253,8 @@ namespace APT.PP.WebApi.Controllers.Api.PP
modelNotify.CREATE_NOTIFY_RECORD = true; modelNotify.CREATE_NOTIFY_RECORD = true;
modelNotify.CHECKTYPE = item.CHECKTYPE; modelNotify.CHECKTYPE = item.CHECKTYPE;
modelNotify.IN_OUT = item.IN_OUT;
modelNotify.TRAINTYPE = item.TRAINTYPE;
modelNotify.TRAIN_TYPE = TRAIN_TYPE; modelNotify.TRAIN_TYPE = TRAIN_TYPE;
modelNotify.LEVEL = LEVEL; modelNotify.LEVEL = LEVEL;
modelNotify.HOURS = item.CLASSHOUR;//培训学时 modelNotify.HOURS = item.CLASSHOUR;//培训学时