From 5b56363dde1a1bcffa302cd3a7d591b77fc70358 Mon Sep 17 00:00:00 2001 From: xiaohuang <1559741705@qq.com> Date: Thu, 20 Jun 2024 21:45:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E8=BD=A6=E4=B8=8A=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/bootstrap.yml | 2 +- .../remote/RemoteBusinessService.java | 2 +- .../RemoteBusinessFallbackFactory.java | 2 - muyu-vehicle/muyu-vehicle-service/pom.xml | 6 -- .../vehicle/datasource/ManyDataSource.java | 34 ------- .../muyu/vehicle/mapper/FaultCodeMapper.java | 10 ++ .../vehicle/mapper/FaultRecordMapper.java | 11 +++ .../rabbitmq/producer/VehicleProducer.java | 95 +++++++++++++++++++ .../vehicle/service/FaultCodeService.java | 10 ++ .../vehicle/service/FaultRecordService.java | 10 ++ .../service/impl/FaultCodeServicelmpl.java | 10 ++ .../service/impl/FaultRecordServicelmpl.java | 10 ++ .../src/main/resources/bootstrap.yml | 2 +- pom.xml | 1 + 14 files changed, 160 insertions(+), 45 deletions(-) create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java diff --git a/muyu-business/muyu-data-service/src/main/resources/bootstrap.yml b/muyu-business/muyu-data-service/src/main/resources/bootstrap.yml index c03f210..cb66026 100644 --- a/muyu-business/muyu-data-service/src/main/resources/bootstrap.yml +++ b/muyu-business/muyu-data-service/src/main/resources/bootstrap.yml @@ -1,6 +1,6 @@ # Tomcat server: - port: 9211 + port: 9212 # Spring spring: rabbitmq: diff --git a/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/RemoteBusinessService.java b/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/RemoteBusinessService.java index 3e54b5a..1c51238 100644 --- a/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/RemoteBusinessService.java +++ b/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/RemoteBusinessService.java @@ -17,6 +17,6 @@ import java.util.List; public interface RemoteBusinessService { - @GetMapping("/entinfo/listAll") + @GetMapping("entinfo/listAll") public List listAll(); } diff --git a/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/factory/RemoteBusinessFallbackFactory.java b/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/factory/RemoteBusinessFallbackFactory.java index 5108036..8cf5fb9 100644 --- a/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/factory/RemoteBusinessFallbackFactory.java +++ b/muyu-common/muyu-common-business/src/main/java/com/muyu/common/business/remote/factory/RemoteBusinessFallbackFactory.java @@ -22,8 +22,6 @@ public class RemoteBusinessFallbackFactory implements FallbackFactory listAll() { return null; diff --git a/muyu-vehicle/muyu-vehicle-service/pom.xml b/muyu-vehicle/muyu-vehicle-service/pom.xml index f8ee882..8db842c 100644 --- a/muyu-vehicle/muyu-vehicle-service/pom.xml +++ b/muyu-vehicle/muyu-vehicle-service/pom.xml @@ -71,12 +71,6 @@ com.muyu muyu-common-datasource - - - com.muyu - muyu-business - 3.6.3 - com.muyu diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/datasource/ManyDataSource.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/datasource/ManyDataSource.java index b380088..bf084a3 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/datasource/ManyDataSource.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/datasource/ManyDataSource.java @@ -45,20 +45,7 @@ public class ManyDataSource { @Autowired private RemoteBusinessService remoteBusinessService; -// @Autowired -// private EntInfoFeign entInfoFeign; - // @PostConstruct -// public void init() { -// new Thread(() -> { -// try { -// Thread.sleep(10000); -// } catch (InterruptedException e) { -// throw new RuntimeException(e); -// } -// -// }).start(); -// } //调用注解 添加队列名称 @RabbitListener(queuesToDeclare = {@Queue(name = "muyu-vehicle-exchange")}) @@ -111,27 +98,6 @@ public class ManyDataSource { }}; List list = remoteBusinessService.listAll(); databaseNameList.addAll(list); - -// List entinfo = redisTemplate.opsForList().range("entinfo", 0, -1); -// entinfo.forEach(string -> { -// Entinfo entInfo = JSON.parseObject(String.valueOf(string), Entinfo.class); -// databaseNameList.add(entInfo); -// }); - -// List entinfos = entInfoFeign.listAll(); -// databaseNameList.addAll(entinfos); - - -// if(SecurityUtils.getLoginUser() == null){ -// return databaseNameList; -// }else{ -// Long storeId = SecurityUtils.getLoginUser().getUserid(); -// SysUser sysUser = remoteUserService.selectByUserId(storeId); -// String s = redisService.getCacheObject(String.valueOf(sysUser.getUserType())); -// EntInfo entInfo = JSON.parseObject(s, EntInfo.class); -// databaseNameList.add(entInfo); -// return databaseNameList; -// } return databaseNameList; } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java new file mode 100644 index 0000000..087f0f9 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java @@ -0,0 +1,10 @@ +package com.muyu.vehicle.mapper; + +/** + * 车辆故障码接口 FaultCodeMapper + * + * @author xiaohuang + * Date 2024/6/20 17:16 + */ +public interface FaultCodeMapper { +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java new file mode 100644 index 0000000..a045346 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java @@ -0,0 +1,11 @@ +package com.muyu.vehicle.mapper; + +/** + * 故障记录接口 FaultRecordMapper + * + * @author xiaohuang + * Date 2024/6/20 17:17 + */ +public interface FaultRecordMapper { + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java new file mode 100644 index 0000000..90c8347 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java @@ -0,0 +1,95 @@ +package com.muyu.vehicle.rabbitmq.producer; + +import com.rabbitmq.client.Channel; +import lombok.extern.log4j.Log4j2; +import org.springframework.amqp.core.Message; +import org.springframework.amqp.rabbit.annotation.Queue; +import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +/** + * VehicleProducer + * + * @author xiaohuang + * Date 2024/6/20 15:56 + */ + +@Component +@Log4j2 +public class VehicleProducer { + + + @Autowired + private RedisTemplate redisTemplate; + + //调用注解,添加队列名称 + @RabbitListener(queuesToDeclare = {@Queue(name = "zhiLian-vehicle-start")}) + public void smsConfigStart(String msg, Message message, Channel channel){ + //获取消息的id + String messageId = message.getMessageProperties().getMessageId(); + + try { + Long count = redisTemplate.opsForSet().add("messageId", messageId); + + if (count==1) { + log.info("开始消费:{}", msg); + + //判断车辆属于哪个企业 + + //选择数据源,切换数据源 + + + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); + log.info("消费成功!数据源为:{}", message); + + } + } catch (IOException e) { + log.info("消费失败"); + + try { + channel.basicReject(message.getMessageProperties().getDeliveryTag(),false); + log.info("回退成功"); + } catch (IOException ex) { + log.info("回退失败"); + } + + throw new RuntimeException(e); + } + + } + + @RabbitListener(queuesToDeclare = {@Queue(name = "zhiLian-vehicle-ent")}) + public void smsConfigEnt(String msg, Message message, Channel channel){ + + //获取消息的id + String messageId = message.getMessageProperties().getMessageId(); + try { + //提那家消费id到redis set集合中, + Long count = redisTemplate.opsForSet().add("messageId", messageId); + + //成功 + if (count == 1 ) { + log.info("开始消费:{}", msg); + + //确认消费 + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); + log.info("消费成功"); + } + } catch (Exception e) { + //删除队列id + log.info("消费失败"); + try { + channel.basicReject(message.getMessageProperties().getDeliveryTag(),false); + log.info("消费失败"); + + }catch (IOException ex){ + log.info("消费异常"); + } + + } + } +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java new file mode 100644 index 0000000..da5e4c6 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java @@ -0,0 +1,10 @@ +package com.muyu.vehicle.service; + +/** + * 车辆故障码接口 FaultCodeService + * + * @author xiaohuang + * Date 2024/6/20 17:12 + */ +public interface FaultCodeService { +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java new file mode 100644 index 0000000..3dd6b59 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java @@ -0,0 +1,10 @@ +package com.muyu.vehicle.service; + +/** + * 故障记录借口哦 FaultRecordService + * + * @author xiaohuang + * Date 2024/6/20 17:12 + */ +public interface FaultRecordService { +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java new file mode 100644 index 0000000..3bcb356 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java @@ -0,0 +1,10 @@ +package com.muyu.vehicle.service.impl; + +/** + * 车辆故障码业务层处理 FaultCodeServicelmpl + * + * @author xiaohuang + * Date 2024/6/20 17:13 + */ +public class FaultCodeServicelmpl { +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java new file mode 100644 index 0000000..3a64217 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java @@ -0,0 +1,10 @@ +package com.muyu.vehicle.service.impl; + +/** + * 故障记录业务层处理 FaultRecordServicelmpl + * + * @author xiaohuang + * Date 2024/6/20 17:15 + */ +public class FaultRecordServicelmpl { +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/resources/bootstrap.yml b/muyu-vehicle/muyu-vehicle-service/src/main/resources/bootstrap.yml index b4cd850..6849887 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/resources/bootstrap.yml +++ b/muyu-vehicle/muyu-vehicle-service/src/main/resources/bootstrap.yml @@ -1,6 +1,6 @@ # Tomcat server: - port: 9212 + port: 9213 # Spring spring: diff --git a/pom.xml b/pom.xml index 8852bff..9928e10 100644 --- a/pom.xml +++ b/pom.xml @@ -225,6 +225,7 @@ muyu-iotdb muyu-vehicle muyu-cloud-datasource + pom