web文件下載

一:導包

這裏是導兩個包,其實導一個就可以了

<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi</artifactId>
  <version>3.17</version>
</dependency>

<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi-ooxml</artifactId>
  <version>3.17</version>
</dependency>

二:代碼

//統計的
    @GetMapping("/statistics")
    public void statistics(HttpServletResponse response) throws IOException {

        OutputStream os = response.getOutputStream();
        response.reset();
        response.setHeader("Content-disposition", "attachment; filename=" + new String("在線報考.xls".getBytes("GB2312"), "ISO8859-1"));
        response.setContentType("application/msexcel");

        String[] title = new String[]{
                "序號", "姓名", "身份證號", "電話", "方向",
                "准考證號", "繳費金額(元)", "支付方式", "訂單號", "支付訂單號",
                "支付時間", "考區", "報考專業"};

        HSSFWorkbook sheets = new HSSFWorkbook();
        HSSFSheet sheet = sheets.createSheet("demo");   //一個表
        HSSFRow row = sheet.createRow(0);   //第一行

        for (int i = 0; i < title.length; i++) {
            row.createCell(i).setCellValue(title[i]);   //序號
        }

        //查出已經購買的人
        List<String> ids = userMapper.selectAlreadyBuy();

        Long num = 1l;

        //查出每個人查出他們的訂單號,
        for (String id : ids) {

            //一個用戶有多個訂單
            List<Orders> orders = userMapper.selectOrdersSnById(id);

            //查出所有的訂單號,一個訂單號就是一條數據
            for (Orders orders1 : orders) {

                //查出每個用戶所有購買的課程
                List<ProductBuy> buys = userMapper.selectProductBuy(orders1.getOrderSn());

                String level = buys.get(0).getStatus().substring(6);//(平面)
                String zhuanye = buys.get(0).getStatus().substring(0, 6);// 報考專業

                HSSFRow nrow = sheet.createRow(num.intValue());    //第二......三.............行
                nrow.createCell(0).setCellValue(num);   //序號
                nrow.createCell(1).setCellValue(orders1.getMemberName());   //姓名
                nrow.createCell(2).setCellValue(orders1.getMemberIdcard());   //身份證號
                nrow.createCell(3).setCellValue(orders1.getMemberPhone());   //電話
                nrow.createCell(4).setCellValue(level);   //方向
                nrow.createCell(5).setCellValue(orders1.getOkCard());   //准考證號
                nrow.createCell(6).setCellValue(orders1.getActAmount().toString());   //繳費金額
                nrow.createCell(7).setCellValue(orders1.getPayStatus().equals("1") ? "支付寶" : "微信");   ////支付方式
                nrow.createCell(8).setCellValue(orders1.getOrderSn());   //訂單號
                nrow.createCell(9).setCellValue(orders1.getPayOrgSn());   //支付訂單號
                nrow.createCell(10).setCellValue(new Date());   //支付時間
                nrow.createCell(11).setCellValue(orders1.getCity());   //考區
                nrow.createCell(12).setCellValue(zhuanye);   //報考專業
                num++;
            }
        }

        sheets.write(os);
        sheets.close();
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章