修改触发逻辑
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-10-10 16:50:51 +08:00
parent b4c7ecbf9e
commit 84b2fc32b2
4 changed files with 125 additions and 14 deletions

View File

@ -0,0 +1,41 @@
//--------------------------------------------------------------------
// 此代码由liquid模板自动生成 byzhouhang 20240909
// 生成时间 2024-10-10 08:28:33Z
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using System;
using IRaCIS.Core.Domain.Share;
using System.Collections.Generic;
namespace IRaCIS.Core.Application.ViewModel;
public class EventStoreRecordView
{
public Guid? Id { get; set; }
public string EventData { get; set; }
public EventStateEnum EventState { get; set; }
public string EventType { get; set; }
public DateTime CreateTime { get; set; }
public DateTime UpdateTime { get; set; }
}
public class EventStoreRecordQuery : PageInput
{
public EventStateEnum? EventState { get; set; }
public string? EventType { get; set; }
}

View File

@ -0,0 +1,38 @@
//--------------------------------------------------------------------
// 此代码由liquid模板自动生成 byzhouhang 20240909
// 生成时间 2024-10-10 08:28:28Z
// 对此文件的更改可能会导致不正确的行为,并且如果重新生成代码,这些更改将会丢失。
//--------------------------------------------------------------------
using IRaCIS.Core.Domain.Models;
using Microsoft.AspNetCore.Mvc;
using IRaCIS.Core.Application.Interfaces;
using IRaCIS.Core.Application.ViewModel;
using IRaCIS.Core.Infrastructure.Extention;
using System.Threading.Tasks;
using IRaCIS.Core.Infra.EFCore;
namespace IRaCIS.Core.Application.Service;
[ApiExplorerSettings(GroupName = "Common")]
public class EventStoreRecordService(IRepository<EventStoreRecord> _eventStoreRecordRepository) : BaseService
{
[HttpPost]
public async Task<PageOutput<EventStoreRecordView>> GetEventStoreRecordList(EventStoreRecordQuery inQuery)
{
var eventStoreRecordQueryable = _eventStoreRecordRepository
.ProjectTo<EventStoreRecordView>(_mapper.ConfigurationProvider);
var pageList = await eventStoreRecordQueryable.ToPagedListAsync(inQuery);
return pageList;
}
}

View File

