diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 36b4996e2..bb1d7f69c 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -3859,6 +3859,12 @@
仲裁规则
+
+
+ 阅片信息签名时间
+
+
+
阅片模式
@@ -3961,6 +3967,27 @@
+ 标准
+
+
+
+
+ 阅片信息签名时间
+
+
+
+
+ 修约小数点
+
+
+
+
+ 项目标准Id
+
+
+
+
+ 项目分页
仲裁阅片
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
index bc50df039..3e8de2292 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
@@ -375,6 +375,9 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
/// 标准ID
///
public Guid CriterionId { get; set; }
+
+
+ public Guid? ReadingCriterionPageId { get; set; }
}
public class GetTrialCriterionOtherQuestionInDto
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs
index cc01522d2..c0f766df0 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs
@@ -693,7 +693,7 @@ namespace IRaCIS.Application.Services
}
}
- if (await _readingQuestionTrialRepository.AnyAsync(x => x.Id != indto.Id && x.ShowOrder == indto.ShowOrder&&x.TrialId==indto.TrialId&&x.ReadingQuestionCriterionTrialId==indto.ReadingQuestionCriterionTrialId))
+ if (await _readingQuestionTrialRepository.AnyAsync(x => x.Id != indto.Id && x.ShowOrder == indto.ShowOrder&&x.TrialId==indto.TrialId&&x.ReadingQuestionCriterionTrialId==indto.ReadingQuestionCriterionTrialId&&x.ReadingCriterionPageId==indto.ReadingCriterionPageId))
{
throw new BusinessValidationFailedException("问题编号重复");
}
@@ -770,6 +770,7 @@ namespace IRaCIS.Application.Services
public async Task> GetTrialGroupNameList(GetTrialGroupNameListInDto inDto)
{
var result = await _readingQuestionTrialRepository.Where(x => x.ReadingQuestionCriterionTrialId == inDto.CriterionId && x.Type == "group")
+ .WhereIf(inDto.ReadingCriterionPageId!=null,x=>x.ReadingCriterionPageId==inDto.ReadingCriterionPageId)
.Select(x => x.GroupName).ToListAsync();
return result;
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs
index b50072ee5..36af9c449 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/DTO/TrialConfigDTO.cs
@@ -328,6 +328,18 @@ namespace IRaCIS.Core.Application.Contracts
public int ArbitrationRule { get; set; } = 2;
+ ///
+ /// 阅片信息签名时间
+ ///
+ public DateTime? ReadingInfoSignTime { get; set; }
+
+ public bool IsSign {
+ get {
+ return this.ReadingInfoSignTime != null;
+ }
+ }
+
+
/////
///// 全局阅片
@@ -361,9 +373,9 @@ namespace IRaCIS.Core.Application.Contracts
-
-
+
+
}
public class ReadingCriterionPageDto
@@ -536,6 +548,20 @@ namespace IRaCIS.Core.Application.Contracts
public class GetTrialReadingCriterionInfoOutDto
{
+
+ ///
+ /// 阅片信息签名时间
+ ///
+ public DateTime? ReadingInfoSignTime { get; set; }
+
+ public bool IsSign
+ {
+ get
+ {
+ return this.ReadingInfoSignTime != null;
+ }
+ }
+
///
/// 修约小数点
///
diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs
index a6b6740e8..cdd9ebc2c 100644
--- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs
+++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialConfigService.cs
@@ -119,7 +119,7 @@ namespace IRaCIS.Core.Application
GetTrialReadingCriterionInfoOutDto result = new GetTrialReadingCriterionInfoOutDto();
result.ReadingCriterionPageList = await _readingCriterionPageRepository.Where(x => x.TrialId == inDto.TrialId).ProjectTo(_mapper.ConfigurationProvider).ToListAsync();
var trialCriterion = await _readingQuestionCriterionTrialRepository.Where(x => x.TrialId == inDto.TrialId && x.IsConfirm).FirstOrDefaultAsync();
-
+ result.ReadingInfoSignTime = await _trialRepository.Where(x => x.Id == inDto.TrialId).Select(x=>x.ReadingInfoSignTime).FirstOrDefaultAsync();
if (trialCriterion != null)
{
result.DigitPlaces = trialCriterion.DigitPlaces;