导入和导出bug修复
This commit is contained in:
parent
86fd144a82
commit
5799756fa7
@ -24,12 +24,17 @@ import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.poi.util.IOUtils;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.jeecgframework.poi.excel.ExcelExportUtil;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.def.TemplateExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
import org.jeecgframework.poi.excel.entity.TemplateExportParams;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.jeecgframework.poi.excel.view.JeecgTemplateExcelView;
|
||||
import org.simpleframework.xml.core.Validate;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
import org.springframework.util.ResourceUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
@ -37,10 +42,8 @@ import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.io.*;
|
||||
import java.math.BigDecimal;
|
||||
import java.net.URLDecoder;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.ArrayList;
|
||||
@ -158,7 +161,7 @@ public class DangerIdentificationEvaluationFormController {
|
||||
OutputStream out = response.getOutputStream();
|
||||
response.setCharacterEncoding("UTF-8");
|
||||
response.setContentType("application/vnd.ms-project");
|
||||
String name = "系统项目组危险源辨别评价表模版.xls";
|
||||
String name = "系统项目组危险源辨别评价表模板数据.xlsx";
|
||||
response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(name, "UTF-8"));
|
||||
InputStream fis = new ClassPathResource("template/" + name).getInputStream();
|
||||
IOUtils.copy(fis, out);
|
||||
@ -257,8 +260,9 @@ public class DangerIdentificationEvaluationFormController {
|
||||
importExcelVoList.add(excelVo);
|
||||
}
|
||||
}
|
||||
importExcelVoList = importExcelVoList.stream().filter(d -> StringUtils.isNotBlank(d.getSequenceNumber())).collect(Collectors.toList());
|
||||
//判断序号是否有重复的
|
||||
Map<String, Long> collect = importExcelVoList.stream().filter(d -> StringUtils.isNotBlank(d.getSequenceNumber())).map(DangerIdentificationEvaluationForm::getSequenceNumber).collect(
|
||||
Map<String, Long> collect = importExcelVoList.stream().map(DangerIdentificationEvaluationForm::getSequenceNumber).collect(
|
||||
Collectors.groupingBy(Function.identity(), Collectors.counting()));
|
||||
List<String> list = new ArrayList<>();
|
||||
for (String s : collect.keySet()) {
|
||||
@ -301,7 +305,7 @@ public class DangerIdentificationEvaluationFormController {
|
||||
|
||||
@ApiOperation(value = "导出excel项目环境因素辨识评价表管理信息", notes = "导出excel项目环境因素辨识评价表管理信息", httpMethod = "POST")
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
|
||||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) throws FileNotFoundException {
|
||||
// Step.1 组装查询条件
|
||||
QueryWrapper<DangerIdentificationEvaluationForm> queryWrapper = null;
|
||||
try {
|
||||
@ -316,15 +320,60 @@ public class DangerIdentificationEvaluationFormController {
|
||||
}
|
||||
|
||||
//Step.2 AutoPoi 导出Excel
|
||||
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
|
||||
// ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
|
||||
List<DangerIdentificationEvaluationForm> pageList = dangerIdentificationEvaluationFormService.list(queryWrapper);
|
||||
//导出文件名称
|
||||
mv.addObject(NormalExcelConstants.FILE_NAME, "导出列表");
|
||||
mv.addObject(NormalExcelConstants.CLASS, DangerIdentificationEvaluationForm.class);
|
||||
mv.addObject(NormalExcelConstants.PARAMS, new ExportParams());
|
||||
mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
|
||||
// //导出文件名称
|
||||
// mv.addObject(NormalExcelConstants.FILE_NAME, "导出列表");
|
||||
// mv.addObject(NormalExcelConstants.CLASS, DangerIdentificationEvaluationForm.class);
|
||||
// mv.addObject(NormalExcelConstants.PARAMS, new ExportParams());
|
||||
// mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
|
||||
// return mv;
|
||||
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
List<Map<String, Object>> listMap = new ArrayList<>();
|
||||
if (pageList.size() > 0) {
|
||||
for (DangerIdentificationEvaluationForm p : pageList) {
|
||||
Map<String, Object> mp = new HashMap<>();
|
||||
mp.put("sequenceNumber", p.getSequenceNumber());
|
||||
mp.put("branchEngineering", p.getBranchEngineering());
|
||||
mp.put("subproject", p.getSubproject());
|
||||
mp.put("procedureName", p.getProcedureName());
|
||||
mp.put("homeworkActivity", p.getHomeworkActivity());
|
||||
mp.put("dangerousHarmfulSerialNumber", p.getDangerousHarmfulSerialNumber());
|
||||
mp.put("dangerousHarmfulFactors", p.getDangerousHarmfulFactors());
|
||||
mp.put("dangerousHarmfulClassify", p.getDangerousHarmfulClassify());
|
||||
mp.put("potentialAccident", p.getPotentialAccident());
|
||||
mp.put("operatingConditionDangeerL", p.getOperatingConditionDangeerL());
|
||||
mp.put("operatingConditionDangeerE", p.getOperatingConditionDangeerE());
|
||||
mp.put("operatingConditionDangeerC", p.getOperatingConditionDangeerC());
|
||||
mp.put("operatingConditionDangeerD", p.getOperatingConditionDangeerD());
|
||||
mp.put("dangerLevel", p.getDangerLevel());
|
||||
mp.put("controlMeasure", p.getControlMeasure());
|
||||
mp.put("responsibleUnitProjectDepartment", p.getResponsibleUnitProjectDepartment());
|
||||
mp.put("responsibleUnitProjectTeam", p.getResponsibleUnitProjectTeam());
|
||||
mp.put("responsibleUnitManagement", p.getResponsibleUnitManagement());
|
||||
mp.put("responsibleUnitEpcContractor", p.getResponsibleUnitEpcContractor());
|
||||
mp.put("responsibleUnitConstructionContractor", p.getResponsibleUnitConstructionContractor());
|
||||
//将项目清单的map添加到list中
|
||||
listMap.add(mp);
|
||||
}
|
||||
}
|
||||
|
||||
//将项目清单集合添加到map中
|
||||
map.put("listMap", listMap);
|
||||
|
||||
File file = new File(ResourceUtils.getURL("classpath:").getPath());
|
||||
//获取模板文件路径
|
||||
File templateFile = new File(file, "/template/系统项目组危险源辨别评价表模板.xlsx");
|
||||
//获取模板
|
||||
TemplateExportParams params = new TemplateExportParams(templateFile.getAbsolutePath());
|
||||
//模板视图
|
||||
ModelAndView mv = new ModelAndView(new JeecgTemplateExcelView());
|
||||
//添加表格参数
|
||||
mv.addObject(TemplateExcelConstants.PARAMS, params);
|
||||
//添加模板参数
|
||||
mv.addObject(TemplateExcelConstants.MAP_DATA, map);
|
||||
return mv;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -8,6 +8,7 @@ import com.zhgd.annotation.OperLog;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.system.query.QueryGenerator;
|
||||
import com.zhgd.jeecg.common.util.oConvertUtils;
|
||||
import com.zhgd.xmgl.modules.baotou.entity.DangerIdentificationEvaluationForm;
|
||||
import com.zhgd.xmgl.modules.baotou.entity.EnvironmentEvaluateForm;
|
||||
import com.zhgd.xmgl.modules.baotou.service.IEnvironmentEvaluateFormService;
|
||||
import com.zhgd.xmgl.util.ExcelUtils;
|
||||
@ -25,11 +26,15 @@ import org.apache.poi.ss.usermodel.Workbook;
|
||||
import org.apache.poi.util.IOUtils;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||
import org.jeecgframework.poi.excel.def.TemplateExcelConstants;
|
||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||
import org.jeecgframework.poi.excel.entity.TemplateExportParams;
|
||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||
import org.jeecgframework.poi.excel.view.JeecgTemplateExcelView;
|
||||
import org.simpleframework.xml.core.Validate;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
import org.springframework.util.ResourceUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
@ -37,10 +42,7 @@ import springfox.documentation.annotations.ApiIgnore;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.io.*;
|
||||
import java.net.URLDecoder;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.ArrayList;
|
||||
@ -158,7 +160,7 @@ public class EnvironmentEvaluateFormController {
|
||||
OutputStream out = response.getOutputStream();
|
||||
response.setCharacterEncoding("UTF-8");
|
||||
response.setContentType("application/vnd.ms-project");
|
||||
String name = "环境因素辨识及评价表模板.xlsx";
|
||||
String name = "环境因素辨识及评价表模板数据.xlsx";
|
||||
response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode(name, "UTF-8"));
|
||||
InputStream fis = new ClassPathResource("template/" + name).getInputStream();
|
||||
IOUtils.copy(fis, out);
|
||||
@ -210,7 +212,7 @@ public class EnvironmentEvaluateFormController {
|
||||
int lastCellNum = row.getLastCellNum();
|
||||
//列数
|
||||
for (int k = firstCellNum; k < lastCellNum; k++) {
|
||||
log.info("xxx:{},{}",j,k);
|
||||
log.info("xxx:{},{}", j, k);
|
||||
//获取单元格的值,不管是否合并的单元格,都可以获取
|
||||
String value = ExcelUtils.getSheelValue(sheet, j, k);
|
||||
//把当前列的值赋值给对应的属性字段
|
||||
@ -253,8 +255,9 @@ public class EnvironmentEvaluateFormController {
|
||||
importExcelVoList.add(excelVo);
|
||||
}
|
||||
}
|
||||
importExcelVoList = importExcelVoList.stream().filter(d -> StringUtils.isNotBlank(d.getSerialNumber())).collect(Collectors.toList());
|
||||
//判断序号是否有重复的
|
||||
Map<String, Long> collect = importExcelVoList.stream().filter(d -> StringUtils.isNotBlank(d.getSerialNumber())).map(EnvironmentEvaluateForm::getSerialNumber).collect(
|
||||
Map<String, Long> collect = importExcelVoList.stream().map(EnvironmentEvaluateForm::getSerialNumber).collect(
|
||||
Collectors.groupingBy(Function.identity(), Collectors.counting()));
|
||||
List<String> list = new ArrayList<>();
|
||||
for (String s : collect.keySet()) {
|
||||
@ -297,7 +300,7 @@ public class EnvironmentEvaluateFormController {
|
||||
|
||||
@ApiOperation(value = "导出excel项目环境因素辨识评价表管理信息", notes = "导出excel项目环境因素辨识评价表管理信息", httpMethod = "POST")
|
||||
@RequestMapping(value = "/exportXls")
|
||||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
|
||||
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) throws FileNotFoundException {
|
||||
// Step.1 组装查询条件
|
||||
QueryWrapper<EnvironmentEvaluateForm> queryWrapper = null;
|
||||
try {
|
||||
@ -312,13 +315,57 @@ public class EnvironmentEvaluateFormController {
|
||||
}
|
||||
|
||||
//Step.2 AutoPoi 导出Excel
|
||||
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
|
||||
// ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
|
||||
List<EnvironmentEvaluateForm> pageList = environmentEvaluateFormService.list(queryWrapper);
|
||||
//导出文件名称
|
||||
mv.addObject(NormalExcelConstants.FILE_NAME, "导出列表");
|
||||
mv.addObject(NormalExcelConstants.CLASS, EnvironmentEvaluateForm.class);
|
||||
mv.addObject(NormalExcelConstants.PARAMS, new ExportParams());
|
||||
mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
|
||||
// mv.addObject(NormalExcelConstants.FILE_NAME, "导出列表");
|
||||
// mv.addObject(NormalExcelConstants.CLASS, EnvironmentEvaluateForm.class);
|
||||
// mv.addObject(NormalExcelConstants.PARAMS, new ExportParams());
|
||||
// mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
|
||||
// return mv;
|
||||
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
List<Map<String, Object>> listMap = new ArrayList<>();
|
||||
if (pageList.size() > 0) {
|
||||
for (EnvironmentEvaluateForm p : pageList) {
|
||||
Map<String, Object> mp = new HashMap<>();
|
||||
mp.put("serialNumber", p.getSerialNumber());
|
||||
mp.put("subItemProcess", p.getSubItemProcess());
|
||||
mp.put("environmentalFactor", p.getEnvironmentalFactor());
|
||||
mp.put("environmentalImpact", p.getEnvironmentalImpact());
|
||||
mp.put("environmentalImpactScaleScopeA", p.getEnvironmentalImpactScaleScopeA());
|
||||
mp.put("environmentalImpactDegreeB", p.getEnvironmentalImpactDegreeB());
|
||||
mp.put("environmentalImpactFrequencyC", p.getEnvironmentalImpactFrequencyC());
|
||||
mp.put("lawsRegulationsD", p.getLawsRegulationsD());
|
||||
mp.put("environmentalImpactSocialAttentionE", p.getEnvironmentalImpactSocialAttentionE());
|
||||
mp.put("evaluationValue", p.getEvaluationValue());
|
||||
mp.put("isImportantEnvironmentalFactor", p.getIsImportantEnvironmentalFactor());
|
||||
mp.put("controlMeasure", p.getControlMeasure());
|
||||
mp.put("responsibleUnitProjectDepartment", p.getResponsibleUnitProjectDepartment());
|
||||
mp.put("responsibleUnitProjectTeam", p.getResponsibleUnitProjectTeam());
|
||||
mp.put("responsibleUnitSupervision", p.getResponsibleUnitSupervision());
|
||||
mp.put("responsibleUnitEpc", p.getResponsibleUnitEpc());
|
||||
mp.put("responsibleUnitConstructionUnit", p.getResponsibleUnitConstructionUnit());
|
||||
//将项目清单的map添加到list中
|
||||
listMap.add(mp);
|
||||
}
|
||||
}
|
||||
|
||||
//将项目清单集合添加到map中
|
||||
map.put("listMap", listMap);
|
||||
|
||||
File file = new File(ResourceUtils.getURL("classpath:").getPath());
|
||||
//获取模板文件路径
|
||||
File templateFile = new File(file, "/template/环境因素辨识及评价表模板.xlsx");
|
||||
//获取模板
|
||||
TemplateExportParams params = new TemplateExportParams(templateFile.getAbsolutePath());
|
||||
//模板视图
|
||||
ModelAndView mv = new ModelAndView(new JeecgTemplateExcelView());
|
||||
//添加表格参数
|
||||
mv.addObject(TemplateExcelConstants.PARAMS, params);
|
||||
//添加模板参数
|
||||
mv.addObject(TemplateExcelConstants.MAP_DATA, map);
|
||||
|
||||
return mv;
|
||||
}
|
||||
|
||||
|
||||
Binary file not shown.
BIN
src/main/resources/template/环境因素辨识及评价表模板数据.xlsx
Normal file
BIN
src/main/resources/template/环境因素辨识及评价表模板数据.xlsx
Normal file
Binary file not shown.
BIN
src/main/resources/template/系统项目组危险源辨别评价表模板.xlsx
Normal file
BIN
src/main/resources/template/系统项目组危险源辨别评价表模板.xlsx
Normal file
Binary file not shown.
BIN
src/main/resources/template/系统项目组危险源辨别评价表模板数据.xlsx
Normal file
BIN
src/main/resources/template/系统项目组危险源辨别评价表模板数据.xlsx
Normal file
Binary file not shown.
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user