From 92dba8e44a911c92832ecc22e4c98968409d5c68 Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: 星期二, 14 十一月 2023 15:01:37 +0800
Subject: [PATCH] 远程封印

---
 ard-work/src/main/java/com/ruoyi/sy/controller/ArdSyCarLockController.java |  218 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 197 insertions(+), 21 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 0dea38e..a202a1b 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,54 +1,230 @@
 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.common.utils.uuid.UUID;
-import com.ruoyi.oil.domain.OilWall;
-import com.ruoyi.oil.param.OilWallParam;
+import com.ruoyi.common.utils.spring.SpringUtils;
+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.param.AddRtuParam;
+import com.ruoyi.sy.param.LockTypeParam;
+import com.ruoyi.sy.param.RtuTypeParam;
+import com.ruoyi.sy.service.*;
+import com.ruoyi.sy.service.impl.ArdSyCarRtuServiceImpl;
+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.mqtt.MqttConsumer;
 import com.ruoyi.utils.result.Results;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import org.eclipse.paho.client.mqttv3.MqttException;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.Date;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 @RestController
 @RequestMapping("syLock")
 @Api(tags = "杞﹁締閿佺鐞�")
 public class ArdSyCarLockController {
 
+    @Autowired
+    private IArdSyUserService iArdSyUserService;
+    @Autowired
+    private ISysConfigService sysConfigService;
+    @Autowired
+    private IArdSyCarService ardSyCarService;
+    @Autowired
+    private ArdSyCarLockService ardSyCarLockService;
+    @Autowired
+    private ArdAccessFenceService ardAccessFenceService;
+    @Autowired
+    private ArdSyCarRtuService ardSyCarRtuService;
+
     @GetMapping("/car")
     @ApiOperation("鏌ヨ鎵�鏈夋湭鎸傞攣鐨勮溅杈�")
-    public Results car(){
-        return Results.succeed();
+    public AjaxResult car(){
+        List<CarVo> list = ardSyCarLockService.car();
+        analysis(list);
+        return AjaxResult.success(list);
+    }
+
+    @GetMapping("/carAddOne")
+    @ApiOperation("鏌ヨ鎵�鏈夋湭鎸傞攣鐨勮溅杈嗗姞鏈溅杈嗕俊鎭�")
+    public AjaxResult carAddOne(String carId){
+        List<CarVo> list = ardSyCarLockService.carAddOne(carId);
+        analysis(list);
+        return AjaxResult.success(list);
     }
 
     @PostMapping("/add")
     @ApiOperation("娣诲姞rtu")
-    public Results add(){
-        return Results.succeed("鎴愬姛娣诲姞"+1+"鏉℃暟鎹�");
+    public AjaxResult add(@RequestBody AddRtuParam addRtuParam){
+        return AjaxResult.success("鎴愬姛娣诲姞"+ardSyCarLockService.addRtu(addRtuParam)+"鏉℃暟鎹紝璁㈤槄杞﹁締"+addRtuParam.getCarId()+"鎴愬姛");
     }
 
     @DeleteMapping("/del")
     @ApiOperation("鍒犻櫎rtu")
-    public Results del(String id){
-        return Results.succeed("鎴愬姛鍒犻櫎"+1+"鏉℃暟鎹�");
-    }
-
-    @PutMapping("/upd")
-    @ApiOperation("淇敼rtu")
-    public Results upd(){
-        return Results.succeed("鎴愬姛淇敼"+1+"鏉℃暟鎹�");
+    public AjaxResult del(String id){
+        return AjaxResult.success("鎴愬姛鍒犻櫎"+ardSyCarLockService.delCar(id)+"鏉℃暟鎹�");
     }
 
     @GetMapping("/one")
-    @ApiOperation("鏌ヨ涓�鏉tu")
-    public Results one(String id){
-        return Results.succeed();
+    @ApiOperation("鏌ヨ涓�鏉tu鍙婇攣")
+    public AjaxResult one(String 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 AjaxResult.success(carLockVo);
     }
 
     @GetMapping("/query")
-    @ApiOperation("鏌ヨ鎵�鏈塺tu")
+    @ApiOperation("鏌ヨ鎵�鏈塺tu鎸傝浇鐨勮溅杈�")
     public Results query(){
-        return Results.succeed();
+        List<CarVo> list = ardSyCarLockService.carList();
+        analysis(list);
+        return Results.succeed(list);
     }
+
+    @PostMapping("/addLock")
+    @ApiOperation("娣诲姞淇敼閿�")
+    public Results addLock(@RequestBody List<ArdSyCarLock> 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));
+    }
+
+    @GetMapping("/onOff")
+    @ApiOperation("杩滅▼寮�閿�")
+    public AjaxResult onOff(@RequestBody LockTypeParam lockTypeParam) {
+        return AjaxResult.success(ardSyCarLockService.onOff(lockTypeParam));
+    }
+
+    @GetMapping("/seal")
+    @ApiOperation("杩滅▼灏佸嵃")
+    public AjaxResult seal(@RequestBody RtuTypeParam rtuTypeParam)  {
+        return AjaxResult.success(ardSyCarLockService.seal(rtuTypeParam));
+    }
+
+    @GetMapping("/lockIng")
+    @ApiOperation("瀹炴椂閿佺姸鎬�")
+    public AjaxResult lockIng(String carId)  {
+        return AjaxResult.success(ardSyCarLockService.lockIng(carId));
+    }
+
+
+    //鑾峰彇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