From f22a5485cbe6563447ace9cf7939405f7e06c6a6 Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: 星期一, 13 十一月 2023 10:25:27 +0800
Subject: [PATCH] 车辆RTU

---
 ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java |  149 ++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 140 insertions(+), 9 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java
index ac7e54c..d2ee258 100644
--- a/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarLockServiceImpl.java
@@ -1,15 +1,18 @@
 package com.ruoyi.sy.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.sy.domain.ArdSyCar;
 import com.ruoyi.sy.domain.ArdSyCarLock;
 import com.ruoyi.sy.domain.ArdSyCarRtu;
+import com.ruoyi.sy.mapper.ArdSyCarLockMapper;
 import com.ruoyi.sy.mapper.ArdSyCarMapper;
 import com.ruoyi.sy.mapper.ArdSyCarRtuMapper;
+import com.ruoyi.sy.param.AddRtuParam;
 import com.ruoyi.sy.service.ArdSyCarLockService;
-import com.ruoyi.sy.vo.CarLockVo;
 import com.ruoyi.sy.vo.CarVo;
+import com.ruoyi.sy.vo.RtuVo;
 import com.ruoyi.system.mapper.SysDeptMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -30,6 +33,9 @@
     private SysDeptMapper sysDeptMapper;
     @Autowired
     private ArdSyCarRtuMapper rtuMapper;
+    @Autowired
+    private ArdSyCarLockMapper lockMapper;
+
 
     @Override
     public List<CarVo> car() {
@@ -40,15 +46,25 @@
     }
 
     @Override
