From 5df9beddb0e8f7bca303a50f59b960d3d8f1346a Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 16 十月 2024 10:05:15 +0800
Subject: [PATCH] 修改bug
---
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 60 +++++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 45 insertions(+), 15 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 ecb1330..1d083c1 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,9 +12,11 @@
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;
+import com.ruoyi.chargingPile.config.FileUploadConfig;
import com.ruoyi.chargingPile.service.ISiteService;
import com.ruoyi.chargingPile.service.TChargingGunService;
import com.ruoyi.chargingPile.service.TChargingPileService;
@@ -38,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;
@@ -63,13 +63,16 @@
@Autowired
private TChargingGunService chargingGunService;
- @Autowired
+ @Resource
private ChargingOrderClient chargingOrderClient;
@Resource
private TChargingPileService chargingPileService;
@Resource
private ISiteService siteService;
+
+ @Autowired
+ private FileUploadConfig fileUploadConfig;
/**
* 查询充电枪列表
@@ -139,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();
}
@@ -152,11 +157,13 @@
public void downloadQRCode(@PathVariable Integer id, HttpServletResponse response){
try {
TChargingGun chargingGun = chargingGunService.getById(id);
- String fileName = URLEncoder.encode(chargingGun.getCode(), "UTF-8") + ".jpg";
+ 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://www.baidu.com?id=" + id;
- String filePath = "D:/Program Files/nginx-1.20.2/html";
+ String url = "https://mxcd.zhinenganguan.com?No=" + code;
+ String filePath = fileUploadConfig.getLocation() + fileName;
QRCodeUtils.encode(url, filePath);
FileInputStream inputStream = new FileInputStream(filePath);
ServletOutputStream out = response.getOutputStream();
@@ -168,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();
}
@@ -178,7 +204,7 @@
*/
@ApiOperation(tags = {"后台-工作台"},value = "设备状态统计")
@PutMapping(value = "/gunStatusStatistics")
- public AjaxResult<GunStatusStatisticsVO> gunStatusStatistics() {
+ public R<GunStatusStatisticsVO> gunStatusStatistics() {
List<Integer> siteIds = new ArrayList<>();
Long userId = SecurityUtils.getUserId();
//获取当前登录的siteIds
@@ -186,7 +212,7 @@
for (GetSiteListDTO datum : siteList1.getRecords()) {
siteIds.add(datum.getId());
}
- return AjaxResult.ok(chargingGunService.gunStatusStatistics(siteIds));
+ return R.ok(chargingGunService.gunStatusStatistics(siteIds));
}
/**
@@ -238,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