1、三级安全教育 签到 添加字段 否则三级安全教育卡 直接显示签名 有问题

2、考试是否合格、成绩 等 做处理 不然直接有显示 与实际不合
3、三级安全教育卡 列表 按添加时间倒序排序 否则比较难找到对应的人员信息 列表添加对应字段的显示
4、三级安全教育卡 get方法修改  并响应修改前端
This commit is contained in:
wyw 2026-02-28 10:34:54 +08:00
parent dc72ed913d
commit 005630c792
6 changed files with 138013 additions and 50 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,25 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
namespace APT.Data.Migrations.Migrations
{
public partial class wyw2026022601 : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "ISSIGN",
table: "T_SE_NEW_USER_DETAIL",
type: "bit",
nullable: false,
defaultValue: false);
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "ISSIGN",
table: "T_SE_NEW_USER_DETAIL");
}
}
}

View File

@ -17346,17 +17346,12 @@ namespace APT.Data.Migrations.Migrations
b.Property<Guid?>("ENTITY_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("T_SE_SAFE_SURVEY_USERID")
.HasColumnType("uniqueidentifier");
b.Property<string>("VALUE")
.HasMaxLength(600)
.HasColumnType("nvarchar(600)");
b.HasKey("ID");
b.HasIndex("T_SE_SAFE_SURVEY_USERID");
b.ToTable("T_PF_PARAM");
});
@ -72637,6 +72632,9 @@ namespace APT.Data.Migrations.Migrations
b.Property<DateTime?>("IN_TIME")
.HasColumnType("datetime2");
b.Property<bool>("ISSIGN")
.HasColumnType("bit");
b.Property<bool>("IS_DELETED")
.HasColumnType("bit");
@ -73363,9 +73361,6 @@ namespace APT.Data.Migrations.Migrations
b.Property<Guid>("DEPARTMENT_ID")
.HasColumnType("uniqueidentifier");
b.Property<string>("DbConn")
.HasColumnType("nvarchar(max)");
b.Property<int>("ENTITY_ORG_TPYE")
.HasColumnType("int");
@ -73390,39 +73385,25 @@ namespace APT.Data.Migrations.Migrations
b.Property<DateTime?>("MODIFY_TIME")
.HasColumnType("datetime2");
b.Property<Guid?>("Nav_DepartmentID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("Nav_OrgID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("Nav_SurveyID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("Nav_UserID")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("ORG_ID")
.IsRequired()
.HasColumnType("uniqueidentifier");
b.Property<Guid>("SURVEY_ID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("TaskID")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("USER_ID")
.HasColumnType("uniqueidentifier");
b.HasKey("ID");
b.HasIndex("Nav_DepartmentID");
b.HasIndex("DEPARTMENT_ID");
b.HasIndex("Nav_OrgID");
b.HasIndex("ORG_ID");
b.HasIndex("Nav_SurveyID");
b.HasIndex("SURVEY_ID");
b.HasIndex("Nav_UserID");
b.HasIndex("USER_ID");
b.ToTable("T_SE_SAFE_SURVEY_USER");
});
@ -103415,13 +103396,6 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_Org");
});
modelBuilder.Entity("APT.Infrastructure.Core.T_PF_PARAM", b =>
{
b.HasOne("APT.MS.Domain.Entities.SE.T_SE_SAFE_SURVEY_USER", null)
.WithMany("Nav_SysParams")
.HasForeignKey("T_SE_SAFE_SURVEY_USERID");
});
modelBuilder.Entity("APT.MS.Domain.Entities.AE.T_AE_ACCIDENT_EVENT_DAMAGE_OBJECT", b =>
{
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
@ -124934,19 +124908,27 @@ namespace APT.Data.Migrations.Migrations
{
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_DEPARTMENT", "Nav_Department")
.WithMany()
.HasForeignKey("Nav_DepartmentID");
.HasForeignKey("DEPARTMENT_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.Infrastructure.Core.T_FM_ORGANIZATION", "Nav_Org")
.WithMany()
.HasForeignKey("Nav_OrgID");
.HasForeignKey("ORG_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.MS.Domain.Entities.SE.T_SE_SAFE_SURVEY", "Nav_Survey")
.WithMany("Nav_ListUsers")
.HasForeignKey("Nav_SurveyID");
.HasForeignKey("SURVEY_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("APT.BaseData.Domain.Entities.FM.T_FM_USER", "Nav_User")
.WithMany()
.HasForeignKey("Nav_UserID");
.HasForeignKey("USER_ID")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Nav_Department");
@ -137078,11 +137060,6 @@ namespace APT.Data.Migrations.Migrations
b.Navigation("Nav_Points");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SE.T_SE_SAFE_SURVEY_USER", b =>
{
b.Navigation("Nav_SysParams");
});
modelBuilder.Entity("APT.MS.Domain.Entities.SE.T_SE_TEST", b =>
{
b.Navigation("Nav_Points");

View File

@ -132,5 +132,12 @@ namespace APT.MS.Domain.Entities.SE
/// </summary>
[Description("下个部门")]
public T_FM_DEPARTMENT Nav_DepartmentNext { get; set; }
/// <summary>
/// 是否签到
/// </summary>
[Description("是否签到")]
public bool ISSIGN { get; set; } = false;
}
}

View File

@ -24,9 +24,9 @@ namespace APT.SC.WebApi.Controllers.Api.SE
public PagedActionResult<T_SE_NEW_USER_DETAIL> SEOrderPaged([FromBody] KeywordPageFilter pageFilter)
{
var recordfilter = new BaseFilter(pageFilter.GetOrgId());
recordfilter.SelectField = new string[] { "USER_ID", "Nav_User.NAME" };
recordfilter.SelectField = new string[] { "USER_ID", "Nav_User.NAME", "Nav_User.CREATE_TIME" };
var allUser = WitOrderPaged(null, pageFilter);
var totalUser = GetEntities<T_SE_NEW_USER_DETAIL>(null, pageFilter).Distinct(t => t.USER_ID);
var totalUser = GetEntities<T_SE_NEW_USER_DETAIL>(null, pageFilter).OrderByDescending(e => e.Nav_User.CREATE_TIME).Distinct(t => t.USER_ID);
allUser.Data = totalUser;
allUser.TotalCount = totalUser.Count();
return allUser;
@ -42,10 +42,24 @@ namespace APT.SC.WebApi.Controllers.Api.SE
return SafeExecute<dynamic>(() =>
{
dynamic ret = new System.Dynamic.ExpandoObject();
var userId = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "USERID").Value.ToString();
BaseFilter userFilter = new BaseFilter(filter.GetOrgId());
userFilter.Include = new string[] { "Nav_NewUser.Nav_Department", "Nav_NewUser.Nav_User", "Nav_NewUser.Nav_Content", "Nav_NewUser.Nav_Files.Nav_ImgFile", "Nav_User", "Nav_Department", "Nav_Post", "Nav_Files.Nav_ImgFile" };
var educard = GetEntities<T_SE_NEW_USER_DETAIL>(t => t.USER_ID == Guid.Parse(userId), userFilter).ToList();
string userId = string.Empty;
var userRule = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "USERID");
if (userRule == null)
userRule = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "USER_ID");
userId = userRule.Value.ToString();
IEnumerable<T_SE_NEW_USER_DETAIL> educard = null;
BaseFilter userFilter = null;
if (filter.Include == null || filter.Include.Count() < 1)
{
userFilter = new BaseFilter(filter.GetOrgId());
userFilter.Include = new string[] { "Nav_NewUser.Nav_Department", "Nav_NewUser.Nav_User", "Nav_NewUser.Nav_Content", "Nav_NewUser.Nav_Files.Nav_ImgFile", "Nav_User", "Nav_Department", "Nav_Post", "Nav_Files.Nav_ImgFile" };
educard = GetEntities<T_SE_NEW_USER_DETAIL>(t => t.USER_ID == Guid.Parse(userId), userFilter).ToList();
}
else
{
educard = GetEntities<T_SE_NEW_USER_DETAIL>(t => t.USER_ID == Guid.Parse(userId), filter).ToList();
}
ret = educard;
return ret;
});

View File

@ -533,6 +533,14 @@ namespace APT.SC.WebApi.Controllers.Api.SE
#endregion
}
#endregion
if (currDetail == null && userDetailList != null)
currDetail = userDetailList.FirstOrDefault(e => e.USER_ID == userID);
if (currDetail == null && currUserDeail != null)
currDetail = currUserDeail;
if (currDetail != null)
currDetail.ISSIGN = true;
UnifiedCommit(() =>
{
if (finishNotice != null)
@ -882,7 +890,7 @@ namespace APT.SC.WebApi.Controllers.Api.SE
userDetail.IN_TIME = user.CREATE_TIME;
userDetail.USER_POST_ID = user.USER_POST_ID;
userDetail.USER_DEPARTMENT_ID = user.USER_DEPARTMENT_ID;
userDetail.EXAMINATION_RESULTS = SEExaminationResultsEnum.;
//userDetail.EXAMINATION_RESULTS = SEExaminationResultsEnum.合格;//260228 不能直接上来就合格
#region NEXT_DEPARTMENT_ID