package com.stylefeng.guns.modular.system.controller.specialTrain; import com.baomidou.mybatisplus.plugins.Page; import com.stylefeng.guns.core.base.controller.BaseController; import com.stylefeng.guns.core.common.constant.factory.PageFactory; import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.DateUtil; import com.stylefeng.guns.core.util.SinataUtil; import com.stylefeng.guns.modular.system.service.TAbnormalPayOrderService; import com.stylefeng.guns.modular.system.util.ExcelExportUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; /** * 快车订单控制器 * * @author fengshuonan * @Date 2020-09-02 17:28:59 */ @Controller @RequestMapping("/abnormalPay") public class TAbnormalOrderPayCarController extends BaseController { private String PREFIX = "/system/tAbnormalPayOrderCar/"; @Autowired private TAbnormalPayOrderService tAbnormalPayOrderService; /** * 跳转到快车订单首页 */ @RequestMapping("") public String index(Model model) { return PREFIX + "tAbnormalOrder.html"; } /** * 获取快车订单列表 */ @RequestMapping(value = "/list") @ResponseBody public Object list(String insertTime, String orderNum, String userName, String userPhone, String passengers, String passengersPhone, Integer abnormalStatus ) { String beginTime = null; String endTime = null; if (SinataUtil.isNotEmpty(insertTime)) { String[] timeArray = insertTime.split(" - "); beginTime = timeArray[0]; endTime = timeArray[1]; } Page> page = new PageFactory>().defaultPage(); page.setRecords(tAbnormalPayOrderService.list(beginTime,endTime,orderNum,userName,userPhone,passengers,passengersPhone,abnormalStatus, ShiroKit.getUser().getRoleType(), ShiroKit.getUser().getObjectId())); return super.packForBT(page); } @GetMapping("/export") @ResponseBody public void export(String insertTime, String orderNum, String userName, String userPhone, String passengers, String passengersPhone, Integer abnormalStatus, HttpServletRequest request, HttpServletResponse response) { try { String beginTime = null; String endTime = null; if (SinataUtil.isNotEmpty(insertTime)) { String[] timeArray = insertTime.split(" - "); beginTime = timeArray[0]; endTime = timeArray[1]; } List> list = tAbnormalPayOrderService.list(beginTime, endTime, orderNum, userName, userPhone, passengers, passengersPhone, abnormalStatus, ShiroKit.getUser().getRoleType(), ShiroKit.getUser().getObjectId()); // 表格数据【封装】 List> dataList = new ArrayList<>(); //第一行显示【封装】 List twoList = new ArrayList(); twoList.add("总计:"); twoList.add(String.valueOf(list.size())+"条"); dataList.add(twoList); // 列【封装】 List shellList = new ArrayList(); shellList.add("生成时间"); shellList.add("关联订单号"); shellList.add("支付金额"); shellList.add("支付状态"); shellList.add("支付时间"); shellList.add("用户昵称"); shellList.add("联系电话"); dataList.add(shellList); for (Map object : list){ // 详细数据列【封装】 shellList = new ArrayList(); if(SinataUtil.isNotEmpty(object.get("createTime"))){ shellList.add(DateUtil.formatDate(DateUtil.parse(object.get("createTime").toString(),"YYYY-MM-dd HH:mm:ss.S"), "YYYY-MM-dd HH:mm:ss")); }else{ shellList.add("-"); } if(SinataUtil.isNotEmpty(object.get("orderNum"))){ shellList.add(object.get("orderNum").toString()); }else{ shellList.add("-"); } if(SinataUtil.isNotEmpty(object.get("payMoney"))){ shellList.add(object.get("payMoney").toString()); }else { shellList.add("-"); } if(SinataUtil.isNotEmpty(object.get("state"))){ shellList.add(object.get("state").toString().equals("7")? "待支付":"已支付"); }else{ shellList.add("-"); } if(SinataUtil.isNotEmpty(object.get("payTime"))){ shellList.add(DateUtil.formatDate(DateUtil.parse(object.get("payTime").toString(),"YYYY-MM-dd HH:mm:ss.S"), "YYYY-MM-dd HH:mm:ss")); }else{ shellList.add("-"); } if(SinataUtil.isNotEmpty(object.get("userName"))){ shellList.add(object.get("userName").toString()); }else{ shellList.add("-"); } if(SinataUtil.isNotEmpty(object.get("userPhone"))){ shellList.add(object.get("userPhone").toString()); }else{ shellList.add("-"); } dataList.add(shellList); } try { // 调用工具类进行导出 ExcelExportUtil.easySheet("追偿支付单导出记录"+DateUtil.formatDate(new Date(), "YYYYMMddHHmmss"), "追偿支付单导出记录", dataList,request, response); } catch (Exception e) { e.printStackTrace(); } } catch (Exception e) { e.printStackTrace(); } } }