summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/definition/ReportDefinition.java
diff options
context:
space:
mode:
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.java17
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()