Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
commit
5ed24c209f
|
|
@ -40,12 +40,12 @@ namespace IRaCIS.Core.API
|
||||||
var dbType = configuration.GetSection("ConnectionStrings:Db_Type").Value;
|
var dbType = configuration.GetSection("ConnectionStrings:Db_Type").Value;
|
||||||
if (!string.IsNullOrWhiteSpace(dbType) && dbType == "pgsql")
|
if (!string.IsNullOrWhiteSpace(dbType) && dbType == "pgsql")
|
||||||
{
|
{
|
||||||
options.UseNpgsql(configuration.GetSection("ConnectionStrings:RemoteNew").Value, contextOptionsBuilder => contextOptionsBuilder.EnableRetryOnFailure());
|
options.UseNpgsql(configuration.GetSection("ConnectionStrings:RemoteNew").Value, contextOptionsBuilder => contextOptionsBuilder.EnableRetryOnFailure().CommandTimeout(90));
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
options.UseSqlServer(configuration.GetSection("ConnectionStrings:RemoteNew").Value, contextOptionsBuilder => contextOptionsBuilder.EnableRetryOnFailure()/*.CommandTimeout(60)*/);
|
options.UseSqlServer(configuration.GetSection("ConnectionStrings:RemoteNew").Value, contextOptionsBuilder => contextOptionsBuilder.EnableRetryOnFailure().CommandTimeout(90));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17039,17 +17039,17 @@
|
||||||
</member>
|
</member>
|
||||||
<member name="F:IRaCIS.Core.Application.ViewModel.AccessToDialogueEnum.Question">
|
<member name="F:IRaCIS.Core.Application.ViewModel.AccessToDialogueEnum.Question">
|
||||||
<summary>
|
<summary>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
质疑
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="F:IRaCIS.Core.Application.ViewModel.AccessToDialogueEnum.Consistency">
|
<member name="F:IRaCIS.Core.Application.ViewModel.AccessToDialogueEnum.Consistency">
|
||||||
<summary>
|
<summary>
|
||||||
һ<EFBFBD><EFBFBD><EFBFBD>Ժ˲<EFBFBD>
|
一致性核查
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.ViewModel.CopyFrontAuditConfigItemDto">
|
<member name="T:IRaCIS.Core.Application.ViewModel.CopyFrontAuditConfigItemDto">
|
||||||
<summary>
|
<summary>
|
||||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
复制
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:IRaCIS.Core.Application.ViewModel.SystemNoticeView">
|
<member name="T:IRaCIS.Core.Application.ViewModel.SystemNoticeView">
|
||||||
|
|
|
||||||
|
|
@ -289,7 +289,7 @@ namespace IRaCIS.Application.Contracts
|
||||||
public List<TrialCriterionReadingCategory> CriterionReadingCategoryList { get; set; }
|
public List<TrialCriterionReadingCategory> CriterionReadingCategoryList { get; set; }
|
||||||
|
|
||||||
//任务阅片状态
|
//任务阅片状态
|
||||||
public List<DoctorUserTask> ReadingTaskStateList { get; set; } = new List<DoctorUserTask>();
|
public List<DoctorTaskStat> ReadingTaskStateList { get; set; } = new List<DoctorTaskStat>();
|
||||||
|
|
||||||
public List<CriterionFile> CriterionFileList { get; set; } = new List<CriterionFile>();
|
public List<CriterionFile> CriterionFileList { get; set; } = new List<CriterionFile>();
|
||||||
|
|
||||||
|
|
@ -299,11 +299,17 @@ namespace IRaCIS.Application.Contracts
|
||||||
new CriterionReadingCategory()
|
new CriterionReadingCategory()
|
||||||
{
|
{
|
||||||
EnrollId = EnrollId,
|
EnrollId = EnrollId,
|
||||||
PendingCount = ReadingTaskStateList.Where(x => x.ReadingTaskState != ReadingTaskState.HaveSigned && x.TrialReadingCriterionId == t.TrialReadingCriterionId).Count(),
|
//PendingCount = ReadingTaskStateList.Where(x => x.ReadingTaskState != ReadingTaskState.HaveSigned && x.TrialReadingCriterionId == t.TrialReadingCriterionId).Count(),
|
||||||
|
|
||||||
ComplectedCount = ReadingTaskStateList.Where(x => x.ReadingTaskState == ReadingTaskState.HaveSigned && x.TrialReadingCriterionId == t.TrialReadingCriterionId).Count(),
|
//ComplectedCount = ReadingTaskStateList.Where(x => x.ReadingTaskState == ReadingTaskState.HaveSigned && x.TrialReadingCriterionId == t.TrialReadingCriterionId).Count(),
|
||||||
|
|
||||||
TotalCount = ReadingTaskStateList.Where(x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).Count(),
|
//TotalCount = ReadingTaskStateList.Where(x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).Count(),
|
||||||
|
|
||||||
|
PendingCount = ReadingTaskStateList.Where(x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).FirstOrDefault()?.PendingCount,
|
||||||
|
|
||||||
|
ComplectedCount = ReadingTaskStateList.Where(x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).FirstOrDefault()?.ComplectedCount,
|
||||||
|
|
||||||
|
TotalCount = ReadingTaskStateList.Where(x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).FirstOrDefault()?.TotalCount,
|
||||||
|
|
||||||
StatementCriterionFileList = CriterionFileList.Where(x => x.CriterionType == t.CriterionType && x.FileType == CriterionFileType.Statement)
|
StatementCriterionFileList = CriterionFileList.Where(x => x.CriterionType == t.CriterionType && x.FileType == CriterionFileType.Statement)
|
||||||
.WhereIf(t.CriterionType == CriterionType.SelfDefine, x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).ToList(),
|
.WhereIf(t.CriterionType == CriterionType.SelfDefine, x => x.TrialReadingCriterionId == t.TrialReadingCriterionId).ToList(),
|
||||||
|
|
@ -348,6 +354,19 @@ namespace IRaCIS.Application.Contracts
|
||||||
public Guid TrialReadingCriterionId { get; set; }
|
public Guid TrialReadingCriterionId { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public class DoctorTaskStat
|
||||||
|
{
|
||||||
|
public CriterionType? CriterionType { get; set; }
|
||||||
|
|
||||||
|
public Guid TrialReadingCriterionId { get; set; }
|
||||||
|
|
||||||
|
public int PendingCount { get; set; }
|
||||||
|
|
||||||
|
public int ComplectedCount { get; set; }
|
||||||
|
|
||||||
|
public int TotalCount { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
public class TrialReadingCriterionDto
|
public class TrialReadingCriterionDto
|
||||||
{
|
{
|
||||||
public ReadingOrder IsReadingTaskViewInOrder { get; set; }
|
public ReadingOrder IsReadingTaskViewInOrder { get; set; }
|
||||||
|
|
@ -435,11 +454,11 @@ namespace IRaCIS.Application.Contracts
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 待办数量
|
/// 待办数量
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int PendingCount { get; set; }
|
public int? PendingCount { get; set; }
|
||||||
|
|
||||||
public int ComplectedCount { get; set; }
|
public int? ComplectedCount { get; set; }
|
||||||
|
|
||||||
public int TotalCount { get; set; }
|
public int? TotalCount { get; set; }
|
||||||
|
|
||||||
public List<CriterionFile> StatementCriterionFileList { get; set; }
|
public List<CriterionFile> StatementCriterionFileList { get; set; }
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -118,7 +118,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
/// <param name="inDto"></param>
|
/// <param name="inDto"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
//[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
//[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
||||||
[TrialGlobalLimit( "AfterStopCannNotOpt" )]
|
[TrialGlobalLimit("AfterStopCannNotOpt")]
|
||||||
public async Task<IResponseOutput> SetEnrollReadingCategory(SetEnrollReadingCategoryInDto inDto)
|
public async Task<IResponseOutput> SetEnrollReadingCategory(SetEnrollReadingCategoryInDto inDto)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
@ -167,7 +167,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
/// <param name="inCommand"></param>
|
/// <param name="inCommand"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
//[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
//[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
||||||
[TrialGlobalLimit( "AfterStopCannNotOpt" )]
|
[TrialGlobalLimit("AfterStopCannNotOpt")]
|
||||||
public async Task<IResponseOutput> UpdateTrialReviewerState(SetEnrollEnableCommand inCommand)
|
public async Task<IResponseOutput> UpdateTrialReviewerState(SetEnrollEnableCommand inCommand)
|
||||||
{
|
{
|
||||||
await _taskAllocationRuleRepository.UpdatePartialFromQueryAsync(t => t.TrialId == inCommand.TrialId && t.EnrollId == inCommand.EnrollId, u => new TaskAllocationRule() { IsEnable = inCommand.IsEnable }, true);
|
await _taskAllocationRuleRepository.UpdatePartialFromQueryAsync(t => t.TrialId == inCommand.TrialId && t.EnrollId == inCommand.EnrollId, u => new TaskAllocationRule() { IsEnable = inCommand.IsEnable }, true);
|
||||||
|
|
@ -181,7 +181,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpPost("{trialId}/{doctorId}/{type}")]
|
[HttpPost("{trialId}/{doctorId}/{type}")]
|
||||||
[TrialGlobalLimit( "AfterStopCannNotOpt" )]
|
[TrialGlobalLimit("AfterStopCannNotOpt")]
|
||||||
//[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
//[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
||||||
public async Task<IResponseOutput> UpdateReviewerReadingType(Guid trialId, Guid doctorId, int type)
|
public async Task<IResponseOutput> UpdateReviewerReadingType(Guid trialId, Guid doctorId, int type)
|
||||||
{
|
{
|
||||||
|
|
@ -218,7 +218,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
TrialReadingCriterionList = intoGroup.Trial.TrialReadingCriterionList.Where(t => t.IsConfirm).Select(t => new TrialReadingCriterionDto() { TrialReadingCriterionId = t.Id, TrialReadingCriterionName = t.CriterionName, CriterionType = t.CriterionType, IsOncologyReading = t.IsOncologyReading, IsArbitrationReading = t.IsArbitrationReading, IsGlobalReading = t.IsGlobalReading, ReadingInfoSignTime = t.ReadingInfoSignTime, ReadingType = t.ReadingType }).ToList(),
|
TrialReadingCriterionList = intoGroup.Trial.TrialReadingCriterionList.Where(t => t.IsConfirm).Select(t => new TrialReadingCriterionDto() { TrialReadingCriterionId = t.Id, TrialReadingCriterionName = t.CriterionName, CriterionType = t.CriterionType, IsOncologyReading = t.IsOncologyReading, IsArbitrationReading = t.IsArbitrationReading, IsGlobalReading = t.IsGlobalReading, ReadingInfoSignTime = t.ReadingInfoSignTime, ReadingType = t.ReadingType }).ToList(),
|
||||||
|
|
||||||
DoctorCriterionStatusList = intoGroup.EnrollReadingCriteriaList.Where(t=>t.TrialReadingCriterion.IsConfirm).Select(t => new DoctorCriterionStatus()
|
DoctorCriterionStatusList = intoGroup.EnrollReadingCriteriaList.Where(t => t.TrialReadingCriterion.IsConfirm).Select(t => new DoctorCriterionStatus()
|
||||||
{
|
{
|
||||||
EnrollId = t.Id,
|
EnrollId = t.Id,
|
||||||
Id = t.Id,
|
Id = t.Id,
|
||||||
|
|
@ -230,7 +230,7 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
CriterionReadingCategoryList = intoGroup.EnrollReadingCategoryList.Where(t => t.TrialReadingCriterion.IsConfirm).Select(t => new TrialCriterionReadingCategory() { EnrollId = t.EnrollId, ReadingCategory = t.ReadingCategory, TrialReadingCriterionId = t.TrialReadingCriterionId }).ToList(),
|
CriterionReadingCategoryList = intoGroup.EnrollReadingCategoryList.Where(t => t.TrialReadingCriterion.IsConfirm).Select(t => new TrialCriterionReadingCategory() { EnrollId = t.EnrollId, ReadingCategory = t.ReadingCategory, TrialReadingCriterionId = t.TrialReadingCriterionId }).ToList(),
|
||||||
|
|
||||||
CriterionFileList = doctor.CriterionFileList.Where(t => t.TrialReadingCriterion.IsConfirm || t.TrialReadingCriterionId==null).Where(x => x.IsEnable && (x.TrialId == null || x.TrialId == trialId)).Select(x => new CriterionFile()
|
CriterionFileList = doctor.CriterionFileList.Where(t => t.TrialReadingCriterion.IsConfirm || t.TrialReadingCriterionId == null).Where(x => x.IsEnable && (x.TrialId == null || x.TrialId == trialId)).Select(x => new CriterionFile()
|
||||||
{
|
{
|
||||||
CriterionType = x.CriterionType,
|
CriterionType = x.CriterionType,
|
||||||
DoctorId = x.DoctorId,
|
DoctorId = x.DoctorId,
|
||||||
|
|
@ -242,13 +242,17 @@ namespace IRaCIS.Core.Application.Service
|
||||||
Id = x.Id
|
Id = x.Id
|
||||||
}).ToList(),
|
}).ToList(),
|
||||||
|
|
||||||
ReadingTaskStateList = intoGroup.DoctorUser.VisitTaskList.Where(t => t.TrialReadingCriterion.IsConfirm).Where(x => x.TaskState == TaskState.Effect && x.TrialId == trialId).Select(x => new DoctorUserTask()
|
//ReadingTaskStateList = intoGroup.DoctorUser.VisitTaskList.Where(t => t.TrialReadingCriterion.IsConfirm).Where(x => x.TaskState == TaskState.Effect && x.TrialId == trialId).GroupBy(x => new { x.TrialReadingCriterionId, x.TrialReadingCriterion.CriterionType }).Select(g => new DoctorTaskStat()
|
||||||
{
|
//{
|
||||||
ReadingTaskState = x.ReadingTaskState,
|
|
||||||
TrialReadingCriterionId = x.TrialReadingCriterionId,
|
|
||||||
CriterionType = x.TrialReadingCriterion.CriterionType,
|
|
||||||
|
|
||||||
}).ToList(),
|
|
||||||
|
// PendingCount = g.Count(x => x.ReadingTaskState != ReadingTaskState.HaveSigned),
|
||||||
|
// TotalCount = g.Count(),
|
||||||
|
// ComplectedCount = g.Count(x => x.ReadingTaskState == ReadingTaskState.HaveSigned),
|
||||||
|
// TrialReadingCriterionId = g.Key.TrialReadingCriterionId,
|
||||||
|
// CriterionType = g.Key.CriterionType,
|
||||||
|
|
||||||
|
//}).ToList(),
|
||||||
|
|
||||||
DoctorId = doctor.Id,
|
DoctorId = doctor.Id,
|
||||||
Code = doctor.ReviewerCode,
|
Code = doctor.ReviewerCode,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue