ard-work/src/main/java/com/ruoyi/sy/service/ArdSyCarRtuService.java
@@ -17,4 +17,6 @@ String openLock(ArdSyCarRtu ardSyCarRtu); ArdSyCarRtu subscribeByCarId(String subscribe); String url(String key); } ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdSyCarRtuServiceImpl.java
@@ -2,14 +2,17 @@ import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ruoyi.common.core.domain.entity.SysConfig; import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.sy.domain.ArdSyCarRtu; import com.ruoyi.sy.mapper.ArdSyCarRtuMapper; import com.ruoyi.sy.service.ArdSyCarRtuService; import com.ruoyi.system.mapper.SysConfigMapper; import com.ruoyi.utils.mqtt.MqttConsumer; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.*; /** @@ -20,6 +23,8 @@ @Autowired private ArdSyCarRtuMapper ardSyCarRtuMapper; @Resource private SysConfigMapper configMapper; @Override public String[] allCarTopic() { @@ -60,4 +65,16 @@ return ardSyCarRtuMapper.selectOne(queryWrapper); } @Override public String url(String key) { QueryWrapper<SysConfig> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("config_key",key); SysConfig sysConfig = configMapper.selectOne(queryWrapper); if(sysConfig!=null){ return sysConfig.getConfigValue(); }else { return "配置表无地址数据"; } } } ard-work/src/main/java/com/ruoyi/utils/mqtt/MqttOnce.java
@@ -1,5 +1,6 @@ package com.ruoyi.utils.mqtt; import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.sy.domain.ArdSyCarRtu; import com.ruoyi.sy.mapper.ArdSyCarRtuMapper; import com.ruoyi.sy.service.ArdSyCarRtuService; @@ -25,9 +26,6 @@ @Autowired private ArdSyCarRtuService ardSyCarRtuService; @Autowired private ISysConfigService sysConfigService; @PostConstruct public void init() { @@ -63,8 +61,9 @@ } public MqttClient getMqttClient(String carId) throws MqttException { ArdSyCarRtuService carRtuService = SpringUtils.getBean(ArdSyCarRtuService.class); //获取电磁锁地址 String mqttUrl = sysConfigService.selectConfigByKey("ElectromagneticLockUrl"); String mqttUrl = carRtuService.url("ElectromagneticLockUrl"); MqttClient client = new MqttClient(mqttUrl,carId); //log.debug("--创建"+carId+"号车辆电子锁mqtt客户端"); return client;