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