Merge remote-tracking branch 'origin/dev.yang' into dev

# Conflicts:
#	cloud-auth/src/main/resources/bootstrap.yml
#	cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml
dev.carData
Yueng 2024-10-08 01:45:18 +08:00
commit 54f0aee961
65 changed files with 1187 additions and 70 deletions

View File

@ -5,8 +5,8 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 159.75.188.178:8848
user-name: user-name: nacos
password: password: nacos
namespace: eight namespace: eight
# Spring # Spring
spring: spring:

View File

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.muyu</groupId>
<artifactId>cloud-common</artifactId>
<version>3.6.3</version>
</parent>
<artifactId>cloud-common-cache</artifactId>
<description>
cloud-modules-cache 缓存基准
</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-common-redis</artifactId>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,33 @@
package com.muyu.common.cache;
import com.muyu.common.redis.service.RedisService;
import org.springframework.beans.factory.annotation.Autowired;
/**
*
* @Authoryang
* @Packagecom.muyu.common
* @Projectcloud-server-8
* @nameCacheAbsBacis
* @Date2024/9/30 11:19
*/
public abstract class CacheAbsBasic<K,V> implements CacheBasic<K,V>{
@Autowired
private RedisService redisService;
@Override
public void put(K key, V value) {
redisService.setCacheObject(encode(key),value);
}
@Override
public V get(K key) {
return redisService.getCacheObject(encode(key));
}
@Override
public void remove(K key) {
redisService.deleteObject(encode(key));
}
}

View File

@ -0,0 +1,18 @@
package com.muyu.common.cache;
/**
*
* @Authoryang
* @Packagecom.muyu.common.cache
* @Projectcloud-server-8
* @nameCacheBasic
* @Date2024/9/30 11:41
*/
public interface CacheBasic<K,V> extends PrimaryKeyBasic<K>{
void put(K key,V value);
V get(K key);
void remove(K key);
}

View File

@ -0,0 +1,34 @@
package com.muyu.common.cache;
/**
*
* @Authoryang
* @Packagecom.muyu.common.cache
* @Projectcloud-server-8
* @namePrimaryKeyBasic
* @Date2024/9/30 11:35
*/
public interface PrimaryKeyBasic <K>{
/**
* key
* @return
*/
public String keyPre();
/**
*
* @param key
* @return
*/
public default String encode(K key){
return key.toString();
}
/**
* key
* @param key Key
* @return Key
*/
public K decode(String key);
}

View File

@ -22,7 +22,6 @@
<module>cloud-common-rabbit</module> <module>cloud-common-rabbit</module>
<module>cloud-common-saas</module> <module>cloud-common-saas</module>
<module>cloud-common-wechat</module> <module>cloud-common-wechat</module>
<module>cloud-common-kafka</module>
</modules> </modules>
<artifactId>cloud-common</artifactId> <artifactId>cloud-common</artifactId>

View File

@ -4,7 +4,7 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 127.0.0.1:8848
user-name: nacos user-name: nacos
password: nacos password: nacos
namespace: eight namespace: eight

View File

@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.muyu</groupId>
<artifactId>cloud-server</artifactId>
<version>3.6.3</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<artifactId>cloud-Saas-Service</artifactId>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- SpringCloud Alibaba Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!-- SpringCloud Alibaba Sentinel -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
<!-- SpringBoot Actuator -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- Mysql Connector -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<!-- MuYu Common DataSource -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-common-datasource</artifactId>
</dependency>
<!-- MuYu Common DataScope -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-common-datascope</artifactId>
</dependency>
<!-- MuYu Common Log -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-common-api-doc</artifactId>
</dependency>
<!-- 接口模块 -->
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-electronic-common</artifactId>
<version>3.6.3</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>6.0.0</version>
</dependency>
</dependencies>
<build>
<finalName>clod-Saas-Service</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- &lt;!&ndash; 加入maven deploy插件当在deploy时忽略些model&ndash;&gt; -->
<!-- <plugin> -->
<!-- <groupId>org.apache.maven.plugins</groupId> -->
<!-- <artifactId>maven-deploy-plugin</artifactId> -->
<!-- <version>3.1.1</version> -->
<!-- <configuration> -->
<!-- <skip>true</skip> -->
<!-- </configuration> -->
<!-- </plugin> -->
</plugins>
</build>
</project>

View File

@ -0,0 +1,20 @@
package com.muyu;
import com.muyu.common.security.annotation.EnableMyFeignClients;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @Author
* @Packagecom.muyu.server.integration
* @Projectcloud-integration
* @nameIntegration
* @Date2024/9/17 9:56
*/
@EnableMyFeignClients
@SpringBootApplication
public class SaasServiceApplication {
public static void main(String[] args) {
SpringApplication.run(SaasServiceApplication.class, args);
}
}

View File

@ -0,0 +1,2 @@
Spring Boot Version: ${spring-boot.version}
Spring Application Name: ${spring.application.name}

View File

@ -0,0 +1,47 @@
# Tomcat
server:
port: 9121
# nacos线上地址
nacos:
addr: 127.0.0.1:8848
user-name: nacos
password: nacos
namespace: eight
# Spring
spring:
application:
# 应用名称
name: cloud-electronic
profiles:
# 环境配置
active: dev
cloud:
nacos:
discovery:
# 服务注册地址
server-addr: ${nacos.addr}
# nacos用户名
username: ${nacos.user-name}
# nacos密码
password: ${nacos.password}
# 命名空间
namespace: ${nacos.namespace}
config:
# 服务注册地址
server-addr: ${nacos.addr}
# nacos用户名
username: ${nacos.user-name}
# nacos密码
password: ${nacos.password}
# 命名空间
namespace: ${nacos.namespace}
# 配置文件格式
file-extension: yml
# 共享配置
shared-configs:
# 系统共享配置
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
# 系统环境Config共享配置
- application-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

View File

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 日志存放路径 -->
<property name="log.path" value="logs/cloud-electronic"/>
<!-- 日志输出格式 -->
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
</appender>
<!-- 系统日志输出 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/info.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>INFO</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/error.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>ERROR</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 系统模块日志级别控制 -->
<logger name="com.muyu" level="info"/>
<!-- Spring日志级别控制 -->
<logger name="org.springframework" level="warn"/>
<root level="info">
<appender-ref ref="console"/>
</root>
<!--系统操作日志-->
<root level="info">
<appender-ref ref="file_info"/>
<appender-ref ref="file_error"/>
</root>
</configuration>

View File

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 日志存放路径 -->
<property name="log.path" value="logs/cloud-electronic"/>
<!-- 日志输出格式 -->
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
<property name="log.sky.pattern" value="%d{HH:mm:ss.SSS} %yellow([%tid]) [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${log.sky.pattern}</pattern>
</encoder>
</appender>
<!-- 系统日志输出 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/info.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>INFO</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/error.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>ERROR</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 使用gRpc将日志发送到skywalking服务端 -->
<appender name="GRPC_LOG" class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.log.GRPCLogClientAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
<Pattern>${log.sky.pattern}</Pattern>
</layout>
</encoder>
</appender>
<!-- 系统模块日志级别控制 -->
<logger name="com.muyu" level="info"/>
<!-- Spring日志级别控制 -->
<logger name="org.springframework" level="warn"/>
<root level="info">
<appender-ref ref="GRPC_LOG"/>
<appender-ref ref="console"/>
</root>
<!--系统操作日志-->
<root level="info">
<appender-ref ref="file_info"/>
<appender-ref ref="file_error"/>
</root>
</configuration>

