|
|
@ -33,8 +33,8 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
private readonly IRepository<QuestionSubjectType> _questionSubjectTypeRepository; |
|
|
private readonly IRepository<QuestionSubjectType> _questionSubjectTypeRepository; |
|
|
private readonly IRepository<DiseaseRisk> _diseaseRiskRepository; |
|
|
private readonly IRepository<DiseaseRisk> _diseaseRiskRepository; |
|
|
private readonly IRepository<DiseaseRiskLevel> _diseaseRiskLevelRepository; |
|
|
private readonly IRepository<DiseaseRiskLevel> _diseaseRiskLevelRepository; |
|
|
private readonly IRepository<QuestionAnswerRiskLevel> _diseaseRiskLevelAnswerRepository; |
|
|
|
|
|
private readonly IRepository<DiseaseRiskLevelAsbitem> _diseaseRiskLevelAsbitemRepository; |
|
|
|
|
|
|
|
|
private readonly IRepository<QuestionAnswerRiskLevel> _questionAnswerRiskLevelRepository; |
|
|
|
|
|
private readonly IRepository<QuestionAnswerAsbitem> _questionAnswerAsbitemRepository; |
|
|
private readonly IRepository<Asbitem> _asbitemRepository; |
|
|
private readonly IRepository<Asbitem> _asbitemRepository; |
|
|
private readonly QuestionRegisterManager _questionRegisterManager; |
|
|
private readonly QuestionRegisterManager _questionRegisterManager; |
|
|
private readonly IUnitOfWorkManager _unitOfWorkManager; |
|
|
private readonly IUnitOfWorkManager _unitOfWorkManager; |
|
|
@ -49,8 +49,8 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
IRepository<QuestionSubjectType> questionSubjectTypeRepository, |
|
|
IRepository<QuestionSubjectType> questionSubjectTypeRepository, |
|
|
IRepository<DiseaseRisk> diseaseRiskRepository, |
|
|
IRepository<DiseaseRisk> diseaseRiskRepository, |
|
|
IRepository<DiseaseRiskLevel> diseaseRiskLevelRepository, |
|
|
IRepository<DiseaseRiskLevel> diseaseRiskLevelRepository, |
|
|
IRepository<QuestionAnswerRiskLevel> diseaseRiskLevelAnswerRepository, |
|
|
|
|
|
IRepository<DiseaseRiskLevelAsbitem> diseaseRiskLevelAsbitemRepository, |
|
|
|
|
|
|
|
|
IRepository<QuestionAnswerRiskLevel> questionAnswerRiskLevelRepository, |
|
|
|
|
|
IRepository<QuestionAnswerAsbitem> questionAnswerAsbitemRepository, |
|
|
IRepository<Asbitem> asbitemRepository, |
|
|
IRepository<Asbitem> asbitemRepository, |
|
|
SysParmValueManager sysParmValueManager) |
|
|
SysParmValueManager sysParmValueManager) |
|
|
{ |
|
|
{ |
|
|
@ -64,8 +64,8 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
_questionSubjectTypeRepository = questionSubjectTypeRepository; |
|
|
_questionSubjectTypeRepository = questionSubjectTypeRepository; |
|
|
_diseaseRiskRepository = diseaseRiskRepository; |
|
|
_diseaseRiskRepository = diseaseRiskRepository; |
|
|
_diseaseRiskLevelRepository = diseaseRiskLevelRepository; |
|
|
_diseaseRiskLevelRepository = diseaseRiskLevelRepository; |
|
|
_diseaseRiskLevelAnswerRepository = diseaseRiskLevelAnswerRepository; |
|
|
|
|
|
_diseaseRiskLevelAsbitemRepository = diseaseRiskLevelAsbitemRepository; |
|
|
|
|
|
|
|
|
_questionAnswerRiskLevelRepository = questionAnswerRiskLevelRepository; |
|
|
|
|
|
_questionAnswerAsbitemRepository = questionAnswerAsbitemRepository; |
|
|
_asbitemRepository = asbitemRepository; |
|
|
_asbitemRepository = asbitemRepository; |
|
|
_sysParmValueManager = sysParmValueManager; |
|
|
_sysParmValueManager = sysParmValueManager; |
|
|
} |
|
|
} |
|
|
@ -364,15 +364,15 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
join diseaseRiskLevel in await _diseaseRiskLevelRepository.GetQueryableAsync() |
|
|
join diseaseRiskLevel in await _diseaseRiskLevelRepository.GetQueryableAsync() |
|
|
on diseaseRisk.DiseaseRiskId equals diseaseRiskLevel.DiseaseRiskId into emptyDiseaseRiskLevel |
|
|
on diseaseRisk.DiseaseRiskId equals diseaseRiskLevel.DiseaseRiskId into emptyDiseaseRiskLevel |
|
|
from haveDiseaseRiskLevel in emptyDiseaseRiskLevel.DefaultIfEmpty() |
|
|
from haveDiseaseRiskLevel in emptyDiseaseRiskLevel.DefaultIfEmpty() |
|
|
join diseaseRiskLevelAnswer in await _diseaseRiskLevelAnswerRepository.GetQueryableAsync() |
|
|
|
|
|
on haveDiseaseRiskLevel.DiseaseRiskLevelId equals diseaseRiskLevelAnswer.DiseaseRiskLevelId into emptyDiseaseRiskLevelAnswer |
|
|
|
|
|
from haveDiseaseRiskLevelAnswer in emptyDiseaseRiskLevelAnswer.DefaultIfEmpty() |
|
|
|
|
|
|
|
|
join questionAnswerRiskLevel in await _questionAnswerRiskLevelRepository.GetQueryableAsync() |
|
|
|
|
|
on haveDiseaseRiskLevel.DiseaseRiskLevelId equals questionAnswerRiskLevel.DiseaseRiskLevelId into emptyQuestionAnswerRiskLevel |
|
|
|
|
|
from haveQuestionAnswerRiskLevel in emptyQuestionAnswerRiskLevel.DefaultIfEmpty() |
|
|
orderby diseaseRisk.DisplayOrder |
|
|
orderby diseaseRisk.DisplayOrder |
|
|
select new |
|
|
select new |
|
|
{ |
|
|
{ |
|
|
diseaseRisk, |
|
|
diseaseRisk, |
|
|
haveDiseaseRiskLevel, |
|
|
haveDiseaseRiskLevel, |
|
|
haveDiseaseRiskLevelAnswer |
|
|
|
|
|
|
|
|
haveQuestionAnswerRiskLevel |
|
|
}).ToList(); |
|
|
}).ToList(); |
|
|
|
|
|
|
|
|
var questionRegisterDiseaseRiskDtos = diseaseRisks.GroupBy(o => o.diseaseRisk) |
|
|
var questionRegisterDiseaseRiskDtos = diseaseRisks.GroupBy(o => o.diseaseRisk) |
|
|
@ -392,9 +392,9 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
DiseaseRiskLevel matchDiseaseRiskLevel = null; |
|
|
DiseaseRiskLevel matchDiseaseRiskLevel = null; |
|
|
foreach (var diseaseRiskLevel in diseaseRiskLevels) |
|
|
foreach (var diseaseRiskLevel in diseaseRiskLevels) |
|
|
{ |
|
|
{ |
|
|
if (questionRegisterItems.Where(o => diseaseRiskLevel.haveDiseaseRiskLevelAnswer != null && |
|
|
|
|
|
|
|
|
if (questionRegisterItems.Where(o => diseaseRiskLevel.haveQuestionAnswerRiskLevel != null && |
|
|
o.questionRegisterAnswer.QuestionAnswerId == |
|
|
o.questionRegisterAnswer.QuestionAnswerId == |
|
|
diseaseRiskLevel.haveDiseaseRiskLevelAnswer.QuestionAnswerId).Any()) |
|
|
|
|
|
|
|
|
diseaseRiskLevel.haveQuestionAnswerRiskLevel.QuestionAnswerId).Any()) |
|
|
{ |
|
|
{ |
|
|
if (diseaseRiskLevel.haveDiseaseRiskLevel != null) |
|
|
if (diseaseRiskLevel.haveDiseaseRiskLevel != null) |
|
|
{ |
|
|
{ |
|
|
@ -443,10 +443,13 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
var diseaseRiskList = await GetDiseaseRiskListByPersonIdAsync(new PersonAppointInputDto() { PersonId = input.PersonId }); |
|
|
var diseaseRiskList = await GetDiseaseRiskListByPersonIdAsync(new PersonAppointInputDto() { PersonId = input.PersonId }); |
|
|
var personDiseaseRisk = diseaseRiskList.Where(o => o.DiseaseRiskId == input.DiseaseRiskId).First(); |
|
|
var personDiseaseRisk = diseaseRiskList.Where(o => o.DiseaseRiskId == input.DiseaseRiskId).First(); |
|
|
var diseaseRiskLevel = diseaseRiskLevels.Where(o => o.DiseaseRiskLevelId == personDiseaseRisk.DiseaseRiskLevelId).FirstOrDefault(); |
|
|
var diseaseRiskLevel = diseaseRiskLevels.Where(o => o.DiseaseRiskLevelId == personDiseaseRisk.DiseaseRiskLevelId).FirstOrDefault(); |
|
|
var asbitems = (from diseaseRiskLevelAsbitem in await _diseaseRiskLevelAsbitemRepository.GetQueryableAsync() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var asbitems = (from questionAnswerAsbitem in await _questionAnswerAsbitemRepository.GetQueryableAsync() |
|
|
join asbitem in await _asbitemRepository.GetQueryableAsync() |
|
|
join asbitem in await _asbitemRepository.GetQueryableAsync() |
|
|
on diseaseRiskLevelAsbitem.AsbitemId equals asbitem.AsbitemId |
|
|
|
|
|
where diseaseRiskLevelAsbitem.DiseaseRiskLevelId == diseaseRiskLevel.DiseaseRiskLevelId |
|
|
|
|
|
|
|
|
on questionAnswerAsbitem.AsbitemId equals asbitem.AsbitemId |
|
|
|
|
|
join questionAnswerRiskLevel in await _questionAnswerRiskLevelRepository.GetQueryableAsync() |
|
|
|
|
|
on questionAnswerAsbitem.QuestionAnswerId equals questionAnswerRiskLevel.QuestionAnswerId |
|
|
|
|
|
where questionAnswerRiskLevel.DiseaseRiskLevelId == diseaseRiskLevel.DiseaseRiskLevelId |
|
|
orderby asbitem.DisplayOrder |
|
|
orderby asbitem.DisplayOrder |
|
|
select asbitem).ToList(); |
|
|
select asbitem).ToList(); |
|
|
|
|
|
|
|
|
@ -491,10 +494,10 @@ namespace Shentun.WebPeis.QuestionRegisters |
|
|
on questionRegisterItem.QuestionId equals question.QuestionId |
|
|
on questionRegisterItem.QuestionId equals question.QuestionId |
|
|
join questionSubjectType in await _questionSubjectTypeRepository.GetQueryableAsync() |
|
|
join questionSubjectType in await _questionSubjectTypeRepository.GetQueryableAsync() |
|
|
on question.QuestionSubjectTypeId equals questionSubjectType.QuestionSubjectTypeId |
|
|
on question.QuestionSubjectTypeId equals questionSubjectType.QuestionSubjectTypeId |
|
|
join diseaseRiskLevelAnswer in await _diseaseRiskLevelAnswerRepository.GetQueryableAsync() |
|
|
|
|
|
on questionAnswer.QuestionAnswerId equals diseaseRiskLevelAnswer.QuestionAnswerId |
|
|
|
|
|
|
|
|
join questionAnswerRiskLevel in await _questionAnswerRiskLevelRepository.GetQueryableAsync() |
|
|
|
|
|
on questionAnswer.QuestionAnswerId equals questionAnswerRiskLevel.QuestionAnswerId |
|
|
where questionRegisterItem.QuestionRegisterId == questionRegister.QuestionRegisterId && |
|
|
where questionRegisterItem.QuestionRegisterId == questionRegister.QuestionRegisterId && |
|
|
diseaseRiskLevelAnswer.DiseaseRiskLevelId == diseaseRiskLevel.DiseaseRiskLevelId && |
|
|
|
|
|
|
|
|
questionAnswerRiskLevel.DiseaseRiskLevelId == diseaseRiskLevel.DiseaseRiskLevelId && |
|
|
questionAnswer.IsNone == 'N' |
|
|
questionAnswer.IsNone == 'N' |
|
|
orderby questionSubjectType.DisplayOrder |
|
|
orderby questionSubjectType.DisplayOrder |
|
|
select new |
|
|
select new |
|
|
|