From 4109495b9c51a4bbd8b0a7c3c69093909d2e33e1 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期一, 07 四月 2025 18:55:05 +0800 Subject: [PATCH] 修改接口bug --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/WarnController.java | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 40 insertions(+), 3 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/WarnController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/WarnController.java index a2652cc..550d9ad 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/WarnController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/WarnController.java @@ -1,5 +1,7 @@ package com.ruoyi.system.controller; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.page.PageInfo; @@ -15,13 +17,17 @@ import com.ruoyi.system.service.IWarnService; import com.ruoyi.system.util.GDMapGeocodingUtil; import io.swagger.annotations.ApiOperation; +import org.apache.poi.ss.usermodel.Workbook; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.math.BigDecimal; +import java.net.URLEncoder; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; @@ -56,9 +62,38 @@ } + @GetMapping("/exportCarWarnList") + @ApiOperation(value = "导出车辆预警列表数据", tags = {"预警记录"}) + public void exportCarWarnList(CarWarnListReq carWarnListReq, HttpServletResponse response) { + carWarnListReq.setPageSize(99999); + PageInfo<CarWarnListResp> pageInfo = warnService.getCarWarnList(carWarnListReq); + Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), CarWarnListResp.class, pageInfo.getRecords()); + response.setCharacterEncoding("utf-8"); + ServletOutputStream outputStream = null; + try { + String fileName = URLEncoder.encode("预警记录.xls", "utf-8"); + response.setHeader("Content-Disposition", "attachment;filename=" + fileName); + response.setContentType("application/vnd.ms-excel;charset=UTF-8"); + response.setHeader("Pragma", "no-cache"); + response.setHeader("Cache-Control", "no-cache"); + outputStream = response.getOutputStream(); + workbook.write(outputStream); + } catch (IOException e) { + e.printStackTrace(); + } finally { + try { + workbook.close(); + outputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + @GetMapping("/getCarWarnInfo") @ApiOperation(value = "获取车辆预警详情数据", tags = {"车辆管理", "预警记录"}) - public R<CarWarnInfoResp> getCarWarnInfo(@PathVariable("vehicleNumber") String vehicleNumber) { + public R<CarWarnInfoResp> getCarWarnInfo(String vehicleNumber) { Car car = carService.getOne(new LambdaQueryWrapper<Car>().eq(Car::getVehicleNumber, vehicleNumber)); if (null == car) { return R.ok(); @@ -71,7 +106,9 @@ carWarnInfoResp.setSpeed(new BigDecimal(gnssDataVo.getVec1())); Map<String, String> geocode = null; try { - geocode = GDMapGeocodingUtil.geocode(Double.valueOf(gnssDataVo.getLon() / 1000000).toString(), Double.valueOf(gnssDataVo.getLat() / 1000000).toString()); + String longitude = new BigDecimal(gnssDataVo.getLon()).divide(new BigDecimal(1000000)).toString(); + String latitude = new BigDecimal(gnssDataVo.getLat()).divide(new BigDecimal(1000000)).toString(); + geocode = GDMapGeocodingUtil.geocode(longitude, latitude); } catch (Exception e) { throw new RuntimeException(e); } -- Gitblit v1.7.1