From 220a25a2566c90bc540e7190342f73824d2ff54a Mon Sep 17 00:00:00 2001 From: mravula Date: Mon, 31 Aug 2020 12:29:32 -0400 Subject: Raptor UI Changes, user profile, folder restructure Issue-ID: PORTAL-902 Change-Id: Ib76bb3fce7efe55504b75d2fc4764bafb9f8e908 Signed-off-by: mravula --- .../analytics/model/runtime/ReportRuntime.java | 74 +++++++++++++--------- 1 file changed, 43 insertions(+), 31 deletions(-) (limited to 'ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ReportRuntime.java') diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ReportRuntime.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ReportRuntime.java index 987a8227..1afd629c 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ReportRuntime.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ReportRuntime.java @@ -56,6 +56,7 @@ import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.commons.lang.StringUtils; +import org.apache.jcs.engine.CacheUtils; import org.onap.portalsdk.analytics.error.RaptorException; import org.onap.portalsdk.analytics.model.DataCache; import org.onap.portalsdk.analytics.model.ReportHandler; @@ -183,6 +184,16 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa private int DATE_OPTION = -1; + private boolean fromDashBoard = false; + + + public boolean isFromDashBoard() { + return fromDashBoard; + } + + public void setFromDashBoard(boolean fromDashBoard) { + this.fromDashBoard = fromDashBoard; + } public boolean isSinglePageDownload() { return isSinglePageDownload; @@ -622,11 +633,16 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa public ReportData loadReportData(int pageNo, String userId, int downloadLimit, HttpServletRequest request, boolean download) throws RaptorException { ReportData rd = null; boolean isGoBackAction = AppUtils.getRequestFlag(request, AppConstants.RI_GO_BACK); + boolean isPageDowload = Boolean.valueOf(request.getParameter(AppConstants.PAGE_DOWNLOAD)); if (pageNo >= 0) if (pageNo == cachedPageNo && pageDataCache != null) rd = pageDataCache; if(isGoBackAction && rd!=null) return rd; + if(isPageDowload && pageDataCache != null) { + rd = pageDataCache; + return rd; + } if (rd == null) { if (getReportType().equals(AppConstants.RT_CROSSTAB)) rd = loadCrossTabReportData(pageNo, userId, downloadLimit, request, download); @@ -936,7 +952,11 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa long startTime = System.currentTimeMillis(); logger.info("Session ID: " + request.getSession().getId()); boolean isSameSession = false; - + boolean isChildReport = false; + if(request.getParameter(AppConstants.CHILD_REPORT) != null) { + isChildReport = Boolean.valueOf(request.getParameter(AppConstants.CHILD_REPORT)); + } + //setFromDashBoard(isChildReport); String action = nvl(request.getParameter(AppConstants.RI_ACTION), request.getParameter("action"));; String reportSQL = ""; if(action.endsWith("session")) { @@ -1028,13 +1048,19 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa if (ds.getRowCount() < getPageSize() && pageNo == 0) { setReportDataSize(ds.getRowCount()); } else { - if (CachingUtils.isTotalCountAvailable(request.getSession().getId() + wholeSQL) && !download) { + if (pageNo > 0 && CachingUtils.isTotalCountAvailable(request.getSession().getId() + wholeSQL) && !download) { setReportDataSize(CachingUtils.getTotalRowsCount(request.getSession().getId() + wholeSQL)); } else { DataSet countData = null; + if (!fromDashBoard) { + if(!isChildReport) { countData = ConnectionUtils.getDataSet(SQLForCount, dbInfo); setReportDataSize(countData.getInt(0, 0)); CachingUtils.cacheTotalRowCount(request.getSession().getId() + wholeSQL, countData.getInt(0, 0)); + } else { + setReportDataSize(ds.getRowCount()); + } + } } } if(doesReportContainsGroupFormField()) { @@ -1182,6 +1208,7 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa } } } + //} String widthInPxls = dc.getDisplayWidthInPxls(); @@ -1218,9 +1245,9 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa DataColumnType dct = (DataColumnType) reportCols.get(c); DataValue dv = new DataValue(); dr.addDataValue(dv); - String reverseDispalyValue = reverseDisplayValue(ds.getString(r, ds.getColumnIndex(dct.getColId()))); + String reverseDispalyValue = Utils.removeLinkToForDownload(ds.getString(r, ds.getColumnIndex(dct.getColId()))); reverseDispalyValue = StringUtils.substringBefore(reverseDispalyValue, ","); - if(download) + if(download && Utils.isRemoveLinkToEligible(ds.getString(r, ds.getColumnIndex(dct.getColId())))) dv.setDisplayValue(reverseDispalyValue); else dv.setDisplayValue(ds.getString(r, ds.getColumnIndex(dct.getColId()))); @@ -1438,6 +1465,7 @@ public class ReportRuntime extends ReportWrapper implements Cloneable, Serializa } } } + //} String widthInPxls = dc.getDisplayWidthInPxls(); @@ -2483,7 +2511,7 @@ public List getMapMarkers(ReportData rd, org.onap.portalsdk.analytics.xmlobj.Rep String oldSQL = ""; IdNameList lookupList = null; boolean readOnly = false; - if(lookup!=null) { + if(lookup!=null && rd == null) { if(!ff.hasPredefinedList) { IdNameSql lu = (IdNameSql) lookup; String SQL = lu.getSql(); @@ -2576,11 +2604,13 @@ public List getMapMarkers(ReportData rd, org.onap.portalsdk.analytics.xmlobj.Rep } if(getReportDataSize() > 0) { count = 0; + DataRow dr = new DataRow(); + DataValue dv = new DataValue(); for(rd.reportDataRows.resetNext(); rd.reportDataRows.hasNext(); count++) { dvJSON = new HashMap<>(); - DataRow dr = rd.reportDataRows.getNext(); + dr = rd.reportDataRows.getNext(); for(dr.resetNext(); dr.hasNext(); ) { - DataValue dv = dr.getNext(); + dv = dr.getNext(); try { dvJSON.put(dv.getColId(), dv); } catch (Exception ex) { @@ -2592,11 +2622,13 @@ public List getMapMarkers(ReportData rd, org.onap.portalsdk.analytics.xmlobj.Rep } } if(rd.reportDataTotalRow != null) { + DataRow dr = new DataRow(); + DataValue dv = new DataValue(); for(rd.reportDataTotalRow.resetNext(); rd.reportDataTotalRow.hasNext(); count++) { dvJSON = new HashMap(); - DataRow dr = rd.reportDataTotalRow.getNext(); + dr = rd.reportDataTotalRow.getNext(); for(dr.resetNext(); dr.hasNext(); ) { - DataValue dv = dr.getNext(); + dv = dr.getNext(); try { dvJSON.put(dv.getColId(), dv); } catch (Exception ex) { @@ -2609,8 +2641,8 @@ public List getMapMarkers(ReportData rd, org.onap.portalsdk.analytics.xmlobj.Rep } reportJSONRuntime.setReportDataColumns(colList); reportJSONRuntime.setReportDataRows(reportDataRows); - reportJSONRuntime.setPageSize(getPageSize()); reportJSONRuntime.setReportTotalDataRows(reportTotalDataRows); + reportJSONRuntime.setPageSize(getPageSize()); } @@ -2908,24 +2940,4 @@ public String parseAndFillWithCurrentValues(HttpServletRequest request, String s return sql; } - private static String reverseDisplayValue(String value) { - int i = value.length() - 1; - int start, end = i + 1; - String result = ""; - while (i >= 0) { - if (value.charAt(i) == ',') { - start = i + 1; - while (start != end) - result += value.charAt(start++); - result += ','; - end = i; - } - i--; - } - start = 0; - while (start != end) - result += value.charAt(start++); - return result; - } - -} +} \ No newline at end of file -- cgit 1.2.3-korg