View File

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!-- 日志存放路径 -->
<property name="log.path" value="logs/cloud-electronic"/>
<!-- 日志输出格式 -->
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
<property name="log.sky.pattern" value="%d{HH:mm:ss.SSS} %yellow([%tid]) [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
<!-- 控制台输出 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${log.sky.pattern}</pattern>
</encoder>
</appender>
<!-- 系统日志输出 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/info.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>INFO</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/error.log</file>
<!-- 循环政策:基于时间创建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的历史 60天 -->
<maxHistory>60</maxHistory>
</rollingPolicy>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 过滤的级别 -->
<level>ERROR</level>
<!-- 匹配时的操作:接收(记录) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配时的操作:拒绝(不记录) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- 使用gRpc将日志发送到skywalking服务端 -->
<appender name="GRPC_LOG" class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.log.GRPCLogClientAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout">
<Pattern>${log.sky.pattern}</Pattern>
</layout>
</encoder>
</appender>
<!-- 系统模块日志级别控制 -->
<logger name="com.muyu" level="info"/>
<!-- Spring日志级别控制 -->
<logger name="org.springframework" level="warn"/>
<root level="info">
<appender-ref ref="GRPC_LOG"/>
<appender-ref ref="console"/>
</root>
<!--系统操作日志-->
<root level="info">
<appender-ref ref="file_info"/>
<appender-ref ref="file_error"/>
</root>
</configuration>

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.muyu.server.mapper.CarMiddleGroupMapper">
<select id="selectByIdList" resultType="com.muyu.domain.CarMiddleGroup">
select
*
from
car_middle_group
where
car_fence_id = #{carFenceId};
</select>
</mapper>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.muyu.server.mapper.CarMiddleMapper">
<delete id="carDel">
delete
from car_middle
where fence_group_id = #{id} and car_information_id = #{carId};
</delete>
</mapper>

View File

@ -4,7 +4,7 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 127.0.0.1:8848
user-name: nacos user-name: nacos
password: nacos password: nacos
namespace: eight namespace: eight

View File

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.muyu</groupId>
<artifactId>cloud-modules-enterprise</artifactId>
<version>3.6.3</version>
</parent>
<artifactId>cloud-modules-enterprise-cache</artifactId>
<description>
cloud-modules-enterprise-cache 缓存模块
</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-common-cache</artifactId>
<version>3.6.3</version>
</dependency>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-modules-enterprise-common</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-auth</artifactId>
<version>3.6.3</version>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,27 @@
package com.muyu.enterprise.cache.car;
import com.muyu.common.cache.CacheAbsBasic;
import com.muyu.domain.CarInformation;
import com.muyu.domain.req.CarInformationAddReq;
import java.util.List;
/**
*
* @Authoryang
* @Packagecom.muyu.cache
* @Projectcloud-server-8
* @nameVehicleCacheService
* @Date2024/9/30 11:50
*/
public class VehicleCacheCarInformationAddService extends CacheAbsBasic<String, CarInformationAddReq> {
@Override
public String keyPre() {
return "CarInformationAddReq:info:";
}
@Override
public String decode(String key) {
return key.replace("vehicle:info:","");
}
}

View File

@ -0,0 +1,27 @@
package com.muyu.enterprise.cache.car;
import com.muyu.common.cache.CacheAbsBasic;
import com.muyu.domain.req.CarInformationAddReq;
import com.muyu.domain.resp.CarInformationResp;
import java.util.List;
/**
*
* @Authoryang
* @Packagecom.muyu.cache
* @Projectcloud-server-8
* @nameVehicleCacheService
* @Date2024/9/30 11:50
*/
public class VehicleCacheCarInformationFenceRespService extends CacheAbsBasic<String, List<CarInformationResp>> {
@Override
public String keyPre() {
return "CarInformationFenceResp:info:";
}
@Override
public String decode(String key) {
return key.replace("vehicle:info:","");
}
}

View File

@ -0,0 +1,28 @@
package com.muyu.enterprise.cache.car;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.muyu.common.cache.CacheAbsBasic;
import com.muyu.domain.CarInformation;
import com.muyu.domain.resp.CarInformationResp;
import java.util.List;
/**
*
* @Authoryang
* @Packagecom.muyu.cache
* @Projectcloud-server-8
* @nameVehicleCacheService
* @Date2024/9/30 11:50
*/
public class VehicleCacheCarInformationRespService extends CacheAbsBasic<String, Page<CarInformationResp>> {
@Override
public String keyPre() {
return "CarInformationResp:info:";
}
@Override
public String decode(String key) {
return key.replace("vehicle:info:","");
}
}

View File

@ -0,0 +1,27 @@
package com.muyu.enterprise.cache.car;
import com.muyu.common.cache.CacheAbsBasic;
import com.muyu.domain.CarInformation;
import com.muyu.domain.resp.CarFenceGroupResp;
import java.util.List;
/**
*
* @Authoryang
* @Packagecom.muyu.cache
* @Projectcloud-server-8
* @nameVehicleCacheService
* @Date2024/9/30 11:50
*/
public class VehicleCacheCarInformationService extends CacheAbsBasic<String, List<CarInformation>> {
@Override
public String keyPre() {
return "CarInformation:info:";
}
@Override
public String decode(String key) {
return key.replace("vehicle:info:","");
}
}

View File

@ -0,0 +1,25 @@
package com.muyu.enterprise.cache.car;
import com.muyu.common.cache.CacheAbsBasic;
import com.muyu.domain.req.CarInformationAddReq;
import com.muyu.domain.req.CarInformationUpdReq;
/**
*
* @Authoryang
* @Packagecom.muyu.cache
* @Projectcloud-server-8
* @nameVehicleCacheService
* @Date2024/9/30 11:50
*/
public class VehicleCacheCarInformationUpdService extends CacheAbsBasic<String, CarInformationUpdReq> {
@Override
public String keyPre() {
return "CarInformationUpdReq:info:";
}
@Override
public String decode(String key) {
return key.replace("vehicle:info:","");
}
}

View File

@ -0,0 +1,26 @@
package com.muyu.enterprise.cache.faultCode;
import com.muyu.common.cache.CacheAbsBasic;
import com.muyu.domain.FaultCodeCache;
import com.muyu.domain.req.CarInformationAddReq;
import com.muyu.domain.req.FaultCodeAddReq;
/**
*
* @Authoryang
* @Packagecom.muyu.cache
* @Projectcloud-server-8
* @nameVehicleCacheService
* @Date2024/9/30 11:50
*/
public class VehicleCacheFaultCodeAddService extends CacheAbsBasic<String, FaultCodeCache> {
@Override
public String keyPre() {
return "FaultCodeCache:info:";
}
@Override
public String decode(String key) {
return key.replace("vehicle:info:","");
}
}

View File

@ -0,0 +1,6 @@
com.muyu.enterprise.cache.car.VehicleCacheCarInformationService
com.muyu.enterprise.cache.car.VehicleCacheCarInformationRespService
com.muyu.enterprise.cache.car.VehicleCacheCarInformationAddService
com.muyu.enterprise.cache.car.VehicleCacheCarInformationUpdService
com.muyu.enterprise.cache.car.VehicleCacheCarInformationFenceRespService
com.muyu.enterprise.cache.faultCode.VehicleCacheFaultCodeAddService

View File

