Commit 92f11bdf authored by zengtianlai3's avatar zengtianlai3

修改下载的excel格式

parent ca00070b
package iot.sixiang.license.controller; package iot.sixiang.license.controller;
import iot.sixiang.license.resource.ResourceMnnager; import iot.sixiang.license.resource.ResourceManager;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
...@@ -16,13 +16,13 @@ import java.io.IOException; ...@@ -16,13 +16,13 @@ import java.io.IOException;
public class ResourceContrller { public class ResourceContrller {
@Autowired @Autowired
ResourceMnnager resourceMnnager; ResourceManager resourceManager;
@GetMapping("/download") @GetMapping("/download")
public void downloadWorkHourRecordTemplate(HttpServletResponse response, @RequestParam(value = "userId") int userId) { public void downloadWorkHourRecordTemplate(HttpServletResponse response, @RequestParam(value = "userId") int userId) {
try { try {
resourceMnnager.downloadDeviceInfoExcle(response, userId); resourceManager.downloadDeviceInfoExcle(response, userId);
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
} }
......
...@@ -6,7 +6,6 @@ import iot.sixiang.license.service.ResourceService; ...@@ -6,7 +6,6 @@ import iot.sixiang.license.service.ResourceService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.poi.hssf.usermodel.*; import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.ss.usermodel.HorizontalAlignment; import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -17,7 +16,7 @@ import java.util.List; ...@@ -17,7 +16,7 @@ import java.util.List;
@Component @Component
@Slf4j @Slf4j
public class ResourceMnnager { public class ResourceManager {
@Autowired @Autowired
ResourceService resourceService; ResourceService resourceService;
...@@ -33,68 +32,83 @@ public class ResourceMnnager { ...@@ -33,68 +32,83 @@ public class ResourceMnnager {
// 修改后 // 修改后
String name = new String(filename.getBytes("utf-8"), "iso-8859-1"); String name = new String(filename.getBytes("utf-8"), "iso-8859-1");
response.setHeader("Content-Disposition", "attachment; filename = " + name); response.setHeader("Content-Disposition", "attachment; filename = " + name);
String sheetName = "用户设备信息表"; String sheetName = "用户设备信息表";
//第一步创建workbook //第一步创建workbook
wb = new HSSFWorkbook(); wb = new HSSFWorkbook();
//第二步创建sheet //第二步创建sheet
HSSFSheet sheet = wb.createSheet(); HSSFSheet sheet = wb.createSheet();
wb.setSheetName(0, sheetName);
sheet.setDefaultColumnWidth(20);
//第三步创建行row:添加表头0行 //设置表格格式
//4个参数依次为:开始行,结束行,开始列,结束列
sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 5));
HSSFRow row = sheet.createRow(0);
HSSFCell cell1 = row.createCell(0);
cell1.setCellValue("用户设备信息表");
HSSFCellStyle style = wb.createCellStyle(); HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER); //居中 style.setAlignment(HorizontalAlignment.CENTER); //居中
HSSFRow row1 = sheet.createRow(1); //第三步创建行row:添加表头0行
HSSFRow row = sheet.createRow((short)0);
//第四步创建单元格 //第四步创建单元格
HSSFCell cell = row1.createCell(0); //第一个单元格 HSSFCell cell = row.createCell((short)0); //第一个单元格
cell.setCellValue("用户"); //设定值 cell.setCellValue("用户"); //设定值
cell.setCellStyle(style); //内容居中 cell.setCellStyle(style); //内容居中
cell = row1.createCell(1); //第二个单元格 cell = row.createCell((short)1); //第二个单元格
cell.setCellValue("密码"); cell.setCellValue("密码");
cell.setCellStyle(style); cell.setCellStyle(style);
cell = row1.createCell(2); //第三个单元格 cell = row.createCell((short)2); //第三个单元格
cell.setCellValue("公司名称"); cell.setCellValue("公司名称");
cell.setCellStyle(style); cell.setCellStyle(style);
cell = row1.createCell(3); //第四个单元格 cell = row.createCell((short)3); //第四个单元格
cell.setCellValue("应用名称"); cell.setCellValue("应用名称");
cell.setCellStyle(style); cell.setCellStyle(style);
cell = row1.createCell(4); //第五个单元格 cell = row.createCell((short)4); //第五个单元格
cell.setCellValue("appKey"); cell.setCellValue("appKey");
cell.setCellStyle(style); cell.setCellStyle(style);
cell = row1.createCell(5); //第六个单元格 cell = row.createCell((short)5); //第六个单元格
cell.setCellValue("SN"); cell.setCellValue("SN");
cell.setCellStyle(style); cell.setCellStyle(style);
//第五步插入数据 //第五步插入数据
List<ResourceVo> resourceList = resourceService.getResource(userId); List<ResourceVo> resourceList = resourceService.getResource(userId);
for (int i = 0; i < resourceList.size(); i++) { for (int i = 0; i < resourceList.size(); i++) {
ResourceVo resourceVo = resourceList.get(i); ResourceVo resourceVo = resourceList.get(i);
//创建行 //创建行
row = sheet.createRow(i + 2); row = sheet.createRow((short)(i + 1));
//创建单元格并且添加数据 //创建单元格并且添加数据
row.createCell(0).setCellValue(resourceVo.getUserName()); cell = row.createCell((short)0); //第一个单元格
row.createCell(1).setCellValue(resourceVo.getPassword()); cell.setCellValue(resourceVo.getUserName());
row.createCell(2).setCellValue(resourceVo.getCompany()); cell.setCellStyle(style);
row.createCell(3).setCellValue(resourceVo.getAppName());
row.createCell(4).setCellValue(resourceVo.getAppKey()); cell = row.createCell((short)1); // 第二个单元格
row.createCell(5).setCellValue(resourceVo.getSn()); cell.setCellValue(resourceVo.getPassword());
cell.setCellStyle(style);
cell = row.createCell((short)2); // 第三个单元格
cell.setCellValue(resourceVo.getCompany());
cell.setCellStyle(style);
cell = row.createCell((short)3); // 第四个单元格
cell.setCellValue(resourceVo.getAppName());
cell.setCellStyle(style);
cell = row.createCell((short)4); // 第五个单元格
cell.setCellValue(resourceVo.getAppKey());
cell.setCellStyle(style);
cell = row.createCell((short)5); // 第六个单元格
cell.setCellValue(resourceVo.getSn());
cell.setCellStyle(style);
} }
sheet.autoSizeColumn((short)0); //调整第一列宽度
sheet.autoSizeColumn((short)1); //调整第二列宽度
sheet.autoSizeColumn((short)2); //调整第三列宽度
sheet.autoSizeColumn((short)3); //调整第四列宽度
sheet.autoSizeColumn((short)4); //调整第五列宽度
sheet.autoSizeColumn((short)5); //调整第六列宽度
wb.write(os); wb.write(os);
} catch (IOException e) { } catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment