From 2c2580fbf0bd6b28f84ab8f3949e1b5be464bcb3 Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: 星期三, 08 十一月 2023 17:02:14 +0800
Subject: [PATCH] mqtt锁状态

---
 ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java |  159 +++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 136 insertions(+), 23 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
index a5d3a43..17d103d 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java
@@ -1,13 +1,21 @@
 package com.ruoyi.sy.controller;
 
 import com.alibaba.fastjson.JSONObject;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.sy.domain.ArdAccessFence;
 import com.ruoyi.sy.domain.ArdSyCarLock;
+import com.ruoyi.sy.domain.ArdSyCarRtu;
 import com.ruoyi.sy.domain.ArdSyUser;
+import com.ruoyi.sy.mapper.ArdAccessFenceMapper;
+import com.ruoyi.sy.param.AddCarParam;
+import com.ruoyi.sy.service.ArdAccessFenceService;
 import com.ruoyi.sy.service.ArdSyCarLockService;
 import com.ruoyi.sy.service.IArdSyCarService;
 import com.ruoyi.sy.service.IArdSyUserService;
+import com.ruoyi.sy.vo.CarLockVo;
 import com.ruoyi.sy.vo.CarVo;
+import com.ruoyi.sy.vo.RtuVo;
 import com.ruoyi.system.service.ISysConfigService;
 import com.ruoyi.utils.result.Results;
 import io.swagger.annotations.Api;
@@ -33,28 +41,22 @@
     private IArdSyCarService ardSyCarService;
     @Autowired
     private ArdSyCarLockService ardSyCarLockService;
+    @Autowired
+    private ArdAccessFenceService ardAccessFenceService;
 
     @GetMapping("/car")
     @ApiOperation("鏌ヨ鎵�鏈夋湭鎸傞攣鐨勮溅杈�")
     public Results car(){
         List<CarVo> list = ardSyCarLockService.car();
-        String usersId = SecurityUtils.getUserId();
-        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
-        String syURL = sysConfigService.getSYURL();
-        for (int i = 0; i < list.size(); i++) {
-            CarVo carVo = list.get(i);
-            String carId = carVo.getCarId();
-            Results results = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
-            Map<String,Object> map = (Map<String, Object>) results.getData();
-            List list1 = (List) map.get("list");
-            JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
-            String carPlate = (String) jsonObject.get("carPlate");
-            carVo.setCarPlate(carPlate);
-            String drvName = (String) jsonObject.get("drvName");
-            carVo.setDrvName(drvName);
-            String drvPhone = (String) jsonObject.get("drvPhone");
-            carVo.setDrvPhone(drvPhone);
-        }
+        analysis(list);
+        return Results.succeed(list);
+    }
+
+    @GetMapping("/carAddOne")
+    @ApiOperation("鏌ヨ鎵�鏈夋湭鎸傞攣鐨勮溅杈嗗姞鏈溅杈嗕俊鎭�")
+    public Results carAddOne(String carId){
+        List<CarVo> list = ardSyCarLockService.carAddOne(carId);
+        analysis(list);
         return Results.succeed(list);
     }
 
@@ -66,26 +68,137 @@
 
     @DeleteMapping("/del")
     @ApiOperation("鍒犻櫎rtu")