@ -15,8 +15,8 @@
cloud-modules-enterprise-common 企业业务common cloud-modules-enterprise-common 企业业务common
</description> </description>
<properties> <properties>
<maven.compiler.source>21</maven.compiler.source> <maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target> <maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> </properties>
<dependencies> <dependencies>

View File

@ -71,8 +71,8 @@ public class CarInformation {
/** /**
* ID * ID
*/ */
@Schema(title = "车辆类型外键ID", type = "Integer") // @Schema(title = "车辆类型外键ID", type = "Long")
private Integer carInformationType; private Long carInformationType;
/** /**
* *
*/ */
@ -107,6 +107,13 @@ public class CarInformation {
*/ */
private Integer carInformationState; private Integer carInformationState;
/**
* id
*/
private Integer carStrategyId;
public static CarInformation carInformationBuilder(CarInformation carInformation) { public static CarInformation carInformationBuilder(CarInformation carInformation) {
return CarInformation.builder() return CarInformation.builder()
.carInformationId(carInformation.getCarInformationId()) .carInformationId(carInformation.getCarInformationId())
@ -147,4 +154,23 @@ public class CarInformation {
.carInformationMotorModel(carInformation.getCarInformationMotorModel()) .carInformationMotorModel(carInformation.getCarInformationMotorModel())
.build(); .build();
} }
public static CarInformation carInformationListBuilder(CarInformation carInformation) {
return CarInformation.builder()
.carInformationId(carInformation.getCarInformationId())
.carInformationVIN(carInformation.getCarInformationVIN())
.carInformationLicensePlate(carInformation.getCarInformationLicensePlate())
.carInformationBrand(carInformation.getCarInformationBrand())
.carInformationColor(carInformation.getCarInformationColor())
.carInformationDriver(carInformation.getCarInformationDriver())
.carInformationMotorManufacturer(carInformation.getCarInformationMotorManufacturer())
.carInformationMotorModel(carInformation.getCarInformationMotorModel())
.carInformationBatteryManufacturer(carInformation.getCarInformationBatteryManufacturer())
.carInformationBatteryModel(carInformation.getCarInformationBatteryModel())
.carInformationFence(carInformation.getCarInformationFence())
.carInformationType(carInformation.getCarInformationType())
.carInformationMotorModel(carInformation.getCarInformationMotorModel())
.carStrategyId(carInformation.getCarStrategyId())
.build();
}
} }

View File

@ -85,7 +85,7 @@ public class FaultCode {
public static FaultCode addfaultcode(FaultCodeAddReq faultCodeAddReq){ public static FaultCode addfaultcode(FaultCodeAddReq faultCodeAddReq){
return FaultCode.builder() return FaultCode.builder()
.faultcodeId(0) .faultcodeId(faultCodeAddReq.getFaultcodeId())
.messageTypeId(faultCodeAddReq.getMessageTypeId()) .messageTypeId(faultCodeAddReq.getMessageTypeId())
.faultcodeNumber(faultCodeAddReq.getFaultcodeNumber()) .faultcodeNumber(faultCodeAddReq.getFaultcodeNumber())
.faultGroup(faultCodeAddReq.getFaultGroup()) .faultGroup(faultCodeAddReq.getFaultGroup())

View File

@ -0,0 +1,46 @@
package com.muyu.domain;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.util.List;
/**
*
* @Authoryang
* @Packagecom.muyu.domain
* @Projectcloud-server-8
* @nameFaultCodeCache
* @Date2024/10/6 16:07
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
@Tag(name = "故障码,电子围栏,车辆,报文")
public class FaultCodeCache {
/**
*
*/
private List<CarFence> carFences;
/**
*
*/
private WarnStrategy warnStrategies;
/**
*
*/
public List<CarInformation> carInformation;
/**
*
*/
private List<FaultCode> faultCode;
}

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.domain.req.FaultConditionAddReq; import com.muyu.domain.req.FaultConditionAddReq;
import com.muyu.domain.req.FaultConditionUpdReq; import com.muyu.domain.req.FaultConditionUpdReq;
import com.muyu.domain.resp.FaultConditionTotalListResp;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
@ -39,7 +40,7 @@ public class FaultCondition {
/** /**
* Id * Id
*/ */
private long carTypeId; private Long carTypeId;
/** /**
*Id *Id
*/ */
@ -89,7 +90,11 @@ public class FaultCondition {
} }
public static FaultCondition faultConditionBuilder(FaultCondition faultCondition) {
return FaultCondition.builder()
.carconditionId(faultCondition.getCarconditionId())
.carTypeId(faultCondition.getCarTypeId())
.messageTypeId(faultCondition.getMessageTypeId())
.build();
}
} }

View File

@ -47,16 +47,22 @@ public class FaultLabel {
private String messageTypeBelongs; private String messageTypeBelongs;
public static FaultLabel addfaultLabel(FaultCodeAddReq faultCodeAddReq){ public static FaultLabel addfaultLabel(FaultLabel faultLabel){
return FaultLabel.builder() return FaultLabel.builder()
.messageTypeId(0) .messageTypeId(faultLabel.getMessageTypeId())
.messageTypeId(faultCodeAddReq.getMessageTypeId()) .messageTypeCode(faultLabel.getMessageTypeCode())
.messageTypeCode(faultCodeAddReq.getMessageTypeCode()) .messageTypeName(faultLabel.getMessageTypeName())
.messageTypeName(faultCodeAddReq.getMessageTypeName()) .messageTypeBelongs(faultLabel.getMessageTypeBelongs())
.messageTypeBelongs(faultCodeAddReq.getMessageTypeBelongs())
.build(); .build();
} }
public static FaultLabel selectFaultLabel(FaultLabel faultLabel) {
return FaultLabel.builder()
.messageTypeId(faultLabel.messageTypeId)
.messageTypeCode(faultLabel.messageTypeCode)
.messageTypeName(faultLabel.messageTypeName)
.messageTypeBelongs(faultLabel.messageTypeBelongs)
.build();
}
} }

View File

