diff options
Diffstat (limited to 'ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java')
-rw-r--r-- | ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java index 343862b6..962cb032 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java @@ -39,6 +39,7 @@ package org.onap.portalsdk.analytics.model.definition; import java.io.Serializable; import java.sql.Connection; +import java.util.ArrayList; import java.util.Calendar; import java.util.Collections; import java.util.Iterator; @@ -47,6 +48,7 @@ import java.util.StringTokenizer; import java.util.Vector; import java.util.regex.Matcher; import java.util.regex.Pattern; +import java.util.stream.Collectors; import javax.servlet.http.HttpServletRequest; import javax.xml.bind.JAXBException; @@ -258,6 +260,7 @@ public class ReportDefinition extends ReportWrapper implements Serializable { boolean valColExist = false; if (!getDataSourceList().getDataSource().isEmpty()) { + if (getAllColumns().stream().anyMatch(dto -> dto.getCrossTabValue() != null)) { for (Iterator iter = getAllColumns().iterator(); iter.hasNext();) { DataColumnType dct = (DataColumnType) iter.next(); @@ -268,13 +271,15 @@ public class ReportDefinition extends ReportWrapper implements Serializable { if (nvl(dct.getCrossTabValue()).equals(AppConstants.CV_VALUE)) valColExist = true; } // for + } else { + return true; + } } // if return rowColExist && colColExist && valColExist; } // canPersistCrossTabReport private boolean canPersistReport() { - String reportType = getReportType(); return getReportType().equals(AppConstants.RT_CROSSTAB) ? canPersistCrossTabReport() : (getReportType().equals(AppConstants.RT_LINEAR)? canPersistLinearReport() :(getReportType().equals(AppConstants.RT_HIVE)? canPersistLinearReport() @@ -943,8 +948,14 @@ public class ReportDefinition extends ReportWrapper implements Serializable { fft.setValidationType(validationType); fft.setMandatory(nvl(mandatory, "N")); fft.setDefaultValue(nvl(defaultValue)); - fft.setOrderBySeq((getFormFieldList() == null) ? 1 : getFormFieldList().getFormField() - .size() + 1); + List<Integer> orderSeq = new ArrayList<>(); + if(getFormFieldList() != null) + orderSeq = getFormFieldList().getFormField().stream().map(FormFieldType::getOrderBySeq).collect(Collectors.toList()); + Integer max=0; + if(orderSeq.size()>0) { + max = Collections.max(orderSeq); + } + fft.setOrderBySeq((getFormFieldList() == null) ? 1 : max+1); fft.setFieldSQL(fieldSQL); try { fft.setRangeStartDate(DatatypeFactory.newInstance() |