protected boolean canHaveDefaultValue() { ReportInputParameter parameter = getItem(); if (parameter == null) { return false; } if (isParameterDateOrTime() && BooleanUtils.isTrue(parameter.getDefaultDateIsCurrent())) { return false; } ParameterType type = parameter.getType(); return type != null && type != ParameterType.ENTITY_LIST && (type != ParameterType.ENTITY || StringUtils.isNotBlank(parameter.getEntityMetaClass())) && (type != ParameterType.ENUMERATION || StringUtils.isNotBlank(parameter.getEnumerationClass())); }
@Override public Field createField(ReportInputParameter parameter) { Field timeField = componentsFactory.createComponent(TimeField.class); if (BooleanUtils.isTrue(parameter.getDefaultDateIsCurrent())) { setCurrentDateAsNow(parameter, timeField); } return componentsFactory.createComponent(TimeField.class); } }
@Override public Field createField(ReportInputParameter parameter) { DateField dateField = componentsFactory.createComponent(DateField.class); dateField.setResolution(DateField.Resolution.DAY); dateField.setDateFormat(messages.getMainMessage("dateFormat")); if (BooleanUtils.isTrue(parameter.getDefaultDateIsCurrent())) { setCurrentDateAsNow(parameter, dateField); } return dateField; } }
@Override public Field createField(ReportInputParameter parameter) { DateField dateField = componentsFactory.createComponent(DateField.class); dateField.setResolution(DateField.Resolution.MIN); dateField.setDateFormat(messages.getMainMessage("dateTimeFormat")); if (BooleanUtils.isTrue(parameter.getDefaultDateIsCurrent())) { setCurrentDateAsNow(parameter, dateField); } return dateField; } }
@Override protected Map<String, Object> handleParameters(com.haulmont.yarg.structure.Report report, Map<String, Object> params) { Map<String, Object> handledParams = new HashMap<String, Object>(super.handleParameters(report, params)); for (ReportParameter reportParameter : report.getReportParameters()) { if (reportParameter instanceof ReportInputParameter) { ReportInputParameter reportInputParameter = (ReportInputParameter) reportParameter; String paramName = reportParameter.getAlias(); Object paramValue = handledParams.get(paramName); if (BooleanUtils.isTrue(reportInputParameter.getDefaultDateIsCurrent())) { handleDateTimeRelatedParameterAsNow(paramName, paramValue, reportInputParameter.getType(), handledParams); } if (paramValue == null) { continue; } if (reportInputParameter.getPredefinedTransformation() != null) { handledParams.put(paramName, handlePredefinedTransformation(paramValue, reportInputParameter.getPredefinedTransformation())); } else if (!Strings.isNullOrEmpty(reportInputParameter.getTransformationScript())) { handledParams.put(paramName, handleScriptTransformation(paramValue, reportInputParameter.getTransformationScript(), handledParams)); } } } return handledParams; }