@ -78,7 +78,7 @@ public class CarInformationAddReq {
/** /**
* ID * ID
*/ */
private Integer carInformationType; private Long carInformationType;

View File

@ -74,7 +74,7 @@ public class CarInformationUpdReq {
* ID * ID
*/ */
@Schema(title = "车辆类型外键ID", type = "Integer") @Schema(title = "车辆类型外键ID", type = "Integer")
private Integer carInformationType; private Long carInformationType;
/** /**
* (0 1 ) * (0 1 )

View File

@ -1,5 +1,7 @@
package com.muyu.domain.req; package com.muyu.domain.req;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
@ -21,6 +23,10 @@ import lombok.experimental.SuperBuilder;
@Builder @Builder
public class FaultCodeAddReq { public class FaultCodeAddReq {
/**
*Id
*/
private long faultcodeId;
/** /**
*Id *Id
*/ */

View File

@ -31,7 +31,7 @@ public class FaultConditionListResp {
* Id * Id
*/ */
private long carTypeId; private long carTypeId;
/** /**
*Id *Id
*/ */
private long messageTypeId; private long messageTypeId;

View File

@ -14,8 +14,8 @@
cloud-modules-enterprise-server 企业业务服务 cloud-modules-enterprise-server 企业业务服务
</description> </description>
<properties> <properties>
<maven.compiler.source>21</maven.compiler.source> <maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target> <maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> </properties>
<dependencies> <dependencies>
@ -44,10 +44,10 @@
<groupId>com.alibaba.cloud</groupId> <groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency> </dependency>
<!--apache.kafka<-->
<dependency> <dependency>
<groupId>org.apache.kafka</groupId> <groupId>com.muyu</groupId>
<artifactId>kafka-clients</artifactId> <artifactId>cloud-modules-carData</artifactId>
<version>3.6.3</version>
</dependency> </dependency>
<!-- SpringCloud Alibaba Sentinel --> <!-- SpringCloud Alibaba Sentinel -->
<dependency> <dependency>
@ -101,7 +101,12 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.muyu</groupId> <groupId>com.muyu</groupId>
<artifactId>cloud-common-kafka</artifactId> <artifactId>cloud-modules-carData</artifactId>
<version>3.6.3</version>
</dependency>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-modules-enterprise-cache</artifactId>
<version>3.6.3</version> <version>3.6.3</version>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@ -36,10 +36,10 @@ public class CarFenceClazzController {
@PostMapping("/selectClazz") @PostMapping("/selectClazz")
@Operation(summary = "查询数据",description = "查询数据") @Operation(summary = "查询数据",description = "查询数据")
public Result<List<CarFenceClazz>> selectConnect(){ public Result<List<CarFenceClazz>> selectConnect(){
List<CarFenceClazz> connects = carFenceClazzService.list(); List<CarFenceClazz> connects = carFenceClazzService.list();
log.info("查询数据成功"); log.info("查询数据成功");
return Result.success( return Result.success(
connects, "操作成功" connects, "操作成功"
); );
} }

View File

@ -44,6 +44,7 @@ public class CarFenceController {
){ ){
Page<CarFenceResp> connects = carFenceService.selectCarFence(req); Page<CarFenceResp> connects = carFenceService.selectCarFence(req);
log.info("查询数据:"+ connects); log.info("查询数据:"+ connects);
return Result.success( return Result.success(
connects, "操作成功" connects, "操作成功"
); );
@ -58,13 +59,13 @@ public class CarFenceController {
@Validated @RequestBody CarFence carFence @Validated @RequestBody CarFence carFence
){ ){
Boolean connects = carFenceService.addCarFence(carFence); Boolean connects = carFenceService.addCarFence(carFence);
log.info("shd");
log.info("shd");
return connects?Result.success( return connects?Result.success(
null, "操作成功" null, "操作成功"
):Result.success( ):Result.success(
null, "操作失败" null, "操作失败"
); );
} }
/** /**
@ -94,6 +95,7 @@ public class CarFenceController {
@Validated @RequestBody FenceGroupReq req @Validated @RequestBody FenceGroupReq req
){ ){
Boolean connects = carFenceService.addFenceGroup(req); Boolean connects = carFenceService.addFenceGroup(req);
return connects?Result.success( return connects?Result.success(
null, "操作成功" null, "操作成功"
):Result.success( ):Result.success(
@ -138,6 +140,7 @@ public class CarFenceController {
@PostMapping("/carGroupList") @PostMapping("/carGroupList")
@Operation(summary = "查询车辆围栏组数据",description = "查询车辆围栏组信息") @Operation(summary = "查询车辆围栏组数据",description = "查询车辆围栏组信息")
public Result<List<CarFenceGroupsResp>> carGroupList(@RequestBody CarFenceGroupReq req){ public Result<List<CarFenceGroupsResp>> carGroupList(@RequestBody CarFenceGroupReq req){
List<CarFenceGroupsResp> connects = carFenceService.carGroupList(req); List<CarFenceGroupsResp> connects = carFenceService.carGroupList(req);
return Result.success( return Result.success(
connects, "操作成功" connects, "操作成功"

View File

@ -36,7 +36,9 @@ public class CarFenceTypeController {
@PostMapping("/selectType") @PostMapping("/selectType")
@Operation(summary = "查询数据",description = "查询数据") @Operation(summary = "查询数据",description = "查询数据")
public Result<List<CarFenceType>> selectConnect(){ public Result<List<CarFenceType>> selectConnect(){
List<CarFenceType> connects = carFenceTypeService.list(); List<CarFenceType> connects = carFenceTypeService.list();
return Result.success( return Result.success(
connects, "操作成功" connects, "操作成功"
); );

View File

@ -4,15 +4,19 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.muyu.common.core.domain.Result; import com.muyu.common.core.domain.Result;
import com.muyu.domain.CarFenceType;
import com.muyu.domain.CarInformation; import com.muyu.domain.CarInformation;
import com.muyu.domain.req.CarInformationAddReq; import com.muyu.domain.req.CarInformationAddReq;
import com.muyu.domain.req.CarInformationListReq; import com.muyu.domain.req.CarInformationListReq;
import com.muyu.domain.req.CarInformationUpdReq; import com.muyu.domain.req.CarInformationUpdReq;
import com.muyu.domain.resp.CarInformationResp; import com.muyu.domain.resp.CarInformationResp;
import com.muyu.enterprise.cache.car.*;
import com.muyu.server.service.CarInformationService; import com.muyu.server.service.CarInformationService;
import com.muyu.server.util.ObtainRootLogin;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -30,6 +34,11 @@ import java.util.List;
public class CarInformationController { public class CarInformationController {
@Resource @Resource
private CarInformationService carInformationService; private CarInformationService carInformationService;
private VehicleCacheCarInformationService vehicleCacheCarInformationService;
private VehicleCacheCarInformationRespService vehicleCacheCarInformationRespService;
private VehicleCacheCarInformationAddService vehicleCacheCarInformationAddService;
private VehicleCacheCarInformationUpdService vehicleCacheCarInformationUpdService;
private VehicleCacheCarInformationFenceRespService vehicleCacheCarInformationFenceRespService;
/** /**
@ -38,10 +47,20 @@ public class CarInformationController {
@PostMapping("/selectCarInformation") @PostMapping("/selectCarInformation")
@Operation(summary = "查询数据",description = "查询数据") @Operation(summary = "查询数据",description = "查询数据")
public Result<List<CarInformation>> selectConnect(){ public Result<List<CarInformation>> selectConnect(){
List<CarInformation> carFenceRespPage = vehicleCacheCarInformationService
.get(vehicleCacheCarInformationService
.keyPre()+ ObtainRootLogin
.obtain());
if (CollectionUtils.isEmpty(carFenceRespPage)) {
return Result.success(carFenceRespPage);
}
List<CarInformation> connects = carInformationService.list() List<CarInformation> connects = carInformationService.list()
.stream() .stream()
.map(CarInformation::carInformationBuilder) .map(CarInformation::carInformationBuilder)
.toList(); .toList();
vehicleCacheCarInformationService.put(
vehicleCacheCarInformationService.keyPre()+ObtainRootLogin.obtain()
,connects);
return Result.success( return Result.success(
connects, "操作成功" connects, "操作成功"
); );
@ -68,8 +87,19 @@ public class CarInformationController {
@PostMapping("/selectCarInformationList") @PostMapping("/selectCarInformationList")
@Operation(summary = "企业车辆管理列表") @Operation(summary = "企业车辆管理列表")
public Result<Page<CarInformationResp>> selectCarInformationList(@Validated @RequestBody CarInformationListReq carInformationListReq) { public Result<Page<CarInformationResp>> selectCarInformationList(@Validated @RequestBody CarInformationListReq carInformationListReq) {
Page<CarInformationResp> carFenceRespPage = vehicleCacheCarInformationRespService
.get(vehicleCacheCarInformationRespService
.keyPre()+ ObtainRootLogin
.obtain());
if (CollectionUtils.isEmpty(carFenceRespPage.getRecords())) {
return Result.success(carFenceRespPage);
}
Page<CarInformationResp> pageInfo = carInformationService.selectCarInformationList(carInformationListReq); Page<CarInformationResp> pageInfo = carInformationService.selectCarInformationList(carInformationListReq);
log.info("企业车辆管理列表查询",carInformationListReq,pageInfo); log.info("企业车辆管理列表查询",carInformationListReq,pageInfo);
vehicleCacheCarInformationRespService.put(
vehicleCacheCarInformationRespService.keyPre()+ObtainRootLogin.obtain()
,pageInfo);
return Result.success(pageInfo); return Result.success(pageInfo);
} }
@ -83,6 +113,10 @@ public class CarInformationController {
@PostMapping("/addCarInformation") @PostMapping("/addCarInformation")
@Operation(summary = "企业车辆添加管理") @Operation(summary = "企业车辆添加管理")
public Result addCarInformation(@Validated @RequestBody CarInformationAddReq carInformationAddReq){ public Result addCarInformation(@Validated @RequestBody CarInformationAddReq carInformationAddReq){
vehicleCacheCarInformationAddService.put(
vehicleCacheCarInformationAddService
.keyPre()+ObtainRootLogin.obtain(), carInformationAddReq);
return carInformationService.addCarInformation(carInformationAddReq) return carInformationService.addCarInformation(carInformationAddReq)
?Result.success("添加车辆成功") ?Result.success("添加车辆成功")
:Result.error(402,"添加车辆失败"); :Result.error(402,"添加车辆失败");
@ -114,7 +148,9 @@ public class CarInformationController {
public Result updateCarMessage(@Validated @RequestBody CarInformationUpdReq carInformationUpdReq){ public Result updateCarMessage(@Validated @RequestBody CarInformationUpdReq carInformationUpdReq){
boolean updatecarInformation = carInformationService.updatecarInformation(carInformationUpdReq); boolean updatecarInformation = carInformationService.updatecarInformation(carInformationUpdReq);
log.info(updatecarInformation); log.info(updatecarInformation);
System.out.println("我在这个里:"+updatecarInformation); vehicleCacheCarInformationUpdService.put(
vehicleCacheCarInformationUpdService
.keyPre()+ObtainRootLogin.obtain(), carInformationUpdReq);
if(updatecarInformation) if(updatecarInformation)
{ {
return Result.success(carInformationUpdReq,"修改成功"); return Result.success(carInformationUpdReq,"修改成功");
@ -133,7 +169,17 @@ public class CarInformationController {
@GetMapping("/selectCarInformationIdAndLicensePlate") @GetMapping("/selectCarInformationIdAndLicensePlate")
@Operation(summary = "查询企业车辆 carInformationID 和 carInformationLicensePlate") @Operation(summary = "查询企业车辆 carInformationID 和 carInformationLicensePlate")
public Result<List<CarInformationResp>> selectCarInformationIdAndLicensePlate(){ public Result<List<CarInformationResp>> selectCarInformationIdAndLicensePlate(){
List<CarInformationResp> carFenceRespPage = vehicleCacheCarInformationFenceRespService
.get(vehicleCacheCarInformationFenceRespService
.keyPre()+ ObtainRootLogin
.obtain());
if (CollectionUtils.isEmpty(carFenceRespPage)) {
return Result.success(carFenceRespPage);
}
List<CarInformationResp> carInformations = carInformationService.selectBycarInformationIDAndLicensePlate(); List<CarInformationResp> carInformations = carInformationService.selectBycarInformationIDAndLicensePlate();
vehicleCacheCarInformationFenceRespService.put(
vehicleCacheCarInformationFenceRespService.keyPre()+ObtainRootLogin.obtain()
,carInformations);
return Result.success(carInformations); return Result.success(carInformations);
} }

View File

@ -31,6 +31,7 @@ public class CarMessageController {
@PostMapping("/selectCarMessageList") @PostMapping("/selectCarMessageList")
@Operation(summary = "报文模板展示列表") @Operation(summary = "报文模板展示列表")
public Result<List<CarMessage>> selectCarMessageList(){ public Result<List<CarMessage>> selectCarMessageList(){
List<CarMessage> carMessages = carMessageService.selectCarMessageList(); List<CarMessage> carMessages = carMessageService.selectCarMessageList();
return Result.success(carMessages); return Result.success(carMessages);
} }
@ -42,10 +43,8 @@ public class CarMessageController {
@PostMapping("/insertCarMessage") @PostMapping("/insertCarMessage")
@Operation(summary = "添加报文信息") @Operation(summary = "添加报文信息")
public Result<Integer> insertCarMessage(@Validated @RequestBody CarMessage carMessage){ public Result<Integer> insertCarMessage(@Validated @RequestBody CarMessage carMessage){
int inserted = carMessageService.insertCarMessage(carMessage); int inserted = carMessageService.insertCarMessage(carMessage);
if (inserted>0){
return Result.success(200,"添加成功");
}
return Result.error(402,"添加失败"); return Result.error(402,"添加失败");
} }
@ -57,6 +56,7 @@ public class CarMessageController {
@Operation(summary = "删除报文信息") @Operation(summary = "删除报文信息")
public Result<Integer> delectByCarMessageId(@RequestParam(name = "carMessageId") Integer carMessageId){ public Result<Integer> delectByCarMessageId(@RequestParam(name = "carMessageId") Integer carMessageId){
int deleteByCarMessageId = carMessageService.delectByCarMessageId(carMessageId); int deleteByCarMessageId = carMessageService.delectByCarMessageId(carMessageId);
if (deleteByCarMessageId>0){ if (deleteByCarMessageId>0){
return Result.success(200,"删除成功"); return Result.success(200,"删除成功");
} }
@ -69,6 +69,7 @@ public class CarMessageController {
@PostMapping("/updateCarMessage") @PostMapping("/updateCarMessage")
@Operation(summary = "修改报文信息") @Operation(summary = "修改报文信息")
public Result<Integer> updateCarMessage(@Validated @RequestBody CarMessage carMessage){ public Result<Integer> updateCarMessage(@Validated @RequestBody CarMessage carMessage){
int updateCarMessage = carMessageService.updateCarMessage(carMessage); int updateCarMessage = carMessageService.updateCarMessage(carMessage);
if(updateCarMessage>0) if(updateCarMessage>0)
{ {

View File

@ -13,6 +13,8 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* *
* @Authoryang * @Authoryang

View File

@ -2,6 +2,7 @@ package com.muyu.server.controller;
import com.muyu.common.core.domain.Result; import com.muyu.common.core.domain.Result;
import com.muyu.domain.CarType;
import com.muyu.server.service.CarTypeService; import com.muyu.server.service.CarTypeService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -9,6 +10,8 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/** /**
* *
* @Authorweiran * @Authorweiran
@ -33,6 +36,9 @@ public class CarTypeController {
@PostMapping("/list") @PostMapping("/list")
@Operation(summary = "车辆类型",description = "车辆类型信息") @Operation(summary = "车辆类型",description = "车辆类型信息")
public Result carTypeList(){ public Result carTypeList(){
return Result.success(carTypeService.selectcarType());
List<CarType> data = carTypeService.selectcarType();
return Result.success(data);
} }
} }

View File

@ -9,6 +9,7 @@ import com.muyu.domain.req.FaultCodeUpdReq;
import com.muyu.domain.resp.FaultCodeTotalListResp; import com.muyu.domain.resp.FaultCodeTotalListResp;
import com.muyu.server.service.FaultCodeService; import com.muyu.server.service.FaultCodeService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -24,12 +25,14 @@ import org.springframework.web.bind.annotation.*;
@RestController @RestController
@RequestMapping("/faultcode") @RequestMapping("/faultcode")
@Tag(name = "车辆故障码控制层",description = "从故障信息表中查询数据")
public class FaultCodeController { public class FaultCodeController {
@Autowired @Autowired
private FaultCodeService faultCodeService; private FaultCodeService faultCodeService;
/** /**
* () * ()
* @param faultCodeListReq * @param faultCodeListReq
@ -38,7 +41,8 @@ public class FaultCodeController {
@PostMapping("/faultcodelist") @PostMapping("/faultcodelist")
@Operation(summary = "故障码列表(多)",description = "展示故障码信息") @Operation(summary = "故障码列表(多)",description = "展示故障码信息")
public Result<FaultCodeTotalListResp> selectfaultcodelist(@Validated @RequestBody FaultCodeListReq faultCodeListReq){ public Result<FaultCodeTotalListResp> selectfaultcodelist(@Validated @RequestBody FaultCodeListReq faultCodeListReq){
return Result.success(faultCodeService.selectfaultcodelist(faultCodeListReq)); FaultCodeTotalListResp selectfaultcodelist = faultCodeService.selectfaultcodelist(faultCodeListReq);
return Result.success(selectfaultcodelist,"操作成功");
} }
@ -50,6 +54,7 @@ public class FaultCodeController {
@PostMapping("/faultcodeadd") @PostMapping("/faultcodeadd")
@Operation(summary = "新增故障码",description = "新增故障码信息") @Operation(summary = "新增故障码",description = "新增故障码信息")
public Result insertfaultcode(@Validated @RequestBody FaultCodeAddReq faultCodeAddReq){ public Result insertfaultcode(@Validated @RequestBody FaultCodeAddReq faultCodeAddReq){
faultCodeService.insert(faultCodeAddReq); faultCodeService.insert(faultCodeAddReq);
return Result.success(null,"新增成功"); return Result.success(null,"新增成功");
} }

View File

@ -6,9 +6,9 @@ import com.muyu.domain.FaultCondition;
import com.muyu.domain.req.FaultConditionAddReq; import com.muyu.domain.req.FaultConditionAddReq;
import com.muyu.domain.req.FaultConditionListReq; import com.muyu.domain.req.FaultConditionListReq;
import com.muyu.domain.req.FaultConditionUpdReq; import com.muyu.domain.req.FaultConditionUpdReq;
import com.muyu.domain.resp.FaultConditionTotalListResp;
import com.muyu.server.service.FaultConditionService; import com.muyu.server.service.FaultConditionService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Schema;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -40,7 +40,9 @@ public class FaultConditionController {
@PostMapping("/list") @PostMapping("/list")
@Operation(summary = "故障规则列表展示",description = "故障规则列表展示") @Operation(summary = "故障规则列表展示",description = "故障规则列表展示")
public Result getfaultrulelist(@RequestBody @Validated FaultConditionListReq faultConditionListReq){ public Result getfaultrulelist(@RequestBody @Validated FaultConditionListReq faultConditionListReq){
return Result.success(faultConditionService.getfaultrulelist(faultConditionListReq));
FaultConditionTotalListResp getfaultrulelist = faultConditionService.getfaultrulelist(faultConditionListReq);
return Result.success(getfaultrulelist,"操作成功");
} }
@ -57,7 +59,7 @@ public class FaultConditionController {
if (faultConditionList.size()>0){ if (faultConditionList.size()>0){
return Result.error("此车辆类型已存在所对应的故障规则,无需重新制定,可在原规则上进行修改"); return Result.error("此车辆类型已存在所对应的故障规则,无需重新制定,可在原规则上进行修改");
} }
faultConditionService.save(FaultCondition.faultConditionadd(faultConditionAddReq)); faultConditionService.saveFaultCondition(FaultCondition.faultConditionadd(faultConditionAddReq));
return Result.success(null,"规则制定成功"); return Result.success(null,"规则制定成功");
} }

View File

@ -49,4 +49,9 @@ public interface CarFenceService extends IService<CarFence> {
* *
*/ */
List<CarFenceGroupsResp> carGroupList(CarFenceGroupReq req); List<CarFenceGroupsResp> carGroupList(CarFenceGroupReq req);
/**
*
*/
List<CarFence> CarFenceList(Integer carInformationFence);
} }

View File

@ -68,4 +68,9 @@ public interface CarInformationService extends IService<CarInformation> {
*/ */
List<CarInformationResp> selectBycarInformationIDAndLicensePlate(); List<CarInformationResp> selectBycarInformationIDAndLicensePlate();
/**
* chaxunCar
* @param faulttypeId
*/
List<CarInformation> selectCarInformation(Long faulttypeId);
} }

View File

@ -8,6 +8,8 @@ import com.muyu.domain.req.FaultCodeListReq;
import com.muyu.domain.req.FaultCodeUpdReq; import com.muyu.domain.req.FaultCodeUpdReq;
import com.muyu.domain.resp.FaultCodeTotalListResp; import com.muyu.domain.resp.FaultCodeTotalListResp;
import java.util.List;
/** /**
* *
@ -50,4 +52,10 @@ public interface FaultCodeService extends IService<FaultCode> {
* @return * @return
*/ */
void del(Integer messageTypeId); void del(Integer messageTypeId);
/**
* ()
* @return
*/
List<FaultCode> faultCodeList(long messageTypeId);
} }

