#
luxiaotao1123
2021-06-21 f6c8a961595ea54f2c9a6b7da589480481cc6283
src/main/java/com/slcf/service/impl/WaitPakOutLogServiceImpl.java
@@ -1,9 +1,15 @@
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;
@@ -11,6 +17,8 @@
import com.slcf.dao.WaitPakOutLogDao;
import com.slcf.pojo.WaitPakOutLogBean;
import com.slcf.service.WaitPakOutLogService;
import javax.servlet.http.HttpServletResponse;
/**
 * 出库通知历史档接口实现
@@ -22,7 +30,7 @@
   @Autowired
   WaitPakOutLogDao waitPakOutLogDao;
   /**
    * 分页查询所有
    */
@@ -52,5 +60,85 @@
         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<WaitPakOutLogBean> list=waitPakOutLogDao.getWaitPakOutLogAll(condition);
         for(int i=0;i<list.size();i++){
            HSSFRow row=sheet.createRow(i+1);//从第三行开始
            //创建单元格并设置单元格内容
            row.createCell(0).setCellValue(list.get(i).getLgnum());
            row.createCell(1).setCellValue(list.get(i).getTanum());
            row.createCell(2).setCellValue(list.get(i).getTapos());
            row.createCell(3).setCellValue(list.get(i).getMatnr());
            row.createCell(4).setCellValue(list.get(i).getMaktx());
            row.createCell(5).setCellValue(list.get(i).getWerks());
            row.createCell(6).setCellValue(list.get(i).getVsolm());
            row.createCell(7).setCellValue(list.get(i).getMeins());
            row.createCell(8).setCellValue(list.get(i).getVltyp());
            row.createCell(9).setCellValue(list.get(i).getVlpla());
            row.createCell(10).setCellValue(list.get(i).getNltyp());
            row.createCell(11).setCellValue(list.get(i).getNlpla());
            row.createCell(12).setCellValue(list.get(i).getBname());
         }
//         //输出Excel文件
//          try {
         OutputStream output=response.getOutputStream();
         response.reset();
         response.setHeader("Content-disposition", "attachment; filename=WaitPakOutLog"+ DateTimeUtil.getStringDateTime(14)+".xls");
         response.setContentType("application/msexcel");
         workBook.write(output);
         output.close();
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}