模板下载
This commit is contained in:
+9
-2
@@ -31,9 +31,10 @@ import javax.servlet.http.HttpServletRequest;
|
|||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: rxswin表
|
* @Description: rxswin表
|
||||||
* @Author: jero-boot
|
* @Author: jero-boot
|
||||||
* @Date: 2023-08-28
|
* @Date: 2023-08-28
|
||||||
@@ -162,7 +163,7 @@ public class ProjectRxswinEOController extends JeroController<ProjectRxswinEO, I
|
|||||||
* @param projectRxswinEO
|
* @param projectRxswinEO
|
||||||
*/
|
*/
|
||||||
@ApiOperation(value="导出", notes="导出")
|
@ApiOperation(value="导出", notes="导出")
|
||||||
@RequestMapping(value = "/exportXls")
|
@RequestMapping(value = "/exportXls",method = RequestMethod.GET)
|
||||||
public ModelAndView exportXls(HttpServletRequest request, ProjectRxswinEO projectRxswinEO) {
|
public ModelAndView exportXls(HttpServletRequest request, ProjectRxswinEO projectRxswinEO) {
|
||||||
return projectRxswinEOService.exportXls(request,projectRxswinEO);
|
return projectRxswinEOService.exportXls(request,projectRxswinEO);
|
||||||
}
|
}
|
||||||
@@ -267,4 +268,10 @@ public class ProjectRxswinEOController extends JeroController<ProjectRxswinEO, I
|
|||||||
return Result.OK(list);
|
return Result.OK(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation(value = "模板下载")
|
||||||
|
@GetMapping(value = "/exportTemplate")
|
||||||
|
public void exportTemplate(@RequestParam Map<String,Object> map, HttpServletResponse response, HttpServletRequest request) throws Exception {
|
||||||
|
projectRxswinEOService.exportTemplate(map, response, request);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+4
@@ -7,7 +7,9 @@ import com.jero.modules.project.entity.ProjectRxswinEO;
|
|||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Description: rxswin表
|
* @Description: rxswin表
|
||||||
@@ -104,4 +106,6 @@ public interface IProjectRxswinEOService extends IService<ProjectRxswinEO> {
|
|||||||
List<String> getVersionList(String projectId);
|
List<String> getVersionList(String projectId);
|
||||||
|
|
||||||
ModelAndView exportXls(HttpServletRequest request, ProjectRxswinEO projectRxswinEO);
|
ModelAndView exportXls(HttpServletRequest request, ProjectRxswinEO projectRxswinEO);
|
||||||
|
|
||||||
|
void exportTemplate(Map<String, Object> map, HttpServletResponse response, HttpServletRequest request);
|
||||||
}
|
}
|
||||||
|
|||||||
+72
@@ -1,5 +1,6 @@
|
|||||||
package com.jero.modules.project.service.impl;
|
package com.jero.modules.project.service.impl;
|
||||||
|
|
||||||
|
import com.aliyuncs.utils.IOUtils;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
@@ -18,16 +19,25 @@ import com.jero.modules.project.enums.StatusEnum;
|
|||||||
import com.jero.modules.project.mapper.ProjectRxswinEOMapper;
|
import com.jero.modules.project.mapper.ProjectRxswinEOMapper;
|
||||||
import com.jero.modules.project.service.IProjectRxswinEOService;
|
import com.jero.modules.project.service.IProjectRxswinEOService;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
|
||||||
|
import org.apache.poi.hssf.usermodel.HSSFSheet;
|
||||||
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||||
|
import org.apache.poi.ss.usermodel.Row;
|
||||||
|
import org.apache.poi.ss.usermodel.VerticalAlignment;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
|
||||||
import org.jeecgframework.poi.excel.entity.ExportParams;
|
import org.jeecgframework.poi.excel.entity.ExportParams;
|
||||||
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.OutputStream;
|
||||||
import java.text.Collator;
|
import java.text.Collator;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
@@ -35,6 +45,7 @@ import java.util.Collections;
|
|||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@@ -53,6 +64,8 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl<ProjectRxswinEOMappe
|
|||||||
private BussDocumentLibraryEOServiceImpl bussDocumentLibraryEOService;
|
private BussDocumentLibraryEOServiceImpl bussDocumentLibraryEOService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ProjectLibraryBaseServiceImpl projectLibraryBaseService;
|
private ProjectLibraryBaseServiceImpl projectLibraryBaseService;
|
||||||
|
@Value(value = "${jero.path.upload}")
|
||||||
|
private String uploadpath;
|
||||||
/**
|
/**
|
||||||
* 保存
|
* 保存
|
||||||
*
|
*
|
||||||
@@ -507,4 +520,63 @@ public class ProjectRxswinEOServiceImpl extends ServiceImpl<ProjectRxswinEOMappe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void exportTemplate(Map<String, Object> map, HttpServletResponse response, HttpServletRequest request) {
|
||||||
|
OutputStream os = null;
|
||||||
|
HSSFWorkbook workbook = new HSSFWorkbook();
|
||||||
|
String cut = (String) map.get("cut");
|
||||||
|
String sheetName = "";
|
||||||
|
if(com.jero.modules.system.util.StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||||
|
sheetName = "RXSWIN";
|
||||||
|
}else {
|
||||||
|
sheetName = "RXSWIN";
|
||||||
|
}
|
||||||
|
String fileOriName = "文档库导入模板.xls";
|
||||||
|
String filePath = uploadpath + File.separator + fileOriName;
|
||||||
|
try {
|
||||||
|
List<String> list = new ArrayList<>();
|
||||||
|
if(CutEnum.CN.getValue().equals((String) map.get("cut"))){
|
||||||
|
list.add("编号,主题,RXSWIN,对应版本");
|
||||||
|
}else{
|
||||||
|
list.add("No.,Theme,RXSWIN,Corresponding version");
|
||||||
|
}
|
||||||
|
//创建临时文件夹
|
||||||
|
File nowFile = new File(filePath);
|
||||||
|
if (nowFile.exists()) {
|
||||||
|
nowFile.delete();
|
||||||
|
}
|
||||||
|
nowFile.mkdirs();
|
||||||
|
HSSFSheet sheet = workbook.createSheet(sheetName);
|
||||||
|
sheet.setDefaultColumnWidth(16);//列宽
|
||||||
|
HSSFCellStyle cellStyle = workbook.createCellStyle();
|
||||||
|
cellStyle.setWrapText(true);//自动换行
|
||||||
|
cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
|
||||||
|
|
||||||
|
for (int i = 0; i < 1; i++) {
|
||||||
|
//表头
|
||||||
|
Row row = sheet.createRow(i);//开始创建标题行
|
||||||
|
String exportFieldName = list.get(i);
|
||||||
|
if (i == 0) {
|
||||||
|
if (com.jero.modules.system.util.StringUtils.isNotBlank(exportFieldName)) {
|
||||||
|
String[] headerArr = exportFieldName.split(",");
|
||||||
|
for (int j = 0; j < headerArr.length; j++) {
|
||||||
|
row.createCell(j).setCellValue(headerArr[j]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
response.setHeader("Content-Disposition",
|
||||||
|
"attachment; filename=\"" + fileOriName + ".xls");
|
||||||
|
response.setContentType("application/force-download");
|
||||||
|
response.flushBuffer();
|
||||||
|
os = response.getOutputStream();
|
||||||
|
workbook.write(os);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new JeroBootException("下载文件失败,请重试");
|
||||||
|
} finally {
|
||||||
|
IOUtils.closeQuietly(os);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user