页面上怎么写?-----加上行内点击事件
导出数据
Js函数:
function exportRegInfo(){
var id = getUrlParams("id");
var _url='/thoughtism/activityReg/getRegListExcel.json?id='+id+"&name="+name;
window.open(_url);
}
Java类怎么写?
1.首先要在maven里配置相关jar包的引用,编译去下载
org.apache.poi
poi
3.17
public class ExcelUtil {
/**
* 创建excel文档,
* @param list 数据
* @param keys list中map的key数组集合
* @param columnNames excel的列名
* */
public static Workbook createWorkBook(List
3.Controller部分
**
* @param request
* @param response
* @return 导出活动的报名列表,格式为Excel
* @throws IOException
*/
@ResponseBody
@RequestMapping(value = "/getRegListExcel.json")
public String download(HttpServletRequest request, HttpServletResponse response) throws IOException {
String id = StringUtil.null2Str(getRequest().getParameter("id"));
String name = StringUtil.null2Str(getRequest().getParameter("name"));
String fileName = name+"__报名用户列表";
// 填充projects数据
List
/**
* @return
*/
private List> createData(Integer id) {
List> data = activityRegService.getRegList(StringUtil.nullToInteger(id), null, null);
return data;
}
/**
* @param activityReg
* @return
*/
private List> createExcelRecord(List> activityReg) {
List> listmap = new ArrayList>();
Map map = new HashMap(50);
map.put("sheetName", "sheet1");
listmap.add(map);
// Activity activityRecord=null;
for (int j = 0; j < activityReg.size(); j++) {
Map mapValue = new HashMap(50);
// "name", "phoneNum", "signUpTime","status","smsStatus"
mapValue.put("name", activityReg.get(j).get("name"));
mapValue.put("mobile", (activityReg.get(j).get("mobile")));
Object regTimeObj = activityReg.get(j).get("reg_time");
if (regTimeObj != null) {
mapValue.put("signUpTime", (sdf.format(regTimeObj)));
}else{
mapValue.put("signUpTime", (null));
}
Integer status = StringUtil.nullToInteger(activityReg.get(j).get("status"));
if (status != null && status.equals(1)) {
mapValue.put("status", "成功");
} else if (status != null && status.equals(2)) {
mapValue.put("status", "失败");
}
Integer smsStatus = StringUtil.nullToInteger(activityReg.get(j).get("sms_status"));
if (smsStatus != null && smsStatus.equals(1)) {
mapValue.put("smsStatus", "发送成功");
} else if (smsStatus != null && smsStatus.equals(2)) {
mapValue.put("smsStatus", "发送失败");
} else {
mapValue.put("smsStatus", "未发送");
}
listmap.add(mapValue);
}
return listmap;
}