View File

@ -32,4 +32,12 @@ public interface FaultConditionService extends IService<FaultCondition> {
* @return * @return
*/ */
List<FaultCondition> selectBytypeAndlabel(FaultConditionAddReq faultConditionAddReq); List<FaultCondition> selectBytypeAndlabel(FaultConditionAddReq faultConditionAddReq);
void saveFaultCondition(FaultCondition faultCondition);
/**
*
* @return
*/
List<FaultCondition> saveFaultConditionList();
} }

View File

@ -31,10 +31,10 @@ public interface FaultLabelService extends IService<FaultLabel> {
/** /**
* *
* @param faultCodeAddReq * @param faultLabel
* @return * @return
*/ */
Integer insertfaultlabel(FaultCodeAddReq faultCodeAddReq); Integer insertfaultlabel(FaultLabel faultLabel);
/** /**
* *
@ -42,4 +42,5 @@ public interface FaultLabelService extends IService<FaultLabel> {
* @return * @return
*/ */
Integer delfaultlabel(Integer messageTypeId); Integer delfaultlabel(Integer messageTypeId);
} }

View File

@ -316,4 +316,12 @@ public class CarFenceServiceImpl
}); });
return fenceGroupList; return fenceGroupList;
} }
@Override
public List<CarFence> CarFenceList(Integer carInformationFence) {
return this.list(new LambdaQueryWrapper<CarFence>().eq(CarFence::getId,carInformationFence))
.stream()
.map(CarFence::carFenceBuild)
.toList();
}
} }

