diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicineQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicineQuestionViewModel.cs
index 5d162b35b..7333f6751 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicineQuestionViewModel.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingMedicineQuestionViewModel.cs
@@ -59,6 +59,25 @@ namespace IRaCIS.Core.Application.ViewModel
}
+
+ public class GetReadingMedicineTrialOtherQuestionOutDto
+ {
+ public Guid Id { get; set; }
+
+ public string QuestionName { get; set; }
+ }
+
+ ///
+ /// 获取项目的其他问题
+ ///
+ public class GetReadingMedicineTrialOtherQuestionInDto
+ {
+ public Guid TrialId { get; set; }
+
+ public Guid? Id { get; set; }
+ }
+
+
/// ReadingMedicineSystemQuestionAddOrEdit 列表查询参数模型
public class ReadingMedicineSystemQuestionAddOrEdit
{
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingMedicineQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingMedicineQuestionService.cs
index daa4c5353..175224cdf 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingMedicineQuestionService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingMedicineQuestionService.cs
@@ -58,6 +58,9 @@ namespace IRaCIS.Core.Application.Service
return ResponseOutput.Ok(entity.Id.ToString());
}
+
+
+
///
/// 删除系统的医学审核问题
///
@@ -66,6 +69,10 @@ namespace IRaCIS.Core.Application.Service
[HttpDelete("{id:guid}")]
public async Task DeleteReadingMedicineSystemQuestion(Guid id)
{
+ if (await _readingMedicineSystemQuestionRepository.AnyAsync(x => x.ParentId == id))
+ {
+ return ResponseOutput.NotOk("此问题存在子问题,请先删除子问题");
+ }
var success = await _readingMedicineSystemQuestionRepository.DeleteFromQueryAsync(t => t.Id == id);
var result = await _readingMedicineSystemQuestionRepository.SaveChangesAsync();
return ResponseOutput.Result(result);
@@ -104,6 +111,31 @@ namespace IRaCIS.Core.Application.Service
}
+ ///
+ /// 获取项目的其他医学审核问题
+ ///
+ ///
+ ///
+ [HttpPost]
+ public async Task> GetReadingMedicineTrialOtherQuestion(GetReadingMedicineTrialOtherQuestionInDto inDto)
+ {
+ var types = new List()
+ {
+ "select","radio"
+ };
+ var questionList = await _readingMedicineTrialQuestionRepository.Where(x => x.TrialId == inDto.TrialId)
+ .Where(x => types.Contains(x.Type))
+ .WhereIf(inDto.Id != null, x => x.Id != inDto.Id && x.ParentId != inDto.Id)
+ .Select(x => new GetReadingMedicineTrialOtherQuestionOutDto()
+ {
+ Id = x.Id,
+ QuestionName = x.QuestionName,
+ }).ToListAsync();
+
+ return questionList;
+ }
+
+
///
/// 删除项目的医学审核问题
///
@@ -112,6 +144,10 @@ namespace IRaCIS.Core.Application.Service
[HttpDelete("{id:guid}")]
public async Task DeleteReadingMedicineTrialQuestion(Guid id)
{
+ if (await _readingMedicineTrialQuestionRepository.AnyAsync(x => x.ParentId == id))
+ {
+ return ResponseOutput.NotOk("此问题存在子问题,请先删除子问题");
+ }
var success = await _readingMedicineTrialQuestionRepository.DeleteFromQueryAsync(t => t.Id == id);
var result = await _readingMedicineTrialQuestionRepository.SaveChangesAsync();
return ResponseOutput.Result(result);
diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs
index 219894afd..c0f3d4d10 100644
--- a/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ReadingQuestionService.cs
@@ -707,23 +707,6 @@ namespace IRaCIS.Application.Services
return questionList;
}
-
- /////
- ///// 设置问题为裁判问题
- /////
- /////
- //public async Task SetTrialQuestionIsIsJudgeQuestion(SetTrialQuestionIsIsJudgeQuestionInDto inDto)
- //{
- // var trialCriterionId = (await _readingQuestionTrialRepository.FirstOrDefaultAsync(x => x.Id == inDto.Id)).IfNullThrowException();
-
- // if (inDto.IsJudgeQuestion)
- // {
- // if()
- // }
-
-
- //}
-
///
/// 删除项目问题(项目)
///