summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java
diff options
context:
space:
mode:
authorSunder Tattavarada <statta@research.att.com>2020-05-18 15:17:41 +0000
committerGerrit Code Review <gerrit@onap.org>2020-05-18 15:17:41 +0000
commit45505117ccea62c60cd57df471a757c77749671f (patch)
tree79feb9ec88278406c70c538c20278bdb45f7f708 /ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java
parent4c8ce62291707a0cb10d5b599d87e6c7dd6bfd9f (diff)
parent759e9e75fc0b5978f98f901744c87c0c8d5ef4fd (diff)
Merge "Raptor backend java API Code(Analytics), UI Code(Overlay) and pages component in os project"
Diffstat (limited to 'ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java')
-rw-r--r--ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java118
1 files changed, 99 insertions, 19 deletions
diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java
index bf7ef0bb..ae9d39a1 100644
--- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java
+++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java
@@ -108,6 +108,7 @@ import org.onap.portalsdk.analytics.xmlobj.DataColumnType;
import org.onap.portalsdk.analytics.xmlobj.FormFieldType;
import org.onap.portalsdk.analytics.xmlobj.ObjectFactory;
import org.onap.portalsdk.analytics.xmlobj.PredefinedValueList;
+import org.onap.portalsdk.analytics.xmlobj.SemaphoreList;
import org.onap.portalsdk.core.controller.RestrictedBaseController;
import org.onap.portalsdk.core.domain.User;
import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
@@ -115,6 +116,7 @@ import org.onap.portalsdk.core.util.SecurityCodecUtil;
import org.onap.portalsdk.core.web.support.UserUtils;
import org.owasp.esapi.ESAPI;
import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -145,7 +147,7 @@ public class RaptorControllerAsync extends RestrictedBaseController {
HttpSession session = request.getSession();
User user = UserUtils.getUserSession(request);
-
+ boolean isPageDownload = Boolean.valueOf(request.getParameter(AppConstants.PAGE_DOWNLOAD));
if ("report.download.excel2007.session".equals(actionKey) || "report.download.csv.session".equals(actionKey)
|| "report.download.excel.session".equals(actionKey)
|| "report.download.pdf.session".equals(actionKey)) {
@@ -193,24 +195,27 @@ public class RaptorControllerAsync extends RestrictedBaseController {
: Globals.getDownloadLimit();
if ("report.csv.download".equals(actionKey))
downloadLimit = Globals.getCSVDownloadLimit();
- if(rr != null) {
- String sqlWhole = rr.getReportDataSQL(userId, downloadLimit, request);
- request.setAttribute(AppConstants.RI_REPORT_SQL_WHOLE, sqlWhole);
+
+ final boolean isDashboard = (session.getAttribute(AppConstants.SI_DASHBOARD_REP_ID) != null) &&
+ (((String) session.getAttribute(AppConstants.SI_DASHBOARD_REP_ID)).equals(rr.getReportID()));
+
+ if(!isDashboard)
+ {
+ String sql_whole = rr.getReportDataSQL(userId, downloadLimit, request);
+ request.setAttribute(AppConstants.RI_REPORT_SQL_WHOLE, sql_whole);
}
try {
OutputStreamWriter out = new OutputStreamWriter(response.getOutputStream());
-
+ if(rr != null)
+ //rr.setSinglePageDownload(isPageDownload);
if ("report.download.pdf.session".equals(actionKey)) {
new PdfReportHandler().createPdfFileContent(request, response, 3);
} else if ("report.download.csv.session".equals(actionKey)) {
(new ReportHandler()).createCSVFileContent(out, rd, rr, request, response);
} else if ("report.download.excel.session".equals(actionKey)) {
- new ReportHandler().createExcelFileContent(out, rd, rr, request, response, userId, 3); // 3
- // whole
+ new ReportHandler().createExcelFileContent(out, rd, rr, request, response, userId, 3);
} else {
-
- new ReportHandler().createExcel2007FileContent(out, rd, rr, request, response, userId, 3); // 3
- // whole
+ new ReportHandler().createExcel2007FileContent(out, rd, rr, request, response, userId, 3);
}
} catch (Exception e) {
logger.error(EELFLoggerDelegate.errorLogger,
@@ -526,6 +531,17 @@ public class RaptorControllerAsync extends RestrictedBaseController {
return formFieldGroupsJSON;
}
+ @RequestMapping(value = "report/wizard/clearSession", method = RequestMethod.GET)
+ public @ResponseBody MessageJSON clearSession(HttpServletRequest request, HttpServletResponse response) {
+ MessageJSON messageJSON = new MessageJSON();
+ removeVariablesFromSession(request);
+ request.getSession().setAttribute("COPY_REPORT_EVENT", "");
+ messageJSON.setMessage("CopyReport Cancelled");
+ return messageJSON;
+
+ }
+
+
@RequestMapping(value = "report/wizard/save_formfield_groups_data", method = RequestMethod.POST)
public @ResponseBody MessageJSON saveFFGroupsData(@RequestBody FormFieldGroupsJSON formFieldGroupsJSON,
HttpServletRequest request, HttpServletResponse response) throws IOException, RaptorException {
@@ -573,9 +589,18 @@ public class RaptorControllerAsync extends RestrictedBaseController {
String fieldId = formEditJSON.getFieldId();
+ boolean lastUpdateIdFlag = false;
+
if (rdef.getFormFieldList() != null) {
+
+
+// fft.getlastUpdatedFieldId()
+
for (FormFieldType fft : rdef.getFormFieldList().getFormField()) {
- if (fft.getFieldId().equals(fieldId)) {
+
+ System.out.println(fft.getFieldId() + " " + fft.getFieldName() + " " + fft.getlastUpdatedFieldId() + " " + formEditJSON.getLastUpdatedFieldId() );
+ if (fft.getFieldId().equals(fieldId) && !lastUpdateIdFlag) {
+ fft.setFieldId(formEditJSON.getLastUpdatedFieldId() != null ? formEditJSON.getLastUpdatedFieldId() : fft.getFieldId());
fft.setFieldName(formEditJSON.getFieldName());
fft.setFieldType(formEditJSON.getFieldType());
fft.setVisible(formEditJSON.isVisible() ? "Y" : "N");
@@ -589,15 +614,35 @@ public class RaptorControllerAsync extends RestrictedBaseController {
PredefinedValueList predefinedValueList = new ObjectFactory().createPredefinedValueList();
fft.setPredefinedValueList(predefinedValueList);
+ fft.setlastUpdatedFieldId("Y");
+ lastUpdateIdFlag = true;
+
List<IdNameBooleanJSON> predefList = formEditJSON.getPredefinedValueList();
if (predefList != null && predefList.size() > 0) {
for (IdNameBooleanJSON item : predefList) {
fft.getPredefinedValueList().getPredefinedValue().add(item.getId());
}
}
+ int cnt=0;
+ for (FormFieldType fft1 : rdef.getFormFieldList().getFormField()) {
+
+ if(fft1.getlastUpdatedFieldId().equals("Y"))
+ {
+ cnt++;
+ }
+
+ if(cnt >= 2)
+ {
+ for (FormFieldType fft2 : rdef.getFormFieldList().getFormField()) {
+ fft2.setlastUpdatedFieldId("N");
+ }
+ cnt = 0;
+ }
}
}
+ System.out.println(fft.getFieldId() + " " + fft.getFieldName() + " " + fft.getlastUpdatedFieldId() + " " + formEditJSON.getLastUpdatedFieldId() );
+ }
}
persistReportDefinition(request, rdef);
@@ -634,7 +679,18 @@ public class RaptorControllerAsync extends RestrictedBaseController {
if(rdef.getFormFieldList()==null || rdef.getFormFieldList().getFormField()==null || rdef.getFormFieldList().getFormField().size()==0)
fieldId = "ff1";
else
- fieldId = "ff"+(rdef.getFormFieldList().getFormField().size()+1);
+ {
+ int maxFormFieldSeq = 0;
+ for(FormFieldType ffType : rdef.getFormFieldList().getFormField())
+ {
+ if(Integer.parseInt(ffType.getFieldId().substring(2)) > maxFormFieldSeq)
+ {
+ maxFormFieldSeq = Integer.parseInt(ffType.getFieldId().substring(2));
+ }
+ }
+ maxFormFieldSeq++;
+ fieldId = "ff"+ maxFormFieldSeq;
+ }
FormFieldType currField = rdef.addFormFieldType(new ObjectFactory(), "", "", "", "", "", "", "", "", null, null, "","");
currField.setFieldId(fieldId);
currField.setFieldName(formEditJSON.getFieldName());
@@ -676,6 +732,8 @@ public class RaptorControllerAsync extends RestrictedBaseController {
if (rdef != null) {
String colId = columnEditJSON.getColId();
List<DataColumnType> reportColumnList = rdef.getAllColumns();
+ rdef.setSemaphoreList(columnEditJSON.getSemaphoreList());
+
for (DataColumnType reportColumnType : reportColumnList) {
@@ -702,6 +760,8 @@ public class RaptorControllerAsync extends RestrictedBaseController {
reportColumnType.setDrillDownType(columnEditJSON.getDrilldownType());
if(columnEditJSON.getDisplayTotal()!=null)
reportColumnType.setDisplayTotal(columnEditJSON.getDisplayTotal());
+ reportColumnType.setSemaphoreId(columnEditJSON.getSemaphoreId());
+
}
@@ -745,6 +805,9 @@ public class RaptorControllerAsync extends RestrictedBaseController {
newReport = true;
System.out.println("&&&&&&&&&&&&&&&&&&&&&& CHECK Report Type "
+ (AppUtils.nvl(rdef.getReportType()).length() <= 0));
+
+ rdef.setReportType(definitionJSON.getReportType());
+
if (AppUtils.nvl(rdef.getReportType()).length() <= 0) {
rdef.setReportType(AppConstants.RT_LINEAR);
System.out.println("&&&&&&&&&&&&&&&&&&&&&& ADDED Report Type in session ");
@@ -899,6 +962,16 @@ public class RaptorControllerAsync extends RestrictedBaseController {
messageJSON.setAnyStacktrace((newReport ? " New Report info is added to Session "
: rdef.getReportID() + "- is Modified and added to session and DB."));
+ if(rdef.getReportType() != null) {
+ if(rdef.getReportType().equals("Dashboard") && id.equals("Create")) {
+ messageJSON.setAnyStacktrace(rdef.getReportID() + "- is Modified and added to session and DB.");
+ }
+ }
+ if(request.getSession().getAttribute("COPY_REPORT_EVENT") == "true" || (rdef.getReportType().equals("Dashboard") && id.equals("Create")) ) {
+ removeVariablesFromSession(request);
+ request.getSession().setAttribute("COPY_REPORT_EVENT", "");
+ }
+
} catch (Exception ex) {
messageJSON.setMessage("Error occured while saving definition Tab");
messageJSON.setAnyStacktrace(getStackTrace(ex));
@@ -1015,6 +1088,10 @@ public class RaptorControllerAsync extends RestrictedBaseController {
Globals.initializeSystem(servletContext);
}
if (rdef != null) {
+ if(rdef.getSemaphoreList() != null) {
+ wizardJSON.setSemaphoreList(rdef.getSemaphoreList());
+ }else { wizardJSON.setSemaphoreList(new SemaphoreList()); }
+
wizardJSON.setTabId("ColEdit");
wizardJSON.setTabName("Column Edit");
@@ -1049,6 +1126,8 @@ public class RaptorControllerAsync extends RestrictedBaseController {
wizardJSON.setColspan(reportColumnType.getColspan()==null?null:reportColumnType.getColspan());
wizardJSON.setDisplayName(reportColumnType.getDisplayName());
wizardJSON.setDisplayTotal(reportColumnType.getDisplayTotal());
+ wizardJSON.setSemaphoreId(reportColumnType.getSemaphoreId());
+
}
}
} else {
@@ -1673,7 +1752,9 @@ public class RaptorControllerAsync extends RestrictedBaseController {
QueryResultJSON queryResultJSON = new QueryResultJSON();
queryResultJSON.setQuery(queryJSON.getQuery());
String query = XSSFilter.filterRequestOnlyScript(queryJSON.getQuery());
+ if(validate) {
rdef.parseReportSQL(query,validate);
+ }
queryResultJSON.setQuery(query);
queryResultJSON.setTotalRows(ds.getRowCount());
@@ -1796,7 +1877,7 @@ public class RaptorControllerAsync extends RestrictedBaseController {
@RequestMapping(value = "save_chart", method = RequestMethod.POST)
public void reportChartReceive(@RequestBody ChartJSON chartJSON, HttpServletRequest request,
- HttpServletResponse response) throws IOException {
+ HttpServletResponse response) {
//ReportRuntime reportRuntime;
//reportRuntime = (ReportRuntime) request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME); // changing
ReportDefinition reportDefn;
@@ -1828,7 +1909,7 @@ public class RaptorControllerAsync extends RestrictedBaseController {
List<DataColumnType> reportCols = reportDefn.getAllColumns();
for (Iterator<DataColumnType> iter = reportCols.iterator(); iter.hasNext();) {
- DataColumnType dct = (DataColumnType) iter.next();
+ DataColumnType dct = iter.next();
if (dct.getColId().equals(domainAxis)) {
dct.setColOnChart(AppConstants.GC_LEGEND);
} else {
@@ -1837,14 +1918,14 @@ public class RaptorControllerAsync extends RestrictedBaseController {
}
CategoryAxisJSON categoryAxisJSON = chartJSON.getCategoryAxisJSON();
- String categoryAxis = null;
+ String categoryAxis;
categoryAxis = (categoryAxisJSON != null ? categoryAxisJSON.getValue() : "");
reportCols = reportDefn.getAllColumns();
for (Iterator<DataColumnType> iter = reportCols.iterator(); iter.hasNext();) {
- DataColumnType dct = (DataColumnType) iter.next();
+ DataColumnType dct = iter.next();
if (dct.getColId().equals(categoryAxis)) {
dct.setChartSeries(true);
} else {
@@ -1867,7 +1948,7 @@ public class RaptorControllerAsync extends RestrictedBaseController {
String rangeLineType = AppUtils.nvl(rangeAxisJSON.getRangeLineType());
rangefor: for (Iterator<DataColumnType> iterator = reportCols.iterator(); iterator.hasNext();) {
- DataColumnType dct = (DataColumnType) iterator.next();
+ DataColumnType dct = iterator.next();
if (dct.getColId().equals(rangeAxis)) {
if(removeRangeAxisMap.contains(rangeAxis))
dct.setChartSeq(-1); // if we set it to -1, means this range axis will not be included
@@ -1947,7 +2028,7 @@ public class RaptorControllerAsync extends RestrictedBaseController {
reportDefn.setRightMargin(chartJSON.getCommonChartOptions().getRightMargin());
for (Iterator<DataColumnType> iterator = reportCols.iterator(); iterator.hasNext();) {
- DataColumnType dct = (DataColumnType) iterator.next();
+ DataColumnType dct = iterator.next();
if (!(AppUtils.nvl(dct.getColOnChart()).equals(AppConstants.GC_LEGEND)
|| (dct.getChartSeq() != null && dct.getChartSeq() > 0) || dct.isChartSeries())) {
dct.setChartSeq(-1);
@@ -1970,7 +2051,6 @@ public class RaptorControllerAsync extends RestrictedBaseController {
}
}
-
public String getViewName() {
return viewName;
}