List of usage examples for org.apache.commons.validator.routines BigDecimalValidator getInstance
public static BigDecimalValidator getInstance()
From source file:com.jaspersoft.studio.editor.preview.input.array.number.BigDecimalElement.java
protected boolean isValid(String number) { return BigDecimalValidator.getInstance().isValid(number, Locale.US); }
From source file:com.jaspersoft.studio.editor.preview.input.BigNumericInput.java
@Override public void createInput(Composite parent, final IParameter param, final Map<String, Object> params) { super.createInput(parent, param, params); if (Number.class.isAssignableFrom(param.getValueClass())) { num = new Text(parent, SWT.BORDER | SWT.RIGHT); setMandatory(param, num);/*from w w w. ja va2s.c o m*/ // setError(num, ""); // hideError(num); num.setToolTipText(VParameters.createToolTip(param)); num.addFocusListener(focusListener); updateInput(); num.addListener(SWT.Verify, new Listener() { public void handleEvent(Event e) { try { hideError(num); String number = e.text; String oldText = ((Text) e.widget).getText(); if (e.start != e.end) oldText = oldText.substring(0, e.start) + oldText.substring(e.end); number = oldText.substring(0, e.start) + e.text; if (oldText.length() - 1 > e.start + 1) number += oldText.substring(e.start + 1); if (number.equals("-")) //$NON-NLS-1$ number = "-0";//$NON-NLS-1$ if (number.equals(".")) //$NON-NLS-1$ number = "0.";//$NON-NLS-1$ if (number.isEmpty()) { e.doit = true; return; } if (param.getValueClass().equals(Long.class)) { Long.parseLong(number); } else if (param.getValueClass().equals(BigInteger.class)) { new BigInteger(number); } else if (param.getValueClass().equals(Float.class)) { e.doit = FloatValidator.getInstance().isValid(number, Locale.US); } else if (param.getValueClass().equals(Double.class)) { e.doit = DoubleValidator.getInstance().isValid(number, Locale.US); } else if (param.getValueClass().equals(Integer.class)) { e.doit = IntegerValidator.getInstance().isValid(number, Locale.US); } else if (param.getValueClass().equals(Short.class)) { e.doit = ShortValidator.getInstance().isValid(number, Locale.US); } else if (param.getValueClass().equals(Byte.class)) { e.doit = ByteValidator.getInstance().isValid(number, Locale.US); } else if (param.getValueClass().equals(BigDecimal.class)) { e.doit = BigDecimalValidator.getInstance().isValid(number, Locale.US); } if (e.doit) { if (min != null) if (param.isStrictMin()) { if (compareTo(getNumber(number), min) <= 0) setError(num, "Value can not be smaller than: " + min); } else if (compareTo(getNumber(number), min) < 0) { setError(num, "Value can not be smaller than: " + min); } if (max != null) { if (param.isStrictMax()) { if (compareTo(getNumber(number), max) >= 0) setError(num, "Value can not be greater than: " + max); } else if (compareTo(getNumber(number), max) > 0) setError(num, "Value can not be greater than: " + max); } } } catch (NumberFormatException ne) { e.doit = false; } } }); if (param.getMinValue() != null) min = getNumber(param.getMinValue()); if (param.getMaxValue() != null) max = getNumber(param.getMaxValue()); ModifyListener listener = new ModifyListener() { public void modifyText(ModifyEvent e) { try { updateModel(getNumber(num.getText())); } catch (NumberFormatException ne) { } } }; num.addModifyListener(listener); GridData gd = new GridData(); gd.horizontalIndent = 8; gd.widthHint = 25 * getCharWidth(num) - 22; num.setLayoutData(gd); setNullable(param, num); } }
From source file:com.jd.survey.web.pdf.StatisticsPdf.java
private void writeEntry(Document document, String label, double value) throws Exception { Paragraph questionParagraph = new Paragraph(); questionParagraph.setLeading(14, 0); questionParagraph.setIndentationLeft(18); questionParagraph.add(new Chunk(label.trim() + ": ", boldedFont)); questionParagraph.add(new Chunk( BigDecimalValidator.getInstance().format(value, LocaleContextHolder.getLocale()), normalFont)); document.add(questionParagraph);/*from ww w.j av a 2 s. c o m*/ }
From source file:com.jd.survey.web.pdf.StatisticsPdf.java
private void writeNumericMatrixQuestionStatistics(Document document, Question question, List<QuestionStatistic> questionStatistics, String minimumLabel, String maximumLabel, String averageLabel, String standardDeviationLabel) throws Exception { NumberFormat percentFormat = NumberFormat.getPercentInstance(); percentFormat.setMaximumFractionDigits(1); Table statsTable;//w ww . ja v a 2 s . c o m Cell cell; statsTable = new Table(question.getColumnLabels().size() + 1); statsTable.setWidth(94); statsTable.setBorder(0); statsTable.setOffset(5); statsTable.setPadding(2); statsTable.setDefaultCellBorder(0); //header cell = new Cell(); cell.setBorder(Cell.BOTTOM); statsTable.addCell(cell); for (QuestionColumnLabel columnLabel : question.getColumnLabels()) { cell = new Cell(new Paragraph(columnLabel.getLabel(), boldedFont)); cell.setBorder(Cell.BOTTOM); statsTable.addCell(cell); } int rowIndex = 1; for (QuestionRowLabel rowLabel : question.getRowLabels()) { cell = new Cell(new Paragraph(rowLabel.getLabel(), boldedFont)); cell.setBorder(Cell.RIGHT); if ((rowIndex % 2) == 1) { cell.setBackgroundColor(new Color(244, 244, 244)); } statsTable.addCell(cell); for (QuestionColumnLabel columnLabel : question.getColumnLabels()) { boolean found = false; cell = new Cell(); if ((rowIndex % 2) == 1) { cell.setBackgroundColor(new Color(244, 244, 244)); } for (QuestionStatistic questionStatistic : questionStatistics) { if (questionStatistic.getRowOrder().equals(rowLabel.getOrder()) && questionStatistic.getColumnOrder().equals(columnLabel.getOrder())) { cell.add(new Paragraph( minimumLabel + ": " + BigDecimalValidator.getInstance() .format(questionStatistic.getMin(), LocaleContextHolder.getLocale()), normalFont)); cell.add(new Paragraph( maximumLabel + ": " + BigDecimalValidator.getInstance() .format(questionStatistic.getMax(), LocaleContextHolder.getLocale()), normalFont)); cell.add(new Paragraph( averageLabel + ": " + BigDecimalValidator.getInstance() .format(questionStatistic.getAverage(), LocaleContextHolder.getLocale()), normalFont)); cell.add(new Paragraph(standardDeviationLabel + ": " + BigDecimalValidator.getInstance().format( questionStatistic.getSampleStandardDeviation(), LocaleContextHolder.getLocale()), normalFont)); break; } } if (!found) { } statsTable.addCell(cell); } rowIndex++; } document.add(statsTable); }
From source file:com.jd.survey.dao.survey.SurveyDAOImpl.java
/** * Reads a single survey page from the survey data table *//* w w w. jav a 2s . co m*/ @Override public SurveyPage getPage(final Survey survey, final SurveyDefinitionPage surveyDefinitionPage, final String dateFormat) { try { boolean hasDatabaseQuestions = false; StringBuilder stringBuilder = new StringBuilder(); String pageVisibilityColumn = "p" + surveyDefinitionPage.getOrder() + "v"; stringBuilder.append("select survey_id, " + pageVisibilityColumn + ", "); for (Question question : surveyDefinitionPage.getQuestions()) { int optionsCount = question.getOptions().size(); int rowCount = question.getRowLabels().size(); int columnCount = question.getColumnLabels().size(); switch (question.getType()) { case YES_NO_DROPDOWN: //Yes No DropDown stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case SHORT_TEXT_INPUT: //Short Text Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case LONG_TEXT_INPUT: //Long Text Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case HUGE_TEXT_INPUT: //Huge Text Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case INTEGER_INPUT: //Integer Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case CURRENCY_INPUT: //Currency Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case DECIMAL_INPUT: //Decimal Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case DATE_INPUT: //Date Input stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case SINGLE_CHOICE_DROP_DOWN: //Single choice Drop Down stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); hasDatabaseQuestions = true; break; case MULTIPLE_CHOICE_CHECKBOXES: //Multiple Choice Checkboxes hasDatabaseQuestions = true; for (int o = 1; o <= optionsCount; o++) { stringBuilder.append( " p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "o" + o + ","); } //other support stringBuilder.append( " p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "text" + ","); break; case DATASET_DROP_DOWN: //DataSet Drop Down hasDatabaseQuestions = true; stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); break; case SINGLE_CHOICE_RADIO_BUTTONS: //Single Choice Radio Buttons hasDatabaseQuestions = true; stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); //other support stringBuilder.append( " p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "text" + ","); break; case YES_NO_DROPDOWN_MATRIX://Yes No DropDown Matrix hasDatabaseQuestions = true; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c + ","); } } break; case SHORT_TEXT_INPUT_MATRIX://Short Text Input Matrix hasDatabaseQuestions = true; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c + ","); } } break; case INTEGER_INPUT_MATRIX://Integer Input Matrix hasDatabaseQuestions = true; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c + ","); } } break; case CURRENCY_INPUT_MATRIX://Currency Input Matrix hasDatabaseQuestions = true; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c + ","); } } break; case DECIMAL_INPUT_MATRIX://Decimal Input Matrix hasDatabaseQuestions = true; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c + ","); } } break; case DATE_INPUT_MATRIX://Date Input Matrix hasDatabaseQuestions = true; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c + ","); } } break; case STAR_RATING: //Integer Input hasDatabaseQuestions = true; stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); break; case SMILEY_FACES_RATING: //Integer Input hasDatabaseQuestions = true; stringBuilder.append(" p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + ","); break; } } stringBuilder.setLength(stringBuilder.length() - 1); if (!hasDatabaseQuestions) { stringBuilder.setLength(stringBuilder.length() - 1); } stringBuilder.append(" from survey_data_" + surveyDefinitionPage.getSurveyDefinition().getId()); stringBuilder.append(" where survey_id = ?"); SurveyPage surveyPage = this.jdbcTemplate.queryForObject(stringBuilder.toString(), new Object[] { survey.getId() }, new RowMapper<SurveyPage>() { public SurveyPage mapRow(ResultSet rs, int rowNum) throws SQLException { int optionsCount; int rowCount; int columnCount; Integer[] integerAnswerValuesArray; Long[][] longAnswerValuesMatrix; String[][] stringAnswerValuesMatrix; BigDecimal[][] bigDecimalAnswerValuesMatrix; Boolean[][] booleanAnswerValuesMatrix; Date[][] dateAnswerValuesMatrix; SurveyPage page = new SurveyPage(survey, surveyDefinitionPage); page.setVisible((rs.getBoolean("p" + surveyDefinitionPage.getOrder() + "v"))); QuestionAnswer questionAnswer; List<QuestionAnswer> questionAnswers = new ArrayList<QuestionAnswer>(); for (Question question : surveyDefinitionPage.getQuestions()) { questionAnswer = new QuestionAnswer(question); optionsCount = question.getOptions().size(); rowCount = question.getRowLabels().size(); columnCount = question.getColumnLabels().size(); switch (question.getType()) { case YES_NO_DROPDOWN: //Yes No DropDown questionAnswer.setBooleanAnswerValue((rs.getBoolean( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case SHORT_TEXT_INPUT: //Short Text Input questionAnswer.setStringAnswerValue((rs.getString( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case LONG_TEXT_INPUT: //Long Text Input questionAnswer.setStringAnswerValue((rs.getString( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case HUGE_TEXT_INPUT: //Huge Text Input questionAnswer.setStringAnswerValue((rs.getString( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case INTEGER_INPUT: //Integer Input questionAnswer.setLongAnswerValue((rs.getLong( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); if (rs.wasNull()) questionAnswer.setLongAnswerValue(null); questionAnswer .setStringAnswerValue(questionAnswer.getLongAnswerValue() == null ? "" : questionAnswer.getLongAnswerValue().toString()); break; case CURRENCY_INPUT: //Currency Input questionAnswer.setBigDecimalAnswerValue((rs.getBigDecimal( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer.setStringAnswerValue( questionAnswer.getBigDecimalAnswerValue() == null ? "" : CurrencyValidator.getInstance().format( questionAnswer.getBigDecimalAnswerValue(), LocaleContextHolder.getLocale())); break; case DECIMAL_INPUT: //Decimal Input questionAnswer.setBigDecimalAnswerValue((rs.getBigDecimal( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer.setStringAnswerValue( questionAnswer.getBigDecimalAnswerValue() == null ? "" : BigDecimalValidator.getInstance().format( questionAnswer.getBigDecimalAnswerValue(), LocaleContextHolder.getLocale())); break; case DATE_INPUT: //Date Input questionAnswer.setDateAnswerValue((rs.getDate( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer .setStringAnswerValue(questionAnswer.getDateAnswerValue() == null ? "" : DateValidator.getInstance().format( questionAnswer.getDateAnswerValue(), dateFormat)); break; case SINGLE_CHOICE_DROP_DOWN: //Single choice Drop Down questionAnswer.setStringAnswerValue((rs.getString( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case MULTIPLE_CHOICE_CHECKBOXES: //Multiple Choice Checkboxes integerAnswerValuesArray = new Integer[optionsCount]; int index = 0; for (int o = 1; o <= optionsCount; o++) { if (rs.getBoolean("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "o" + o)) { integerAnswerValuesArray[index] = o; index++; } } questionAnswer.setIntegerAnswerValuesArray(integerAnswerValuesArray); //other text data questionAnswer.setOtherStringAnswerValue( (rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "text"))); break; case DATASET_DROP_DOWN: //DataSet Drop Down questionAnswer.setStringAnswerValue((rs.getString( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case SINGLE_CHOICE_RADIO_BUTTONS: //Single Choice Radio Buttons questionAnswer.setStringAnswerValue((rs.getString( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); //other text data questionAnswer.setOtherStringAnswerValue( (rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "text"))); break; case YES_NO_DROPDOWN_MATRIX://Yes No DropDown Matrix booleanAnswerValuesMatrix = new Boolean[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { booleanAnswerValuesMatrix[r - 1][c - 1] = rs .getBoolean("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); } } questionAnswer.setBooleanAnswerValuesMatrix(booleanAnswerValuesMatrix); break; case SHORT_TEXT_INPUT_MATRIX://Short Text Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringAnswerValuesMatrix[r - 1][c - 1] = rs .getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); break; case INTEGER_INPUT_MATRIX://Integer Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; longAnswerValuesMatrix = new Long[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { longAnswerValuesMatrix[r - 1][c - 1] = rs .getLong("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); if (rs.wasNull()) longAnswerValuesMatrix[r - 1][c - 1] = null; stringAnswerValuesMatrix[r - 1][c - 1] = longAnswerValuesMatrix[r - 1][c - 1] == null ? "" : longAnswerValuesMatrix[r - 1][c - 1].toString(); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer.setLongAnswerValuesMatrix(longAnswerValuesMatrix); break; case CURRENCY_INPUT_MATRIX://Currency Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; bigDecimalAnswerValuesMatrix = new BigDecimal[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { bigDecimalAnswerValuesMatrix[r - 1][c - 1] = rs .getBigDecimal("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = bigDecimalAnswerValuesMatrix[r - 1][c - 1] == null ? "" : CurrencyValidator.getInstance().format( bigDecimalAnswerValuesMatrix[r - 1][c - 1], LocaleContextHolder.getLocale()); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer.setBigDecimalAnswerValuesMatrix(bigDecimalAnswerValuesMatrix); break; case DECIMAL_INPUT_MATRIX://Decimal Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; bigDecimalAnswerValuesMatrix = new BigDecimal[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { bigDecimalAnswerValuesMatrix[r - 1][c - 1] = rs .getBigDecimal("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = bigDecimalAnswerValuesMatrix[r - 1][c - 1] == null ? "" : BigDecimalValidator.getInstance().format( bigDecimalAnswerValuesMatrix[r - 1][c - 1], LocaleContextHolder.getLocale()); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer.setBigDecimalAnswerValuesMatrix(bigDecimalAnswerValuesMatrix); break; case DATE_INPUT_MATRIX://Date Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; dateAnswerValuesMatrix = new Date[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { dateAnswerValuesMatrix[r - 1][c - 1] = rs .getDate("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = dateAnswerValuesMatrix[r - 1][c - 1] == null ? "" : DateValidator.getInstance().format( dateAnswerValuesMatrix[r - 1][c - 1], dateFormat); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer.setDateAnswerValuesMatrix(dateAnswerValuesMatrix); break; case STAR_RATING: //Integer Input questionAnswer.setLongAnswerValue((rs.getLong( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); if (rs.wasNull()) questionAnswer.setLongAnswerValue(null); questionAnswer .setStringAnswerValue(questionAnswer.getLongAnswerValue() == null ? "" : questionAnswer.getLongAnswerValue().toString()); break; case SMILEY_FACES_RATING: //Integer Input questionAnswer.setLongAnswerValue((rs.getLong( "p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); if (rs.wasNull()) questionAnswer.setLongAnswerValue(null); questionAnswer .setStringAnswerValue(questionAnswer.getLongAnswerValue() == null ? "" : questionAnswer.getLongAnswerValue().toString()); break; } questionAnswers.add(questionAnswer); } page.setQuestionAnswers(questionAnswers); return page; } }); return surveyPage; } catch (Exception e) { log.error(e.getMessage(), e); throw (new RuntimeException(e)); } }
From source file:com.jd.survey.dao.survey.SurveyDAOImpl.java
/** * Reads a single survey page from the survey data table *//* www . jav a 2s . c o m*/ @Override public List<SurveyPage> getPages(final Survey survey, final SurveyDefinition surveyDefinition, final String dateFormat) { try { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("select * "); stringBuilder.setLength(stringBuilder.length() - 1); stringBuilder.append(" from survey_data_" + surveyDefinition.getId()); stringBuilder.append(" where survey_id = ?"); List<SurveyPage> surveyPages = this.jdbcTemplate.queryForObject(stringBuilder.toString(), new Object[] { survey.getId() }, new RowMapper<List<SurveyPage>>() { public List<SurveyPage> mapRow(ResultSet rs, int rowNum) throws SQLException { int optionsCount; int rowCount; int columnCount; Integer[] integerAnswerValuesArray; Long[][] longAnswerValuesMatrix; String[][] stringAnswerValuesMatrix; BigDecimal[][] bigDecimalAnswerValuesMatrix; Boolean[][] booleanAnswerValuesMatrix; Date[][] dateAnswerValuesMatrix; List<SurveyPage> pages = new ArrayList<SurveyPage>(); for (SurveyDefinitionPage surveyDefinitionPage : surveyDefinition.getPages()) { SurveyPage page = new SurveyPage(survey, surveyDefinitionPage); page.setVisible((rs.getBoolean("p" + surveyDefinitionPage.getOrder() + "v"))); QuestionAnswer questionAnswer; List<QuestionAnswer> questionAnswers = new ArrayList<QuestionAnswer>(); for (Question question : surveyDefinitionPage.getQuestions()) { questionAnswer = new QuestionAnswer(question); optionsCount = question.getOptions().size(); rowCount = question.getRowLabels().size(); columnCount = question.getColumnLabels().size(); switch (question.getType()) { case YES_NO_DROPDOWN: //Yes No DropDown questionAnswer.setBooleanAnswerValue((rs.getBoolean("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case SHORT_TEXT_INPUT: //Short Text Input questionAnswer.setStringAnswerValue((rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case LONG_TEXT_INPUT: //Long Text Input questionAnswer.setStringAnswerValue((rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case HUGE_TEXT_INPUT: //Huge Text Input questionAnswer.setStringAnswerValue((rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case INTEGER_INPUT: //Integer Input questionAnswer.setLongAnswerValue((rs.getLong("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer.setStringAnswerValue( questionAnswer.getLongAnswerValue() == null ? "" : questionAnswer.getLongAnswerValue().toString()); break; case CURRENCY_INPUT: //Currency Input questionAnswer.setBigDecimalAnswerValue((rs.getBigDecimal("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer.setStringAnswerValue( questionAnswer.getBigDecimalAnswerValue() == null ? "" : CurrencyValidator.getInstance().format( questionAnswer.getBigDecimalAnswerValue(), LocaleContextHolder.getLocale())); break; case DECIMAL_INPUT: //Decimal Input questionAnswer.setBigDecimalAnswerValue((rs.getBigDecimal("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer.setStringAnswerValue( questionAnswer.getBigDecimalAnswerValue() == null ? "" : BigDecimalValidator.getInstance().format( questionAnswer.getBigDecimalAnswerValue(), LocaleContextHolder.getLocale())); break; case DATE_INPUT: //Date Input questionAnswer.setDateAnswerValue((rs.getDate("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); questionAnswer .setStringAnswerValue( questionAnswer.getDateAnswerValue() == null ? "" : DateValidator.getInstance().format( questionAnswer.getDateAnswerValue(), dateFormat)); break; case SINGLE_CHOICE_DROP_DOWN: //Single choice Drop Down questionAnswer.setStringAnswerValue((rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case MULTIPLE_CHOICE_CHECKBOXES: //Multiple Choice Checkboxes integerAnswerValuesArray = new Integer[optionsCount]; int index = 0; for (int o = 1; o <= optionsCount; o++) { if (rs.getBoolean("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "o" + o)) { integerAnswerValuesArray[index] = o; index++; } } questionAnswer.setIntegerAnswerValuesArray(integerAnswerValuesArray); //other text data questionAnswer.setOtherStringAnswerValue( (rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "text"))); break; case DATASET_DROP_DOWN: //DataSet Drop Down questionAnswer.setStringAnswerValue((rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); break; case SINGLE_CHOICE_RADIO_BUTTONS: //Single Choice Radio Buttons questionAnswer.setStringAnswerValue((rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); //other text data questionAnswer.setOtherStringAnswerValue( (rs.getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "text"))); break; case YES_NO_DROPDOWN_MATRIX://Yes No DropDown Matrix booleanAnswerValuesMatrix = new Boolean[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { booleanAnswerValuesMatrix[r - 1][c - 1] = rs .getBoolean("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); } } questionAnswer.setBooleanAnswerValuesMatrix(booleanAnswerValuesMatrix); break; case SHORT_TEXT_INPUT_MATRIX://Short Text Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { stringAnswerValuesMatrix[r - 1][c - 1] = rs .getString("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); break; case INTEGER_INPUT_MATRIX://Integer Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; longAnswerValuesMatrix = new Long[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { longAnswerValuesMatrix[r - 1][c - 1] = rs .getLong("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = longAnswerValuesMatrix[r - 1][c - 1] == null ? "" : longAnswerValuesMatrix[r - 1][c - 1].toString(); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer.setLongAnswerValuesMatrix(longAnswerValuesMatrix); break; case CURRENCY_INPUT_MATRIX://Currency Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; bigDecimalAnswerValuesMatrix = new BigDecimal[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { bigDecimalAnswerValuesMatrix[r - 1][c - 1] = rs .getBigDecimal("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = bigDecimalAnswerValuesMatrix[r - 1][c - 1] == null ? "" : CurrencyValidator.getInstance().format( bigDecimalAnswerValuesMatrix[r - 1][c - 1], LocaleContextHolder.getLocale()); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer .setBigDecimalAnswerValuesMatrix(bigDecimalAnswerValuesMatrix); break; case DECIMAL_INPUT_MATRIX://Decimal Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; bigDecimalAnswerValuesMatrix = new BigDecimal[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { bigDecimalAnswerValuesMatrix[r - 1][c - 1] = rs .getBigDecimal("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = bigDecimalAnswerValuesMatrix[r - 1][c - 1] == null ? "" : BigDecimalValidator.getInstance().format( bigDecimalAnswerValuesMatrix[r - 1][c - 1], LocaleContextHolder.getLocale()); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer .setBigDecimalAnswerValuesMatrix(bigDecimalAnswerValuesMatrix); break; case DATE_INPUT_MATRIX://Date Input Matrix stringAnswerValuesMatrix = new String[rowCount][columnCount]; dateAnswerValuesMatrix = new Date[rowCount][columnCount]; for (int r = 1; r <= rowCount; r++) { for (int c = 1; c <= columnCount; c++) { dateAnswerValuesMatrix[r - 1][c - 1] = rs .getDate("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder() + "r" + r + "c" + c); stringAnswerValuesMatrix[r - 1][c - 1] = dateAnswerValuesMatrix[r - 1][c - 1] == null ? "" : DateValidator.getInstance().format( dateAnswerValuesMatrix[r - 1][c - 1], dateFormat); } } questionAnswer.setStringAnswerValuesMatrix(stringAnswerValuesMatrix); questionAnswer.setDateAnswerValuesMatrix(dateAnswerValuesMatrix); break; case STAR_RATING: //Integer Input questionAnswer.setLongAnswerValue((rs.getLong("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); if (rs.wasNull()) questionAnswer.setLongAnswerValue(null); questionAnswer.setStringAnswerValue( questionAnswer.getLongAnswerValue() == null ? "" : questionAnswer.getLongAnswerValue().toString()); break; case SMILEY_FACES_RATING: //Integer Input questionAnswer.setLongAnswerValue((rs.getLong("p" + surveyDefinitionPage.getOrder() + "q" + question.getOrder()))); if (rs.wasNull()) questionAnswer.setLongAnswerValue(null); questionAnswer.setStringAnswerValue( questionAnswer.getLongAnswerValue() == null ? "" : questionAnswer.getLongAnswerValue().toString()); break; } questionAnswers.add(questionAnswer); } page.setQuestionAnswers(questionAnswers); pages.add(page); } return pages; } }); return surveyPages; } catch (Exception e) { log.error(e.getMessage(), e); throw (new RuntimeException(e)); } }
From source file:vista.promocion.DiagArticuloPromocion.java
private void agregar() { if (articulo != null) { if (BigDecimalValidator.getInstance().isValid(tfValor.getText().replace(",", "."))) { switch (tipoOperacion) { case "Alta": promocionArticulo = new PromocionArticulo(); break; }//from www .j a v a 2 s. co m // promocionArticulo.setPromocion(promocion); promocionArticulo.setValor(new BigDecimal(tfValor.getText().replace(",", "."))); promocionArticulo.setArticulo(articulo); this.dispose(); } else { JOptionPane.showMessageDialog(null, "Debe Ingresar un valor correcto"); tfValor.requestFocus(); } } else { JOptionPane.showMessageDialog(null, "No selecciono ningn Articulo"); tfValor.requestFocus(); } }
From source file:vista.promocion.DiagPromocion.java
private boolean validarPromocion() { if (tfNombre.getText().isEmpty()) { JOptionPane.showMessageDialog(this, "La promocin debe tener nombre", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; }/*from w ww .j a v a 2 s .c o m*/ if (dpFechaInicio.getDate() == null) { JOptionPane.showMessageDialog(this, "La promocin debe tener una fecha de inicio", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (dpFechaFin.getDate() == null) { JOptionPane.showMessageDialog(this, "La promocin debe tener una fecha de fin", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (dpFechaFin.getDate().before(dpFechaInicio.getDate())) { JOptionPane.showMessageDialog(this, "La fecha de fin no puede ser menor a la de inicio", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (rbPrecio.isSelected() == rbPorcentaje.isSelected()) { JOptionPane.showMessageDialog(this, "La promocin debe tener un tipo", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (rbAlgunosArticulos.isSelected() && articulosEnPromocion.isEmpty()) { JOptionPane.showMessageDialog(this, "La promocin Porcentaje para algunos articulos debe tener una lista de articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } try { if (rbTodosLosArticulos.isSelected() && BigDecimal .valueOf(Double.parseDouble(tfPorcentajeATodos.getText())).compareTo(BigDecimal.ZERO) <= 0) { JOptionPane.showMessageDialog(this, "La promocin debe tener un porcentaje mayor que cero para todos los articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } } catch (NumberFormatException | HeadlessException e) { JOptionPane.showMessageDialog(this, "La promocin debe tener un porcentaje correcto para todos los articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (rbTodosLosArticulos.isSelected() && !BigDecimalValidator.getInstance().isValid(tfPorcentajeATodos.getText().replace(",", "."))) { JOptionPane.showMessageDialog(this, "La promocin debe tener un porcentaje correcto para todos los articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (!chkLunes.isSelected() && !chkMartes.isSelected() && !chkMiercoles.isSelected() && !chkJueves.isSelected() && !chkViernes.isSelected() && !chkSabado.isSelected() && !chkDomingo.isSelected()) { JOptionPane.showMessageDialog(this, "La promocin debe aplicarse al menos a un dia de la semana", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (PromocionFacade.getInstance().buscarPrioridad((int) spPrioridad.getValue(), sucursal)) { JOptionPane.showMessageDialog(this, "La prioridad Seleccionada ya ha sido Asignada a otra promocion", "Mensaje", JOptionPane.ERROR_MESSAGE); spPrioridad.requestFocus(); return false; } return true; }
From source file:vista.promocion.DiagPromocion.java
private boolean validarPromocion2() { if (tfNombre.getText().isEmpty()) { JOptionPane.showMessageDialog(this, "La promocin debe tener nombre", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; }/* ww w .j a v a 2 s. c om*/ if (dpFechaInicio.getDate() == null) { JOptionPane.showMessageDialog(this, "La promocin debe tener una fecha de inicio", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (dpFechaFin.getDate() == null) { JOptionPane.showMessageDialog(this, "La promocin debe tener una fecha de fin", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (dpFechaFin.getDate().before(dpFechaInicio.getDate())) { JOptionPane.showMessageDialog(this, "La fecha de fin no puede ser menor a la de inicio", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (rbPrecio.isSelected() == rbPorcentaje.isSelected()) { JOptionPane.showMessageDialog(this, "La promocin debe tener un tipo", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (rbAlgunosArticulos.isSelected() && articulosEnPromocion.isEmpty()) { JOptionPane.showMessageDialog(this, "La promocin Porcentaje para algunos articulos debe tener una lista de articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } try { if (rbTodosLosArticulos.isSelected() && BigDecimal .valueOf(Double.parseDouble(tfPorcentajeATodos.getText())).compareTo(BigDecimal.ZERO) <= 0) { JOptionPane.showMessageDialog(this, "La promocin debe tener un porcentaje mayor que cero para todos los articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } } catch (NumberFormatException | HeadlessException e) { JOptionPane.showMessageDialog(this, "La promocin debe tener un porcentaje correcto para todos los articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (rbTodosLosArticulos.isSelected() && !BigDecimalValidator.getInstance().isValid(tfPorcentajeATodos.getText().replace(",", "."))) { JOptionPane.showMessageDialog(this, "La promocin debe tener un porcentaje correcto para todos los articulos", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (!chkLunes.isSelected() && !chkMartes.isSelected() && !chkMiercoles.isSelected() && !chkJueves.isSelected() && !chkViernes.isSelected() && !chkSabado.isSelected() && !chkDomingo.isSelected()) { JOptionPane.showMessageDialog(this, "La promocin debe aplicarse al menos a un dia de la semana", "Mensaje", JOptionPane.ERROR_MESSAGE); return false; } if (PromocionFacade.getInstance().buscarPrioridad((int) spPrioridad.getValue(), promocion, sucursal)) { JOptionPane.showMessageDialog(this, "La prioridad Seleccionada ya ha sido Asignada a otra promocion", "Mensaje", JOptionPane.ERROR_MESSAGE); spPrioridad.requestFocus(); return false; } return true; }
From source file:vista.ventas.DiagOrdenesDeCompra.java
private void agregarArticulo() { if (validarArticulo()) { if (articulo != null) { if (!modificacionOrden) { //ALTA DE ARTICULO EN LA LISTA ordenDeCompraArticulo = new OrdenDeCompraArticulo(); ordenDeCompraArticulo.setArticulo(articulo); //segun sea por peso o cantidad la venta if (!tfCantidad.getText().isEmpty() && BigDecimalValidator.getInstance().isValid(tfCantidad.getText())) { ordenDeCompraArticulo .setCantidadPeso(BigDecimal.valueOf(Double.parseDouble(tfCantidad.getText()))); } else { tfCantidad.requestFocus(); }/* w w w. ja v a 2 s . c o m*/ ordenDeCompraArticulo.setPrecio(new BigDecimal(tfPrecioPactado.getText())); //Lista para cargar tabla listaArticulos.add(ordenDeCompraArticulo); cargarTablaArticulos(listaArticulos); // cacularSubtotal(); // calcularTotal(); limpiarCamposArticulo(); tfCodigo.requestFocus(); } else { //MODIFICACION DE ARTICULO DE LA LISTA btnCancelarModificacion.setEnabled(false); modificacionOrden = false; //segun sea por peso o cantidad la venta if (!tfCantidad.getText().isEmpty() && BigDecimalValidator.getInstance().isValid(tfCantidad.getText())) { ordenDeCompraArticulo .setCantidadPeso(BigDecimal.valueOf(Double.parseDouble(tfCantidad.getText()))); } else { tfCantidad.requestFocus(); } ordenDeCompraArticulo.setPrecio(new BigDecimal(tfPrecioPactado.getText())); //Lista para cargar tabla ((ModeloTablaNoEditable) tblArticulos.getModel()).removeRow(selectedRow); listaArticulos.set(selectedRow, ordenDeCompraArticulo); cargarTablaArticulos(listaArticulos); limpiarCamposArticulo(); tfCodigo.requestFocus(); } } } }