in study-builder/fdahpStudyDesigner/src/main/java/com/fdahpstudydesigner/dao/StudyQuestionnaireDAOImpl.java [2717:3057]
public QuestionReponseTypeBo getQuestionsResponseTypeBo(
QuestionReponseTypeBo questionsResponseTypeBo, Session session, String customStudyId) {
logger.entry("begin getQuestionsResponseTypeBo()");
QuestionReponseTypeBo addOrUpdateQuestionsResponseTypeBo = null;
try {
if ((questionsResponseTypeBo != null) && (session != null)) {
if (StringUtils.isNotEmpty(questionsResponseTypeBo.getResponseTypeId())) {
addOrUpdateQuestionsResponseTypeBo =
(QuestionReponseTypeBo)
session.get(
QuestionReponseTypeBo.class, questionsResponseTypeBo.getResponseTypeId());
} else {
addOrUpdateQuestionsResponseTypeBo = new QuestionReponseTypeBo();
addOrUpdateQuestionsResponseTypeBo.setActive(true);
}
if (questionsResponseTypeBo.getQuestionsResponseTypeId() != null) {
addOrUpdateQuestionsResponseTypeBo.setQuestionsResponseTypeId(
questionsResponseTypeBo.getQuestionsResponseTypeId());
}
if (questionsResponseTypeBo.getMinValue() != null) {
addOrUpdateQuestionsResponseTypeBo.setMinValue(questionsResponseTypeBo.getMinValue());
}
if (questionsResponseTypeBo.getMaxValue() != null) {
addOrUpdateQuestionsResponseTypeBo.setMaxValue(questionsResponseTypeBo.getMaxValue());
}
if (questionsResponseTypeBo.getDefaultValue() != null) {
addOrUpdateQuestionsResponseTypeBo.setDefaultValue(
questionsResponseTypeBo.getDefaultValue());
}
if (questionsResponseTypeBo.getStep() != null) {
addOrUpdateQuestionsResponseTypeBo.setStep(questionsResponseTypeBo.getStep());
}
if (questionsResponseTypeBo.getVertical() != null) {
addOrUpdateQuestionsResponseTypeBo.setVertical(questionsResponseTypeBo.getVertical());
}
addOrUpdateQuestionsResponseTypeBo.setMinDescription(
questionsResponseTypeBo.getMinDescription());
addOrUpdateQuestionsResponseTypeBo.setMaxDescription(
questionsResponseTypeBo.getMaxDescription());
if (questionsResponseTypeBo.getMaxFractionDigits() != null) {
addOrUpdateQuestionsResponseTypeBo.setMaxFractionDigits(
questionsResponseTypeBo.getMaxFractionDigits());
}
if ((questionsResponseTypeBo.getTextChoices() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getTextChoices())) {
addOrUpdateQuestionsResponseTypeBo.setTextChoices(
questionsResponseTypeBo.getTextChoices());
}
if ((questionsResponseTypeBo.getSelectionStyle() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getSelectionStyle())) {
addOrUpdateQuestionsResponseTypeBo.setSelectionStyle(
questionsResponseTypeBo.getSelectionStyle());
}
if ((questionsResponseTypeBo.getImageSize() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getImageSize())) {
addOrUpdateQuestionsResponseTypeBo.setImageSize(questionsResponseTypeBo.getImageSize());
}
if ((questionsResponseTypeBo.getStyle() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getStyle())) {
addOrUpdateQuestionsResponseTypeBo.setStyle(questionsResponseTypeBo.getStyle());
if ((FdahpStudyDesignerConstants.DATE)
.equalsIgnoreCase(questionsResponseTypeBo.getStyle())) {
if ((questionsResponseTypeBo.getMinDate() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMinDate())) {
addOrUpdateQuestionsResponseTypeBo.setMinDate(
FdahpStudyDesignerUtil.getFormattedDate(
questionsResponseTypeBo.getMinDate(),
FdahpStudyDesignerConstants.UI_SDF_DATE,
FdahpStudyDesignerConstants.DB_SDF_DATE));
} else {
addOrUpdateQuestionsResponseTypeBo.setMinDate(null);
}
if ((questionsResponseTypeBo.getMaxDate() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMaxDate())) {
addOrUpdateQuestionsResponseTypeBo.setMaxDate(
FdahpStudyDesignerUtil.getFormattedDate(
questionsResponseTypeBo.getMaxDate(),
FdahpStudyDesignerConstants.UI_SDF_DATE,
FdahpStudyDesignerConstants.DB_SDF_DATE));
} else {
addOrUpdateQuestionsResponseTypeBo.setMaxDate(null);
}
if ((questionsResponseTypeBo.getDefaultDate() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getDefaultDate())) {
addOrUpdateQuestionsResponseTypeBo.setDefaultDate(
FdahpStudyDesignerUtil.getFormattedDate(
questionsResponseTypeBo.getDefaultDate(),
FdahpStudyDesignerConstants.UI_SDF_DATE,
FdahpStudyDesignerConstants.DB_SDF_DATE));
} else {
addOrUpdateQuestionsResponseTypeBo.setDefaultDate(null);
}
} else if ((FdahpStudyDesignerConstants.DATE_TIME)
.equalsIgnoreCase(questionsResponseTypeBo.getStyle())) {
if ((questionsResponseTypeBo.getMinDate() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMinDate())) {
addOrUpdateQuestionsResponseTypeBo.setMinDate(
FdahpStudyDesignerUtil.getFormattedDate(
questionsResponseTypeBo.getMinDate(),
FdahpStudyDesignerConstants.REQUIRED_DATE_TIME,
FdahpStudyDesignerConstants.DB_SDF_DATE_TIME));
} else {
addOrUpdateQuestionsResponseTypeBo.setMinDate(null);
}
if ((questionsResponseTypeBo.getMaxDate() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMaxDate())) {
addOrUpdateQuestionsResponseTypeBo.setMaxDate(
FdahpStudyDesignerUtil.getFormattedDate(
questionsResponseTypeBo.getMaxDate(),
FdahpStudyDesignerConstants.REQUIRED_DATE_TIME,
FdahpStudyDesignerConstants.DB_SDF_DATE_TIME));
} else {
addOrUpdateQuestionsResponseTypeBo.setMaxDate(null);
}
if ((questionsResponseTypeBo.getDefaultDate() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getDefaultDate())) {
addOrUpdateQuestionsResponseTypeBo.setDefaultDate(
FdahpStudyDesignerUtil.getFormattedDate(
questionsResponseTypeBo.getDefaultDate(),
FdahpStudyDesignerConstants.REQUIRED_DATE_TIME,
FdahpStudyDesignerConstants.DB_SDF_DATE_TIME));
} else {
addOrUpdateQuestionsResponseTypeBo.setDefaultDate(null);
}
}
}
addOrUpdateQuestionsResponseTypeBo.setPlaceholder(questionsResponseTypeBo.getPlaceholder());
addOrUpdateQuestionsResponseTypeBo.setUnit(questionsResponseTypeBo.getUnit());
addOrUpdateQuestionsResponseTypeBo.setMaxLength(questionsResponseTypeBo.getMaxLength());
if ((questionsResponseTypeBo.getValidationRegex() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getValidationRegex())) {
addOrUpdateQuestionsResponseTypeBo.setValidationRegex(
questionsResponseTypeBo.getValidationRegex());
}
addOrUpdateQuestionsResponseTypeBo.setInvalidMessage(
questionsResponseTypeBo.getInvalidMessage());
if (questionsResponseTypeBo.getMultipleLines() != null) {
addOrUpdateQuestionsResponseTypeBo.setMultipleLines(
questionsResponseTypeBo.getMultipleLines());
}
if ((questionsResponseTypeBo.getMeasurementSystem() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMeasurementSystem())) {
addOrUpdateQuestionsResponseTypeBo.setMeasurementSystem(
questionsResponseTypeBo.getMeasurementSystem());
}
if (questionsResponseTypeBo.getUseCurrentLocation() != null) {
addOrUpdateQuestionsResponseTypeBo.setUseCurrentLocation(
questionsResponseTypeBo.getUseCurrentLocation());
}
addOrUpdateQuestionsResponseTypeBo.setValidationCondition(
questionsResponseTypeBo.getValidationCondition());
addOrUpdateQuestionsResponseTypeBo.setValidationCharacters(
questionsResponseTypeBo.getValidationCharacters());
addOrUpdateQuestionsResponseTypeBo.setValidationExceptText(
questionsResponseTypeBo.getValidationExceptText());
addOrUpdateQuestionsResponseTypeBo.setValidationRegex(
FdahpStudyDesignerUtil.getRegExpression(
questionsResponseTypeBo.getValidationCondition(),
questionsResponseTypeBo.getValidationCharacters(),
questionsResponseTypeBo.getValidationExceptText()));
String fileName;
if (questionsResponseTypeBo.getMinImageFile() != null) {
if ((questionsResponseTypeBo.getMinImage() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMinImage())) {
addOrUpdateQuestionsResponseTypeBo.setMinImage(questionsResponseTypeBo.getMinImage());
} else {
if ((questionsResponseTypeBo.getMinImageFile().getOriginalFilename() != null)
&& StringUtils.isNotEmpty(
questionsResponseTypeBo.getMinImageFile().getOriginalFilename())) {
fileName =
FdahpStudyDesignerUtil.getStandardFileName(
FdahpStudyDesignerConstants.QUESTION_STEP_IMAGE + 0,
questionsResponseTypeBo.getMinImageFile().getOriginalFilename(),
String.valueOf(questionsResponseTypeBo.getQuestionsResponseTypeId()));
BufferedImage newBi =
ImageIO.read(
new ByteArrayInputStream(
questionsResponseTypeBo.getMinImageFile().getBytes()));
int minWidthAndHeight = 0;
if (newBi.getHeight() > 120 && newBi.getWidth() > 120) {
minWidthAndHeight = 120;
} else {
minWidthAndHeight = Math.min(newBi.getHeight(), newBi.getWidth());
}
BufferedImage resizedImage =
ImageUtility.resizeImage(newBi, minWidthAndHeight, minWidthAndHeight);
String extension =
FilenameUtils.getExtension(
questionsResponseTypeBo.getMinImageFile().getOriginalFilename());
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(resizedImage, extension, baos);
baos.flush();
CustomMultipartFile customMultipartFile =
new CustomMultipartFile(
baos.toByteArray(),
questionsResponseTypeBo.getMinImageFile().getOriginalFilename(),
extension);
String imagePath =
FdahpStudyDesignerUtil.saveImage(
customMultipartFile,
fileName,
FdahpStudyDesignerConstants.QUESTIONNAIRE,
customStudyId);
addOrUpdateQuestionsResponseTypeBo.setMinImage(imagePath);
} else {
addOrUpdateQuestionsResponseTypeBo.setMinImage(null);
}
}
} else {
if (StringUtils.isEmpty(questionsResponseTypeBo.getMinImage())) {
addOrUpdateQuestionsResponseTypeBo.setMinImage(null);
}
}
if (questionsResponseTypeBo.getMaxImageFile() != null) {
if ((questionsResponseTypeBo.getMaxImage() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getMaxImage())) {
addOrUpdateQuestionsResponseTypeBo.setMaxImage(questionsResponseTypeBo.getMaxImage());
} else {
if ((questionsResponseTypeBo.getMaxImageFile().getOriginalFilename() != null)
&& StringUtils.isNotEmpty(
questionsResponseTypeBo.getMaxImageFile().getOriginalFilename())) {
fileName =
FdahpStudyDesignerUtil.getStandardFileName(
FdahpStudyDesignerConstants.QUESTION_STEP_IMAGE + 1,
questionsResponseTypeBo.getMaxImageFile().getOriginalFilename(),
String.valueOf(questionsResponseTypeBo.getQuestionsResponseTypeId()));
BufferedImage newBi =
ImageIO.read(
new ByteArrayInputStream(
questionsResponseTypeBo.getMaxImageFile().getBytes()));
int minWidthAndHeight = 0;
if (newBi.getHeight() > 120 && newBi.getWidth() > 120) {
minWidthAndHeight = 120;
} else {
minWidthAndHeight = Math.min(newBi.getHeight(), newBi.getWidth());
}
BufferedImage resizedImage =
ImageUtility.resizeImage(newBi, minWidthAndHeight, minWidthAndHeight);
String extension =
FilenameUtils.getExtension(
questionsResponseTypeBo.getMaxImageFile().getOriginalFilename());
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(resizedImage, extension, baos);
baos.flush();
CustomMultipartFile customMultipartFile =
new CustomMultipartFile(
baos.toByteArray(),
questionsResponseTypeBo.getMaxImageFile().getOriginalFilename(),
extension);
String imagePath =
FdahpStudyDesignerUtil.saveImage(
customMultipartFile,
fileName,
FdahpStudyDesignerConstants.QUESTIONNAIRE,
customStudyId);
addOrUpdateQuestionsResponseTypeBo.setMaxImage(imagePath);
} else {
addOrUpdateQuestionsResponseTypeBo.setMaxImage(null);
}
}
} else {
if (StringUtils.isEmpty(questionsResponseTypeBo.getMaxImage())) {
addOrUpdateQuestionsResponseTypeBo.setMaxImage(null);
}
}
if ((questionsResponseTypeBo.getDefaultTime() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getDefaultTime())) {
addOrUpdateQuestionsResponseTypeBo.setDefaultTime(
questionsResponseTypeBo.getDefaultTime());
}
if ((questionsResponseTypeBo.getFormulaBasedLogic() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getFormulaBasedLogic())) {
addOrUpdateQuestionsResponseTypeBo.setFormulaBasedLogic(
questionsResponseTypeBo.getFormulaBasedLogic());
}
if ((questionsResponseTypeBo.getConditionFormula() != null)
&& StringUtils.isNotEmpty(questionsResponseTypeBo.getConditionFormula())) {
addOrUpdateQuestionsResponseTypeBo.setConditionFormula(
questionsResponseTypeBo
.getConditionFormula()
.replace("<", "<")
.replace(">", ">"));
}
/** Other type set addded by ronalin * */
if (StringUtils.isNotEmpty(questionsResponseTypeBo.getOtherType())
&& questionsResponseTypeBo.getOtherType().equals("on")) {
addOrUpdateQuestionsResponseTypeBo.setOtherType(questionsResponseTypeBo.getOtherType());
addOrUpdateQuestionsResponseTypeBo.setOtherText(questionsResponseTypeBo.getOtherText());
addOrUpdateQuestionsResponseTypeBo.setOtherValue(questionsResponseTypeBo.getOtherValue());
addOrUpdateQuestionsResponseTypeBo.setOtherExclusive(
questionsResponseTypeBo.getOtherExclusive());
addOrUpdateQuestionsResponseTypeBo.setOtherDestinationStepId(
questionsResponseTypeBo.getOtherDestinationStepId());
addOrUpdateQuestionsResponseTypeBo.setOtherDescription(
questionsResponseTypeBo.getOtherDescription());
addOrUpdateQuestionsResponseTypeBo.setOtherIncludeText(
questionsResponseTypeBo.getOtherIncludeText());
if (StringUtils.isNotEmpty(questionsResponseTypeBo.getOtherIncludeText())
&& questionsResponseTypeBo.getOtherIncludeText().equals("Yes")) {
addOrUpdateQuestionsResponseTypeBo.setOtherPlaceholderText(
questionsResponseTypeBo.getOtherPlaceholderText());
addOrUpdateQuestionsResponseTypeBo.setOtherParticipantFill(
questionsResponseTypeBo.getOtherParticipantFill());
} else {
addOrUpdateQuestionsResponseTypeBo.setOtherPlaceholderText(null);
addOrUpdateQuestionsResponseTypeBo.setOtherParticipantFill(null);
}
} else {
addOrUpdateQuestionsResponseTypeBo.setOtherType(null);
addOrUpdateQuestionsResponseTypeBo.setOtherText(null);
addOrUpdateQuestionsResponseTypeBo.setOtherValue(null);
addOrUpdateQuestionsResponseTypeBo.setOtherExclusive(null);
addOrUpdateQuestionsResponseTypeBo.setOtherDestinationStepId(null);
addOrUpdateQuestionsResponseTypeBo.setOtherDescription(null);
addOrUpdateQuestionsResponseTypeBo.setOtherIncludeText(null);
addOrUpdateQuestionsResponseTypeBo.setOtherPlaceholderText(null);
addOrUpdateQuestionsResponseTypeBo.setOtherParticipantFill(null);
}
/** Other type set addded by ronalin * */
}
} catch (Exception e) {
logger.error("StudyQuestionnaireDAOImpl - getQuestionsResponseTypeBo() - Error", e);
}
logger.exit("getQuestionsResponseTypeBo() - Ends");
return addOrUpdateQuestionsResponseTypeBo;
}