-    public int addRtu(String carId) {
+    public List<CarVo> carAddOne(String carId) {
+        QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>();
+        queryWrapper.isNull("reserved_1").or().eq("reserved_1","").or().eq("car_id",carId);
+        List<ArdSyCar> ardSyCars= ardSyCarMapper.selectList(queryWrapper);
+        return carAnalysis(ardSyCars);
+    }
+
+    @Override
+    public int addRtu(AddRtuParam addRtuParam) {
         ArdSyCarRtu ardSyCarRtu = new ArdSyCarRtu();
         ardSyCarRtu.setId(String.valueOf(UUID.randomUUID()));
-        ardSyCarRtu.setCarId(carId);
-        ardSyCarRtu.setTopicPublish("/p"+carId+"/");
-        ardSyCarRtu.setTopicSubscribe("/p"+carId+"/set/");
+        ardSyCarRtu.setCarId(addRtuParam.getCarId());
+        ardSyCarRtu.setTopicPublish("/p"+addRtuParam.getCarId()+"/");
+        ardSyCarRtu.setTopicSubscribe("/p"+addRtuParam.getCarId()+"/set/");
+        ardSyCarRtu.setInstallType(addRtuParam.getInstallType());
+        ardSyCarRtu.setUnloadType(addRtuParam.getUnloadType());
         rtuMapper.insert(ardSyCarRtu);
         QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("car_id",carId);
+        queryWrapper.eq("car_id",addRtuParam.getCarId());
         ArdSyCar ardSyCar = ardSyCarMapper.selectOne(queryWrapper);
         ardSyCar.setReserved1(ardSyCarRtu.getId());
         return ardSyCarMapper.updateById(ardSyCar);
@@ -65,6 +81,9 @@
     @Override
     public int delCar(String id) {
         rtuMapper.deleteById(id);
+        QueryWrapper<ArdSyCarLock> queryWrapper1 = new QueryWrapper<>();
+        queryWrapper1.eq("rtu_id",id);
+        lockMapper.delete(queryWrapper1);
         QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("reserved_1",id);
         ArdSyCar ardSyCar = ardSyCarMapper.selectOne(queryWrapper);
@@ -73,15 +92,126 @@
     }
 
     @Override
-    public List<CarLockVo> carLock(String carId) {
-        return null;
+    public CarVo carOne(String carId) {
+        CarVo carVo = new CarVo();
+        QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("car_id",carId);
+        ArdSyCar ardSyCar= ardSyCarMapper.selectOne(queryWrapper);
+        carVo.setCarId(ardSyCar.getCarId());
+        carVo.setCarPicture(ardSyCar.getCarPicture());
+        carVo.setCarType(ardSyCar.getCarType());
+        carVo.setDeptId(ardSyCar.getDeptId());
+        SysDept sysDept = sysDeptMapper.selectById(ardSyCar.getDeptId());
+        carVo.setDeptName(sysDept.getDeptName());
+        carVo.setRtu(ardSyCar.getReserved1());
+        return carVo;
+    }
+
+    @Override
+    public List<ArdSyCarLock> carLock(String rtu) {
+        List<ArdSyCarLock> locks = new ArrayList<>();
+        try {
+            QueryWrapper<ArdSyCarLock> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("rtu_id",rtu);
+            locks = lockMapper.selectList(queryWrapper);
+        }catch (Exception e){
+
+        }
+        return locks;
     }
 
     @Override
     public int addUpdLock(List<ArdSyCarLock> ardSyCarLock) {
-        return 0;
+        int num = 0;
+        if(ardSyCarLock.size()>0){
+            String rtu = ardSyCarLock.get(0).getRtuId();
+            QueryWrapper<ArdSyCarLock> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("rtu_id",rtu);
+            lockMapper.delete(queryWrapper);
+            for (int i = 0; i < ardSyCarLock.size(); i++) {
+                ArdSyCarLock lock = ardSyCarLock.get(i);
+                if(lock.getId()==null){
+                    lock.setId(String.valueOf(UUID.randomUUID()));
+                }
+                num += lockMapper.insert(lock);
+            }
+        }
+        return num;
     }
 
+    @Override
+    public RtuVo updRtu(String carId) {
+        QueryWrapper<ArdSyCarRtu> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("car_id",carId);
+        ArdSyCarRtu ardSyCarRtu = rtuMapper.selectOne(queryWrapper);
+        RtuVo rtuVo = new RtuVo();
+        QueryWrapper<ArdSyCar> queryWrapper1 = new QueryWrapper<>();
+        queryWrapper1.eq("car_id",carId);
+        ArdSyCar ardSyCar= ardSyCarMapper.selectOne(queryWrapper1);
+        rtuVo.setCarId(ardSyCar.getCarId());
+        rtuVo.setCarPicture(ardSyCar.getCarPicture());
+        rtuVo.setCarType(ardSyCar.getCarType());
+        rtuVo.setDeptId(ardSyCar.getDeptId());
+        SysDept sysDept = sysDeptMapper.selectById(ardSyCar.getDeptId());
+        rtuVo.setDeptName(sysDept.getDeptName());
+        rtuVo.setRtu(ardSyCar.getReserved1());
+        rtuVo.setTopicPublish(ardSyCarRtu.getTopicPublish());
+        rtuVo.setTopicSubscribe(ardSyCarRtu.getTopicSubscribe());
+        return rtuVo;
+    }
+
+    @Override
+    public int updRtuCar(ArdSyCarRtu ardSyCarRtu) {
+        rtuMapper.updateById(ardSyCarRtu);
+        QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("car_id",ardSyCarRtu.getCarId());
+        ArdSyCar ardSyCar = ardSyCarMapper.selectOne(queryWrapper);
+        ardSyCar.setReserved1(ardSyCarRtu.getId());
+        return ardSyCarMapper.updateById(ardSyCar);
+    }
+
+    @Override
+    public List<CarVo> queryCar(List<String> list) {
+        QueryWrapper<ArdSyCar> queryWrapper = new QueryWrapper<>();
+        queryWrapper.ne("reserved_1","").notIn("car_id",list);
+        List<ArdSyCar> ardSyCars = ardSyCarMapper.selectList(queryWrapper);
+        return carAnalysis(ardSyCars);
+    }
+
+    @Override
+    public List<CarVo> addCarBefore(String id) {
+        QueryWrapper<ArdSyCar> ardSyCarQueryWrapper = new QueryWrapper<>();
+        ardSyCarQueryWrapper.eq("car_id",id);
+        List<ArdSyCar> carList = ardSyCarMapper.selectList(ardSyCarQueryWrapper);
+        return carAnalysis(carList);
+    }
+
+    @Override
+    public List<ArdSyCarLock> data(String msg) {
+        JSONObject jsonObject = JSONObject.parseObject(msg);
+        List<ArdSyCarLock> lockList = new ArrayList<>();
+        ArdSyCarLock ardSyCarLock1 = new ArdSyCarLock();
+        ardSyCarLock1.setRelay("A01");
+        ardSyCarLock1.setRelayInfo(String.valueOf(jsonObject.getInteger("A01")));
+        ardSyCarLock1.setCurrent("C01");
+        ardSyCarLock1.setCurrentInfo(String.valueOf(jsonObject.getFloat("C01")));
+        lockList.add(ardSyCarLock1);
+        ArdSyCarLock ardSyCarLock2 = new ArdSyCarLock();
+        ardSyCarLock2.setRelay("A02");
+        ardSyCarLock2.setRelayInfo(String.valueOf(jsonObject.getInteger("A02")));
+        ardSyCarLock2.setCurrent("C02");
+        ardSyCarLock2.setCurrentInfo(String.valueOf(jsonObject.getFloat("C02")));
+        lockList.add(ardSyCarLock2);
+        return lockList;
+    }
+
+    @Override
+    public int updLock(ArdSyCarLock ardSyCarLock) {
+        return lockMapper.updateById(ardSyCarLock);
+    }
+
+
+    //杞﹁締鍒楄〃灏佽
     public List<CarVo> carAnalysis(List<ArdSyCar> ardSyCars){
         List<CarVo> list = new ArrayList<>();
         for (int i = 0; i < ardSyCars.size(); i++) {
@@ -94,6 +224,7 @@
             SysDept sysDept = sysDeptMapper.selectById(ardSyCar.getDeptId());
             carVo.setDeptName(sysDept.getDeptName());
             carVo.setRtu(ardSyCar.getReserved1());
+            carVo.setCarModel(ardSyCar.getCarModel());
             list.add(carVo);
         }
         return list;

--
Gitblit v1.9.3