aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pom.xml2
-rw-r--r--server/pom.xml18
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/controller/IntentController.java5
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/intent/IntentInstanceService.java3
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/intent/impl/IntentInstanceServiceImpl.java18
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/util/ExportUtil.java68
-rw-r--r--standalone/pom.xml4
-rw-r--r--version.properties2
8 files changed, 114 insertions, 6 deletions
diff --git a/pom.xml b/pom.xml
index baf00900..5037cd05 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@
<groupId>org.onap.usecase-ui.server</groupId>
<artifactId>usecase-ui-server-parent</artifactId>
- <version>13.0.0-SNAPSHOT</version>
+ <version>14.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>usecase-ui-server-parent</name>
<description>parent project for usecase-ui server</description>
diff --git a/server/pom.xml b/server/pom.xml
index cb7b8044..85e0890d 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -19,7 +19,7 @@
<parent>
<groupId>org.onap.usecase-ui.server</groupId>
<artifactId>usecase-ui-server-parent</artifactId>
- <version>13.0.0-SNAPSHOT</version>
+ <version>14.0.0-SNAPSHOT</version>
</parent>
<artifactId>usecase-ui-server</artifactId>
@@ -238,7 +238,21 @@
</exclusion>
</exclusions>
</dependency>
-
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi</artifactId>
+ <version>4.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi-ooxml</artifactId>
+ <version>4.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.poi</groupId>
+ <artifactId>poi-ooxml-schemas</artifactId>
+ <version>4.0.1</version>
+ </dependency>
</dependencies>
<build>
diff --git a/server/src/main/java/org/onap/usecaseui/server/controller/IntentController.java b/server/src/main/java/org/onap/usecaseui/server/controller/IntentController.java
index df6530ce..6c64d6c7 100644
--- a/server/src/main/java/org/onap/usecaseui/server/controller/IntentController.java
+++ b/server/src/main/java/org/onap/usecaseui/server/controller/IntentController.java
@@ -24,6 +24,7 @@ import java.util.regex.Pattern;
import jakarta.annotation.Resource;
import com.alibaba.fastjson.JSONArray;
+import jakarta.servlet.http.HttpServletResponse;
import org.apache.commons.collections.MapUtils;
import org.onap.usecaseui.server.bean.HttpResponseResult;
import org.onap.usecaseui.server.bean.intent.CCVPNInstance;
@@ -591,4 +592,8 @@ public class IntentController {
return intentInstanceService.getIntentInstanceList(currentPage, pageSize);
}
+ @PostMapping("/exportIntentContent")
+ public void exportIntentContent(HttpServletResponse response) {
+ intentInstanceService.exportIntentContent(response);
+ }
}
diff --git a/server/src/main/java/org/onap/usecaseui/server/service/intent/IntentInstanceService.java b/server/src/main/java/org/onap/usecaseui/server/service/intent/IntentInstanceService.java
index e25fa761..b0776844 100644
--- a/server/src/main/java/org/onap/usecaseui/server/service/intent/IntentInstanceService.java
+++ b/server/src/main/java/org/onap/usecaseui/server/service/intent/IntentInstanceService.java
@@ -17,6 +17,7 @@ package org.onap.usecaseui.server.service.intent;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
+import jakarta.servlet.http.HttpServletResponse;
import org.onap.usecaseui.server.bean.csmf.SlicingOrder;
import org.onap.usecaseui.server.bean.intent.CCVPNInstance;
import org.onap.usecaseui.server.bean.intent.IntentInstance;
@@ -68,4 +69,6 @@ public interface IntentInstanceService {
int updateCCVPNInstance(CCVPNInstance instance);
void saveSlicingServiceToAAI(String serviceId,String operationId, SlicingOrder slicingOrder) throws IOException;
+
+ void exportIntentContent(HttpServletResponse response);
}
diff --git a/server/src/main/java/org/onap/usecaseui/server/service/intent/impl/IntentInstanceServiceImpl.java b/server/src/main/java/org/onap/usecaseui/server/service/intent/impl/IntentInstanceServiceImpl.java
index bebc8121..bc0d05a9 100644
--- a/server/src/main/java/org/onap/usecaseui/server/service/intent/impl/IntentInstanceServiceImpl.java
+++ b/server/src/main/java/org/onap/usecaseui/server/service/intent/impl/IntentInstanceServiceImpl.java
@@ -18,6 +18,7 @@ package org.onap.usecaseui.server.service.intent.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
+import jakarta.servlet.http.HttpServletResponse;
import org.hibernate.query.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
@@ -35,6 +36,7 @@ import org.onap.usecaseui.server.service.intent.IntentApiService;
import org.onap.usecaseui.server.service.intent.IntentInstanceService;
import org.onap.usecaseui.server.service.lcm.domain.so.SOService;
import org.onap.usecaseui.server.service.nsmf.ResourceMgtService;
+import org.onap.usecaseui.server.util.ExportUtil;
import org.onap.usecaseui.server.util.Page;
import org.onap.usecaseui.server.util.RestfulServices;
import org.onap.usecaseui.server.util.UuiCommonUtil;
@@ -1026,4 +1028,20 @@ public class IntentInstanceServiceImpl implements IntentInstanceService {
intentApiService.saveServiceInstance(globalCustomerId,serviceType,serviceId,requestBody).execute();
}
+ @Override
+ public void exportIntentContent(HttpServletResponse response) {
+ Session session = getSession();
+ try{
+ String hql = "select i.intentContent from IntentInstance i order by id";
+ Query<String> query = session.createQuery(hql, String.class);
+ query.setMaxResults(1000);
+ List<String> intentContents = query.getResultList();
+ ExportUtil.exportExcel(response,"intentContent",intentContents);
+ } catch (Exception e) {
+ logger.error("An exception occurred with exportIntentContent. Details:" + e.getMessage());
+ } finally {
+ session.close();
+ }
+ }
+
}
diff --git a/server/src/main/java/org/onap/usecaseui/server/util/ExportUtil.java b/server/src/main/java/org/onap/usecaseui/server/util/ExportUtil.java
new file mode 100644
index 00000000..236bf33c
--- /dev/null
+++ b/server/src/main/java/org/onap/usecaseui/server/util/ExportUtil.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2017 CMCC, Inc. and others. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.onap.usecaseui.server.util;
+
+import jakarta.servlet.ServletOutputStream;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.CellStyle;
+import org.apache.poi.ss.usermodel.CellType;
+import org.apache.poi.ss.usermodel.HorizontalAlignment;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.VerticalAlignment;
+import org.apache.poi.xssf.streaming.SXSSFWorkbook;
+
+import java.io.IOException;
+import java.util.List;
+
+
+@SuppressWarnings("unused")
+@Slf4j
+public class ExportUtil {
+
+ public static void exportExcel(HttpServletResponse response, String fileName, List<?> dataList) {
+ SXSSFWorkbook book = new SXSSFWorkbook();
+ Sheet sheet = book.createSheet();
+ CellStyle rowStyle = book.createCellStyle();
+ rowStyle.setAlignment(HorizontalAlignment.CENTER);
+ rowStyle.setVerticalAlignment(VerticalAlignment.CENTER);
+ sheet.setDefaultColumnWidth(15);
+ for (int i = 0; i < dataList.size(); i++) {
+ Row row = sheet.createRow(i);
+ Cell cell = row.createCell(0);
+ cell.setCellStyle(rowStyle);
+ cell.setCellType(CellType.STRING);
+ cell.setCellValue((String) dataList.get(i));
+ }
+ try {
+ write(response, book, fileName);
+ } catch (IOException e) {
+ log.error("An exception occurred with exportExcel, message: "+e.getMessage());
+ }
+ }
+ private static void write(HttpServletResponse response, SXSSFWorkbook book, String fileName) throws IOException {
+ response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
+ response.setCharacterEncoding("utf-8");
+ String name = new String(fileName.getBytes("GBK"), "ISO8859_1") + ".xlsx";
+ response.addHeader("Content-Disposition", "attachment;filename=" + name);
+ ServletOutputStream out = response.getOutputStream();
+ book.write(out);
+ out.flush();
+ out.close();
+ }
+}
diff --git a/standalone/pom.xml b/standalone/pom.xml
index e25eea93..40b7db12 100644
--- a/standalone/pom.xml
+++ b/standalone/pom.xml
@@ -19,7 +19,7 @@
<parent>
<groupId>org.onap.usecase-ui.server</groupId>
<artifactId>usecase-ui-server-parent</artifactId>
- <version>13.0.0-SNAPSHOT</version>
+ <version>14.0.0-SNAPSHOT</version>
</parent>
<artifactId>usecase-ui-server-standalone</artifactId>
@@ -28,7 +28,7 @@
<description>distribute binary files and docker image for usecase-ui server</description>
<properties>
- <usecaseui.version>13.0.0</usecaseui.version>
+ <usecaseui.version>14.0.0</usecaseui.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
diff --git a/version.properties b/version.properties
index 6b9af63e..9767ccac 100644
--- a/version.properties
+++ b/version.properties
@@ -2,7 +2,7 @@
# Note that these variables cannot be structured (e.g. : version.release or version.snapshot etc... )
# because they are used in Jenkins, whose plug-in doesn't support
-major=13
+major=14
minor=0
patch=0