diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 0147f746b..d3787cbc9 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -11331,6 +11331,13 @@
+
+
+ 获取系统计算问题
+
+
+
+
获取表格问题
@@ -11338,6 +11345,13 @@
+
+
+ 获取系统表格问题
+
+
+
+
获取系统问题分组
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
index 4edabb87c..cd1dc59f4 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs
@@ -1556,6 +1556,18 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }
}
+
+
+ public class GetSystemCalculateQuestionsInDto
+ {
+ [NotDefault]
+ public Guid SystemCriterionId { get; set; }
+
+
+ public string Type { get; set; }
+
+ }
+
public class GetCalculateQuestionsInDto
{
[NotDefault]
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs
index 886b79fde..a3ff0b0b3 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingQuestionService.cs
@@ -126,6 +126,50 @@ namespace IRaCIS.Core.Application.Service
return result;
}
+ ///
+ /// 获取系统计算问题
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task> GetSystemCalculateQuestions(GetSystemCalculateQuestionsInDto inDto)
+ {
+ var result = await _readingQuestionSystemRepository
+
+ .Where(x => x.ReadingQuestionCriterionSystemId == inDto.SystemCriterionId)
+ .WhereIf(!inDto.Type.IsNullOrEmpty(), x => x.Type == inDto.Type)
+ .OrderBy(x => x.ShowOrder)
+ .Select(x => new GetCalculateQuestionsOutDto
+ ()
+ {
+ QuestionId = x.Id,
+ QuestionName = x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)
+
+ }).ToListAsync();
+
+ var tablequestion = await _readingTableQuestionSystemRepository.Where(x => x.SystemCriterionId == inDto.SystemCriterionId && x.Type == "number").Select(x =>
+ new
+ {
+ QuestionId = x.Id,
+ x.ReadingQuestionId,
+ QuestionName = x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)
+ }).ToListAsync();
+
+
+ result.ForEach(x =>
+ {
+ x.TableQuestions = tablequestion.Where(y => x.QuestionId == y.ReadingQuestionId).Select(y => new CalculateQuestion()
+ {
+
+ QuestionId = y.QuestionId,
+ QuestionName = y.QuestionName
+
+ }).ToList();
+ });
+
+ return result;
+ }
+
///
/// 获取表格问题
@@ -152,7 +196,30 @@ namespace IRaCIS.Core.Application.Service
return result;
}
+ ///
+ /// 获取系统表格问题
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task> GetSystemCalculateTableQuestions(GetCalculateTableQuestionsInDto inDto)
+ {
+ var result = await _readingTableQuestionSystemRepository
+
+ .Where(x => x.ReadingQuestionId == inDto.QuestionId)
+ .WhereIf(!inDto.Type.IsNullOrEmpty(), x => x.Type == inDto.Type)
+ .OrderBy(x => x.ShowOrder)
+ .Select(x => new GetCalculateTableQuestionsOutDto
+ ()
+ {
+ QuestionId = x.Id,
+ QuestionName = x.QuestionName.LanguageName(x.QuestionEnName, _userInfo.IsEn_Us)
+
+ }).ToListAsync();
+
+ return result;
+ }
#endregion