1.页面代码
<a href="javascript:void(0)" th:onclick="'javascript:exportForm()'">
<button aria-hidden="true" type="button" style="margin-bottom: 10px;"
shiro:hasPermission="vehicle:vehicle:export" class="am-btn am-btn-warning fa fa-plus hidden">
<span class="am-icon-plus "></span> 导出货柜信息
</button>
</a>
2.js
//导出表格
function exportForm(){
var name = $("#name").val();
var typeName = $("#typeName").val();
if(typeName=='全部'){
typeName = null;
}
var timeStart = $("#timeStart").val();
var timeEnd = $("#timeEnd").val();
location.href="/project/container/export?name="+name+"&typeName="+typeName+"&timeStart="+timeStart+"&timeEnd="+timeEnd; //路径
}
3.后台
/**
* 导出车辆信息表格
* @return
*/
@RequestMapping("/export")
@RequiresPermissions("project:contaioner:export")
public void export(@RequestParam Map<String, Object> params,HttpServletResponse response){
Object name =params.get("name");
Object typeName=params.get("typeName");
Object timeStart =params.get("timeStart");//开始时间
Object timeEnd =params.get("timeEnd");//结束时间
ContainerDO c=new ContainerDO();//查询参数
if(!StringUtils.isEmpty(name)){
c.setName(name.toString());
}
if(!StringUtils.isEmpty(typeName)){
c.setTypeName(typeName.toString());
}
if(!StringUtils.isEmpty(timeStart)){
c.setTimeStart(timeStart.toString());
}
if(!StringUtils.isEmpty(timeEnd)){
c.setTimeEnd(timeEnd.toString());
}
//获取当前登录用户的网点
UserDO user=getUser();
Long branchId=user.getBranchId();
c.setBranchId(branchId);
List<ContainerDO> list = containerService.export(c);
//数据处理
for (ContainerDO containerDO : list) {
if(0 == containerDO.getStatus()){
containerDO.setStatusName("正常");
}else if(1 == containerDO.getStatus()){
containerDO.setStatusName("维修中");
}else if(2 == containerDO.getStatus()){
containerDO.setStatusName("已调派");
}
BranchDO branchDO = new BranchDO();
branchDO = branchService.get(containerDO.getBranchId());
if(branchDO!=null){
containerDO.setBranchName(branchDO.getName());
}
containerDO.setTime(new SimpleDateFormat("yyyy年MM月dd日").format(containerDO.getGmtModified()));
}
LinkedHashMap<String,String> titleMap = new LinkedHashMap<String,String>();
titleMap.put("id", "编号");
titleMap.put("branchName", "所属网点");
titleMap.put("name", "货柜名称");
titleMap.put("spaceCapacity", "体积");
titleMap.put("weightCapacity", "载重");
titleMap.put("value", "类型");
titleMap.put("statusName", "状态");
titleMap.put("containerLength", "长度");
titleMap.put("containerWidth", "宽度");
titleMap.put("containerHeight", "高度");
titleMap.put("vehicleName", "绑定车辆");
titleMap.put("time", "操作日期");
// String sheetName = "货柜信息";
// 带模板
InputStream template = ExportExcel.class.getResourceAsStream("/xls/container.xls");
Map<String, Object> extendInfo = new HashMap<>();
extendInfo.put("1:1", new Date());
extendInfo.put("1:4", getUser().getRealName());
ExportExcel.excelExportWithTemplate(response, list, titleMap, "数据报表", template, 2, 4, null, extendInfo);
long start = System.currentTimeMillis();
// ExportExcel.excelExport(response,list, titleMap, sheetName);
int time = Integer.valueOf((int) (System.currentTimeMillis() - start));
LogDO log = new LogDO("export()","货柜信息导出",time,"{操作人:"+getUserId()+"}");
logService.save(log);
}
4.模板