public class QuestionnaireAnswerServiceImpl extends Object implements QuestionnaireAnswerService
| Modifier and Type | Class and Description |
|---|---|
protected static class |
QuestionnaireAnswerServiceImpl.ConditionType |
NO, YES| Constructor and Description |
|---|
QuestionnaireAnswerServiceImpl() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
checkIfQuestionnaireIsActiveForModule(Integer questionnaireId,
String moduleItemCode,
String moduleSubItemCode)
This method checks if the latest questionnaire instance associated with the given questionnaire ID is active and that it
has the given module and sub-module codes in one of its usages.
|
List<AnswerHeader> |
copyAnswerHeaders(ModuleQuestionnaireBean srcModuleQuestionnaireBean,
ModuleQuestionnaireBean destModuleQuestionnaireBean)
Copy all of the answer headers associated with a source ModuleQuestionnaireBean and associate them with a destination ModuleQuestionnaire Bean.
|
protected List<AnswerHeader> |
copyAnswerHeadersToNewModuleQB(ModuleQuestionnaireBean srcModuleQuestionnaireBean,
ModuleQuestionnaireBean destModuleQuestionnaireBean)
Copy all of the answer headers associated with a source ModuleQuestionnaireBean and associate them with a destination
ModuleQuestionnaire Bean.
|
void |
copyAnswerToNewVersion(AnswerHeader oldAnswerHeader,
AnswerHeader newAnswerHeader)
This method is to update questionnaire answers to new version and also copy the answers from the olld version if question is
in not updated to new version.
|
List<AnswerHeader> |
getAnswerHeadersForProtocol(ModuleQuestionnaireBean moduleQuestionnaireBean,
String protocolNumber)
This method is to get all the questionnaire answer for the protocol.
|
List<AnswerHeader> |
getAnswerHeadersForProtocol(String protocolNumber)
This method is to get all the questionnaire answer for the protocol.
|
protected List<String> |
getAssociateedQuestionnaireIds(ModuleQuestionnaireBean moduleQuestionnaireBean) |
protected List<Answer> |
getChildQuestions(Questionnaire questionnaire,
QuestionnaireQuestion question) |
KrmsRulesExecutionService |
getKrmsRulesExecutionService() |
protected Questionnaire |
getLatestQuestionnaireVersion(Integer questionnaireId)
This method returns the latest questionnaire instance associated with the given questionnaire ID; the latest instance
is the one with the largest sequence number.
|
ModuleQuestionnaireBean |
getModuleSpecificBean(AnswerHeader answerHeader)
Based on the data in the answer header, rebuild the module specific ModuleQuestionnaireBean.
|
ModuleQuestionnaireBean |
getModuleSpecificBean(String moduleItemCode,
String moduleItemKey,
String moduleSubItemCode,
String moduleSubItemKey,
boolean finalDoc)
Based on the moduleItemCode and moduleSubItemCode rebuilds the module specific ModuleQuestionnaireBean.
|
AnswerHeader |
getNewVersionAnswerHeader(ModuleQuestionnaireBean moduleQuestionnaireBean,
Questionnaire questionnaire)
This method to create new questionnaire answer header for the new version questionnaire if user selected not to copy answers
from old version.
|
List<AnswerHeader> |
getNewVersionOfQuestionnaireAnswer(ModuleQuestionnaireBean moduleQuestionnaireBean)
This method is to get a new version of existing questionnaire answer or set up the associate questionnaire answer for the module keys
specified in ModuleQuestionnaireBean.
|
List<QuestionnaireUsage> |
getPublishedQuestionnaire(ModuleQuestionnaireBean moduleQuestionnaireBean)
Get the questionnaire usages for a module and submodule.
|
List<AnswerHeader> |
getQuestionnaireAnswer(ModuleQuestionnaireBean moduleQuestionnaireBean)
This will be called when 'questionnaire' page is clicked.
|
protected QuestionnaireService |
getQuestionnaireService() |
boolean |
hasVisibleQuestion(List<Answer> answers)
Checks to see that at least one answer was matched by the rule and is visible.
|
protected List<AnswerHeader> |
initAnswerHeaders(ModuleQuestionnaireBean moduleQuestionnaireBean,
Map<String,AnswerHeader> answerHeaderMap) |
protected List<List<Answer>> |
initParentAnswers(List<Answer> answers) |
protected boolean |
isAnswerMatched(String condition,
String parentAnswer,
String conditionValue) |
protected boolean |
isAnyAnswerMatched(String condition,
List<Answer> parentAnswers,
String conditionValue) |
protected boolean |
isParentNotDisplayed(List<Answer> parentAnswers) |
boolean |
isQuestionnaireAnswerComplete(List<Answer> answers)
check if the questionnaire is complete.
|
protected boolean |
isSameLevel(Answer oldAnswer,
List<List<Answer>> oldParentAnswers,
Answer newAnswer,
List<List<Answer>> newParentAnswers) |
protected void |
moveAnswer(List<Answer> answers,
int index) |
void |
preSave(List<AnswerHeader> answerHeaders)
This method is move answer for multiple answer question if needed and also update 'completed' flag.
|
protected List<AnswerHeader> |
retrieveAnswerHeaders(ModuleQuestionnaireBean moduleQuestionnaireBean) |
void |
setBusinessObjectService(org.kuali.rice.krad.service.BusinessObjectService businessObjectService) |
void |
setKrmsRulesExecutionService(KrmsRulesExecutionService krmsRulesExecutionService) |
void |
setParameterService(org.kuali.rice.coreservice.framework.parameter.ParameterService parameterService) |
void |
setProtocolFinderDao(ProtocolFinderDao protocolFinderDao) |
void |
setQuestionnaireService(QuestionnaireService questionnaireService) |
protected AnswerHeader |
setupAnswerForQuestionnaire(Questionnaire questionnaire,
ModuleQuestionnaireBean moduleQuestionnaireBean) |
protected List<Answer> |
setupAnswersForQuestion(QuestionnaireQuestion questionnaireQuestion) |
void |
setupChildAnswerIndicator(AnswerHeader answerHeader)
This method update whether a child question is going to be displayed or hidden based on parent's answer and condition.
|
protected List<List<Answer>> |
setupParentAnswers(List<Answer> answers) |
List<AnswerHeader> |
versioningQuestionnaireAnswer(ModuleQuestionnaireBean moduleQuestionnaireBean,
Integer newSequenceNumber)
This method is to copy questionnaire from old protocol to the new protocol version.
|
public List<QuestionnaireUsage> getPublishedQuestionnaire(ModuleQuestionnaireBean moduleQuestionnaireBean)
QuestionnaireAnswerServicegetPublishedQuestionnaire in interface QuestionnaireAnswerServiceprotected List<AnswerHeader> initAnswerHeaders(ModuleQuestionnaireBean moduleQuestionnaireBean, Map<String,AnswerHeader> answerHeaderMap)
public AnswerHeader getNewVersionAnswerHeader(ModuleQuestionnaireBean moduleQuestionnaireBean, Questionnaire questionnaire)
QuestionnaireAnswerServicepublic List<AnswerHeader> versioningQuestionnaireAnswer(ModuleQuestionnaireBean moduleQuestionnaireBean, Integer newSequenceNumber)
QuestionnaireAnswerServiceversioningQuestionnaireAnswer in interface QuestionnaireAnswerServiceorg.kuali.kra.questionnaire.answer.QuestionnaireAnswerService#versioningQuestionnaireAnswer(org.kuali.kra.questionnaire.answer.ModuleQuestionnaireBean)protected List<AnswerHeader> copyAnswerHeadersToNewModuleQB(ModuleQuestionnaireBean srcModuleQuestionnaireBean, ModuleQuestionnaireBean destModuleQuestionnaireBean)
srcModuleQuestionnaireBean - the ModulQuestionnaireBean containing the data pointing to the source questionnaires.newModuleQuestionnaireBean - the ModuleQuestionnaireBean you would like to copy the AnswerHeader objects to.public List<AnswerHeader> getQuestionnaireAnswer(ModuleQuestionnaireBean moduleQuestionnaireBean)
getQuestionnaireAnswer in interface QuestionnaireAnswerServiceQuestionnaireAnswerService.getQuestionnaireAnswer(org.kuali.kra.questionnaire.answer.ModuleQuestionnaireBean)protected List<AnswerHeader> retrieveAnswerHeaders(ModuleQuestionnaireBean moduleQuestionnaireBean)
protected List<String> getAssociateedQuestionnaireIds(ModuleQuestionnaireBean moduleQuestionnaireBean)
protected Questionnaire getLatestQuestionnaireVersion(Integer questionnaireId)
questionnaireId - public boolean checkIfQuestionnaireIsActiveForModule(Integer questionnaireId, String moduleItemCode, String moduleSubItemCode)
QuestionnaireAnswerServicecheckIfQuestionnaireIsActiveForModule in interface QuestionnaireAnswerServiceQuestionnaireAnswerService.checkIfQuestionnaireIsActiveForModule(java.lang.Integer, java.lang.String, java.lang.String)public void copyAnswerToNewVersion(AnswerHeader oldAnswerHeader, AnswerHeader newAnswerHeader)
QuestionnaireAnswerServicepublic List<AnswerHeader> copyAnswerHeaders(ModuleQuestionnaireBean srcModuleQuestionnaireBean, ModuleQuestionnaireBean destModuleQuestionnaireBean)
QuestionnaireAnswerServicecopyAnswerHeaders in interface QuestionnaireAnswerServicesrcModuleQuestionnaireBean - the ModulQuestionnaireBean containing the data pointing to the source questionnaires.destModuleQuestionnaireBean - the ModuleQuestionnaireBean you would like to copy the AnswerHeader objects to.QuestionnaireAnswerService.copyAnswerHeaders(org.kuali.kra.questionnaire.answer.ModuleQuestionnaireBean,
org.kuali.kra.questionnaire.answer.ModuleQuestionnaireBean)public void preSave(List<AnswerHeader> answerHeaders)
QuestionnaireAnswerServicepreSave in interface QuestionnaireAnswerServiceQuestionnaireAnswerService.preSave(java.util.List)protected boolean isSameLevel(Answer oldAnswer, List<List<Answer>> oldParentAnswers, Answer newAnswer, List<List<Answer>> newParentAnswers)
public void setBusinessObjectService(org.kuali.rice.krad.service.BusinessObjectService businessObjectService)
protected AnswerHeader setupAnswerForQuestionnaire(Questionnaire questionnaire, ModuleQuestionnaireBean moduleQuestionnaireBean)
protected List<Answer> getChildQuestions(Questionnaire questionnaire, QuestionnaireQuestion question)
protected List<Answer> setupAnswersForQuestion(QuestionnaireQuestion questionnaireQuestion)
public void setupChildAnswerIndicator(AnswerHeader answerHeader)
QuestionnaireAnswerServicesetupChildAnswerIndicator in interface QuestionnaireAnswerServiceorg.kuali.kra.questionnaire.answer.QuestionnaireAnswerService#setupChildAnswerIndicator(java.util.List)public boolean isQuestionnaireAnswerComplete(List<Answer> answers)
QuestionnaireAnswerServiceisQuestionnaireAnswerComplete in interface QuestionnaireAnswerServicepublic boolean hasVisibleQuestion(List<Answer> answers)
answers - protected boolean isAnyAnswerMatched(String condition, List<Answer> parentAnswers, String conditionValue)
protected boolean isAnswerMatched(String condition, String parentAnswer, String conditionValue)
public void setProtocolFinderDao(ProtocolFinderDao protocolFinderDao)
public List<AnswerHeader> getAnswerHeadersForProtocol(ModuleQuestionnaireBean moduleQuestionnaireBean, String protocolNumber)
QuestionnaireAnswerServicegetAnswerHeadersForProtocol in interface QuestionnaireAnswerServicepublic List<AnswerHeader> getAnswerHeadersForProtocol(String protocolNumber)
QuestionnaireAnswerServicegetAnswerHeadersForProtocol in interface QuestionnaireAnswerServiceQuestionnaireAnswerService.getAnswerHeadersForProtocol(java.lang.String)public void setParameterService(org.kuali.rice.coreservice.framework.parameter.ParameterService parameterService)
public ModuleQuestionnaireBean getModuleSpecificBean(AnswerHeader answerHeader)
QuestionnaireAnswerServicegetModuleSpecificBean in interface QuestionnaireAnswerServicepublic ModuleQuestionnaireBean getModuleSpecificBean(String moduleItemCode, String moduleItemKey, String moduleSubItemCode, String moduleSubItemKey, boolean finalDoc)
QuestionnaireAnswerServicegetModuleSpecificBean in interface QuestionnaireAnswerServiceprotected QuestionnaireService getQuestionnaireService()
public void setQuestionnaireService(QuestionnaireService questionnaireService)
public List<AnswerHeader> getNewVersionOfQuestionnaireAnswer(ModuleQuestionnaireBean moduleQuestionnaireBean)
QuestionnaireAnswerServicegetNewVersionOfQuestionnaireAnswer in interface QuestionnaireAnswerServicepublic KrmsRulesExecutionService getKrmsRulesExecutionService()
public void setKrmsRulesExecutionService(KrmsRulesExecutionService krmsRulesExecutionService)
Copyright © 2013 The Kuali Foundation. All Rights Reserved.