From c05a14bba4b86d83918d7cdc01635785bf5694c2 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 03 六月 2025 00:26:08 +0800
Subject: [PATCH] 拆分mongodb查询服务

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TVehicleRampController.java |   52 +++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 43 insertions(+), 9 deletions(-)

diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TVehicleRampController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TVehicleRampController.java
index 53c8686..644b9f5 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TVehicleRampController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TVehicleRampController.java
@@ -1,18 +1,27 @@
 package com.ruoyi.chargingPile.controller;
 
 
+import com.ruoyi.chargingPile.api.model.TParkingLot;
 import com.ruoyi.chargingPile.api.model.TVehicleRamp;
+import com.ruoyi.chargingPile.service.TParkingLotService;
 import com.ruoyi.chargingPile.service.TVehicleRampService;
+import com.ruoyi.common.core.utils.CodeGenerateUtils;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.domain.BaseDelete;
 import com.ruoyi.common.log.annotation.Log;
 import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.log.enums.OperatorType;
+import com.ruoyi.common.security.annotation.Logical;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.integration.api.feignClient.SwitchwayGateClient;
+import com.ruoyi.integration.api.vo.SwitchwayGateReq;
 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 java.util.Arrays;
 import java.util.List;
 
 /**
@@ -29,6 +38,16 @@
 public class TVehicleRampController {
 
     private final TVehicleRampService vehicleRampService;
+    
+    @Resource
+    private SwitchwayGateClient switchwayGateClient;
+    
+    @Resource
+    private TParkingLotService parkingLotService;
+    
+    
+    
+    
 
     @Autowired
     public TVehicleRampController(TVehicleRampService vehicleRampService) {
@@ -38,17 +57,20 @@
     /**
      * 添加车道管理
      */
-    @Log(title = "添加车道", businessType = BusinessType.INSERT,operatorType = OperatorType.MANAGE)
+    @RequiresPermissions(value = {"/parkingLot/add_lane"}, logical = Logical.OR)
+    @Log(title = "【停车场配置】添加车道", businessType = BusinessType.INSERT,operatorType = OperatorType.MANAGE)
     @ApiOperation(tags = {"后台-车道"},value = "添加车道")
     @PostMapping(value = "/add")
     public AjaxResult<Boolean> add(@RequestBody TVehicleRamp dto) {
+        dto.setCarportNum(CodeGenerateUtils.generateVolumeSn());
         return AjaxResult.ok(vehicleRampService.save(dto));
     }
 
     /**
      * 修改车道
      */
-    @Log(title = "修改车道", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
+    @RequiresPermissions(value = {"/parkingLot/update_lane"}, logical = Logical.OR)
+    @Log(title = "【停车场配置】修改车道", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
     @ApiOperation(tags = {"后台-车道"},value = "修改车道")
     @PostMapping(value = "/update")
     public AjaxResult<Boolean> update(@RequestBody TVehicleRamp dto) {
@@ -58,6 +80,7 @@
     /**
      * 查看车道详情
      */
+    @RequiresPermissions(value = {"/parkingLot/update_lane"}, logical = Logical.OR)
     @ApiOperation(tags = {"后台-车道"},value = "查看车道详情")
     @GetMapping(value = "/getDetailById")
     public AjaxResult<TVehicleRamp> getDetailById(@RequestParam("id") Integer id) {
@@ -67,7 +90,8 @@
     /**
      * 删除车道
      */
-    @Log(title = "删除车道", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE)
+    @RequiresPermissions(value = {"/parkingLot/del_lane"}, logical = Logical.OR)
+    @Log(title = "【停车场配置】删除车道", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE)
     @ApiOperation(tags = {"后台-车道"},value = "删除车道")
     @DeleteMapping(value = "/deleteById")
     public AjaxResult<Boolean> deleteById(@RequestParam("id") Integer id) {
@@ -77,22 +101,32 @@
     /**
      * 批量删除车道
      */
-    @Log(title = "批量删除车道", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE)
+    @RequiresPermissions(value = {"/parkingLot/del_lane"}, logical = Logical.OR)
+    @Log(title = "【停车场配置】批量删除车道", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE)
     @ApiOperation(tags = {"后台-车道"},value = "批量删除车道")
     @DeleteMapping(value = "/deleteByIds")
-    public AjaxResult<Boolean> deleteByIds(@RequestBody BaseDelete baseDelete) {
-        return AjaxResult.ok(vehicleRampService.removeByIds(baseDelete.getIds()));
+    public AjaxResult<Boolean> deleteByIds(@RequestParam String ids) {
+        String[] split = ids.split(",");
+        return AjaxResult.ok(vehicleRampService.removeByIds(Arrays.asList(split)));
     }
 
     /**
      * 开关闸车道
      */
-    @Log(title = "开关闸车道", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
+    @RequiresPermissions(value = {"/parkingLot/open_gate", "/parkingLot/close_gate"}, logical = Logical.OR)
+    @Log(title = "【停车场配置】开关闸车道", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
     @ApiOperation(tags = {"后台-车道"},value = "开关闸车道")
     @PostMapping(value = "/openOrDown")
     public AjaxResult<String> openOrDown(@RequestBody TVehicleRamp dto) {
-        // TODO 硬件 开关闸车道
-        return AjaxResult.success();
+        TVehicleRamp vehicleRamp = vehicleRampService.getById(dto.getId());
+        TParkingLot parkingLot = parkingLotService.getById(vehicleRamp.getParkingLotId());
+        SwitchwayGateReq req = new SwitchwayGateReq();
+        req.setAction(dto.getAction());
+        req.setChannel(vehicleRamp.getCarportNum());
+        req.setAppkey(parkingLot.getAppKey());
+        req.setSecretkey(parkingLot.getSecretKey());
+        Boolean data = switchwayGateClient.gateService(req).getData();
+        return data ? AjaxResult.success() : AjaxResult.error("操作失败");
     }
 
 }

--
Gitblit v1.7.1