View File

@ -1,5 +1,6 @@
package com.muyu.server.service.impl; package com.muyu.server.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
@ -149,4 +150,14 @@ public class CarInformationServiceImpl
return carInformationResps; return carInformationResps;
} }
@Override
public List<CarInformation> selectCarInformation(Long faulttypeId) {
List<CarInformation> list = this.list(new LambdaQueryWrapper<CarInformation>()
.eq(CarInformation::getCarInformationType, faulttypeId))
.stream()
.map(CarInformation::carInformationListBuilder)
.toList();
return list;
}
} }

View File

@ -5,20 +5,25 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.muyu.common.core.utils.StringUtils; import com.muyu.common.core.utils.StringUtils;
import com.muyu.domain.FaultCode; import com.muyu.domain.*;
import com.muyu.domain.FaultLabel;
import com.muyu.domain.req.FaultCodeAddReq; import com.muyu.domain.req.FaultCodeAddReq;
import com.muyu.domain.req.FaultCodeListReq; import com.muyu.domain.req.FaultCodeListReq;
import com.muyu.domain.req.FaultCodeUpdReq; import com.muyu.domain.req.FaultCodeUpdReq;
import com.muyu.domain.resp.FaultCodeListResp; import com.muyu.domain.resp.FaultCodeListResp;
import com.muyu.domain.resp.FaultCodeTotalListResp; import com.muyu.domain.resp.FaultCodeTotalListResp;
import com.muyu.domain.resp.FaultConditionListResp; import com.muyu.domain.resp.FaultConditionListResp;
import com.muyu.enterprise.cache.faultCode.VehicleCacheFaultCodeAddService;
import com.muyu.server.mapper.FaultCodeMapper; import com.muyu.server.mapper.FaultCodeMapper;
import com.muyu.server.service.CarFenceService;
import com.muyu.server.service.CarInformationService;
import com.muyu.server.service.FaultCodeService; import com.muyu.server.service.FaultCodeService;
import com.muyu.server.service.FaultLabelService; import com.muyu.server.service.FaultLabelService;
import com.muyu.server.util.ObtainRootLogin;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -30,12 +35,13 @@ import java.util.List;
* @Date2024/9/17 14:53 * @Date2024/9/17 14:53
*/ */
@Service @Service
@AllArgsConstructor
public class FaultCodeServiceImpl extends ServiceImpl<FaultCodeMapper, FaultCode> implements FaultCodeService { public class FaultCodeServiceImpl extends ServiceImpl<FaultCodeMapper, FaultCode> implements FaultCodeService {
@Autowired
private FaultCodeMapper faultCodeMapper;
@Autowired
private FaultLabelService faultLabelService;
private final FaultCodeMapper faultCodeMapper;
private final FaultLabelService faultLabelService;
private final CarInformationService carInformationService;
private final CarFenceService carFenceService;
/** /**
* () * ()
@ -92,8 +98,13 @@ public class FaultCodeServiceImpl extends ServiceImpl<FaultCodeMapper, FaultCode
} }
if (faultLabel==null && faultCode==null){ if (faultLabel==null && faultCode==null){
//添加故障项表 //添加故障项表
faultLabelService.insertfaultlabel(faultCodeAddReq); FaultLabel faultLabel1 = new FaultLabel();
faultLabel1.setMessageTypeName(faultCodeAddReq.getMessageTypeName());
faultLabel1.setMessageTypeCode(faultCodeAddReq.getMessageTypeCode());
faultLabel1.setMessageTypeBelongs(faultCodeAddReq.getMessageTypeBelongs());
faultLabelService.insertfaultlabel(faultLabel1);
//添加故障码表 //添加故障码表
faultCodeMapper.insert(FaultCode.addfaultcode(faultCodeAddReq)); faultCodeMapper.insert(FaultCode.addfaultcode(faultCodeAddReq));
} }
@ -120,10 +131,24 @@ public class FaultCodeServiceImpl extends ServiceImpl<FaultCodeMapper, FaultCode
public void del(Integer messageTypeId) { public void del(Integer messageTypeId) {
// 使用LambdaQueryWrapper来构建查询条件 // 使用LambdaQueryWrapper来构建查询条件
LambdaQueryWrapper<FaultCode> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<FaultCode> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(FaultCode::getMessageTypeId, messageTypeId); // 假设FaultCode实体类中有一个getMessageTypeId方法 // 假设FaultCode实体类中有一个getMessageTypeId方法
queryWrapper.eq(FaultCode::getMessageTypeId, messageTypeId);
//删除故障码表信息 //删除故障码表信息
faultCodeMapper.delete(queryWrapper); faultCodeMapper.delete(queryWrapper);
//删除对应的故障名称表信息 //删除对应的故障名称表信息
faultLabelService.delfaultlabel(messageTypeId); faultLabelService.delfaultlabel(messageTypeId);
} }
/**
* ()
* @return
*/
@Override
public List<FaultCode> faultCodeList(long messageTypeId) {
return this.list(new LambdaQueryWrapper<FaultCode>()
.eq(FaultCode::getMessageTypeId,messageTypeId))
.stream()
.map(FaultCode::faultCodeBuilder)
.toList();
}
} }

