diff --git a/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs b/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs index 7b44a644..b4932a69 100644 --- a/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs +++ b/IRaCIS.Core.Application/Service/Common/DTO/DictionaryModel.cs @@ -100,6 +100,9 @@ namespace IRaCIS.Application.Contracts public Guid Id { get; set; } public string Code { get; set; } = string.Empty; + public int Count { get; set; } + public int ShowOrder { get; set; } + public string Description { get; set; } = string.Empty; } diff --git a/IRaCIS.Core.Application/Service/Common/DictionaryService.cs b/IRaCIS.Core.Application/Service/Common/DictionaryService.cs index 553e0f35..fd536c00 100644 --- a/IRaCIS.Core.Application/Service/Common/DictionaryService.cs +++ b/IRaCIS.Core.Application/Service/Common/DictionaryService.cs @@ -236,7 +236,7 @@ namespace IRaCIS.Application.Services /// public async Task> GetBasicConfigSelect(string searchKey) { - var searchList = await _dicRepository.Where(t => t.ConfigDictionary.Code == searchKey && t.ParentId == null && t.IsEnable).ProjectTo(_mapper.ConfigurationProvider).OrderBy(x=>x.Code).ToListAsync(); + var searchList = await _dicRepository.Where(t => t.ConfigDictionary.Code == searchKey && t.ParentId == null && t.IsEnable).ProjectTo(_mapper.ConfigurationProvider).OrderBy(x=>x.ShowOrder).ToListAsync(); return searchList; } @@ -248,17 +248,22 @@ namespace IRaCIS.Application.Services public async Task> GetCriterionDictionaryList(GetCriterionDictionaryListInDto inDto) { var criterionCodes= await _systemCriterionDictionaryCodeRepository.Where(x => x.SystemCriterionId == inDto.SystemCriterionId).ToListAsync(); + + var parentCodes = await _readingCriterionDictionaryRepository.Where(x => x.CriterionId== inDto.SystemCriterionId).Select(x => x.ParentCode).ToListAsync(); + + var codes = criterionCodes.Select(x=>x.Code).ToList(); - - var dictionaryList = await _dicRepository.Where(x => codes.Contains(x.Code)) + + var dictionaryList = await _dicRepository.Where(x => codes.Contains(x.Code) && x.ParentId == null) .OrderBy(x => x.ShowOrder).Select(x => new GetCriterionDictionaryListOutDto() { Code = x.Code, + ShowOrder = x.ShowOrder, Description = x.Description }).ToListAsync(); dictionaryList.ForEach(x => { - + x.Count = parentCodes.Count(y => y == x.Code); x.Id = criterionCodes.Where(y => y.Code == x.Code).Select(x => x.Id).FirstOrDefault(); }); diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index 4b26c46f..61d0ea7d 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -1489,7 +1489,7 @@ namespace IRaCIS.Application.Services rowInfo.IsCurrentTaskAdd = isCurrentTaskAdd; rowInfo.NumberOfFrames = inDto.NumberOfFrames; rowInfo.FristAddTaskNum = taskinfo.VisitTaskNum; - rowInfo.FristAddTaskId = rowInfo.Id; + rowInfo.FristAddTaskId = inDto.VisitTaskId; rowInfo.PicturePath = inDto.PicturePath; rowInfo.RowIndex = inDto.RowIndex; rowInfo.OrganInfoId = inDto.OrganInfoId;