添加 阅片期添加类型字段
continuous-integration/drone/push Build is passing Details

Test_IRC_Net8
he 2025-10-31 18:16:14 +08:00
parent 0bd269f93e
commit 9b59a55423
11 changed files with 21143 additions and 0 deletions

View File

@ -7744,6 +7744,16 @@
任务名称
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModulePageListInDto.ReadingSetType">
<summary>
阅片配置的类型
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetReadModulePageListOutDto.ReadModuleAddTypeEnum">
<summary>
添加方式
</summary>
</member>
<member name="P:IRaCIS.Core.Application.Service.Reading.Dto.GetCanChangeReadVisitListInDto.SubjectId">
<summary>
受试者ID
@ -14086,6 +14096,13 @@
<param name="inQuery"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadModuleService.GetReadModulePageList(IRaCIS.Core.Application.Service.Reading.Dto.GetReadModulePageListInDto)">
<summary>
获取读片模块分页列表 //加了标准参数
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadModuleService.GetReadModule(IRaCIS.Core.Application.Service.Reading.Dto.GetReadModuleSingleIndto)">
<summary>
获取单条详情信息

View File

@ -1965,6 +1965,7 @@ namespace IRaCIS.Core.Application.Image.QA
SubjectVisitId = dbSubjectVisit.Id,
ModuleName = $"G-{dbSubjectVisit.VisitName}",
ModuleType = ModuleTypeEnum.Global,
ReadModuleAddTypeEnum= dbSubjectVisit.PDState == PDStateEnum.PDProgress? ReadModuleAddType.PDConfirmation : ReadModuleAddType.FinalVisit,
IsUrgent = dbSubjectVisit.IsUrgent,
TrialId = dbSubjectVisit.TrialId,
SubjectId = dbSubjectVisit.SubjectId

View File

@ -43,6 +43,72 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
public class GetReadModulePageListInDto : PageInput
{
public Guid TrialId { get; set; }
public string SubjectCode { get; set; }
public string VisitName { get; set; }
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }
/// <summary>
/// 阅片配置的类型
/// </summary>
public ReadingSetType? ReadingSetType { get; set; }
public ReadModuleAddType? ReadModuleAddTypeEnum { get; set; }
}
public class GetReadModulePageListOutDto
{
public Guid SubjectId { get; set; }
public string SubjectCode { get; set; }
public Guid TrialReadingCriterionId { get; set; }
public ModuleTypeEnum ModuleType { get; set; }
public string VisitName { get; set; } = string.Empty;
public string ModuleName { get; set; } = string.Empty;
public bool? IsUrgent { get; set; }
public Guid SubjectVisitId { get; set; }
public Guid? ReadingPeriodSetId { get; set; }
public Guid TrialId { get; set; }
public bool IsCRCConfirm { get; set; } = false;
public bool IsPMConfirm { get; set; } = false;
public bool IsNotNeedPMConfirm { get; set; } = false;
public bool IsCRCApplicationRevoke { get; set; } = false;
[Comment("临床数据是否完整")]
public bool? IsClinicalDataComplete { get; set; }
[Comment("临床数据是否盲化")]
public bool? IsClinicalDataBlind { get; set; }
[Comment("阅片配置的类型")]
public ReadingSetType ReadingSetType { get; set; }
/// <summary>
/// 添加方式
/// </summary>
public ReadModuleAddType ReadModuleAddTypeEnum { get; set; } = ReadModuleAddType.Normal;
public ReadingStatusEnum ReadingStatus { get; set; } = ReadingStatusEnum.TaskAllocate;
}
public class GetSubjectReadVisitsOutDto
{
public Guid SubjectVisitId { get; set; }

View File

@ -826,6 +826,28 @@ namespace IRaCIS.Core.Application.Service
//}
/// <summary>
/// 获取读片模块分页列表 //加了标准参数
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<PageOutput<GetReadModulePageListOutDto>> GetReadModulePageList(GetReadModulePageListInDto inDto)
{
var readModuleQueryable = _readModuleRepository
.Where(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId)
.WhereIf(inDto.ReadModuleAddTypeEnum != null, x => x.ReadModuleAddTypeEnum == inDto.ReadModuleAddTypeEnum)
.WhereIf(inDto.ReadingSetType != null, x => x.ReadingSetType == inDto.ReadingSetType)
.WhereIf(inDto.SubjectCode.IsNotNullOrEmpty(), x => x.Subject.Code.Contains(inDto.SubjectCode))
.WhereIf(inDto.VisitName.IsNotNullOrEmpty(), x => x.SubjectVisit.VisitName.Contains(inDto.VisitName))
.ProjectTo<GetReadModulePageListOutDto>(_mapper.ConfigurationProvider);
var pageList = await readModuleQueryable.ToPagedListAsync(inDto);
return pageList;
}
/// <summary>
/// 获取单条详情信息
@ -962,6 +984,7 @@ namespace IRaCIS.Core.Application.Service
SubjectId = dto.SubjectId,
ModuleType = moduleType,
IsUrgent = visit.IsUrgent,
ReadModuleAddTypeEnum=ReadModuleAddType.Normal,
ModuleName = dto.Name,
SubjectVisitId = visit.Id,
ReadingSetType = dto.ReadingSetType,

View File

@ -127,6 +127,8 @@ namespace IRaCIS.Core.Application.Service
}
/// <summary>
/// 删除
@ -185,6 +187,7 @@ namespace IRaCIS.Core.Application.Service
SubjectId = item.SubjectVisit.SubjectId,
ModuleType = item.ReadingPeriodSet.ReadingSetType == ReadingSetType.ImageReading ? ModuleTypeEnum.Global : ModuleTypeEnum.Oncology,
IsUrgent = item.SubjectVisit.IsUrgent,
ReadModuleAddTypeEnum = ReadModuleAddType.ReadingPlan,
ModuleName = item.ReadingPeriodSet.ReadingPeriodName,
SubjectVisitId = item.SubjectVisitId,
ReadingSetType = item.ReadingPeriodSet.ReadingSetType,

