From 0e1004894fd801da35c5815845fc737f384f9a70 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期五, 01 十一月 2024 20:30:14 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 50 +++++++++++++++++++++++++++++++++++++------------- 1 files changed, 37 insertions(+), 13 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java index 76886af..1c1442d 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java @@ -3,6 +3,7 @@ import cn.hutool.core.img.ImgUtil; import cn.hutool.core.io.FileUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.chargingPile.api.dto.GetSiteListDTO; import com.ruoyi.chargingPile.api.dto.TChargingGunDTO; @@ -11,6 +12,7 @@ import com.ruoyi.chargingPile.api.model.TChargingPile; import com.ruoyi.chargingPile.api.model.TFaultMessage; import com.ruoyi.chargingPile.api.query.TChargingGunQuery; +import com.ruoyi.chargingPile.api.vo.GetChargingGunByCode; import com.ruoyi.chargingPile.api.vo.GunStatusStatisticsVO; import com.ruoyi.chargingPile.api.vo.SiteNameVO; import com.ruoyi.chargingPile.api.vo.TChargingGunVO; @@ -39,10 +41,7 @@ import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import java.awt.image.BufferedImage; -import java.io.BufferedReader; -import java.io.FileInputStream; -import java.io.FileReader; -import java.io.PrintWriter; +import java.io.*; import java.net.URLEncoder; import java.util.ArrayList; import java.util.Arrays; @@ -143,8 +142,10 @@ @ApiOperation(tags = {"后台-充电枪"},value = "结束充电") @PutMapping(value = "/stopCharging") public AjaxResult<String> stopCharging(@RequestParam("id") String id) { + // 根据充电枪id 查询最新的一笔订单 + String data = chargingOrderClient.queryOrderByGunId(id).getData(); // 硬件 结束充电 - chargingOrderClient.stopCharging(id); + chargingOrderClient.stopCharging(data); return AjaxResult.success(); } @@ -156,13 +157,13 @@ public void downloadQRCode(@PathVariable Integer id, HttpServletResponse response){ try { TChargingGun chargingGun = chargingGunService.getById(id); - TChargingPile chargingPile = chargingPileService.getById(chargingGun.getId()); + TChargingPile chargingPile = chargingPileService.getById(chargingGun.getChargingPileId()); String code = chargingPile.getCode() + chargingGun.getCode(); String fileName = URLEncoder.encode(code, "UTF-8") + ".jpg"; response.setContentType("application/force-download"); response.addHeader("Content-Disposition", "attachment;fileName=" + fileName); String url = "https://mxcd.zhinenganguan.com?No=" + code; - String filePath = fileUploadConfig.getLocation(); + String filePath = fileUploadConfig.getLocation() + fileName; QRCodeUtils.encode(url, filePath); FileInputStream inputStream = new FileInputStream(filePath); ServletOutputStream out = response.getOutputStream(); @@ -174,6 +175,25 @@ out.flush(); out.close(); inputStream.close(); + + //清除服务器上的文件 + try { + // 使用Runtime执行命令 + Process process = Runtime.getRuntime().exec("sudo rm -rf " + filePath); + // 读取命令的输出 + BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); + String line; + while ((line = reader.readLine()) != null) { + System.out.println(line); + } + // 等待命令执行完成 + process.waitFor(); + // 关闭流 + reader.close(); + } catch (IOException | InterruptedException e) { + e.printStackTrace(); + } + }catch (Exception e){ e.printStackTrace(); } @@ -232,10 +252,10 @@ TChargingGun chargingGun = chargingGunService.getById(id); siteNameVO.setGunName(chargingGun.getName()); siteNameVO.setGunNumber(chargingGun.getCode()); - TChargingPile chargingPile = chargingPileService.getById(id); + TChargingPile chargingPile = chargingPileService.getById(chargingGun.getChargingPileId()); siteNameVO.setPileName(chargingPile.getName()); siteNameVO.setPileNumber(chargingPile.getNumber()); - Site site = siteService.getById(id); + Site site = siteService.getById(chargingGun.getSiteId()); siteNameVO.setSiteName(site.getName()); return R.ok(siteNameVO); } @@ -244,11 +264,15 @@ * @param code * @return */ - @PostMapping("/getChargingGunByCode/{code}") - public R<TChargingGun> getChargingGunByCode(@PathVariable("code") String code){ + @PostMapping("/getChargingGunByCode") + public R<TChargingGun> getChargingGunByCode(@RequestBody GetChargingGunByCode code){ + TChargingPile chargingPile = chargingPileService.getOne(new LambdaQueryWrapper<TChargingPile>() + .eq(TChargingPile::getCode, code.getCharging_pile_code()).eq(TChargingPile::getDelFlag, 0)); return R.ok(chargingGunService.getOne(Wrappers.lambdaQuery(TChargingGun.class) - .eq(TChargingGun::getCode, code) - .last("LIMIT 1"))); + .eq(TChargingGun::getChargingPileId, chargingPile.getId()) + .eq(TChargingGun::getCode, code.getCharging_gun_code()) + .eq(TChargingGun::getDelFlag, 0) + .last("LIMIT 1"))); } /** * 根据枪编号获取充电枪 -- Gitblit v1.7.1