/**
* 导出 用get请求
* @param response
* @param
* @throws IOException
*/
@RequestMapping(value = "/download")
public void download(HttpServletResponse response,HttpServletRequest request) throws IOException { int quality = UtilReq.parseInt(request.getParameter("quality"), -1);
String status = UtilReq.parseString(request.getParameter("status"),"");
String mobile = UtilReq.parseString(request.getParameter("mobile"),"");
long agentUid = UtilReq.parseLong(request.getParameter("agentUid"),0l);
HSSFWorkbook workbook = aritstService.download(quality,status,mobile,agentUid); //设置要导出的文件的名字
String fileName="";
Date now = new Date(); fileName = "艺人数据" + UtilDate.formatDate2Str(now,"yyyy年MM月dd日HH时mm分ss秒") + ".xls"; fileName = new String(fileName.getBytes("gbk"), "iso-8859-1");
response.setContentType("application/octet-stream");
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
response.flushBuffer();
workbook.write(response.getOutputStream());
}
 /**
* 导出
* @param quality
* @param status
* @param mobile
* @param agentUid
* @return
*/
public HSSFWorkbook download(int quality, String status, String mobile, long agentUid) {
//创建
HSSFWorkbook wb = new HSSFWorkbook();
//headers表示excel表中第一行的表头
String[] headers = {"姓名","邀请码","所属经纪人","经纪人手机号", "总收入金额", "接单数", "成单数","满意度","优质艺人"};
//创建一个只有头信息的空表
HSSFSheet sheet = null;
sheet = wb.createSheet("艺人数据"); //headers表示excel表中第一行的表头
HSSFRow row = sheet.createRow(0); //在excel表中添加表头
for(int i=0;i<headers.length;i++){
HSSFCell cell = row.createCell(i);
HSSFRichTextString text = new HSSFRichTextString(headers[i]);
cell.setCellValue(text);
} //查询艺人列表,根据筛选条件
List<Integer> statusList = null;
if ("".equals(status)){
status = "1,2";
}
if (StringUtils.isNotEmpty(status)) {
statusList = new ArrayList<>();
String[] statuss = status.split(",");
for (String statu : statuss) {
statusList.add(Integer.parseInt(statu));
}
}
//需要导出的数据
List<Aritst> aritsts = aritstDao.selectArtistByAgentAndMobile(statusList, mobile, agentUid,quality, null,null,null); int rowNum = 1;
if (null != aritsts) {
//在表中存放查询到的数据放入对应的列
for (Aritst aritst : aritsts) {
HSSFRow row1 = sheet.createRow(rowNum);
//"姓名","邀请码","所属经纪人","经纪人手机号", "总收入金额", "接单号", "成单数","满意度","是否优质艺人" row1.createCell(0).setCellValue(aritst.getNickname());
row1.createCell(1).setCellValue(aritst.getInviteCode());
row1.createCell(2).setCellValue(aritst.getAgent());
row1.createCell(3).setCellValue(aritst.getAgentMobile());
row1.createCell(4).setCellValue(aritst.getRevenue());
row1.createCell(5).setCellValue(aritst.getConnectionnum());
row1.createCell(6).setCellValue(aritst.getServernum());
row1.createCell(7).setCellValue(aritst.getSatisfiedRate());
row1.createCell(8).setCellValue(aritst.getQuality()==1?"是":"否");
rowNum++;
}
}
return wb;
}

最新文章

  1. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级
  2. 以下C#程序的输出结果是( )。
  3. BI商务智能对于企业的意义
  4. Atitit.数据库存储引擎的原理与attilax 总结
  5. Swift&amp;Node 使用Alamofire进行Post
  6. eclipse添加字体
  7. 384. Shuffle an Array
  8. [Phalcon-framework] Phalcon framework - Dependency Injection/Service Location And the MVC architecture note 1
  9. PHP获取不了React Native Fecth参数的解决办法代码是怎样?
  10. codeforces GYM 100114 J. Computer Network tarjan 树的直径 缩点
  11. MySQL提示:The server quit without updating PID file问题的解决办法
  12. scala学习笔记:理解并行集合par
  13. Android用户界面 UI组件--AdapterView及其子类(二) AdapterViewAnimator及其子类
  14. chromium安装flash
  15. 依赖注入与Unity(一) 介绍
  16. c++,派生类对象可以对基类赋值,基类对派生类不可以赋值
  17. 学python+django去北京找工作,靠谱吗?
  18. thinkphp5图片上传接口
  19. 版本管理工具Git(2)git的使用
  20. JAVA核心技术I---JAVA基础知识(知识回顾)

热门文章

  1. 混乱中的ICO平台,会不会是下一个P2P的重灾区?
  2. IIS+PHP+Mysql 返回500,服务器内部资源问题
  3. 2019年后,Java岗面试快速突击指南
  4. 菜鸟系列 Golang 实战 Leetcode —— 面试题24. 反转链表
  5. 怎么用Python写一个三体的气候模拟程序
  6. Android Base64图片无法长按保存 问题解决
  7. ionic监听android返回键(实现“再按一次退出”功能)
  8. 怎么查看linux文件夹下有多少个文件(mac同样)
  9. Redis系列三 - 缓存雪崩、击穿、穿透
  10. si4745 FM-AM-SW 音量控制芯片 驱动详解