View File

@ -166,6 +166,7 @@ namespace IRaCIS.Core.Application.Triggers
//ReadingPeriodSetId = readingPeriodSet.Id,
Id = NewId.NextGuid(),
IsUrgent = subjectVisit.IsUrgent,
ReadModuleAddTypeEnum=ReadModuleAddType.FinalVisit,
SubjectVisitId = subjectVisitId,
ReadingStatus = ReadingStatusEnum.TaskAllocate,
SubjectId = subjectVisit.SubjectId,

View File

@ -1709,6 +1709,33 @@ public enum SUVChangeVSBaseline
DiseaseProgression = 4
}
/// <summary>
/// 阅片期添加方式
/// </summary>
public enum ReadModuleAddType
{
/// <summary>
/// 普通添加
/// </summary>
Normal = 0,
/// <summary>
/// 阅片期计划
/// </summary>
ReadingPlan = 1,
/// <summary>
/// PD确认
/// </summary>
PDConfirmation = 2,
/// <summary>
/// 末次访视
/// </summary>
FinalVisit = 3,
}
/// <summary>
/// 模块枚举
/// </summary>

View File

@ -72,5 +72,11 @@ public class ReadModule : BaseFullDeleteAuditEntity
[Comment("阅片配置的类型")]
public ReadingSetType ReadingSetType { get; set; }
/// <summary>
/// 添加方式
/// </summary>
public ReadModuleAddType ReadModuleAddTypeEnum { get; set; } = ReadModuleAddType.Normal;
public ReadingStatusEnum ReadingStatus { get; set; } = ReadingStatusEnum.TaskAllocate;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace IRaCIS.Core.Infra.EFCore.Migrations
{
/// <inheritdoc />
public partial class ReadModuleAddTypeEnum : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<int>(
name: "ReadModuleAddTypeEnum",
table: "ReadModule",
type: "int",
nullable: false,
defaultValue: 0);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "ReadModuleAddTypeEnum",
table: "ReadModule");
}
}
}

View File

@ -4915,6 +4915,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.HasColumnType("int")
.HasComment("模块类型");
b.Property<int>("ReadModuleAddTypeEnum")
.HasColumnType("int");
b.Property<Guid?>("ReadingPeriodSetId")
.HasColumnType("uniqueidentifier")
.HasComment("阅片计划ID");