View File

@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.muyu.domain.CarType; import com.muyu.domain.*;
import com.muyu.domain.FaultCode;
import com.muyu.domain.FaultCondition;
import com.muyu.domain.FaultLabel;
import com.muyu.domain.req.FaultConditionAddReq; import com.muyu.domain.req.FaultConditionAddReq;
import com.muyu.domain.req.FaultConditionListReq; import com.muyu.domain.req.FaultConditionListReq;
import com.muyu.domain.resp.FaultConditionListResp; import com.muyu.domain.resp.FaultConditionListResp;
@ -15,9 +12,11 @@ import com.muyu.domain.resp.FaultConditionTotalListResp;
import com.muyu.domain.resp.FaultLogListResp; import com.muyu.domain.resp.FaultLogListResp;
import com.muyu.server.mapper.FaultConditionMapper; import com.muyu.server.mapper.FaultConditionMapper;
import com.muyu.server.service.FaultConditionService; import com.muyu.server.service.FaultConditionService;
import com.muyu.server.util.ObtainRootLogin;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
@ -30,7 +29,9 @@ import java.util.List;
*/ */
@Service @Service
public class FaultConditionServiceImpl extends ServiceImpl<FaultConditionMapper, FaultCondition> implements FaultConditionService { public class FaultConditionServiceImpl
extends ServiceImpl<FaultConditionMapper, FaultCondition>
implements FaultConditionService {
@Autowired @Autowired
private FaultConditionMapper faultConditionMapper; private FaultConditionMapper faultConditionMapper;
@ -83,4 +84,42 @@ public class FaultConditionServiceImpl extends ServiceImpl<FaultConditionMapper,
List<FaultCondition> list = this.list(queryWrapper); List<FaultCondition> list = this.list(queryWrapper);
return list; return list;
} }
@Override
public void saveFaultCondition(FaultCondition faultCondition) {
}
@Override
public List<FaultCondition> saveFaultConditionList() {
return this.list().stream().map(FaultCondition::faultConditionBuilder).toList();
}
// private void faultCache(long messageTypeId, Long faulttypeId,String faultcodeNumber) {
// FaultCodeCache faultCodeCache = new FaultCodeCache();
//
// //添加故障标签
// faultCodeCache.getFaultLabels().addAll(faultLabelService.selectFaultCode(messageTypeId));
//
// //添加车辆
// List<CarInformation> carInformationList = carInformationService.selectCarInformation(faulttypeId);
// faultCodeCache.getCarInformation().addAll(carInformationList);
//
// //添加故障码
// faultCodeCache.getFaultCode().addAll(this.list(new LambdaQueryWrapper<FaultCode>()
// .eq(FaultCode::getFaultcodeNumber, faultcodeNumber))
// .stream().map(FaultCode::faultCodeBuilder)
// .toList());
//
// //添加围栏
// ArrayList<CarFence> carFences1 = new ArrayList<>();
// carInformationList.forEach(carInformation -> {
// CarFence carFence = carFenceService.selectCarFenceList(carInformation.getCarInformationFence());
// carFences1.add(carFence);
// });
// faultCodeCache.getCarFences().addAll(carFences1);
// vehicleCacheFaultCodeAddService.put(vehicleCacheFaultCodeAddService.keyPre()
// + ObtainRootLogin.obtain()
// , faultCodeCache);
// }
} }

