diff --git a/src/main/java/com/peanut/modules/master/controller/TrainingClassController.java b/src/main/java/com/peanut/modules/master/controller/TrainingClassController.java index 70485bb9..65ac5c7e 100644 --- a/src/main/java/com/peanut/modules/master/controller/TrainingClassController.java +++ b/src/main/java/com/peanut/modules/master/controller/TrainingClassController.java @@ -3,6 +3,7 @@ package com.peanut.modules.master.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.peanut.common.utils.DateUtils; import com.peanut.common.utils.R; import com.peanut.modules.common.entity.*; import com.peanut.modules.common.service.BuyOrderService; @@ -12,11 +13,17 @@ import com.peanut.modules.common.service.TrainingToUserService; import com.peanut.modules.master.service.VipBuyConfigService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; - +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.OutputStream; +import java.net.URLEncoder; import java.util.Date; import java.util.List; import java.util.Map; @@ -126,6 +133,63 @@ public class TrainingClassController { return R.ok().put("trainingClassUserList",trainingClassUserList); } + //导出培训班用户 + @RequestMapping("/exportTrainingClassUser") + public void exportTrainingClassUser(HttpServletResponse response,@RequestBody Map params) { + R r = trainingClassUserList(params); + if ("0".equals(r.get("code").toString())){ + Page trainingClassUserList = (Page) r.get("trainingClassUserList"); + XSSFWorkbook wb = new XSSFWorkbook(); + Sheet sheet = wb.createSheet("trainingClassUser"); + Row titleRow = sheet.createRow(0); + titleRow.createCell(0).setCellValue("姓名"); + titleRow.createCell(1).setCellValue("电话"); + titleRow.createCell(2).setCellValue("邮箱"); + titleRow.createCell(3).setCellValue("报名时间"); + titleRow.createCell(4).setCellValue("用户身份"); + titleRow.createCell(5).setCellValue("支付方式"); + titleRow.createCell(6).setCellValue("抵扣方式"); + titleRow.createCell(7).setCellValue("订单号"); + //序号,默认为1 + int cell = 1; + //遍历 + for (TrainingToUser toUser : trainingClassUserList.getRecords()) { + Row row = sheet.createRow(cell); + row.createCell(0).setCellValue(toUser.getUser().getName()); + row.createCell(1).setCellValue(toUser.getUser().getTel()); + row.createCell(2).setCellValue(toUser.getUser().getEmail()); + row.createCell(3).setCellValue(DateUtils.format(toUser.getCreateTime(),"yyyy-MM-dd HH:mm:ss")); + row.createCell(4).setCellValue(toUser.getIdentity()); + row.createCell(5).setCellValue(toUser.getPayMethod()); + row.createCell(6).setCellValue(toUser.getJfDeduction()); + row.createCell(7).setCellValue(toUser.getOrderSn()); + //序号自增 + cell++; + } + String fileName = "培训班用户.xlsx"; + OutputStream outputStream =null; + try { + //文件名编码格式 + fileName = URLEncoder.encode(fileName,"UTF-8"); + //设置ContentType请求信息格式 + response.setContentType("application/vnd.ms-excel"); + //设置标头 + response.setHeader("Content-disposition", "attachment;filename=" + fileName); + outputStream = response.getOutputStream(); + wb.write(outputStream); + } catch (IOException e) { + e.printStackTrace(); + }finally { + try { + outputStream.flush(); + outputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + //培训班添加用户 @RequestMapping("/addUserToTrainingClass") public R addUserToTrainingClass(@RequestBody TrainingToUser trainingToUser) {