-    public Results del(String carId){
-        return Results.succeed("鎴愬姛鍒犻櫎"+ardSyCarLockService.delCar(carId)+"鏉℃暟鎹�");
+    public Results del(String id){
+        return Results.succeed("鎴愬姛鍒犻櫎"+ardSyCarLockService.delCar(id)+"鏉℃暟鎹�");
     }
 
     @GetMapping("/one")
     @ApiOperation("鏌ヨ涓�鏉tu鍙婇攣")
     public Results one(String carId){
-        return Results.succeed(ardSyCarLockService.carLock(carId));
+        CarLockVo carLockVo = new CarLockVo();
+        CarVo carVo = ardSyCarLockService.carOne(carId);
+        String usersId = SecurityUtils.getUserId();
+        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
+        String syURL = sysConfigService.getSYURL();
+        Map<String,Object> map = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
+        List list1 = (List) map.get("list");
+        JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
+        String carPlate = (String) jsonObject.get("carPlate");
+        carVo.setCarPlate(carPlate);
+        String drvName = (String) jsonObject.get("drvName");
+        carVo.setDrvName(drvName);
+        String drvPhone = (String) jsonObject.get("drvPhone");
+        carVo.setDrvPhone(drvPhone);
+        carLockVo.setCar(carVo);
+        String rtu = carVo.getRtu();
+        carLockVo.setCarLockList(ardSyCarLockService.carLock(rtu));
+        return Results.succeed(carLockVo);
     }
 
     @GetMapping("/query")
     @ApiOperation("鏌ヨ鎵�鏈塺tu鎸傝浇鐨勮溅杈�")
     public Results query(){
-        return Results.succeed(ardSyCarLockService.carList());
+        List<CarVo> list = ardSyCarLockService.carList();
+        analysis(list);
+        return Results.succeed(list);
     }
 
-    @GetMapping("/addLock")
+    @PostMapping("/addLock")
     @ApiOperation("娣诲姞淇敼閿�")
     public Results addLock(@RequestBody List<ArdSyCarLock> locks){
-        return Results.succeed(ardSyCarLockService.addUpdLock(locks));
+        return Results.succeed("鎴愬姛娣诲姞/淇敼"+ardSyCarLockService.addUpdLock(locks)+"鏉℃暟鎹�");
+    }
+
+    @GetMapping("/onrRtu")
+    @ApiOperation("鏇存敼Rtu鍓嶆煡璇�")
+    public Results onrRtu(String carId){
+        RtuVo rtuVo = ardSyCarLockService.updRtu(carId);
+        String usersId = SecurityUtils.getUserId();
+        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
+        String syURL = sysConfigService.getSYURL();
+        Map<String,Object> map = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
+        List list1 = (List) map.get("list");
+        JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
+        String carPlate = (String) jsonObject.get("carPlate");
+        rtuVo.setCarPlate(carPlate);
+        String drvName = (String) jsonObject.get("drvName");
+        rtuVo.setDrvName(drvName);
+        String drvPhone = (String) jsonObject.get("drvPhone");
+        rtuVo.setDrvPhone(drvPhone);
+        return Results.succeed(rtuVo);
+    }
+
+    @PutMapping("/updRtu")
+    @ApiOperation("鏇存敼Rtu")
+    public Results updRtu(@RequestBody ArdSyCarRtu ardSyCarRtu){
+        return Results.succeed("鎴愬姛淇敼"+ardSyCarLockService.updRtuCar(ardSyCarRtu)+"鏉℃暟鎹�");
+    }
+
+    @GetMapping("/queryCar")
+    @ApiOperation("娓呮筏鎵嬪姩娣诲姞杞﹁締鏌ヨ")
+    public AjaxResult queryCar(){
+        String url  = sysConfigService.selectConfigByKey("minioIn")+"/";
+        List<ArdAccessFence> ardAccessFences = ardAccessFenceService.all(url);
+        List<String> carIdList = new ArrayList<>();
+        for (int i = 0; i < ardAccessFences.size(); i++) {
+            String carId = ardAccessFences.get(i).getCarId();
+            carIdList.add(carId);
+        }
+        List<CarVo> list = ardSyCarLockService.queryCar(carIdList);
+        analysis(list);
+        return AjaxResult.success(list);
+    }
+
+    @PostMapping("/addCar")
+    @ApiOperation("娓呮筏鎵嬪姩娣诲姞杞﹁締淇濆瓨")
+    public AjaxResult addCar(@RequestBody AddCarParam addCarParam){
+        List<CarVo> list = ardSyCarLockService.addCarBefore(addCarParam.getCarId());
+        analysis(list);
+        if(list.size()>0){
+            String usersId = SecurityUtils.getUserId();
+            ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
+            String syURL = sysConfigService.getSYURL();
+            Map<String, Object> map = ardSyCarService.getCarGPSBycarId(usersId,addCarParam.getCarId(),syURL,ardSyUser);
+            List list1 = (List) map.get("list");
+            JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
+            String lng = (String) jsonObject.get("lng");
+            String lat = (String) jsonObject.get("lat");
+            return AjaxResult.success(ardAccessFenceService.addCar(list.get(0),addCarParam.getIsAlarm(),lng,lat));
+        }
+        return AjaxResult.success();
+    }
+
+    @DeleteMapping("/delCar")
+    @ApiOperation("娓呮筏鎵嬪姩娣诲姞杞﹁締鍒犻櫎")
+    public AjaxResult delCar(String id){
+        return AjaxResult.success(ardAccessFenceService.delCar(id));
+    }
+
+    @PutMapping("/cleanAlarm")
+    @ApiOperation("娓呯┖鎶ヨ")
+    public AjaxResult updCarAlarm(String id){
+        return AjaxResult.success(ardAccessFenceService.updCarAlarm(id));
+    }
+
+    //鑾峰彇31杞﹁締杞︾墝鍙烽┚椹跺憳鍜岀數璇�
+    public List<CarVo> analysis(List<CarVo> list){
+        String usersId = SecurityUtils.getUserId();
+        ArdSyUser ardSyUser = iArdSyUserService.userById(usersId);
+        String syURL = sysConfigService.getSYURL();
+        for (int i = 0; i < list.size(); i++) {
+            CarVo carVo = list.get(i);
+            String carId = carVo.getCarId();
+            Map<String,Object> map = ardSyCarService.getCarGPSBycarId(usersId,carId,syURL,ardSyUser);
+            List list1 = (List) map.get("list");
+            JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(list1.get(0)));
+            String carPlate = (String) jsonObject.get("carPlate");
+            carVo.setCarPlate(carPlate);
+            String drvName = (String) jsonObject.get("drvName");
+            carVo.setDrvName(drvName);
+            String drvPhone = (String) jsonObject.get("drvPhone");
+            carVo.setDrvPhone(drvPhone);
+        }
+        return list;
     }
 
 

--
Gitblit v1.9.3