View File

@ -56,12 +56,12 @@ public class FaultLabelServiceImpl extends ServiceImpl<FaultLabelMapper, FaultLa
/** /**
* *
* @param faultCodeAddReq * @param faultLabel
* @return * @return
*/ */
@Override @Override
public Integer insertfaultlabel(FaultCodeAddReq faultCodeAddReq) { public Integer insertfaultlabel(FaultLabel faultLabel) {
return faultLabelMapper.insert(FaultLabel.addfaultLabel(faultCodeAddReq)); return this.save(faultLabel)?1:0;
} }
/** /**
@ -73,7 +73,9 @@ public class FaultLabelServiceImpl extends ServiceImpl<FaultLabelMapper, FaultLa
public Integer delfaultlabel(Integer messageTypeId) { public Integer delfaultlabel(Integer messageTypeId) {
// 使用LambdaQueryWrapper来构建查询条件 // 使用LambdaQueryWrapper来构建查询条件
LambdaQueryWrapper<FaultLabel> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<FaultLabel> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(FaultLabel::getMessageTypeId, messageTypeId); // 假设FaultCode实体类中有一个getMessageTypeId方法 // 假设FaultCode实体类中有一个getMessageTypeId方法
queryWrapper.eq(FaultLabel::getMessageTypeId, messageTypeId);
return faultLabelMapper.delete(queryWrapper); return faultLabelMapper.delete(queryWrapper);
} }
} }

View File

@ -54,7 +54,7 @@ public class FaultRuleServiceImpl extends ServiceImpl<FaultRuleMapper, CarFaultR
new LambdaQueryWrapper<CarInformation>() new LambdaQueryWrapper<CarInformation>()
.eq(CarInformation::getCarInformationVIN, carFaultRule.getVin())); .eq(CarInformation::getCarInformationVIN, carFaultRule.getVin()));
//根据车辆类型,查询表获取对应的类型的故障规则 //根据车辆类型,查询表获取对应的类型的故障规则
Integer carInformationType = null; Long carInformationType = null;
for (CarInformation carInformation : carInformationList) { for (CarInformation carInformation : carInformationList) {
carInformationType= carInformation.getCarInformationType(); carInformationType= carInformation.getCarInformationType();
} }

View File

@ -0,0 +1,32 @@
package com.muyu.server.util;
import com.muyu.common.security.utils.SecurityUtils;
import com.muyu.common.system.domain.LoginUser;
import com.muyu.common.system.domain.SysUser;
import com.muyu.domain.CarFenceClazz;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
*
* @Authoryang
* @Packagecom.muyu.server.util
* @Projectcloud-server-8
* @nameObtainRootLogin
* @Date2024/10/2 16:46
*/
public class ObtainRootLogin {
public static String obtain(){
LoginUser loginUser = SecurityUtils.getLoginUser();
SysUser sysUser = loginUser.getSysUser();
return sysUser.getDatabaseName();
};
}

View File

@ -0,0 +1,60 @@
package com.muyu.server.util;
import com.muyu.common.core.utils.StringUtils;
import com.muyu.domain.*;
import com.muyu.enterprise.cache.faultCode.VehicleCacheFaultCodeAddService;
import com.muyu.server.service.*;
import lombok.AllArgsConstructor;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.List;
/**
* @Authoryang
* @Packagecom.muyu.server.util
* @Projectcloud-server-8
* @nameRunCarCondition
* @Date2024/10/7 19:43
*/
@Component
@AllArgsConstructor
public class RunCarCondition implements ApplicationRunner {
private final VehicleCacheFaultCodeAddService vehicleCacheFaultCodeAddService;
private final FaultConditionService faultConditionService;
private final CarInformationService carInformationService;
private final CarFenceService carFenceService;
private final WarnStrategyService warnStrategyService;
private final FaultCodeService faultCodeService;
@Override
public void run(ApplicationArguments args) throws Exception {
List<FaultCondition> list = faultConditionService.saveFaultConditionList();
list.forEach(faultCondition -> {
List<CarInformation> carInformationList = carInformationService.selectCarInformation(faultCondition.getCarTypeId());
carInformationList.forEach(carInformation -> {
FaultCodeCache faultCodeCache = new FaultCodeCache();
if (StringUtils.isNotNull(carInformation.getCarInformationFence())){
faultCodeCache.setCarFences(carFenceService.CarFenceList(carInformation.getCarInformationFence()));
}
if (StringUtils.isNotNull(carInformation.getCarInformationState())) {
faultCodeCache.setWarnStrategies(warnStrategyService
.selectWarnStrategyById(Long.valueOf(carInformation.getCarInformationState())));
}
if (StringUtils.isNotNull(faultCondition.getMessageTypeId())) {
faultCodeCache.setFaultCode(faultCodeService.faultCodeList(faultCondition.getMessageTypeId()));
}
ArrayList<CarInformation> carInformations = new ArrayList<>();
carInformations.add(carInformation);
faultCodeCache.setCarInformation(carInformations);
vehicleCacheFaultCodeAddService.put(vehicleCacheFaultCodeAddService
.keyPre()+carInformation
.getCarInformationVIN(), faultCodeCache);
});
});
}
}

View File

@ -4,7 +4,7 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 127.0.0.1:8848
user-name: nacos user-name: nacos
password: nacos password: nacos
namespace: psr namespace: psr

View File

@ -16,13 +16,14 @@
<modules> <modules>
<module>cloud-modules-enterprise-common</module> <module>cloud-modules-enterprise-common</module>
<module>cloud-modules-enterprise-server</module> <module>cloud-modules-enterprise-server</module>
<module>cloud-modules-enterprise-cache</module>
</modules> </modules>
<artifactId>cloud-modules-enterprise</artifactId> <artifactId>cloud-modules-enterprise</artifactId>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties> <properties>
<maven.compiler.source>21</maven.compiler.source> <maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target> <maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> </properties>

View File

@ -4,7 +4,7 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 127.0.0.1:8848
user-name: nacos user-name: nacos
password: nacos password: nacos
namespace: eight namespace: eight

View File

@ -4,7 +4,7 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 127.0.0.1:8848
user-name: nacos user-name: nacos
password: nacos password: nacos
namespace: eight namespace: eight

View File

@ -5,8 +5,8 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 159.75.188.178:8848
user-name: user-name: nacos
password: password: nacos
namespace: eight namespace: eight
# SPRING_AMQP_DESERIALIZATION_TRUST_ALL=true spring.amqp.deserialization.trust.all # SPRING_AMQP_DESERIALIZATION_TRUST_ALL=true spring.amqp.deserialization.trust.all
# Spring # Spring

View File

@ -4,7 +4,7 @@ server:
# nacos线上地址 # nacos线上地址
nacos: nacos:
addr: 159.75.188.178:8848 addr: 127.0.0.1:8848
user-name: nacos user-name: nacos
password: nacos password: nacos
namespace: eight namespace: eight