@ -64,11 +64,12 @@ public static class DBContext_Ext
{
var subjectVisit = entry.Entity;
//跟踪的方式查询 不会查询数据库多次
var findTrial = dbContext.Trial.Find(subjectVisit.TrialId);
////跟踪的方式查询 不会查询数据库多次
//var findTrial = dbContext.Trial.Find(subjectVisit.TrialId);
//入组或者PD 才执行下面的逻辑
if (findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView)
if (/*findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView && */
(subjectVisit.IsEnrollmentConfirm || subjectVisit.PDState == PDStateEnum.PDProgress))
{
var originSubmitState = entry.Property(p => p.SubmitState).OriginalValue;
var originAuditState = entry.Property(p => p.AuditState).OriginalValue;
@ -104,10 +105,10 @@ public static class DBContext_Ext
//跟踪的方式查询 不会查询数据库多次
var findSubjectVisit = dbContext.SubjectVisit.Find(qCChallengeDialog.SubjectVisitId);
var findTrial = dbContext.Trial.Find(findSubjectVisit.TrialId);
//var findTrial = dbContext.Trial.Find(findSubjectVisit.TrialId);
//入组或者PD 才执行下面的逻辑
if (findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView)
if ((findSubjectVisit.IsEnrollmentConfirm || findSubjectVisit.PDState == PDStateEnum.PDProgress))
{
//CRC 针对质控质疑进行回复
if (entry.State == EntityState.Added && qCChallengeDialog.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator)
@ -133,10 +134,9 @@ public static class DBContext_Ext
//跟踪的方式查询 不会查询数据库多次
var findSubjectVisit = dbContext.SubjectVisit.Find(checkChallengeDialog.SubjectVisitId);
var findTrial = dbContext.Trial.Find(findSubjectVisit.TrialId);
//入组或者PD 才执行下面的逻辑
if (findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView)
if ((findSubjectVisit.IsEnrollmentConfirm || findSubjectVisit.PDState == PDStateEnum.PDProgress))
{
//CRC 针对质控质疑进行回复
if (entry.State == EntityState.Added && checkChallengeDialog.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator)
@ -162,10 +162,21 @@ public static class DBContext_Ext
//跟踪的方式查询 不会查询数据库多次
var findVisitTask = dbContext.VisitTask.Find(taskMedicalReview.VisitTaskId);
var findTrial = dbContext.Trial.Find(findVisitTask.TrialId);
var findSubjectVisit = new SubjectVisit();
if (findVisitTask.SourceSubjectVisitId != null)
{
findSubjectVisit = dbContext.SubjectVisit.Find(findVisitTask.SourceSubjectVisitId);
}
else
{
var readMoudule = dbContext.ReadModule.Find(findVisitTask.SouceReadModuleId);
findSubjectVisit = dbContext.SubjectVisit.Find(readMoudule.SubjectVisitId);
}
//入组或者PD 才执行下面的逻辑
if (findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView)
if (findSubjectVisit.IsEnrollmentConfirm || findSubjectVisit.PDState == PDStateEnum.PDProgress)
{
if (entry.State == EntityState.Added)
@ -186,10 +197,19 @@ public static class DBContext_Ext
//跟踪的方式查询 不会查询数据库多次
var findVisitTask = dbContext.VisitTask.Find(readingMedicalReviewDialog.VisitTaskId);
var findTrial = dbContext.Trial.Find(findVisitTask.TrialId);
var findSubjectVisit = new SubjectVisit();
if (findVisitTask.SourceSubjectVisitId != null)
{
findSubjectVisit = dbContext.SubjectVisit.Find(findVisitTask.SourceSubjectVisitId);
}
else
{
var readMoudule = dbContext.ReadModule.Find(findVisitTask.SouceReadModuleId);
findSubjectVisit = dbContext.SubjectVisit.Find(readMoudule.SubjectVisitId);
}
//入组或者PD 才执行下面的逻辑
if (findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView)
if (findSubjectVisit.IsEnrollmentConfirm || findSubjectVisit.PDState == PDStateEnum.PDProgress)
{
if (entry.State == EntityState.Added && readingMedicalReviewDialog.UserTypeEnumInt == (int)UserTypeEnum.MIM)
{
@ -212,12 +232,20 @@ public static class DBContext_Ext
{
var visitTask = entry.Entity;
var findSubjectVisit = new SubjectVisit();
//跟踪的方式查询 不会查询数据库多次
var findTrial = dbContext.Trial.Find(visitTask.TrialId);
if (visitTask.SourceSubjectVisitId != null)
{
findSubjectVisit = dbContext.SubjectVisit.Find(visitTask.SourceSubjectVisitId);
}
else
{
var readMoudule = dbContext.ReadModule.Find(visitTask.SouceReadModuleId);
findSubjectVisit = dbContext.SubjectVisit.Find(readMoudule.SubjectVisitId);
}
//入组或者PD 才执行下面的逻辑
if (findTrial != null && findTrial.IsEnrollementQualificationConfirm && findTrial.IsPDProgressView)
if (findSubjectVisit.IsEnrollmentConfirm || findSubjectVisit.PDState == PDStateEnum.PDProgress)
{
var originReReadingApplyState = entry.Property(p => p.ReReadingApplyState).OriginalValue;

View File

@ -63,4 +63,8 @@
<ProjectReference Include="..\IRaCIS.Core.Infra.EFCore\IRaCIS.Core.Infra.EFCore.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="LiquidTemplateOutPut\" />
</ItemGroup>
</Project>