|
@@ -1,21 +1,17 @@
|
|
package com.jeeplus.centrecareful.reportArchieve.controller;
|
|
package com.jeeplus.centrecareful.reportArchieve.controller;
|
|
|
|
|
|
-import cn.hutool.core.util.ObjectUtil;
|
|
|
|
import cn.hutool.extra.spring.SpringUtil;
|
|
import cn.hutool.extra.spring.SpringUtil;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.TypeReference;
|
|
import com.alibaba.fastjson.TypeReference;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
|
-import com.google.common.collect.Lists;
|
|
|
|
import com.jeeplus.aop.demo.annotation.DemoMode;
|
|
import com.jeeplus.aop.demo.annotation.DemoMode;
|
|
import com.jeeplus.centrecareful.approvalInfo.util.ZSEasyPoiUtil;
|
|
import com.jeeplus.centrecareful.approvalInfo.util.ZSEasyPoiUtil;
|
|
import com.jeeplus.centrecareful.reportArchieve.Utils.EasyPoiUtil;
|
|
import com.jeeplus.centrecareful.reportArchieve.Utils.EasyPoiUtil;
|
|
import com.jeeplus.centrecareful.reportArchieve.domain.ZsReportArchieve;
|
|
import com.jeeplus.centrecareful.reportArchieve.domain.ZsReportArchieve;
|
|
import com.jeeplus.centrecareful.reportArchieve.service.ZsReportArchieveService;
|
|
import com.jeeplus.centrecareful.reportArchieve.service.ZsReportArchieveService;
|
|
import com.jeeplus.centrecareful.reportArchieve.service.dto.ZsReportArchieveExport;
|
|
import com.jeeplus.centrecareful.reportArchieve.service.dto.ZsReportArchieveExport;
|
|
-import com.jeeplus.centrecareful.reportArchieve.service.dto.ZsReportArchieveTem;
|
|
|
|
-import com.jeeplus.common.excel.EasyExcelUtils;
|
|
|
|
import com.jeeplus.common.excel.ExcelOptions;
|
|
import com.jeeplus.common.excel.ExcelOptions;
|
|
import com.jeeplus.common.excel.ExportMode;
|
|
import com.jeeplus.common.excel.ExportMode;
|
|
import com.jeeplus.logging.annotation.ApiLog;
|
|
import com.jeeplus.logging.annotation.ApiLog;
|
|
@@ -33,9 +29,11 @@ import org.springframework.web.multipart.MultipartFile;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import javax.servlet.http.HttpServletResponse;
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
|
|
+import java.io.InputStream;
|
|
|
|
+import java.io.OutputStream;
|
|
import java.lang.reflect.Field;
|
|
import java.lang.reflect.Field;
|
|
import java.lang.reflect.Type;
|
|
import java.lang.reflect.Type;
|
|
-import java.text.SimpleDateFormat;
|
|
|
|
|
|
+import java.net.URLEncoder;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@@ -76,10 +74,25 @@ public class ZsReportArchieveController {
|
|
@GetMapping("import/template")
|
|
@GetMapping("import/template")
|
|
@ApiOperation(value = "下载模板")
|
|
@ApiOperation(value = "下载模板")
|
|
public void importFileTemplate(HttpServletResponse response, HttpServletRequest request) throws IOException {
|
|
public void importFileTemplate(HttpServletResponse response, HttpServletRequest request) throws IOException {
|
|
- String fileName = "报告归档导入模板.xlsx";
|
|
|
|
- List <ZsReportArchieveTem> list = Lists.newArrayList ( );
|
|
|
|
- EasyExcelUtils.newInstance ( ).exportExcel ( list, "报告归档", ZsReportArchieveTem.class, fileName, null, response );
|
|
|
|
-
|
|
|
|
|
|
+ try {
|
|
|
|
+ InputStream inputStream = this.getClass().getResourceAsStream("/dot/报告归档导入模板.xls");
|
|
|
|
+ //强制下载不打开
|
|
|
|
+ response.setContentType("application/force-download");
|
|
|
|
+ OutputStream out = response.getOutputStream();
|
|
|
|
+ //使用URLEncoder来防止文件名乱码或者读取错误
|
|
|
|
+ response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode("zs_report_archieve.xls", "UTF-8"));
|
|
|
|
+ int b = 0;
|
|
|
|
+ byte[] buffer = new byte[1000000];
|
|
|
|
+ while (b != -1) {
|
|
|
|
+ b = inputStream.read(buffer);
|
|
|
|
+ if (b != -1) out.write(buffer, 0, b);
|
|
|
|
+ }
|
|
|
|
+ inputStream.close();
|
|
|
|
+ out.close();
|
|
|
|
+ out.flush();
|
|
|
|
+ } catch (IOException e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
@@ -97,7 +110,7 @@ public class ZsReportArchieveController {
|
|
|
|
|
|
List<ZsReportArchieveExport> listA = new ArrayList<>();
|
|
List<ZsReportArchieveExport> listA = new ArrayList<>();
|
|
//获取sheet
|
|
//获取sheet
|
|
- listA = EasyPoiUtil.importExcel(file, 0, 1, ZsReportArchieveExport.class);
|
|
|
|
|
|
+ listA = EasyPoiUtil.importExcel(file, 0, 3, ZsReportArchieveExport.class);
|
|
//去除excel中的空行
|
|
//去除excel中的空行
|
|
listA = getExcelList(listA);
|
|
listA = getExcelList(listA);
|
|
//导入前检测数据
|
|
//导入前检测数据
|
|
@@ -296,25 +309,6 @@ public class ZsReportArchieveController {
|
|
count+=1;
|
|
count+=1;
|
|
info.setNumber(count+"");
|
|
info.setNumber(count+"");
|
|
|
|
|
|
- SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日");
|
|
|
|
- SimpleDateFormat inputFormat = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
|
- if (ObjectUtil.isNotEmpty(info.getReportDate())){
|
|
|
|
- Date reportDate = inputFormat.parse(info.getReportDate());
|
|
|
|
- String format = dateFormat.format(reportDate);
|
|
|
|
- info.setReportDate(format);
|
|
|
|
- }
|
|
|
|
- if (ObjectUtil.isNotEmpty(info.getStampDate())){
|
|
|
|
- Date reportDate = inputFormat.parse(info.getStampDate());
|
|
|
|
- String format = dateFormat.format(reportDate);
|
|
|
|
- info.setStampDate(format);
|
|
|
|
- }
|
|
|
|
- if (ObjectUtil.isNotEmpty(info.getArchieveDate())){
|
|
|
|
- Date reportDate = inputFormat.parse(info.getArchieveDate());
|
|
|
|
- String format = dateFormat.format(reportDate);
|
|
|
|
- info.setArchieveDate(format);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ZSEasyPoiUtil.exportExcel ( result, sheetName, sheetName, ZsReportArchieveExport.class, fileName, response );
|
|
ZSEasyPoiUtil.exportExcel ( result, sheetName, sheetName, ZsReportArchieveExport.class, fileName, response );
|