diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs index caa6a67b9..1be9a39b4 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingQuestionViewModel.cs @@ -113,7 +113,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto [NotDefault] public Guid CriterionId { get; set; } - public string ParentCode { get; set; } + public string ParentCode { get; set; } = string.Empty; } diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs index 65340aeae..faf060990 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingCriterion/ReadingCriterionService.cs @@ -456,22 +456,9 @@ namespace IRaCIS.Core.Application.Service.RC public async Task> GetAssessType(GetAssessTypeInDto inDto) { List result = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId == inDto.CriterionId - && x.ParentCode == inDto.ParentCode ) - .Select(x => new CriterionDictionaryInfo() - { - Id = x.Id, - DictionaryId = x.DictionaryId, - ChildGroup = x.Dictionary.ChildGroup, - IsBaseLineUse = x.IsBaseLineUse, - IsFollowVisitUse=x.IsFollowVisitUse, - Code = x.Dictionary.Code, - Description = x.Dictionary.Description, - ShowOrder = x.Dictionary.ShowOrder, - ParentCode = x.Dictionary.Parent.Code, - Value = x.Dictionary.Value, - ValueCN = x.Dictionary.ValueCN - }).OrderBy(x => x.ParentCode).ThenBy(x => x.ShowOrder).ToListAsync(); + .WhereIf(!inDto.ParentCode.IsNullOrEmpty(), x => x.ParentCode ==inDto.ParentCode) + .ProjectTo(_mapper.ConfigurationProvider).OrderBy(x => x.ParentCode).ThenBy(x => x.ShowOrder).ToListAsync(); return result; }