package com.slcf.service.impl; import java.io.IOException; import java.io.OutputStream; import java.util.HashMap; import java.util.List; import java.util.Map; import com.slcf.util.DateTimeUtil; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.slcf.bean.WaitPakOutLogCondition; import com.slcf.dao.WaitPakOutLogDao; import com.slcf.pojo.WaitPakOutLogBean; import com.slcf.service.WaitPakOutLogService; import javax.servlet.http.HttpServletResponse; /** * 出库通知历史档接口实现 * @author admin * @date 2018年11月20日 */ @Service public class WaitPakOutLogServiceImpl implements WaitPakOutLogService { @Autowired WaitPakOutLogDao waitPakOutLogDao; /** * 分页查询所有 */ public Map queryWaitPakOutLogList(WaitPakOutLogCondition waitPakOutLogCon) { try { Map map=new HashMap(); List list=waitPakOutLogDao.queryWaitPakOutLogList(waitPakOutLogCon); int count =waitPakOutLogDao.getWaitPakOutLogCount(waitPakOutLogCon); map.put("rows", list); map.put("total", count); return map; }catch(Exception e) { System.out.println(e.getMessage()); return null; } } /** * 查询所有 * @return */ public List getWaitPakOutLogList() { try { return waitPakOutLogDao.getWaitPakOutLogList(); }catch(Exception e) { System.out.println(e.getMessage()); return null; } } public void ExportWaitPakOutLogList(WaitPakOutLogCondition condition, HttpServletResponse response) { //输出Excel文件 try { //HSSFWorkbook对象(excel的文档对象) HSSFWorkbook workBook=new HSSFWorkbook(); //sheet对象(excel的表单) HSSFSheet sheet=workBook.createSheet("出库通知历史档"); //行数,参数为行索引(excel的行) // HSSFRow rowHead=sheet.createRow(0);//第一行 可以是0~65535之间的任何一个 // //创建excel的单元格,参数为列索引,可以是0~255之间的任何一个 // HSSFCell cellOne=rowHead.createCell(0); // cellOne.setCellValue("用户信息");//表头 //合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列 // sheet.addMergedRegion(new CellRangeAddress(0,0,0,5)); sheet.setColumnWidth(0, (int)((10 + 0.72) * 256)); sheet.setColumnWidth(1, (int)((20 + 0.72) * 256)); sheet.setColumnWidth(2, (int)((15 + 0.72) * 256)); sheet.setColumnWidth(3, (int)((15 + 0.72) * 256)); sheet.setColumnWidth(4, (int)((15 + 0.72) * 256)); sheet.setColumnWidth(5, (int)((25 + 0.72) * 256)); sheet.setColumnWidth(6, (int)((10 + 0.72) * 256)); sheet.setColumnWidth(7, (int)((8 + 0.72) * 256)); sheet.setColumnWidth(8, (int)((10 + 0.72) * 256)); sheet.setColumnWidth(9, (int)((10 + 0.72) * 256)); sheet.setColumnWidth(10, (int)((10 + 0.72) * 256)); sheet.setColumnWidth(11, (int)((25 + 0.72) * 256)); sheet.setColumnWidth(12, (int)((25 + 0.72) * 256)); HSSFRow rows=sheet.createRow(0);//第二行 //创建单元格并设置单元格内容 rows.createCell(0).setCellValue("仓库号"); rows.createCell(1).setCellValue("转储编号"); rows.createCell(2).setCellValue("行项目"); rows.createCell(3).setCellValue("物料"); rows.createCell(4).setCellValue("物料描述"); rows.createCell(5).setCellValue("工厂"); rows.createCell(6).setCellValue("数量"); rows.createCell(7).setCellValue("单位"); rows.createCell(8).setCellValue("源发地类型"); rows.createCell(9).setCellValue("源发地仓位"); rows.createCell(10).setCellValue("目的地类型"); rows.createCell(11).setCellValue("目的地仓位"); rows.createCell(12).setCellValue("用户ID"); List list=waitPakOutLogDao.getWaitPakOutLogAll(condition); for(int i=0;i