package com.stylefeng.guns.modular.system.controller.specialTrain; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.mapper.EntityWrapper; 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.ExcelExportUtil; import com.stylefeng.guns.core.util.SinataUtil; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.controller.util.PushUtil; import com.stylefeng.guns.modular.system.dao.OrderCancelMapper; import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.HttpRequestUtil; import com.stylefeng.guns.modular.system.util.PushMinistryOfTransportUtil; import com.stylefeng.guns.modular.system.util.PushURL; import com.stylefeng.guns.modular.system.util.ResultUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.math.BigDecimal; import java.util.*; /** * 专车订单控制器 * * @author fengshuonan * @Date 2020-09-02 17:28:59 */ @Controller @RequestMapping("/tOrderPrivateCar") public class TOrderPrivateCarController extends BaseController { private String PREFIX = "/system/tOrderPrivateCar/"; @Autowired private ITOrderPrivateCarService tOrderPrivateCarService; @Autowired private ITServerCarmodelService tServerCarmodelService; @Autowired private ITOrderPositionService tOrderPositionService; @Autowired private ITDriverService tDriverService; @Autowired private PushMinistryOfTransportUtil pushMinistryOfTransportUtil; @Resource private OrderCancelMapper orderCancelMapper; @Value("${pushMinistryOfTransport}") private boolean pushMinistryOfTransport; @Value("${filePath}") private String filePath; /** * 跳转到专车订单首页 */ @RequestMapping("") public String index(Model model) { //服务专车车型 List carmodelList = tServerCarmodelService.selectList(new EntityWrapper().eq("type", 1).eq("state", 1) ); model.addAttribute("carmodelList",carmodelList); return PREFIX + "tOrderPrivateCar.html"; } /** * 跳转到专车订单首页 */ @RequestMapping("/abnormalOrder") public String abnormalOrder(Model model) { //服务专车车型 List carmodelList = tServerCarmodelService.selectList(new EntityWrapper().eq("type", 1).eq("state", 1)); model.addAttribute("carmodelList",carmodelList); return PREFIX + "tAbnormalOrder.html"; } /** * 跳转到修改专车订单 */ @RequestMapping("/tOrderPrivateCar_orderDetail/{tOrderPrivateCarId}") public String tOrderPrivateCarUpdate(@PathVariable Integer tOrderPrivateCarId, Model model) { Map item = tOrderPrivateCarService.getPrivateCarOrderDetailById(tOrderPrivateCarId); model.addAttribute("item",item); return PREFIX + "tOrderPrivateCar_orderDetail.html"; } /** * 跳转到修改专车订单 */ @RequestMapping("/tOrderPrivateCar_orderDetailByOrderNumber/{orderNumber}") public String tOrderPrivateCarUpdate(@PathVariable String orderNumber, Model model) { Map item = tOrderPrivateCarService.getPrivateCarOrderDetailByOrderNumber(orderNumber); model.addAttribute("item",item); return PREFIX + "tOrderPrivateCar_orderDetail.html"; } /** * 跳转到修改专车订单 */ @RequestMapping("/toChangeMoney/{tOrderPrivateCarId}") public String toChangeMoney(@PathVariable Integer tOrderPrivateCarId, Model model) { Map item = tOrderPrivateCarService.getPrivateCarOrderDetailById(tOrderPrivateCarId); model.addAttribute("item",item); return PREFIX + "toChangeMoney.html"; } /** * 跳转到出租车订单轨迹页面 */ @RequestMapping("/tOrderPrivateCar_trajectory/{tOrderPrivateCarId}") public String tOrderTaxi_trajectory(@PathVariable Integer tOrderPrivateCarId, Model model) { model.addAttribute("tOrderPrivateCarId",tOrderPrivateCarId); return PREFIX + "tOrderPrivateCar_trajectory.html"; } /** * 获取专车订单列表 */ @RequestMapping(value = "/list") @ResponseBody public Object list(String insertTime, String orderNum, Integer orderSource, String userName, String userPhone, String passengers, String passengersPhone, Integer serverCarModelId, String driver, Integer state, Integer smsNumber) { 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(tOrderPrivateCarService.getPrivateCarOrderList(page,beginTime,endTime,ShiroKit.getUser().getRoleType(),ShiroKit.getUser().getObjectId(),orderNum,orderSource,userName,userPhone,passengers,passengersPhone,serverCarModelId,driver,state,smsNumber)); return super.packForBT(page); } /** * 获取专车订单列表 */ @RequestMapping(value = "/abnormalList") @ResponseBody public Object abnormalList(String insertTime, String orderNum, Integer orderSource, String userName, String userPhone, String passengers, String passengersPhone, Integer serverCarModelId, String driver, Integer state, Integer smsNumber) { 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(tOrderPrivateCarService.getAbnormalOrderList(page,beginTime,endTime,ShiroKit.getUser().getRoleType(),ShiroKit.getUser().getObjectId(),orderNum,orderSource,userName,userPhone,passengers,passengersPhone,serverCarModelId,driver,state,smsNumber)); return super.packForBT(page); } private ResultUtil resultUtil; /** * 获取订单轨迹 * @param orderDetailId * @return */ @ResponseBody @RequestMapping(value = "/getOrderTrack", method = RequestMethod.POST) public ResultUtil getOrderTrack(String orderDetailId){ if(ToolUtil.isNotEmpty(orderDetailId)){ try { // List list = tOrderPositionService.selectList(new EntityWrapper().eq("orderType", 1).eq("orderId", orderDetailId).orderBy("insertTime")); /*if(list.size() == 0){ return ResultUtil.error("该订单没有运行轨迹"); }*/ //将数据存储到文件中 File file = new File(filePath + orderDetailId + "_1.txt"); if(!file.exists()){ return ResultUtil.success(new ArrayList<>()); } //读取文件(字符流) BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8")); //循环取出数据 String str = null; StringBuffer sb = new StringBuffer(); while ((str = in.readLine()) != null) { sb.append(str); } List list = JSONArray.parseArray(sb.toString(), TOrderPosition.class); resultUtil = ResultUtil.success(list); }catch (Exception e){ e.printStackTrace(); resultUtil = ResultUtil.runErr(); } }else { resultUtil = ResultUtil.paranErr(); } return resultUtil; } @Autowired private ITCompanyService companyService; @Autowired private ITDriverService driverService; @Autowired private IIncomeService incomeService; /** * 支付专车订单 */ @RequestMapping(value = "/changeMoney") @ResponseBody public Object changeMoney(Integer id,BigDecimal money) { TOrderPrivateCar orderPrivateCar = tOrderPrivateCarService.selectById(id); orderPrivateCar.setAbnormalMoney(orderPrivateCar.getOrderMoney()); orderPrivateCar.setOrderMoney(money); orderPrivateCar.updateById(); return SUCCESS_TIP; } @RequestMapping(value = "/frozenOrder") @ResponseBody public Object frozenOrder(@RequestParam Integer tOrderPrivateCarId) { TOrderPrivateCar orderPrivateCar = tOrderPrivateCarService.selectById(tOrderPrivateCarId); //添加已收入明细 TCompany company = companyService.selectById(orderPrivateCar.getCompanyId()); Double taxi = company.getSpeMoney().doubleValue(); BigDecimal d = null;//企业收入 BigDecimal c = null;//司机收入 if(company.getIsSpeFixedOrProportional() == 2){//固定 d = new BigDecimal(taxi); c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); } if(company.getIsSpeFixedOrProportional() == 1){//比例 Double price = orderPrivateCar.getStartMoney().doubleValue() + orderPrivateCar.getMileageMoney().doubleValue() + orderPrivateCar.getWaitMoney().doubleValue()+ orderPrivateCar.getDurationMoney().doubleValue() + orderPrivateCar.getLongDistanceMoney().doubleValue(); d = new BigDecimal(price).multiply(new BigDecimal(taxi).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN); c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); } if(orderPrivateCar.getIsFrozen()==1){ TDriver driver = driverService.selectById(orderPrivateCar.getDriverId()); driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).subtract(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); driver.setLaveBusinessMoney(new BigDecimal(null != driver.getLaveBusinessMoney() ? driver.getLaveBusinessMoney() : 0).subtract(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); driver.setBalance((null != driver.getBalance() ? driver.getBalance() : BigDecimal.ZERO).subtract(c).setScale(2, BigDecimal.ROUND_HALF_EVEN)); driver.setFrozenMoney(driver.getFrozenMoney().add(c)); driverService.updateById(driver); }else{ TDriver driver = driverService.selectById(orderPrivateCar.getDriverId()); driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); driver.setLaveBusinessMoney(new BigDecimal(null != driver.getLaveBusinessMoney() ? driver.getLaveBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); driver.setBalance((null != driver.getBalance() ? driver.getBalance() : BigDecimal.ZERO).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN)); driver.setFrozenMoney(driver.getFrozenMoney().subtract(c)); driverService.updateById(driver); } orderPrivateCar.setIsFrozen(orderPrivateCar.getIsFrozen()==1?2:1); tOrderPrivateCarService.updateAllColumnById(orderPrivateCar); return SUCCESS_TIP; } /** * 支付专车订单 */ @RequestMapping(value = "/platPay") @ResponseBody public Object platPay(@RequestParam Integer tOrderPrivateCarId) { TOrderPrivateCar orderPrivateCar = tOrderPrivateCarService.selectById(tOrderPrivateCarId); if(orderPrivateCar.getIsplatPay()==2){ return "error"; } //添加已收入明细 TCompany company = companyService.selectById(orderPrivateCar.getCompanyId()); Double taxi = company.getSpeMoney().doubleValue(); BigDecimal d = null;//企业收入 BigDecimal c = null;//司机收入 if(company.getIsSpeFixedOrProportional() == 2){//固定 d = new BigDecimal(taxi); c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); } if(company.getIsSpeFixedOrProportional() == 1){//比例 Double price = orderPrivateCar.getStartMoney().doubleValue() + orderPrivateCar.getMileageMoney().doubleValue() + orderPrivateCar.getWaitMoney().doubleValue()+ orderPrivateCar.getDurationMoney().doubleValue() + orderPrivateCar.getLongDistanceMoney().doubleValue(); d = new BigDecimal(price).multiply(new BigDecimal(taxi).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN); c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); } incomeService.saveData(1, orderPrivateCar.getCompanyId(), 2, orderPrivateCar.getId(), 1, d.doubleValue()); incomeService.saveData(2, orderPrivateCar.getDriverId(), 2, orderPrivateCar.getId(), 1, c.doubleValue()); TDriver driver = driverService.selectById(orderPrivateCar.getDriverId()); driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); driver.setLaveBusinessMoney(new BigDecimal(null != driver.getLaveBusinessMoney() ? driver.getLaveBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); driver.setBalance((null != driver.getBalance() ? driver.getBalance() : BigDecimal.ZERO).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN)); driverService.updateById(driver); orderPrivateCar.setIsplatPay(2); orderPrivateCar.setState(8); tOrderPrivateCarService.updateAllColumnById(orderPrivateCar); return SUCCESS_TIP; } /** * 取消专车订单 */ @RequestMapping(value = "/cancel") @ResponseBody public Object cancel(@RequestParam Integer tOrderPrivateCarId) { TOrderPrivateCar tOrderPrivateCar = tOrderPrivateCarService.selectById(tOrderPrivateCarId); //修改之前司机状态 -- 空闲 if(null != tOrderPrivateCar.getDriverId()){ TDriver driver = tDriverService.selectById(tOrderPrivateCar.getDriverId()); driver.setState(2); tDriverService.updateById(driver); } tOrderPrivateCar.setState(10); tOrderPrivateCarService.updateById(tOrderPrivateCar); OrderCancel orderCancel = new OrderCancel(); orderCancel.setOrderId(tOrderPrivateCarId); orderCancel.setOrderType(1); orderCancel.setReason("平台取消订单"); orderCancel.setRemark("平台取消订单"); orderCancel.setUserType(2); orderCancel.setState(2); orderCancel.setInsertTime(new Date()); orderCancelMapper.insert(orderCancel); //增加推送 Map map = new HashMap<>(); map.put("id", tOrderPrivateCar.getId().toString()); map.put("orderType", "1"); String result = HttpRequestUtil.postRequest(PushURL.cancel_order_url, map); System.out.println("专车取消:【orderId="+tOrderPrivateCar.getId().toString()+"】,调用接口:"+result); new Thread(new Runnable() { @Override public void run() { if(pushMinistryOfTransport){//上传数据 pushMinistryOfTransportUtil.orderCancel(tOrderPrivateCarId); } } }).start(); return SUCCESS_TIP; } /** * 删除专车订单 */ @RequestMapping(value = "/delete") @ResponseBody public Object delete(@RequestParam Integer tOrderPrivateCarId) { TOrderPrivateCar tOrderPrivateCar = tOrderPrivateCarService.selectById(tOrderPrivateCarId); tOrderPrivateCar.setIsDelete(2); tOrderPrivateCarService.updateById(tOrderPrivateCar); return SUCCESS_TIP; } @RequestMapping("/getExcel") @ResponseBody public void getExcel(String insertTime,String orderNum,Integer orderSource, String userName,String userPhone,String passengers, String passengersPhone,Integer serverCarModelId,String driver, Integer state, Integer smsNumber, HttpServletRequest request, HttpServletResponse response) { String beginTime = null; String endTime = null; if (SinataUtil.isNotEmpty(insertTime)){ String[] timeArray = insertTime.split(" - "); beginTime = timeArray[0]; endTime = timeArray[1]; } List> list = tOrderPrivateCarService.getPrivateCarOrderListNoPage(beginTime, endTime, ShiroKit.getUser().getRoleType(), ShiroKit.getUser().getObjectId(), orderNum, orderSource, userName, userPhone, passengers, passengersPhone, serverCarModelId, driver, state,smsNumber); // 表格数据【封装】 List> dataList = new ArrayList<>(); // 表头行 List shellList = new ArrayList(); shellList.add("下单时间"); shellList.add("订单编号"); shellList.add("订单来源"); shellList.add("乘车时间"); shellList.add("下单用户昵称"); shellList.add("下单用户手机"); shellList.add("乘车用户姓名"); shellList.add("乘车用户手机"); shellList.add("起点"); shellList.add("终点"); shellList.add("选择车型"); shellList.add("接单司机"); shellList.add("接单车辆"); shellList.add("订单金额"); shellList.add("状态"); shellList.add("起步里程"); shellList.add("起步价"); shellList.add("里程公里"); shellList.add("里程费"); shellList.add("时长分钟"); shellList.add("时长费"); shellList.add("等待分钟"); shellList.add("等待费"); shellList.add("远途公里"); shellList.add("远途费"); shellList.add("停车费"); shellList.add("过路费"); shellList.add("红包抵扣金额"); shellList.add("优惠券抵扣金额"); shellList.add("折扣"); shellList.add("折扣优惠金额"); shellList.add("支付金额"); shellList.add("首单免费"); shellList.add("免费金额"); shellList.add("备注"); dataList.add(shellList); for (Map map : list) { //数据行 shellList = new ArrayList(); //下单时间 if(SinataUtil.isNotEmpty(map.get("insertTime"))){ shellList.add(String.valueOf(map.get("insertTime"))); }else{ shellList.add("-"); } //订单编号 if(SinataUtil.isNotEmpty(map.get("orderNum"))){ shellList.add(map.get("orderNum").toString()); }else{ shellList.add("-"); } //订单来源 if(SinataUtil.isNotEmpty(map.get("orderSource"))){ switch (map.get("orderSource").toString()) { case "1": shellList.add("app下单"); break; case "2": shellList.add("推荐下单"); break; case "3": shellList.add("小程序下单"); break; case "4": shellList.add("司机下单"); break; case "5": shellList.add("调度下单"); break; default: shellList.add("-"); } }else{ shellList.add("-"); } //乘车时间 if(SinataUtil.isNotEmpty(map.get("travelTime"))){ shellList.add(String.valueOf(map.get("travelTime"))); }else{ shellList.add("-"); } //下单用户昵称 if(SinataUtil.isNotEmpty(map.get("userName"))){ shellList.add(map.get("userName").toString()); }else{ shellList.add("-"); } //下单用户手机 if(SinataUtil.isNotEmpty(map.get("userPhone"))){ shellList.add(map.get("userPhone").toString()); }else{ shellList.add("-"); } //乘车用户姓名 if(SinataUtil.isNotEmpty(map.get("passengers"))){ shellList.add(map.get("passengers").toString()); }else{ shellList.add("-"); } //乘车用户手机 if(SinataUtil.isNotEmpty(map.get("passengersPhone"))){ shellList.add(map.get("passengersPhone").toString()); }else{ shellList.add("-"); } //起点 if(SinataUtil.isNotEmpty(map.get("startAddress"))){ shellList.add(map.get("startAddress").toString()); }else{ shellList.add("-"); } //终点 if(SinataUtil.isNotEmpty(map.get("endAddress"))){ shellList.add(map.get("endAddress").toString()); }else{ shellList.add("-"); } //选择车型 if(SinataUtil.isNotEmpty(map.get("serverCarModel"))){ shellList.add(map.get("serverCarModel").toString()); }else{ shellList.add("-"); } //接单司机 if(SinataUtil.isNotEmpty(map.get("driver"))){ shellList.add(map.get("driver").toString()); }else{ shellList.add("-"); } //接单车辆 if(SinataUtil.isNotEmpty(map.get("car"))){ shellList.add(map.get("car").toString()); }else{ shellList.add("-"); } //订单金额 if(SinataUtil.isNotEmpty(map.get("orderMoney"))){ shellList.add(map.get("orderMoney").toString()); }else{ shellList.add("0"); } //状态 if(SinataUtil.isNotEmpty(map.get("state"))){ switch (map.get("state").toString()) { case "1": shellList.add("待接单"); break; case "2": shellList.add("待出发"); break; case "3": shellList.add("待到达预约地点"); break; case "4": shellList.add("待乘客上车"); break; case "5": shellList.add("服务中"); break; case "6": shellList.add("完成服务"); break; case "7": shellList.add("待支付"); break; case "8": shellList.add("待评价"); break; case "9": shellList.add("已完成"); break; case "10": shellList.add("已取消"); break; case "11": shellList.add("改派中"); break; case "12": shellList.add("取消待支付"); break; default: shellList.add("-"); } }else{ shellList.add("-"); } //起步里程 if(SinataUtil.isNotEmpty(map.get("startMileage"))){ shellList.add(map.get("startMileage").toString()); }else{ shellList.add("-"); } //起步价 if(SinataUtil.isNotEmpty(map.get("startMoney"))){ shellList.add(map.get("startMoney").toString()); }else{ shellList.add("-"); } //里程公里 if(SinataUtil.isNotEmpty(map.get("mileageKilometers"))){ shellList.add(map.get("mileageKilometers").toString()); }else{ shellList.add("-"); } //里程费 if(SinataUtil.isNotEmpty(map.get("mileageMoney"))){ shellList.add(map.get("mileageMoney").toString()); }else{ shellList.add("-"); } //时长分钟 if(SinataUtil.isNotEmpty(map.get("duration"))){ shellList.add(map.get("duration").toString()); }else{ shellList.add("-"); } //时长费 if(SinataUtil.isNotEmpty(map.get("durationMoney"))){ shellList.add(map.get("durationMoney").toString()); }else{ shellList.add("0.00"); } //等待分钟 if(SinataUtil.isNotEmpty(map.get("wait"))){ shellList.add(map.get("wait").toString()); }else{ shellList.add("-"); } //等待费 if(SinataUtil.isNotEmpty(map.get("waitMoney"))){ shellList.add(map.get("waitMoney").toString()); }else{ shellList.add("0.00"); } //远途公里 if(SinataUtil.isNotEmpty(map.get("longDistance"))){ shellList.add(map.get("longDistance").toString()); }else{ shellList.add("0.00"); } //远途费 if(SinataUtil.isNotEmpty(map.get("longDistanceMoney"))){ shellList.add(map.get("longDistanceMoney").toString()); }else{ shellList.add("0.00"); } //停车费 if(SinataUtil.isNotEmpty(map.get("parkMoney"))){ shellList.add(map.get("parkMoney").toString()); }else{ shellList.add("0.00"); } //过路费 if(SinataUtil.isNotEmpty(map.get("roadTollMoney"))){ shellList.add(map.get("roadTollMoney").toString()); }else{ shellList.add("0.00"); } //红包抵扣金额 if(SinataUtil.isNotEmpty(map.get("redPacketMoney"))){ shellList.add(map.get("redPacketMoney").toString()); }else{ shellList.add("0.00"); } //优惠券抵扣金额 if(SinataUtil.isNotEmpty(map.get("couponMoney"))){ shellList.add(map.get("couponMoney").toString()); }else{ shellList.add("0.00"); } //折扣 if(SinataUtil.isNotEmpty(map.get("discount"))){ shellList.add(map.get("discount").toString()); }else{ shellList.add("-"); } //折扣优惠金额 if(SinataUtil.isNotEmpty(map.get("discountMoney"))){ shellList.add(map.get("discountMoney").toString()); }else{ shellList.add("0.00"); } //支付金额 if(SinataUtil.isNotEmpty(map.get("payMoney"))){ shellList.add(map.get("payMoney").toString()); }else{ shellList.add("0.00"); } //首单免费 if(SinataUtil.isNotEmpty(map.get("isFree"))){ if("1".equals(map.get("isFree").toString())){ shellList.add("否"); }else if("2".equals(map.get("isFree").toString())){ shellList.add("是"); } }else{ shellList.add("--"); } //免费金额 if(SinataUtil.isNotEmpty(map.get("freeMoney"))){ shellList.add(map.get("freeMoney").toString()); }else{ shellList.add("-"); } //备注 if(SinataUtil.isNotEmpty(map.get("remark"))){ shellList.add(map.get("remark").toString()); }else{ shellList.add("-"); } dataList.add(shellList); } try { // 调用工具类进行导出 ExcelExportUtil.easySheet("专车订单数据"+ DateUtil.formatDate(new Date(), "YYYYMMddHHmmss"), "专车订单数据", dataList,request, response); } catch (Exception e) { e.printStackTrace(); } } }