From 8b5f7469e4470e4b89f1659e1dc361dff5ea1b09 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 11 九月 2024 09:52:54 +0800
Subject: [PATCH] 修改

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java |   69 ++++++++++++++++++++++++++++------
 1 files changed, 57 insertions(+), 12 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 cc6f241..1ab8a01 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
@@ -1,12 +1,18 @@
 package com.ruoyi.chargingPile.controller;
 
 
+import cn.hutool.core.img.ImgUtil;
 import cn.hutool.core.io.FileUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.chargingPile.api.dto.TChargingGunDTO;
+import com.ruoyi.chargingPile.api.model.Site;
 import com.ruoyi.chargingPile.api.model.TChargingGun;
 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.SiteNameVO;
 import com.ruoyi.chargingPile.api.vo.TChargingGunVO;
+import com.ruoyi.chargingPile.service.ISiteService;
 import com.ruoyi.chargingPile.service.TChargingGunService;
 import com.ruoyi.chargingPile.service.TChargingPileService;
 import com.ruoyi.chargingPile.util.QRCodeUtils;
@@ -17,14 +23,20 @@
 import com.ruoyi.common.log.annotation.Log;
 import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.log.enums.OperatorType;
+import com.ruoyi.integration.api.feignClient.IntegrationClient;
+import com.ruoyi.integration.api.model.EndCharge;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+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.net.URLEncoder;
 import java.util.Arrays;
@@ -43,16 +55,16 @@
 @RequestMapping("/t-charging-gun")
 public class TChargingGunController {
 
-    private final TChargingGunService chargingGunService;
-    
+    @Autowired
+    private TChargingGunService chargingGunService;
+    @Autowired
+    private IntegrationClient integrationClient;
+
     @Resource
     private TChargingPileService chargingPileService;
+    @Resource
+    private ISiteService siteService;
 
-    @Autowired
-    public TChargingGunController(TChargingGunService chargingGunService) {
-        this.chargingGunService = chargingGunService;
-    }
-    
     /**
      * 查询充电枪列表
      */
@@ -122,6 +134,8 @@
     @PutMapping(value = "/stopCharging")
     public AjaxResult<String> stopCharging(@RequestParam("id") Integer id) {
         // TODO 硬件 结束充电
+//        EndCharge endCharge = new EndCharge();
+//        integrationClient.endCharge(endCharge);
         return AjaxResult.success();
     }
     
@@ -132,17 +146,18 @@
     public void downloadQRCode(@PathVariable Integer id, HttpServletResponse response){
         try {
             TChargingGun chargingGun = chargingGunService.getById(id);
-            response.setContentType("image/jpeg");
-            response.setHeader("Content-Disposition","attachment; filename=" + URLEncoder.encode(chargingGun.getName(), "UTF-8") + ".jpeg");
+            String fileName = URLEncoder.encode(chargingGun.getCode(), "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 = "";
+            String filePath = "D:/Program Files/nginx-1.20.2/html";
             QRCodeUtils.encode(url, filePath);
             FileInputStream inputStream = new FileInputStream(filePath);
-            PrintWriter out = response.getWriter();
+            ServletOutputStream out = response.getOutputStream();
             int len = 0;
             byte[] buf = new byte[1024];
             while ((len = inputStream.read(buf, 0, 1024)) != -1) {
-                out.println(buf);
+                out.write(buf);
             }
             out.flush();
             out.close();
@@ -178,5 +193,35 @@
         TChargingGun chargingGun = chargingGunService.getById(id);
         return R.ok(chargingGun);
     }
+    /**
+     * 根据id获取充电枪详情
+     * @param id
+     * @return
+     */
+    @ResponseBody
+    @PostMapping(value = "/getAllInfoById/{id}")
+    public R<SiteNameVO> getAllInfoById(@PathVariable Integer id){
+        SiteNameVO siteNameVO = new SiteNameVO();
+        TChargingGun chargingGun = chargingGunService.getById(id);
+        siteNameVO.setGunName(chargingGun.getName());
+        siteNameVO.setGunNumber(chargingGun.getCode());
+        TChargingPile chargingPile = chargingPileService.getById(id);
+        siteNameVO.setPileName(chargingPile.getName());
+        siteNameVO.setPileNumber(chargingPile.getNumber());
+        Site site = siteService.getById(id);
+        siteNameVO.setSiteName(site.getName());
+        return R.ok(siteNameVO);
+    }
+    /**
+     * 根据枪编号获取充电枪
+     * @param code
+     * @return
+     */
+    @PostMapping("/getChargingGunByCode/{code}")
+    public R<TChargingGun> getChargingGunByCode(@PathVariable("code") String code){
+        return R.ok(chargingGunService.getOne(Wrappers.lambdaQuery(TChargingGun.class)
+                .eq(TChargingGun::getCode, code)
+                .last("LIMIT 1")));
+    }
 }
 

--
Gitblit v1.7.1