|
@@ -27,22 +27,27 @@ import lombok.extern.slf4j.Slf4j;
|
|
|
@Slf4j
|
|
|
public class AdmExcelUtil {
|
|
|
|
|
|
+ public static final String TEMP_PAHT = "/temp/";
|
|
|
+
|
|
|
+ public static final String TEMP_UPLOAD_PAHT = "/temp/upload/";
|
|
|
+
|
|
|
/**
|
|
|
* 文件写入至本地
|
|
|
*
|
|
|
* @param workbook
|
|
|
* @param projectId
|
|
|
+ * @param path
|
|
|
* @param orgFileName
|
|
|
* @return
|
|
|
*/
|
|
|
- public static String writeFile2Local(XSSFWorkbook workbook, String projectId, String orgFileName) {
|
|
|
+ public static String writeFile2Local(XSSFWorkbook workbook, String projectId, String path, String orgFileName) {
|
|
|
FileOutputStream fileOutputStream = null;
|
|
|
String date = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyyMMddHHmmss"));
|
|
|
// 重组文件名
|
|
|
String fileName = projectId + date + "." + orgFileName.substring(orgFileName.lastIndexOf(".") + 1);
|
|
|
try {
|
|
|
// 调用中台存储完成之后,此文件存储至本地
|
|
|
- File templateFile = createTemplateFile(fileName);
|
|
|
+ File templateFile = createTemplateFile(path, fileName);
|
|
|
fileOutputStream = new FileOutputStream(templateFile);
|
|
|
workbook.write(fileOutputStream);
|
|
|
} catch (Exception e) {
|
|
@@ -66,18 +71,9 @@ public class AdmExcelUtil {
|
|
|
* @throws FileNotFoundException
|
|
|
*/
|
|
|
public static File getTemplateOrDefaultFile(String templateName) throws FileNotFoundException {
|
|
|
- File file = null;
|
|
|
- try {
|
|
|
- file = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "template/" + templateName);
|
|
|
- } catch (FileNotFoundException e) {
|
|
|
- file = ResourceUtils.getFile(AdmCommonConstant.SERVER_ROOT_PATH + "template/" + templateName);
|
|
|
- }
|
|
|
- if (file == null || !file.exists()) {
|
|
|
- try {
|
|
|
- file = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "template/relation-template.xlsx");
|
|
|
- } catch (FileNotFoundException e) {
|
|
|
- file = ResourceUtils.getFile(AdmCommonConstant.SERVER_ROOT_PATH + "/template/relation-template.xlsx");
|
|
|
- }
|
|
|
+ File file = ResourceUtils.getFile(AdmCommonConstant.SERVER_ROOT_PATH + TEMP_PAHT + templateName);
|
|
|
+ if (!file.exists()) {
|
|
|
+ file = ResourceUtils.getFile(AdmCommonConstant.SERVER_ROOT_PATH + TEMP_PAHT + "relation-template.xlsx");
|
|
|
}
|
|
|
return file;
|
|
|
}
|
|
@@ -90,29 +86,22 @@ public class AdmExcelUtil {
|
|
|
* @throws FileNotFoundException
|
|
|
*/
|
|
|
public static File getTemplateFile(String templateName) throws FileNotFoundException {
|
|
|
- File file = null;
|
|
|
- try {
|
|
|
- file = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "template/" + templateName);
|
|
|
- } catch (FileNotFoundException e) {}
|
|
|
- if (file == null || !file.exists()) {
|
|
|
- file = ResourceUtils.getFile(AdmCommonConstant.SERVER_ROOT_PATH + "/template/" + templateName);
|
|
|
- }
|
|
|
- return file;
|
|
|
+ return ResourceUtils.getFile(AdmCommonConstant.SERVER_ROOT_PATH + TEMP_PAHT + templateName);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 创建本地文件,这里不再在classpath下创建
|
|
|
*
|
|
|
- * @param uploadFile 文件名称,带后缀
|
|
|
+ * @param path 以 / 结尾
|
|
|
+ * @param fileName 文件名称,带后缀
|
|
|
* @throws IOException
|
|
|
*/
|
|
|
- public static File createTemplateFile(String uploadFile) throws IOException {
|
|
|
- String path = AdmCommonConstant.SERVER_ROOT_PATH + "/template";
|
|
|
+ public static File createTemplateFile(String path, String fileName) throws IOException {
|
|
|
File file = new File(path);
|
|
|
if (!file.exists()) {
|
|
|
file.mkdirs();
|
|
|
}
|
|
|
- file = new File(path + "/" + uploadFile);
|
|
|
+ file = new File(path + fileName);
|
|
|
if (!file.exists()) {
|
|
|
file.createNewFile();
|
|
|
}
|
|
@@ -122,22 +111,17 @@ public class AdmExcelUtil {
|
|
|
/**
|
|
|
* 获取导入结果
|
|
|
*
|
|
|
+ * @param graphId
|
|
|
+ * @param successCount
|
|
|
+ * @param failCount
|
|
|
* @return
|
|
|
*/
|
|
|
- public static JSONObject getImportResult(String graphId, int successNum, int failureNum) {
|
|
|
+ public static JSONObject getImportResult(String graphId, int successCount, int failCount) {
|
|
|
JSONObject result = new JSONObject();
|
|
|
result.put("relationType", graphId);
|
|
|
- result.put("successCount", successNum);
|
|
|
- result.put("failCount", failureNum);
|
|
|
- String state = null;
|
|
|
- if (successNum > 0 && failureNum > 0) {
|
|
|
- state = "1";
|
|
|
- } else if (successNum > 0 && failureNum == 0) {
|
|
|
- state = "0";
|
|
|
- } else {
|
|
|
- state = "2";
|
|
|
- }
|
|
|
- result.put("state", state);
|
|
|
+ result.put("successCount", successCount);
|
|
|
+ result.put("failCount", failCount);
|
|
|
+ result.put("state", getState(successCount, failCount));
|
|
|
return result;
|
|
|
}
|
|
|
|
|
@@ -145,6 +129,7 @@ public class AdmExcelUtil {
|
|
|
* 获取导入结果
|
|
|
*
|
|
|
* @param message
|
|
|
+ * @param state
|
|
|
* @param successCount
|
|
|
* @param failCount
|
|
|
* @return
|
|
@@ -163,21 +148,14 @@ public class AdmExcelUtil {
|
|
|
/**
|
|
|
* 获取导入结果
|
|
|
*
|
|
|
+ * @param message
|
|
|
* @param successCount
|
|
|
* @param failCount
|
|
|
* @return
|
|
|
*/
|
|
|
public static AdmResponse getImportSuccessResult(String message, int successCount, int failCount) {
|
|
|
JSONObject content = new JSONObject();
|
|
|
- String state = null;
|
|
|
- if (successCount > 0 && failCount > 0) {
|
|
|
- state = "1";
|
|
|
- } else if (successCount > 0 && failCount == 0) {
|
|
|
- state = "0";
|
|
|
- } else {
|
|
|
- state = "2";
|
|
|
- }
|
|
|
- content.put("state", state);
|
|
|
+ content.put("state", getState(successCount, failCount));
|
|
|
content.put("successCount", successCount);
|
|
|
content.put("failCount", failCount);
|
|
|
AdmResponse success = AdmResponse.success(Lists.newArrayList(content));
|
|
@@ -185,4 +163,20 @@ public class AdmExcelUtil {
|
|
|
return success;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取文件导入状态
|
|
|
+ *
|
|
|
+ * @param successCount
|
|
|
+ * @param failCount
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private static String getState(int successCount, int failCount) {
|
|
|
+ if (successCount > 0 && failCount > 0) {
|
|
|
+ return "1";
|
|
|
+ } else if (successCount > 0 && failCount == 0) {
|
|
|
+ return "0";
|
|
|
+ }
|
|
|
+ return "2";
|
|
|
+ }
|
|
|
+
|
|
|
}
|