From 86eb16420b67bbdb24ec591170d35f2829d7778c Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Sat, 21 Sep 2024 20:47:11 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cloud-common/cloud-electronic-common/pom.xml | 31 +++++ .../main/java/com/muyu/domain/CarFence.java | 98 ++++++++++++++ .../java/com/muyu/domain/CarFenceClazz.java | 39 ++++++ .../java/com/muyu/domain/CarFenceType.java | 39 ++++++ .../main/java/com/muyu/domain/CarMiddle.java | 37 +++++ .../java/com/muyu/domain/req/CarFenceReq.java | 45 +++++++ .../com/muyu/domain/resq/CarFenceResq.java | 77 +++++++++++ cloud-modules/cloud-electronic/pom.xml | 22 +++ .../muyu/server/IntegrationApplication.java | 20 +++ .../controller/CarFenceClazzController.java | 0 .../server/controller/CarFenceController.java | 0 .../controller/CarFenceTypeController.java | 0 .../controller/CarMiddleController.java | 0 .../server/mapper/CarFenceClazzMapper.java | 0 .../muyu/server/mapper/CarFenceMapper.java | 0 .../server/mapper/CarFenceTypeMapper.java | 0 .../muyu/server/mapper/CarMiddleMapper.java | 0 .../server/service/CarFenceClazzService.java | 14 ++ .../muyu/server/service/CarFenceService.java | 24 ++++ .../server/service/CarFenceTypeService.java | 14 ++ .../muyu/server/service/CarMiddleSerivce.java | 14 ++ .../impl/CarFenceClazzServiceImpl.java | 20 +++ .../service/impl/CarFenceServiceImpl.java | 126 ++++++++++++++++++ .../service/impl/CarFenceTypeServiceImpl.java | 20 +++ .../service/impl/CarMiddleSerivceImpl.java | 20 +++ .../java/com/muyu/server/util/JdbcHelper.java | 118 ++++++++++++++++ .../server/util/PaginationInterceptor.java | 11 ++ .../java/com/muyu/server/util/Thread.java | 39 ++++++ ...ot.autoconfigure.AutoConfiguration.imports | 0 .../src/main/resources/banner.txt | 0 .../src/main/resources/bootstrap.yml | 0 .../src/main/resources/logback/dev.xml | 0 .../src/main/resources/logback/prod.xml | 0 .../src/main/resources/logback/test.xml | 0 34 files changed, 828 insertions(+) create mode 100644 cloud-common/cloud-electronic-common/pom.xml create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceClazz.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceType.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceResq.java create mode 100644 cloud-modules/cloud-electronic/pom.xml create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/IntegrationApplication.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceClazzService.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceTypeService.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceClazzServiceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceTypeServiceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/PaginationInterceptor.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/Thread.java create mode 100644 cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 cloud-modules/cloud-electronic/src/main/resources/banner.txt create mode 100644 cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml create mode 100644 cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml create mode 100644 cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml create mode 100644 cloud-modules/cloud-electronic/src/main/resources/logback/test.xml diff --git a/cloud-common/cloud-electronic-common/pom.xml b/cloud-common/cloud-electronic-common/pom.xml new file mode 100644 index 0000000..da209e3 --- /dev/null +++ b/cloud-common/cloud-electronic-common/pom.xml @@ -0,0 +1,31 @@ + + + 4.0.0 + + com.muyu + cloud-electronic + 1.0.0 + + + cloud-electronic-common + 1.0.0 + + 17 + 17 + UTF-8 + + + + com.muyu + cloud-common-core + + + io.swagger.core.v3 + swagger-annotations-jakarta + 2.2.8 + compile + + + diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java new file mode 100644 index 0000000..4e4ef88 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java @@ -0,0 +1,98 @@ +package com.muyu.domain; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.*; +import lombok.experimental.SuperBuilder; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-electronic + * @name:CarFence + * @Date:2024/9/17 16:08 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆电子围栏类") +@TableName(value = "car_fence",autoResultMap = true) +public class CarFence { + + /** + * 围栏主键 + */ + @TableId(value = "id",type = IdType.AUTO) + private Integer id; + /** + * 围栏名称 + */ + private String name; + /** + * 业务类型ID + */ + private Integer clazzId; + /** + * 业务类型名称 + */ + @TableField(exist = false) + private String clazzName; + /** + * 围栏类型ID + */ + private Integer typeId; + /** + * 围栏类型名称 + */ + @TableField(exist = false) + private String typeName; + /** + * 围栏经纬度 + */ + private String fenceText; + /** + * 围栏开始时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private Date fenceStart; + /** + * 围栏结束时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private Date fenceEnd; + /** + * 创建时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy/MM/dd hh:mm:ss") + @JsonFormat(pattern = "yyyy/MM/dd hh:mm:ss") + private Date fenceCreate; + /** + * 中间表ID + */ + private Integer middleId; + + public static CarFence carFenceBuild(CarFence carFence) { + return CarFence.builder() + .id(carFence.getId()) + .name(carFence.getName()) + .clazzId(carFence.getClazzId()) + .typeId(carFence.getTypeId()) + .fenceText(carFence.getFenceText()) + .fenceStart(carFence.getFenceStart()) + .fenceCreate(carFence.getFenceCreate()) + .middleId(carFence.getMiddleId()) + .build(); + } +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceClazz.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceClazz.java new file mode 100644 index 0000000..8532b11 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceClazz.java @@ -0,0 +1,39 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-electronic + * @name:CarFenceClazz + * @Date:2024/9/17 16:41 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆电子业务类型") +@TableName(value = "car_fence_clazz",autoResultMap = true) +public class CarFenceClazz { + /** + * 业务类型ID + */ + private Integer clazzId; + /** + * 业务类型名称 + */ + private String clazzName; + + public static CarFenceClazz carFenceClazzBuild(CarFenceClazz carFenceClazz) { + return CarFenceClazz.builder() + .clazzId(carFenceClazz.getClazzId()) + .clazzName(carFenceClazz.getClazzName()) + .build(); + } +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceType.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceType.java new file mode 100644 index 0000000..1cbf546 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceType.java @@ -0,0 +1,39 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-electronic + * @name:Type + * @Date:2024/9/17 16:40 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆电子围栏类型") +@TableName(value = "car_fence_type",autoResultMap = true) +public class CarFenceType { + /** + * 围栏类型ID + */ + private Integer typeId; + /** + * 围栏类型名称 + */ + private String typeName; + + public static CarFenceType carFenceTypeBuild(CarFenceType carFenceType) { + return CarFenceType.builder() + .typeId(carFenceType.getTypeId()) + .typeName(carFenceType.getTypeName()) + .build(); + } +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java new file mode 100644 index 0000000..d7f8c47 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java @@ -0,0 +1,37 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-electronic + * @name:carMiddle + * @Date:2024/9/20 16:30 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆电子围栏中间表") +@TableName(value = "car_middle",autoResultMap = true) +public class CarMiddle { + + /** + * 中间表ID + */ + private Integer id; + /** + * 电子围栏ID + */ + private Integer carFenceId; + /** + * 车辆ID + */ + private Integer carInformationId; +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java new file mode 100644 index 0000000..d871b51 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java @@ -0,0 +1,45 @@ +package com.muyu.domain.req; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain.req + * @Project:cloud-electronic + * @name:CarFenceReq + * @Date:2024/9/17 16:26 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "车辆电子围栏响应参数") +public class CarFenceReq { + + /** + * 围栏名称 + */ + private String name; + /** + * 业务类型ID + */ + private String clazzId; + /** + * 围栏类型ID + */ + private String typeName; + /** + * 当前页 + */ + @Schema(title = "当前页数", type = "Integer", defaultValue = "1", description = "当前页数") + private Integer pageNum=1; + /** + * 条数 + */ + @Schema(title = "分页条数", type = "Integer", defaultValue = "10", description = "每页有多少条") + private Integer pageSize=10; +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceResq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceResq.java new file mode 100644 index 0000000..1b2045d --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceResq.java @@ -0,0 +1,77 @@ +package com.muyu.domain.resq; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.muyu.domain.CarFence; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * @Author:yang + * @Package:com.muyu.domain.resq + * @Project:cloud-electronic + * @name:CarFenceResq + * @Date:2024/9/17 16:35 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆电子围栏类") +@TableName(value = "car_fence",autoResultMap = true) +public class CarFenceResq { + + /** + * 围栏主键 + */ + private Integer id; + /** + * 围栏名称 + */ + private String name; + /** + * 业务类型名 + */ + private String clazzName; + /** + * 围栏类型名 + */ + private String typeName; + /** + * 围栏开始时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private Date fenceStart; + /** + * 围栏结束时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private Date fenceEnd; + /** + * 创建时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy/MM/dd hh:mm:ss") + @JsonFormat(pattern = "yyyy/MM/dd hh:mm:ss") + private Date fenceCreate; + + public static CarFenceResq carFenceResqListBuilder(CarFence etlDataScore) { + return CarFenceResq.builder() + .id(etlDataScore.getId()) + .name(etlDataScore.getName()) + .clazzName(etlDataScore.getClazzName()) + .typeName(etlDataScore.getTypeName()) + .fenceStart(etlDataScore.getFenceStart()) + .fenceEnd(etlDataScore.getFenceEnd()) + .fenceCreate(etlDataScore.getFenceCreate()) + .build(); + } +} diff --git a/cloud-modules/cloud-electronic/pom.xml b/cloud-modules/cloud-electronic/pom.xml new file mode 100644 index 0000000..5d72f99 --- /dev/null +++ b/cloud-modules/cloud-electronic/pom.xml @@ -0,0 +1,22 @@ + + + 4.0.0 + + com.muyu + cloud-server + 3.6.3 + ../../pom.xml + + + com.muyu.server + cloud-electronic + + + 21 + 21 + UTF-8 + + + diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/IntegrationApplication.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/IntegrationApplication.java new file mode 100644 index 0000000..3cb378a --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/IntegrationApplication.java @@ -0,0 +1,20 @@ +package com.muyu.server; + +import com.muyu.common.security.annotation.EnableMyFeignClients; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * @Author:杨闪闪 + * @Package:com.muyu.server.integration + * @Project:cloud-integration + * @name:Integration + * @Date:2024/9/17 下午9:56 + */ +@EnableMyFeignClients +@SpringBootApplication +public class IntegrationApplication { + public static void main(String[] args) { + SpringApplication.run(IntegrationApplication.class, args); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceClazzService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceClazzService.java new file mode 100644 index 0000000..fdc2bb2 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceClazzService.java @@ -0,0 +1,14 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarFenceClazz; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-electronic + * @name:CarFenceClazzService + * @Date:2024/9/17 17:33 + */ +public interface CarFenceClazzService extends IService{ +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java new file mode 100644 index 0000000..b729069 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java @@ -0,0 +1,24 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarFence; +import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.resq.CarFenceResq; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-electronic + * @name:CarFenceService + * @Date:2024/9/17 16:54 + */ +public interface CarFenceService extends IService { + /** + * 查询围栏信息 + */ + public Page selectCarFence(CarFenceReq req); + +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceTypeService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceTypeService.java new file mode 100644 index 0000000..428416e --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceTypeService.java @@ -0,0 +1,14 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarFenceType; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-electronic + * @name:CarFenceTypeService + * @Date:2024/9/17 17:29 + */ +public interface CarFenceTypeService extends IService{ +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java new file mode 100644 index 0000000..abb2db3 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java @@ -0,0 +1,14 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarMiddle; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-electronic + * @name:CarMiddleSerivce + * @Date:2024/9/20 16:34 + */ +public interface CarMiddleSerivce extends IService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceClazzServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceClazzServiceImpl.java new file mode 100644 index 0000000..d53e355 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceClazzServiceImpl.java @@ -0,0 +1,20 @@ +package com.muyu.server.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.CarFenceClazz; +import com.muyu.server.mapper.CarFenceClazzMapper; +import com.muyu.server.service.CarFenceClazzService; +import org.springframework.stereotype.Service; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-electronic + * @name:CarFenceClazzServiceImpl + * @Date:2024/9/17 17:33 + */ +@Service +public class CarFenceClazzServiceImpl + extends ServiceImpl + implements CarFenceClazzService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java new file mode 100644 index 0000000..825bc81 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java @@ -0,0 +1,126 @@ +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.service.impl.ServiceImpl; +import com.muyu.common.core.utils.StringUtils; +import com.muyu.domain.CarFence; +import com.muyu.domain.CarFenceClazz; +import com.muyu.domain.CarFenceType; +import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.resq.CarFenceResq; +import com.muyu.server.mapper.CarFenceMapper; +import com.muyu.server.service.CarFenceClazzService; +import com.muyu.server.service.CarFenceService; +import com.muyu.server.service.CarFenceTypeService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-electronic + * @name:CarFenceServiceImpl + * @Date:2024/9/17 16:57 + */ +@Service +@Log4j2 +public class CarFenceServiceImpl + extends ServiceImpl + implements CarFenceService { + + @Autowired + private CarFenceClazzService carFenceClazzService; + @Autowired + private CarFenceTypeService carFenceTypeService; + /** + * 查询围栏信息 + */ + @Override + public Page selectCarFence(CarFenceReq req) { + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + //数据来源类型 + queryWrapper.eq( + StringUtils.isNoneEmpty(req.getName()), + CarFence::getName, req.getName() + ); + queryWrapper.eq( + StringUtils.isNoneEmpty(req.getName()), + CarFence::getName, req.getName() + ); + queryWrapper.eq( + StringUtils.isNoneEmpty(req.getName()), + CarFence::getName, req.getName() + ); + + //使用MyBatis-Plus的分页功能进行查询 + Page carFencePage = this.page( + //创建分页参数,包括页码和每页显示的记录数 + new Page<>(req.getPageNum(), + req.getPageSize()), + //传递查询条件 + queryWrapper + ); + List carFenceClazzList = carFenceClazzService.list() + .stream() + .map(CarFenceClazz::carFenceClazzBuild) + .toList(); + List carFenceTypeList = carFenceTypeService.list() + .stream() + .map(CarFenceType::carFenceTypeBuild) + .toList(); + List carFenceList = carFencePage.getRecords(); + this.optimizeEntity(carFenceList,carFenceClazzList,carFenceTypeList); + //构建一个新的分页响应对象 + return new Page<>() {{ + //从查询结果中获取记录,并使用流式处理将每条记录转换为EtlDataScoreResp对象 + List etlDataScoreRespList = carFencePage.getRecords().stream() + //使用map操作将EtlDataScore对象转换为EtlDataScoreResp对象 + .map(CarFenceResq::carFenceResqListBuilder) + //收集流中的元素到列表中 + .toList(); + //设置分页响应中的记录列表 + setRecords(etlDataScoreRespList); + //设置分页响应中的总记录数 + setTotal(carFencePage.getTotal()); + //设置分页响应中的当前页码 + setCurrent(carFencePage.getCurrent()); + //设置分页响应中的每页记录数 + setSize(carFencePage.getSize()); + }}; + } + + + /** + * 优化查询返回值 + * @param carFenceList 电子围栏数据 + * @param carFenceClazzList 业务数据 + * @param carFenceTypeList 类型数据 + */ + private void optimizeEntity( + List carFenceList, + List carFenceClazzList, + List carFenceTypeList) { + carFenceList.forEach(carFence -> { + carFenceClazzList.forEach(carFenceClazz -> { + if (carFenceClazz.getClazzId().equals(carFence.getClazzId())) { + carFence.setClazzName(carFenceClazz.getClazzName()); + }else { + return; + } + }); + carFenceTypeList.forEach(carFenceType -> { + if (carFenceType.getTypeId().equals(carFence.getTypeId())) { + carFence.setTypeName(carFenceType.getTypeName()); + }else{ + return; + } + }); + }); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceTypeServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceTypeServiceImpl.java new file mode 100644 index 0000000..dbfc220 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceTypeServiceImpl.java @@ -0,0 +1,20 @@ +package com.muyu.server.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.CarFenceType; +import com.muyu.server.mapper.CarFenceTypeMapper; +import com.muyu.server.service.CarFenceTypeService; +import org.springframework.stereotype.Service; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-electronic + * @name:CarFenceTypeServiceImpl + * @Date:2024/9/17 17:30 + */ +@Service +public class CarFenceTypeServiceImpl + extends ServiceImpl + implements CarFenceTypeService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java new file mode 100644 index 0000000..8b04398 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java @@ -0,0 +1,20 @@ +package com.muyu.server.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.CarMiddle; +import com.muyu.server.mapper.CarMiddleMapper; +import com.muyu.server.service.CarMiddleSerivce; +import org.springframework.stereotype.Service; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-electronic + * @name:CarMiddleSerivceImpl + * @Date:2024/9/20 16:34 + */ +@Service +public class CarMiddleSerivceImpl + extends ServiceImpl + implements CarMiddleSerivce { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java new file mode 100644 index 0000000..c39f9cb --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java @@ -0,0 +1,118 @@ +//package com.muyu.server.util; +// +//import com.alibaba.druid.pool.DruidDataSource; +//import com.muyu.common.domain.Connect; +//import com.muyu.common.domain.req.ConnectReq; +//import lombok.extern.log4j.Log4j2; +//import org.springframework.stereotype.Component; +// +//import java.sql.Connection; +//import java.sql.PreparedStatement; +//import java.sql.ResultSet; +//import java.sql.SQLException; +// +///** +// * @Author:张腾 +// * @Package:com.muyu.server.util +// * @Project:cloud-integration +// * @name:BaseDao +// * @Date:2024/8/20 21:45 +// */ +//@Component +//@Log4j2 +//public class JdbcHelper { +// +// /** +// * 连接池 +// * @param connect 连接池对象参数 查询结构 +// * @return 返回结果 +// */ +// public static DruidDataSource getConn( Connect connect) { +// while (0 { + // 你的线程任务 + }); + } + + @Override + public void contextDestroyed(ServletContextEvent sce) { + // 停止线程 + executorService.shutdownNow(); + } + } +} diff --git a/cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/resources/banner.txt b/cloud-modules/cloud-electronic/src/main/resources/banner.txt new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml b/cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml b/cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml b/cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml new file mode 100644 index 0000000..e69de29 diff --git a/cloud-modules/cloud-electronic/src/main/resources/logback/test.xml b/cloud-modules/cloud-electronic/src/main/resources/logback/test.xml new file mode 100644 index 0000000..e69de29 From 41918d630338f3ca30bc2cd4eeb110845161386a Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Sat, 21 Sep 2024 20:47:42 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cloud-auth/src/main/resources/bootstrap.yml | 2 +- cloud-common/cloud-electronic-common/pom.xml | 7 +- cloud-common/pom.xml | 1 + .../service/impl/ValidateCodeServiceImpl.java | 2 +- .../src/main/resources/bootstrap.yml | 2 +- cloud-modules/cloud-electronic/pom.xml | 86 +++++++++++++++++++ .../controller/CarFenceClazzController.java | 43 ++++++++++ .../server/controller/CarFenceController.java | 64 ++++++++++++++ .../controller/CarFenceTypeController.java | 43 ++++++++++ .../controller/CarMiddleController.java | 47 ++++++++++ .../server/mapper/CarFenceClazzMapper.java | 16 ++++ .../muyu/server/mapper/CarFenceMapper.java | 16 ++++ .../server/mapper/CarFenceTypeMapper.java | 16 ++++ .../muyu/server/mapper/CarMiddleMapper.java | 16 ++++ .../muyu/server/service/CarFenceService.java | 2 - .../service/impl/CarFenceServiceImpl.java | 1 - .../java/com/muyu/server/util/JdbcHelper.java | 2 +- ...ot.autoconfigure.AutoConfiguration.imports | 1 + .../src/main/resources/banner.txt | 2 + .../src/main/resources/bootstrap.yml | 47 ++++++++++ .../src/main/resources/logback/dev.xml | 74 ++++++++++++++++ .../src/main/resources/logback/prod.xml | 81 +++++++++++++++++ .../src/main/resources/logback/test.xml | 81 +++++++++++++++++ .../src/main/resources/bootstrap.yml | 2 +- .../src/main/resources/bootstrap.yml | 2 +- .../src/main/resources/bootstrap.yml | 2 +- cloud-modules/pom.xml | 1 + .../src/main/resources/bootstrap.yml | 2 +- pom.xml | 8 ++ 29 files changed, 655 insertions(+), 14 deletions(-) diff --git a/cloud-auth/src/main/resources/bootstrap.yml b/cloud-auth/src/main/resources/bootstrap.yml index 45285f9..9a56e49 100644 --- a/cloud-auth/src/main/resources/bootstrap.yml +++ b/cloud-auth/src/main/resources/bootstrap.yml @@ -4,7 +4,7 @@ server: # nacos线上地址 nacos: - addr: 47.116.173.119:8848 + addr: 127.0.0.1:8848 user-name: nacos password: nacos namespace: eight diff --git a/cloud-common/cloud-electronic-common/pom.xml b/cloud-common/cloud-electronic-common/pom.xml index da209e3..01caf71 100644 --- a/cloud-common/cloud-electronic-common/pom.xml +++ b/cloud-common/cloud-electronic-common/pom.xml @@ -5,22 +5,23 @@ 4.0.0 com.muyu - cloud-electronic - 1.0.0 + cloud-common + 3.6.3 cloud-electronic-common - 1.0.0 17 17 UTF-8 + com.muyu cloud-common-core + io.swagger.core.v3 swagger-annotations-jakarta diff --git a/cloud-common/pom.xml b/cloud-common/pom.xml index d00dfc6..a2df861 100644 --- a/cloud-common/pom.xml +++ b/cloud-common/pom.xml @@ -20,6 +20,7 @@ cloud-common-system cloud-common-xxl cloud-common-rabbit + cloud-electronic-common cloud-common diff --git a/cloud-gateway/src/main/java/com/muyu/gateway/service/impl/ValidateCodeServiceImpl.java b/cloud-gateway/src/main/java/com/muyu/gateway/service/impl/ValidateCodeServiceImpl.java index 879d887..978a3b4 100644 --- a/cloud-gateway/src/main/java/com/muyu/gateway/service/impl/ValidateCodeServiceImpl.java +++ b/cloud-gateway/src/main/java/com/muyu/gateway/service/impl/ValidateCodeServiceImpl.java @@ -50,7 +50,7 @@ public class ValidateCodeServiceImpl implements ValidateCodeService { CaptchaCodeResp.CaptchaCodeRespBuilder respBuilder = CaptchaCodeResp.builder() .captchaEnabled(captchaEnabled); if (!captchaEnabled) { - return Result.success(respBuilder); + return Result.success(respBuilder.build()); } // 保存验证码信息 diff --git a/cloud-gateway/src/main/resources/bootstrap.yml b/cloud-gateway/src/main/resources/bootstrap.yml index f93e94c..a9335ac 100644 --- a/cloud-gateway/src/main/resources/bootstrap.yml +++ b/cloud-gateway/src/main/resources/bootstrap.yml @@ -4,7 +4,7 @@ server: # nacos线上地址 nacos: - addr: 47.116.173.119:8848 + addr: 127.0.0.1:8848 user-name: nacos password: nacos namespace: eight diff --git a/cloud-modules/cloud-electronic/pom.xml b/cloud-modules/cloud-electronic/pom.xml index 5d72f99..75429f7 100644 --- a/cloud-modules/cloud-electronic/pom.xml +++ b/cloud-modules/cloud-electronic/pom.xml @@ -19,4 +19,90 @@ UTF-8 + + + + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + org.springframework.boot + spring-boot-starter-actuator + + + + com.mysql + mysql-connector-j + + + + com.muyu + cloud-common-datasource + + + + com.muyu + cloud-common-datascope + + + + com.muyu + cloud-common-log + + + + com.muyu + cloud-common-api-doc + + + com.muyu + cloud-electronic-common + 3.6.3 + + + com.github.pagehelper + pagehelper + 6.0.0 + + + + cloud-electronic + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java index e69de29..0b5a09c 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceClazzController.java @@ -0,0 +1,43 @@ +package com.muyu.server.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarFenceClazz; +import com.muyu.server.service.CarFenceClazzService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.controller + * @Project:cloud-electronic + * @name:CarFenceClazzController + * @Date:2024/9/20 14:31 + */ +@RequestMapping("/carFenceClazz") +@RestController +@AllArgsConstructor +@Tag(name = "查询数据",description = "从围栏信息表中查询数据") +@Log4j2 +public class CarFenceClazzController { + + private final CarFenceClazzService carFenceClazzService; + + /** + * 查询围栏类型信息 + */ + @PostMapping("/selectClazz") + @Operation(summary = "查询数据",description = "查询数据") + public Result> selectConnect(){ + List connects = carFenceClazzService.list(); + return Result.success( + connects, "操作成功" + ); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java index e69de29..a963e5e 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java @@ -0,0 +1,64 @@ +package com.muyu.server.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarFence; +import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.resq.CarFenceResq; +import com.muyu.server.service.CarFenceService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Author:yang + * @Package:com.muyu.server.controller + * @Project:cloud-electronic + * @name:CarFenceController + * @Date:2024/9/17 16:46 + */ +@RequestMapping("/carFence") +@RestController +@AllArgsConstructor +@Tag(name = "查询数据",description = "从围栏信息表中查询数据") +@Log4j2 +public class CarFenceController { + + private final CarFenceService carFenceService; + + /** + * 查询围栏信息 + */ + @PostMapping("/selectConnect") + @Operation(summary = "查询数据",description = "查询数据") + public Result> selectConnect( + @Validated @RequestBody CarFenceReq req + ){ + Page connects = carFenceService.selectCarFence(req); + return Result.success( + connects, "操作成功" + ); + } + + /** + * add + */ + @PostMapping("/addCarFence") + @Operation(summary = "查询数据",description = "查询数据") + public Result addCarFence( + @Validated @RequestBody CarFence carFence + ){ + boolean connects = carFenceService.save(carFence); + return connects?Result.success( + null, "操作成功" + ):Result.success( + null, "操作失败" + ); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java index e69de29..16e5fe5 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceTypeController.java @@ -0,0 +1,43 @@ +package com.muyu.server.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarFenceType; +import com.muyu.server.service.CarFenceTypeService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.controller + * @Project:cloud-electronic + * @name:CarFenceClazzController + * @Date:2024/9/20 14:31 + */ +@RequestMapping("/carFenceType") +@RestController +@AllArgsConstructor +@Tag(name = "查询数据",description = "从围栏信息表中查询数据") +@Log4j2 +public class CarFenceTypeController { + + private final CarFenceTypeService carFenceTypeService; + + /** + * 查询围栏业务信息 + */ + @PostMapping("/selectType") + @Operation(summary = "查询数据",description = "查询数据") + public Result> selectConnect(){ + List connects = carFenceTypeService.list(); + return Result.success( + connects, "操作成功" + ); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java index e69de29..f8dec20 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java @@ -0,0 +1,47 @@ +package com.muyu.server.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarMiddle; +import com.muyu.server.service.CarMiddleSerivce; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Author:yang + * @Package:com.muyu.server.controller + * @Project:cloud-electronic + * @name:CarMiddleController + * @Date:2024/9/20 16:33 + */ +@RequestMapping("/carMiddle") +@RestController +@AllArgsConstructor +@Tag(name = "添加数据",description = "从中间表添加数据") +@Log4j2 +public class CarMiddleController { + + private CarMiddleSerivce carMiddleSerivce; + + /** + * add中间表 + */ + @PostMapping("/carAddList") + @Operation(summary = "查询数据",description = "查询数据") + public Result addCarFence( + @Validated @RequestBody CarMiddle carMiddle + ){ + boolean connects = carMiddleSerivce.save(carMiddle); + return connects?Result.success( + null, "操作成功" + ):Result.success( + null, "操作失败" + ); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java index e69de29..26c51d3 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceClazzMapper.java @@ -0,0 +1,16 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarFenceClazz; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:yang + * @Package:com.muyu.server.mapper + * @Project:cloud-electronic + * @name:CarFenceClazzMapper + * @Date:2024/9/17 17:34 + */ +@Mapper +public interface CarFenceClazzMapper extends BaseMapper { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java index e69de29..59af5ec 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceMapper.java @@ -0,0 +1,16 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarFence; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:yang + * @Package:com.muyu.server.mysql + * @Project:cloud-electronic + * @name:CarFenceServiceMapper + * @Date:2024/9/17 17:13 + */ +@Mapper +public interface CarFenceMapper extends BaseMapper { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java index e69de29..d0ab490 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceTypeMapper.java @@ -0,0 +1,16 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarFenceType; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:yang + * @Package:com.muyu.server.mapper + * @Project:cloud-electronic + * @name:CarFenceTypeMapper + * @Date:2024/9/17 17:32 + */ +@Mapper +public interface CarFenceTypeMapper extends BaseMapper { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java index e69de29..e31a04f 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleMapper.java @@ -0,0 +1,16 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarMiddle; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:yang + * @Package:com.muyu.server.mapper + * @Project:cloud-electronic + * @name:CarMiddleMapper + * @Date:2024/9/20 16:35 + */ +@Mapper +public interface CarMiddleMapper extends BaseMapper { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java index b729069..0412252 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java @@ -6,8 +6,6 @@ import com.muyu.domain.CarFence; import com.muyu.domain.req.CarFenceReq; import com.muyu.domain.resq.CarFenceResq; -import java.util.List; - /** * @Author:yang * @Package:com.muyu.server.service diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java index 825bc81..6198faf 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java @@ -17,7 +17,6 @@ import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.List; /** diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java index c39f9cb..f6a2384 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/util/JdbcHelper.java @@ -1,4 +1,4 @@ -//package com.muyu.server.util; +package com.muyu.server.util;//package com.muyu.server.util; // //import com.alibaba.druid.pool.DruidDataSource; //import com.muyu.common.domain.Connect; diff --git a/cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index e69de29..8b13789 100644 --- a/cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/cloud-modules/cloud-electronic/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ + diff --git a/cloud-modules/cloud-electronic/src/main/resources/banner.txt b/cloud-modules/cloud-electronic/src/main/resources/banner.txt index e69de29..0dd5eee 100644 --- a/cloud-modules/cloud-electronic/src/main/resources/banner.txt +++ b/cloud-modules/cloud-electronic/src/main/resources/banner.txt @@ -0,0 +1,2 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} diff --git a/cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml b/cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml index e69de29..574393e 100644 --- a/cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml +++ b/cloud-modules/cloud-electronic/src/main/resources/bootstrap.yml @@ -0,0 +1,47 @@ +# Tomcat +server: + port: 9111 + +# 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} diff --git a/cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml b/cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml index e69de29..187e473 100644 --- a/cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml +++ b/cloud-modules/cloud-electronic/src/main/resources/logback/dev.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml b/cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml index e69de29..9f04f11 100644 --- a/cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml +++ b/cloud-modules/cloud-electronic/src/main/resources/logback/prod.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + ${log.sky.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-electronic/src/main/resources/logback/test.xml b/cloud-modules/cloud-electronic/src/main/resources/logback/test.xml index e69de29..9f04f11 100644 --- a/cloud-modules/cloud-electronic/src/main/resources/logback/test.xml +++ b/cloud-modules/cloud-electronic/src/main/resources/logback/test.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + ${log.sky.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml index 5f9488f..2863945 100644 --- a/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml +++ b/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml @@ -4,7 +4,7 @@ server: # nacos线上地址 nacos: - addr: 47.116.173.119:8848 + addr: 127.0.0.1:8848 user-name: nacos password: nacos namespace: eight diff --git a/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml index 827aa50..5735ae2 100644 --- a/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml +++ b/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml @@ -4,7 +4,7 @@ server: # nacos线上地址 nacos: - addr: 47.116.173.119:8848 + addr: 127.0.0.1:8848 user-name: nacos password: nacos namespace: eight diff --git a/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml index 64069d7..a0052fd 100644 --- a/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml +++ b/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml @@ -4,7 +4,7 @@ server: # nacos线上地址 nacos: - addr: 47.116.173.119:8848 + addr: 127.0.0.1:8848 user-name: nacos password: nacos namespace: eight diff --git a/cloud-modules/pom.xml b/cloud-modules/pom.xml index ba0d555..14084d4 100644 --- a/cloud-modules/pom.xml +++ b/cloud-modules/pom.xml @@ -9,6 +9,7 @@ 4.0.0 + cloud-electronic cloud-modules-system cloud-modules-gen cloud-modules-file diff --git a/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml b/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml index 175626d..10e7fb8 100644 --- a/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml +++ b/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml @@ -4,7 +4,7 @@ server: # nacos线上地址 nacos: - addr: 47.116.173.119:8848 + addr: 127.0.0.1:8848 user-name: nacos password: nacos namespace: eight diff --git a/pom.xml b/pom.xml index b30f0df..4aab805 100644 --- a/pom.xml +++ b/pom.xml @@ -246,6 +246,13 @@ ${muyu.version} + + + com.muyu + cloud-common-system + ${muyu.version} + + com.xuxueli @@ -275,6 +282,7 @@ cloud-visual cloud-modules cloud-common + cloud-modules/cloud-electronic pom From 10981bc80dce4b2e2250e53d072c9ef014f2d859 Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Tue, 24 Sep 2024 11:08:07 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E4=B8=AD=E9=97=B4?= =?UTF-8?q?=E8=A1=A8=EF=BC=8C=E6=B7=BB=E5=8A=A0=E8=BD=A6=E8=BE=86=E4=B8=AD?= =?UTF-8?q?=E9=97=B4=E8=A1=A8=E5=9B=B4=E6=A0=8F=E7=BB=84=E5=9B=B4=E6=A0=8F?= =?UTF-8?q?=E8=A1=A8=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/muyu/domain/CarFence.java | 6 + .../java/com/muyu/domain/CarFenceGroup.java | 54 ++++++++ .../java/com/muyu/domain/CarInformation.java | 83 ++++++++++++ .../main/java/com/muyu/domain/CarMiddle.java | 12 +- .../java/com/muyu/domain/CarMiddleGroup.java | 53 ++++++++ .../java/com/muyu/domain/req/CarGroupReq.java | 34 +++++ .../com/muyu/domain/req/FenceGroupReq.java | 35 ++++++ .../muyu/domain/resq/CarFenceGroupReq.java | 100 +++++++++++++++ .../server/controller/CarFenceController.java | 59 ++++++++- .../controller/CarFenceGroupController.java | 46 +++++++ .../controller/CarInformationController.java | 47 +++++++ .../server/mapper/CarFenceGroupMapper.java | 17 +++ .../server/mapper/CarInformationMapper.java | 16 +++ .../server/mapper/CarMiddleGroupMapper.java | 22 ++++ .../server/service/CarFenceGroupService.java | 15 +++ .../muyu/server/service/CarFenceService.java | 14 +++ .../server/service/CarInformationService.java | 14 +++ .../server/service/CarMiddleGroupService.java | 21 ++++ .../impl/CarFenceGroupServiceImpl.java | 22 ++++ .../service/impl/CarFenceServiceImpl.java | 118 +++++++++++++++++- .../impl/CarInformationServiceImpl.java | 22 ++++ .../impl/CarMiddleGroupServiceImpl.java | 44 +++++++ .../resources/mapper/CarMiddleGroupMapper.xml | 15 +++ 23 files changed, 860 insertions(+), 9 deletions(-) create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceGroup.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarInformation.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddleGroup.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupReq.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/FenceGroupReq.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarInformationController.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceGroupMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarInformationMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleGroupMapper.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceGroupService.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarInformationService.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceGroupServiceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java create mode 100644 cloud-modules/cloud-electronic/src/main/resources/mapper/CarMiddleGroupMapper.xml diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java index 4e4ef88..48e46e1 100644 --- a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFence.java @@ -13,6 +13,7 @@ import lombok.EqualsAndHashCode; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; +import java.util.List; /** * @Author:yang @@ -82,6 +83,11 @@ public class CarFence { * 中间表ID */ private Integer middleId; + /** + * 围栏组 + */ + @TableField(exist = false) + private List carFenceGroups; public static CarFence carFenceBuild(CarFence carFence) { return CarFence.builder() diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceGroup.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceGroup.java new file mode 100644 index 0000000..770e3a0 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarFenceGroup.java @@ -0,0 +1,54 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-server-8 + * @name:carFenceGroup + * @Date:2024/9/22 10:20 + */ +//weilabzu +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆电子业务类型") +@TableName(value = "car_fence_group",autoResultMap = true) +public class CarFenceGroup { + + /** + * 围栏组ID + */ + @TableId(value = "id",type = IdType.AUTO) + private Integer id; + /** + * 优先级 + */ + private Integer priority; + /** + * 启动状态 + */ + private String status; + /** + * 围栏组类型 + */ + private String groupType; + + public static CarFenceGroup carFenceBuild(CarFenceGroup carFenceGroup) { + return CarFenceGroup.builder() + .id(carFenceGroup.getId()) + .priority(carFenceGroup.getPriority()) + .status(carFenceGroup.getStatus()) + .groupType(carFenceGroup.getGroupType()) + .build(); + } +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarInformation.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarInformation.java new file mode 100644 index 0000000..174f2b4 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarInformation.java @@ -0,0 +1,83 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-server-8 + * @name:CarInformation + * @Date:2024/9/22 22:18 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "车辆表") +@TableName(value = "car_information",autoResultMap = true) +public class CarInformation { + + /** + * 车辆ID + */ + @TableId(value = "car_information_id",type = IdType.AUTO) + private Integer carInformationId; + /** + * 车辆唯一VIN + */ +// @TableName(value = "car_information_VIN") + private String carInformationVin; + /** + * 车牌号 + */ + private String carInformationLicensePlate; + /** + * 车辆颜色 + */ + private String carInformationColor; + /** + * 车辆驾驶员 + */ + private String carInformationDriver; + /** + * 车辆电子围栏外键ID + */ + private String carInformationFence; + /** + * 车检到期日期 + */ + @DateTimeFormat(fallbackPatterns = "yyyy/MM/dd hh:mm:ss") + @JsonFormat(pattern = "yyyy/MM/dd hh:mm:ss") + private Date carInformationExamineEnddata; + /** + * 车辆类型外键ID + */ + private Integer carInformationType; + /** + * 车辆品牌外键ID + */ + private Integer carInformationBrand; + /** + * 是否重点车辆 (0否默认 1是 ) + */ + private Integer carInformationFocus; + + public static CarInformation carInformationBuilder(CarInformation carInformation) { + return CarInformation.builder() + .carInformationId(carInformation.getCarInformationId()) + .carInformationLicensePlate(carInformation.getCarInformationLicensePlate()) + .build(); + } +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java index d7f8c47..6317746 100644 --- a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java @@ -1,5 +1,7 @@ package com.muyu.domain; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; @@ -18,20 +20,26 @@ import lombok.NoArgsConstructor; @AllArgsConstructor @NoArgsConstructor @Builder -@Tag(name = "车辆电子围栏中间表") +@Tag(name = "车辆电子组中间表") @TableName(value = "car_middle",autoResultMap = true) public class CarMiddle { /** * 中间表ID */ + @TableId(value = "id",type = IdType.AUTO) private Integer id; /** * 电子围栏ID */ - private Integer carFenceId; + private Integer fenceGroupId; /** * 车辆ID */ private Integer carInformationId; + + public CarMiddle(Integer fenceGroupId, Integer carInformationId) { + this.fenceGroupId = fenceGroupId; + this.carInformationId = carInformationId; + } } diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddleGroup.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddleGroup.java new file mode 100644 index 0000000..093d839 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddleGroup.java @@ -0,0 +1,53 @@ +package com.muyu.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain + * @Project:cloud-server-8 + * @name:carMiddleGroup + * @Date:2024/9/22 10:35 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Tag(name = "围栏组中间表围栏") +@TableName(value = "car_middle_group",autoResultMap = true) +public class CarMiddleGroup { + + /** + * 中间ID + */ + @TableId(value = "id",type = IdType.AUTO) + private Integer id; + /** + * 围栏ID + */ + private Integer carFenceId; + /** + * 围栏组 + */ + private Integer fenceGroupId; + + public CarMiddleGroup(Integer carFenceId, Integer fenceGroupId) { + this.carFenceId = carFenceId; + this.fenceGroupId = fenceGroupId; + } + + public static CarMiddleGroup carMiddleGroupBuilder(CarMiddleGroup carMiddleGroup) { + return CarMiddleGroup.builder() + .id(carMiddleGroup.getId()) + .carFenceId(carMiddleGroup.getCarFenceId()) + .fenceGroupId(carMiddleGroup.getFenceGroupId()) + .build(); + } +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupReq.java new file mode 100644 index 0000000..c3aeb37 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupReq.java @@ -0,0 +1,34 @@ +package com.muyu.domain.req; + +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.CarInformation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.domain.req + * @Project:cloud-server-8 + * @name:CarGroupReq + * @Date:2024/9/23 12:01 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "车辆电子围栏响应参数") +public class CarGroupReq { + /** + * 车辆 + */ + + private List carInformations; + /** + * 围栏组 + */ + private List carFenceGroups; + +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/FenceGroupReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/FenceGroupReq.java new file mode 100644 index 0000000..f721463 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/FenceGroupReq.java @@ -0,0 +1,35 @@ +package com.muyu.domain.req; + +import com.muyu.domain.CarFence; +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.CarInformation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.domain.req + * @Project:cloud-server-8 + * @name:FenceGroupReq + * @Date:2024/9/24 1:09 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "围栏组围栏响应参数") +public class FenceGroupReq { + + /** + * 车辆 + */ + + private List carFences; + /** + * 围栏组 + */ + private List carFenceGroups; +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java new file mode 100644 index 0000000..79d2873 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java @@ -0,0 +1,100 @@ +package com.muyu.domain.resq; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.muyu.domain.CarFenceGroup; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.domain.resq + * @Project:cloud-server-8 + * @name:CarFenceGroupReq + * @Date:2024/9/24 1:45 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "车辆电子围栏类") +public class CarFenceGroupReq { + /** + * 围栏主键 + */ + private Integer id; + /** + * 围栏名称 + */ + private String name; + /** + * 业务类型ID + */ + private Integer clazzId; + /** + * 业务类型名称 + */ + @TableField(exist = false) + private String clazzName; + /** + * 围栏类型ID + */ + private Integer typeId; + /** + * 围栏类型名称 + */ + @TableField(exist = false) + private String typeName; + /** + * 围栏经纬度 + */ + private String fenceText; + /** + * 围栏开始时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private Date fenceStart; + /** + * 围栏结束时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy-MM-dd hh:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private Date fenceEnd; + /** + * 创建时间 + */ + @DateTimeFormat(fallbackPatterns = "yyyy/MM/dd hh:mm:ss") + @JsonFormat(pattern = "yyyy/MM/dd hh:mm:ss") + private Date fenceCreate; + /** + * 中间表ID + */ + private Integer middleId; + /** + * 围栏组 + */ + @TableField(exist = false) + private List carFenceGroups; + /** + * 优先级 + */ + private Integer priority; + /** + * 启动状态 + */ + private String status; + /** + * 围栏组类型 + */ + private String groupType; +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java index a963e5e..74a9c42 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java @@ -1,9 +1,15 @@ package com.muyu.server.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.muyu.common.core.domain.Result; import com.muyu.domain.CarFence; +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.CarInformation; import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.req.CarGroupReq; +import com.muyu.domain.req.FenceGroupReq; +import com.muyu.domain.resq.CarFenceGroupReq; import com.muyu.domain.resq.CarFenceResq; import com.muyu.server.service.CarFenceService; import io.swagger.v3.oas.annotations.Operation; @@ -16,6 +22,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * @Author:yang * @Package:com.muyu.server.controller @@ -54,11 +62,60 @@ public class CarFenceController { public Result addCarFence( @Validated @RequestBody CarFence carFence ){ - boolean connects = carFenceService.save(carFence); + Boolean connects = carFenceService.addCarFence(carFence); return connects?Result.success( null, "操作成功" ):Result.success( null, "操作失败" ); } + + /** + * add + */ + @PostMapping("/carAddList") + @Operation(summary = "查询数据",description = "查询数据") + public Result addCarFence( + @Validated @RequestBody CarGroupReq req + ){ + Boolean connects = carFenceService.addCarGroup(req); + return connects?Result.success( + null, "操作成功" + ):Result.success( + null, "操作失败" + ); + } + + /** + * add + */ + @PostMapping("/selectFenceMiddleGroup") + @Operation(summary = "查询数据",description = "查询数据") + public Result selectFenceMiddleGroup( + @Validated @RequestBody FenceGroupReq req + ){ + Boolean connects = carFenceService.addFenceGroup(req); + return connects?Result.success( + null, "操作成功" + ):Result.success( + null, "操作失败" + ); + } + + /** + * 查询中间围栏 + */ + @PostMapping("/selectCarFenceGroupList") + @Operation(summary = "查询数据",description = "查询数据") + public Result> selectCarFenceGroupList( + @Validated @RequestBody Integer id + ){ + List list = carFenceService.selectCarFenceGroupList(id); + return list.size()!=0?Result.success( + list, "操作成功" + ):Result.success( + null, "未绑定围栏" + ); + } } + diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java new file mode 100644 index 0000000..ce119fc --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java @@ -0,0 +1,46 @@ +package com.muyu.server.controller; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.resq.CarFenceResq; +import com.muyu.server.service.CarFenceGroupService; +import com.muyu.server.service.CarMiddleGroupService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.controller + * @Project:cloud-server-8 + * @name:CarFenceGroupController + * @Date:2024/9/23 1:12 + */ +@RequestMapping("/CarFenceGroup") +@RestController +@AllArgsConstructor +@Tag(name = "查询数据",description = "从中间表中查询数据") +@Log4j2 +public class CarFenceGroupController { + + private final CarMiddleGroupService carMiddleGroupService; + + /** + * 查询围栏信息 + */ + @PostMapping("/selectCarMiddleGroup") + @Operation(summary = "查询数据",description = "查询数据") + public Result> selectConnect(){ + List connects = carMiddleGroupService.selectCarFence(); + return Result.success( + connects, "操作成功" + ); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarInformationController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarInformationController.java new file mode 100644 index 0000000..8c5c7dc --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarInformationController.java @@ -0,0 +1,47 @@ +package com.muyu.server.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarFenceType; +import com.muyu.domain.CarInformation; +import com.muyu.server.service.CarInformationService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.log4j.Log4j2; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.controller + * @Project:cloud-server-8 + * @name:CarInformationController + * @Date:2024/9/22 22:20 + */ +@RequestMapping("/carInformation") +@RestController +@AllArgsConstructor +@Tag(name = "查询数据",description = "从围栏信息表中查询数据") +@Log4j2 +public class CarInformationController { + + private final CarInformationService carInformationService; + + /** + * 查询围栏业务信息 + */ + @PostMapping("/selectCarInformation") + @Operation(summary = "查询数据",description = "查询数据") + public Result> selectConnect(){ + List connects = carInformationService.list() + .stream() + .map(CarInformation::carInformationBuilder) + .toList(); + return Result.success( + connects, "操作成功" + ); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceGroupMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceGroupMapper.java new file mode 100644 index 0000000..cf46fb8 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarFenceGroupMapper.java @@ -0,0 +1,17 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarFenceClazz; +import com.muyu.domain.CarFenceGroup; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:yang + * @Package:com.muyu.server.mapper + * @Project:cloud-server-8 + * @name:CarFenceGroupMapper + * @Date:2024/9/22 20:54 + */ +@Mapper +public interface CarFenceGroupMapper extends BaseMapper { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarInformationMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarInformationMapper.java new file mode 100644 index 0000000..f4ee33b --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarInformationMapper.java @@ -0,0 +1,16 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarInformation; +import org.apache.ibatis.annotations.Mapper; + +/** + * @Author:yang + * @Package:com.muyu.server.mapper + * @Project:cloud-server-8 + * @name:CarInformationMapper + * @Date:2024/9/22 22:24 + */ +@Mapper +public interface CarInformationMapper extends BaseMapper { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleGroupMapper.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleGroupMapper.java new file mode 100644 index 0000000..91aa15e --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/mapper/CarMiddleGroupMapper.java @@ -0,0 +1,22 @@ +package com.muyu.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.domain.CarMiddle; +import com.muyu.domain.CarMiddleGroup; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.mapper + * @Project:cloud-server-8 + * @name:CarMiddleGroupMapper + * @Date:2024/9/22 20:43 + */ +@Mapper +public interface CarMiddleGroupMapper extends BaseMapper { + List selectByIdList(@Param("carFenceId") Integer carFenceId); + +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceGroupService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceGroupService.java new file mode 100644 index 0000000..83cbc7a --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceGroupService.java @@ -0,0 +1,15 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarFenceClazz; +import com.muyu.domain.CarFenceGroup; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-server-8 + * @name:CarFenceGroupService + * @Date:2024/9/22 20:53 + */ +public interface CarFenceGroupService extends IService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java index 0412252..29981b2 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java @@ -3,9 +3,16 @@ package com.muyu.server.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.domain.CarFence; +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.CarInformation; import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.req.CarGroupReq; +import com.muyu.domain.req.FenceGroupReq; +import com.muyu.domain.resq.CarFenceGroupReq; import com.muyu.domain.resq.CarFenceResq; +import java.util.List; + /** * @Author:yang * @Package:com.muyu.server.service @@ -19,4 +26,11 @@ public interface CarFenceService extends IService { */ public Page selectCarFence(CarFenceReq req); + Boolean addCarFence(CarFence carFence); + + Boolean addCarGroup(CarGroupReq req); + + Boolean addFenceGroup(FenceGroupReq req); + + List selectCarFenceGroupList(Integer id); } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarInformationService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarInformationService.java new file mode 100644 index 0000000..ea50c7f --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarInformationService.java @@ -0,0 +1,14 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarInformation; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-server-8 + * @name:CarInformationService + * @Date:2024/9/22 22:22 + */ +public interface CarInformationService extends IService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java new file mode 100644 index 0000000..cb2dbca --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java @@ -0,0 +1,21 @@ +package com.muyu.server.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.CarMiddleGroup; + +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.service + * @Project:cloud-server-8 + * @name:CarMiddleGroupController + * @Date:2024/9/22 20:40 + */ +public interface CarMiddleGroupService extends IService { + /* + 查询中间 + */ + List selectCarFence(); +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceGroupServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceGroupServiceImpl.java new file mode 100644 index 0000000..af040a9 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceGroupServiceImpl.java @@ -0,0 +1,22 @@ +package com.muyu.server.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.CarFenceClazz; +import com.muyu.domain.CarFenceGroup; +import com.muyu.server.mapper.CarFenceClazzMapper; +import com.muyu.server.mapper.CarFenceGroupMapper; +import com.muyu.server.service.CarFenceGroupService; +import org.springframework.stereotype.Service; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-server-8 + * @name:CarFenceGroupServiceImpl + * @Date:2024/9/22 20:53 + */ +@Service +public class CarFenceGroupServiceImpl + extends ServiceImpl +implements CarFenceGroupService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java index 6198faf..98d47db 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java @@ -4,19 +4,19 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.StringUtils; -import com.muyu.domain.CarFence; -import com.muyu.domain.CarFenceClazz; -import com.muyu.domain.CarFenceType; +import com.muyu.domain.*; import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.req.CarGroupReq; +import com.muyu.domain.req.FenceGroupReq; +import com.muyu.domain.resq.CarFenceGroupReq; import com.muyu.domain.resq.CarFenceResq; import com.muyu.server.mapper.CarFenceMapper; -import com.muyu.server.service.CarFenceClazzService; -import com.muyu.server.service.CarFenceService; -import com.muyu.server.service.CarFenceTypeService; +import com.muyu.server.service.*; import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -36,6 +36,12 @@ public class CarFenceServiceImpl private CarFenceClazzService carFenceClazzService; @Autowired private CarFenceTypeService carFenceTypeService; + @Autowired + private CarMiddleGroupService carMiddleGroupService; + @Autowired + private CarFenceGroupService carFenceGroupService; + @Autowired + private CarMiddleSerivce carMiddleSerivce; /** * 查询围栏信息 */ @@ -94,6 +100,106 @@ public class CarFenceServiceImpl }}; } + @Override + public Boolean addCarFence(CarFence carFence) { + boolean connects = this.save(carFence); + System.out.println(carFence.getId()); + List carFenceGroups = carFence.getCarFenceGroups(); + carFenceGroupService.saveBatch(carFenceGroups); + carFenceGroups.forEach(carFenceGroup -> { + Integer id = carFenceGroup.getId(); + CarMiddleGroup carMiddleGroup = new CarMiddleGroup(); + carMiddleGroup.setCarFenceId(carFence.getId()); + carMiddleGroup.setFenceGroupId(carFenceGroup.getId()); + carMiddleGroupService.save(carMiddleGroup); + }); + return connects; + } + + @Override + public Boolean addCarGroup(CarGroupReq req) { + List carInformations = req.getCarInformations(); + List carFenceGroups = req.getCarFenceGroups(); + List carMiddles = new ArrayList<>(); + carFenceGroups.forEach(carFenceGroup -> { + + carInformations.forEach(carInformation -> { + Integer carFenceGroupId = carFenceGroup.getId(); + Integer carInformationId = carInformation.getCarInformationId(); + carMiddles.add(new CarMiddle(carFenceGroupId,carInformationId)); + }); + }); + return carMiddleSerivce.saveBatch(carMiddles); + } + + @Override + public Boolean addFenceGroup(FenceGroupReq req) { + List carInformations = req.getCarFences(); + List carFenceGroups = req.getCarFenceGroups(); + List carMiddles = new ArrayList<>(); + carFenceGroups.forEach(carFenceGroup -> { + + carInformations.forEach(carFence -> { + Integer carFenceGroupId = carFenceGroup.getId(); + Integer id = carFence.getId(); + carMiddles.add(new CarMiddleGroup(carFenceGroupId,id)); + }); + }); + return carMiddleGroupService.saveBatch(carMiddles); + } + + @Override + public List selectCarFenceGroupList(Integer id) { + List list = carMiddleGroupService.list( + new LambdaQueryWrapper() + .eq(CarMiddleGroup::getFenceGroupId,id)) + .stream() + .map(CarMiddleGroup::carMiddleGroupBuilder) + .toList(); + List carFenceGroupReqs = new ArrayList<>(); + list.forEach(carMiddleGroup -> { + this.carMiddleList(carMiddleGroup,carFenceGroupReqs); + }); + return carFenceGroupReqs; + } + + private void carMiddleList(CarMiddleGroup carMiddleGroup, List carFenceGroupReqs) { + Integer carFenceId = carMiddleGroup.getCarFenceId(); + Integer fenceGroupId = carMiddleGroup.getFenceGroupId(); + List carFenceList = this.list( + new LambdaQueryWrapper() + .eq(CarFence::getId,carFenceId)) + .stream() + .map(CarFence::carFenceBuild) + .toList(); + List carFenceGroupsList = carFenceGroupService.list( + new LambdaQueryWrapper() + .eq(CarFenceGroup::getId,fenceGroupId)) + .stream() + .map(CarFenceGroup::carFenceBuild) + .toList(); + carFenceList.forEach(carFence -> { + CarFenceGroupReq carFenceGroupReq = new CarFenceGroupReq(); + carFenceGroupReq.setId(carFence.getId()); + carFenceGroupReq.setName(carFence.getName()); + carFenceGroupReq.setClazzId(carFence.getClazzId()); + carFenceGroupReq.setTypeId(carFence.getTypeId()); + carFenceGroupReq.setFenceText(carFence.getFenceText()); + carFenceGroupReq.setFenceStart(carFence.getFenceStart()); + carFenceGroupReq.setFenceEnd(carFence.getFenceEnd()); + carFenceGroupReq.setFenceCreate(carFence.getFenceCreate()); + + carFenceGroupReqs.add(carFenceGroupReq); + }); + carFenceGroupsList.forEach(carFenceGroup -> { + carFenceGroupReqs.forEach(carFenceGroupReq -> { + carFenceGroupReq.setPriority(carFenceGroup.getPriority()); + carFenceGroupReq.setStatus(carFenceGroup.getStatus()); + carFenceGroupReq.setGroupType(carFenceGroup.getGroupType()); + }); + }); + } + /** * 优化查询返回值 diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java new file mode 100644 index 0000000..f6a95a9 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java @@ -0,0 +1,22 @@ +package com.muyu.server.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.CarFenceType; +import com.muyu.domain.CarInformation; +import com.muyu.server.mapper.CarFenceTypeMapper; +import com.muyu.server.mapper.CarInformationMapper; +import com.muyu.server.service.CarInformationService; +import org.springframework.stereotype.Service; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-server-8 + * @name:CarInformationServiceImpl + * @Date:2024/9/22 22:22 + */ +@Service +public class CarInformationServiceImpl + extends ServiceImpl + implements CarInformationService { +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java new file mode 100644 index 0000000..32d4eb5 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java @@ -0,0 +1,44 @@ +package com.muyu.server.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.CarFenceType; +import com.muyu.domain.CarMiddleGroup; +import com.muyu.server.mapper.CarFenceTypeMapper; +import com.muyu.server.mapper.CarMiddleGroupMapper; +import com.muyu.server.service.CarFenceGroupService; +import com.muyu.server.service.CarFenceTypeService; +import com.muyu.server.service.CarMiddleGroupService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Author:yang + * @Package:com.muyu.server.service.impl + * @Project:cloud-server-8 + * @name:CarMiddleGroupServiceImpl + * @Date:2024/9/22 20:43 + */ +@Service +public class CarMiddleGroupServiceImpl + extends ServiceImpl + implements CarMiddleGroupService { + + @Autowired + private CarMiddleGroupMapper carMiddleGroupMapper; + @Autowired + private CarFenceGroupService carFenceGroupService; + + /** + * 查询中间操作 + * @return + */ + @Override + public List selectCarFence() { + return carFenceGroupService.list(); + } +} diff --git a/cloud-modules/cloud-electronic/src/main/resources/mapper/CarMiddleGroupMapper.xml b/cloud-modules/cloud-electronic/src/main/resources/mapper/CarMiddleGroupMapper.xml new file mode 100644 index 0000000..e95c1a4 --- /dev/null +++ b/cloud-modules/cloud-electronic/src/main/resources/mapper/CarMiddleGroupMapper.xml @@ -0,0 +1,15 @@ + + + + + + From c174e8adab7fa36dffd4569a1988eaf3dfbd79db Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Wed, 25 Sep 2024 19:53:11 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=A7=A3=E7=BB=91?= =?UTF-8?q?=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/muyu/domain/req/CarFenceGroupReq.java | 28 +++++++++++++++++++ .../java/com/muyu/domain/req/CarFenceReq.java | 2 +- .../com/muyu/domain/req/CarGroupIdReq.java | 28 +++++++++++++++++++ .../server/controller/CarFenceController.java | 21 +++++++++++--- .../controller/CarFenceGroupController.java | 2 ++ .../controller/CarMiddleController.java | 16 +++++++++++ .../muyu/server/service/CarFenceService.java | 3 ++ .../server/service/CarMiddleGroupService.java | 2 ++ .../muyu/server/service/CarMiddleSerivce.java | 5 ++++ .../service/impl/CarFenceServiceImpl.java | 14 ++++++++++ .../impl/CarMiddleGroupServiceImpl.java | 1 + 11 files changed, 117 insertions(+), 5 deletions(-) create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceGroupReq.java create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupIdReq.java diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceGroupReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceGroupReq.java new file mode 100644 index 0000000..a6dc5f8 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceGroupReq.java @@ -0,0 +1,28 @@ +package com.muyu.domain.req; + +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain.req + * @Project:cloud-server-8 + * @name:CarFenceGroupReq + * @Date:2024/9/24 14:36 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "车辆电子围栏组响应参数") +public class CarFenceGroupReq { + /** + * 车辆ID + */ + private Integer carId; + /** + * 围栏组ID + */ + private Integer id; +} diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java index d871b51..41e5aac 100644 --- a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarFenceReq.java @@ -17,7 +17,7 @@ import lombok.NoArgsConstructor; @Data @AllArgsConstructor @NoArgsConstructor -@Tag(name = "车辆电子围栏响应参数") +@Tag(name = "电子围栏响应参数") public class CarFenceReq { /** diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupIdReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupIdReq.java new file mode 100644 index 0000000..1af3913 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/req/CarGroupIdReq.java @@ -0,0 +1,28 @@ +package com.muyu.domain.req; + +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain.req + * @Project:cloud-server-8 + * @name:CarFenceGroupDel + * @Date:2024/9/24 11:49 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "围栏组电子围栏响应参数") +public class CarGroupIdReq { + /** + * 围栏组Id + */ + private Integer ids; + /** + * 围栏ID + */ + private Integer id; +} diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java index 74a9c42..3718837 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java @@ -7,6 +7,7 @@ import com.muyu.domain.CarFence; import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarInformation; import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.req.CarGroupIdReq; import com.muyu.domain.req.CarGroupReq; import com.muyu.domain.req.FenceGroupReq; import com.muyu.domain.resq.CarFenceGroupReq; @@ -17,10 +18,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -117,5 +115,20 @@ public class CarFenceController { null, "未绑定围栏" ); } + /** + * 查询中间围栏 + */ + @DeleteMapping("/carFenceGroupDel") + @Operation(summary = "解除绑定围栏",description = "查询围栏数据") + public Result carFenceGroupDel( + @Validated @RequestBody CarGroupIdReq carGroupIdReq + ){ + Boolean list = carFenceService.carFenceGroupDel(carGroupIdReq); + return list?Result.success( + null, "操作成功" + ):Result.success( + null, "未绑定围栏" + ); + } } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java index ce119fc..faed306 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceGroupController.java @@ -3,6 +3,7 @@ package com.muyu.server.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.muyu.common.core.domain.Result; import com.muyu.domain.CarFenceGroup; +import com.muyu.domain.req.CarFenceGroupReq; import com.muyu.domain.req.CarFenceReq; import com.muyu.domain.resq.CarFenceResq; import com.muyu.server.service.CarFenceGroupService; @@ -43,4 +44,5 @@ public class CarFenceGroupController { connects, "操作成功" ); } + } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java index f8dec20..de9d3ca 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java @@ -1,7 +1,9 @@ package com.muyu.server.controller; import com.muyu.common.core.domain.Result; +import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarMiddle; +import com.muyu.domain.req.CarFenceGroupReq; import com.muyu.server.service.CarMiddleSerivce; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; @@ -13,6 +15,8 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * @Author:yang * @Package:com.muyu.server.controller @@ -44,4 +48,16 @@ public class CarMiddleController { null, "操作失败" ); } + + /** + * 查询车辆围栏组信息 + */ + @PostMapping("/carGroupList") + @Operation(summary = "查询车辆围栏组数据",description = "查询车辆围栏组信息") + public Result> carGroupList(@RequestBody CarFenceGroupReq req){ + List connects = carMiddleSerivce.carGroupList(req); + return Result.success( + connects, "操作成功" + ); + } } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java index 29981b2..edd2ffc 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java @@ -6,6 +6,7 @@ import com.muyu.domain.CarFence; import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarInformation; import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.req.CarGroupIdReq; import com.muyu.domain.req.CarGroupReq; import com.muyu.domain.req.FenceGroupReq; import com.muyu.domain.resq.CarFenceGroupReq; @@ -33,4 +34,6 @@ public interface CarFenceService extends IService { Boolean addFenceGroup(FenceGroupReq req); List selectCarFenceGroupList(Integer id); + + Boolean carFenceGroupDel(CarGroupIdReq carGroupIdReq); } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java index cb2dbca..9810217 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleGroupService.java @@ -3,6 +3,7 @@ package com.muyu.server.service; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarMiddleGroup; +import com.muyu.domain.req.CarFenceGroupReq; import java.util.List; @@ -18,4 +19,5 @@ public interface CarMiddleGroupService extends IService { 查询中间 */ List selectCarFence(); + } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java index abb2db3..b64b91d 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java @@ -1,7 +1,11 @@ package com.muyu.server.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarMiddle; +import com.muyu.domain.req.CarFenceGroupReq; + +import java.util.List; /** * @Author:yang @@ -11,4 +15,5 @@ import com.muyu.domain.CarMiddle; * @Date:2024/9/20 16:34 */ public interface CarMiddleSerivce extends IService { + List carGroupList(CarFenceGroupReq req); } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java index 98d47db..25a51d8 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.StringUtils; import com.muyu.domain.*; import com.muyu.domain.req.CarFenceReq; +import com.muyu.domain.req.CarGroupIdReq; import com.muyu.domain.req.CarGroupReq; import com.muyu.domain.req.FenceGroupReq; import com.muyu.domain.resq.CarFenceGroupReq; @@ -163,6 +164,19 @@ public class CarFenceServiceImpl return carFenceGroupReqs; } + @Override + public Boolean carFenceGroupDel(CarGroupIdReq carGroupIdReq) { + + List list = carMiddleGroupService.list( + new LambdaQueryWrapper() + .eq(CarMiddleGroup::getCarFenceId, carGroupIdReq.getId()) + .eq(CarMiddleGroup::getFenceGroupId, carGroupIdReq.getIds())) + .stream() + .map(CarMiddleGroup::carMiddleGroupBuilder) + .toList(); + return carMiddleGroupService.removeBatchByIds(list); + } + private void carMiddleList(CarMiddleGroup carMiddleGroup, List carFenceGroupReqs) { Integer carFenceId = carMiddleGroup.getCarFenceId(); Integer fenceGroupId = carMiddleGroup.getFenceGroupId(); diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java index 32d4eb5..ceaa905 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleGroupServiceImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarFenceType; import com.muyu.domain.CarMiddleGroup; +import com.muyu.domain.req.CarFenceGroupReq; import com.muyu.server.mapper.CarFenceTypeMapper; import com.muyu.server.mapper.CarMiddleGroupMapper; import com.muyu.server.service.CarFenceGroupService; From 29c84f90ef7f9ed82564086412c7b6803b58a990 Mon Sep 17 00:00:00 2001 From: Yueng <14617246+YuengMeYuuer@user.noreply.gitee.com> Date: Thu, 26 Sep 2024 14:57:48 +0800 Subject: [PATCH 5/5] Merge branch 'master' of https://gitea.qinmian.online/a_bazu/cloud-server-8 into dev.yang # Conflicts: # cloud-auth/src/main/resources/bootstrap.yml # cloud-common/pom.xml # cloud-gateway/src/main/resources/bootstrap.yml # cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml # cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml # cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml # cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml --- .../main/java/com/muyu/domain/CarMiddle.java | 8 ++ ...ceGroupReq.java => CarFenceGroupResq.java} | 6 +- .../muyu/domain/resq/CarFenceGroupsResq.java | 49 ++++++++ .../cloud-Vehicle-Simulation/pom.xml | 106 ++++++++++++++++++ .../vehicle/VehicleSimulationApplication.java | 20 ++++ ...ot.autoconfigure.AutoConfiguration.imports | 1 + .../src/main/resources/banner.txt | 2 + .../src/main/resources/bootstrap.yml | 47 ++++++++ .../src/main/resources/logback/dev.xml | 74 ++++++++++++ .../src/main/resources/logback/prod.xml | 81 +++++++++++++ .../src/main/resources/logback/test.xml | 81 +++++++++++++ .../resources/mapper/CarMiddleGroupMapper.xml | 15 +++ .../server/controller/CarFenceController.java | 27 +++-- .../controller/CarMiddleController.java | 13 +-- .../muyu/server/service/CarFenceService.java | 14 +-- .../muyu/server/service/CarMiddleSerivce.java | 3 +- .../service/impl/CarFenceServiceImpl.java | 104 +++++++++++++---- .../service/impl/CarMiddleSerivceImpl.java | 12 +- pom.xml | 1 + 19 files changed, 603 insertions(+), 61 deletions(-) rename cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/{CarFenceGroupReq.java => CarFenceGroupResq.java} (90%) create mode 100644 cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupsResq.java create mode 100644 cloud-modules/cloud-Vehicle-Simulation/pom.xml create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/java/com/muyu/vehicle/VehicleSimulationApplication.java create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/banner.txt create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/bootstrap.yml create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/dev.xml create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/prod.xml create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/test.xml create mode 100644 cloud-modules/cloud-Vehicle-Simulation/src/main/resources/mapper/CarMiddleGroupMapper.xml diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java index 6317746..5e3f390 100644 --- a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/CarMiddle.java @@ -42,4 +42,12 @@ public class CarMiddle { this.fenceGroupId = fenceGroupId; this.carInformationId = carInformationId; } + + public static CarMiddle carMiddleBuilder(CarMiddle carMiddle) { + return CarMiddle.builder() + .id(carMiddle.getId()) + .fenceGroupId(carMiddle.getFenceGroupId()) + .carInformationId(carMiddle.getCarInformationId()) + .build(); + } } diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupResq.java similarity index 90% rename from cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java rename to cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupResq.java index 79d2873..81c5f48 100644 --- a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupReq.java +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupResq.java @@ -1,14 +1,10 @@ package com.muyu.domain.resq; -import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.muyu.domain.CarFenceGroup; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.format.annotation.DateTimeFormat; @@ -27,7 +23,7 @@ import java.util.List; @AllArgsConstructor @NoArgsConstructor @Tag(name = "车辆电子围栏类") -public class CarFenceGroupReq { +public class CarFenceGroupResq { /** * 围栏主键 */ diff --git a/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupsResq.java b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupsResq.java new file mode 100644 index 0000000..211b2f7 --- /dev/null +++ b/cloud-common/cloud-electronic-common/src/main/java/com/muyu/domain/resq/CarFenceGroupsResq.java @@ -0,0 +1,49 @@ +package com.muyu.domain.resq; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author:yang + * @Package:com.muyu.domain.resq + * @Project:cloud-server-8 + * @name:CarFenceGroupsResq + * @Date:2024/9/25 21:08 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Tag(name = "车辆电子围栏类") +public class CarFenceGroupsResq { + + /** + * 围栏组ID + */ + @TableId(value = "id",type = IdType.AUTO) + private Integer id; + /** + * 优先级 + */ + private Integer priority; + /** + * 启动状态 + */ + private String status; + /** + * 围栏组类型 + */ + private String groupType; + /** + * 车辆唯一VIN + */ +// @TableName(value = "car_information_VIN") + private String carInformationLicensePlate; + /** + * 围栏经纬度 + */ + private String fenceText; +} diff --git a/cloud-modules/cloud-Vehicle-Simulation/pom.xml b/cloud-modules/cloud-Vehicle-Simulation/pom.xml new file mode 100644 index 0000000..eff5a9b --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/pom.xml @@ -0,0 +1,106 @@ + + + 4.0.0 + + com.muyu + cloud-server + 3.6.3 + ../../pom.xml + + com.muyu.server + cloud-Vehicle-Simulation + + + 21 + 21 + UTF-8 + + + + + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + org.springframework.boot + spring-boot-starter-actuator + + + + com.mysql + mysql-connector-j + + + + com.muyu + cloud-common-datasource + + + + com.muyu + cloud-common-datascope + + + + com.muyu + cloud-common-log + + + + com.muyu + cloud-common-api-doc + + + com.muyu + cloud-electronic-common + 3.6.3 + + + com.github.pagehelper + pagehelper + 6.0.0 + + + + cloud-electronic + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/java/com/muyu/vehicle/VehicleSimulationApplication.java b/cloud-modules/cloud-Vehicle-Simulation/src/main/java/com/muyu/vehicle/VehicleSimulationApplication.java new file mode 100644 index 0000000..4c91838 --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/java/com/muyu/vehicle/VehicleSimulationApplication.java @@ -0,0 +1,20 @@ +package com.muyu.vehicle; + +import com.muyu.common.security.annotation.EnableMyFeignClients; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +/** + * @Author:杨闪闪 + * @Package:com.muyu.server.integration + * @Project:cloud-integration + * @name:Integration + * @Date:2024/9/17 下午9:56 + */ +@EnableMyFeignClients +@SpringBootApplication +public class VehicleSimulationApplication { + public static void main(String[] args) { + SpringApplication.run(VehicleSimulationApplication.class, args); + } +} diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -0,0 +1 @@ + diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/banner.txt b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/banner.txt new file mode 100644 index 0000000..0dd5eee --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/banner.txt @@ -0,0 +1,2 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/bootstrap.yml b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..574393e --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/bootstrap.yml @@ -0,0 +1,47 @@ +# Tomcat +server: + port: 9111 + +# 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} diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/dev.xml b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/dev.xml new file mode 100644 index 0000000..187e473 --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/dev.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/prod.xml b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/prod.xml new file mode 100644 index 0000000..9f04f11 --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/prod.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + ${log.sky.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/test.xml b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/test.xml new file mode 100644 index 0000000..9f04f11 --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/logback/test.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + ${log.sky.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + + + ERROR + + ACCEPT + + DENY + + + + + + + + ${log.sky.pattern} + + + + + + + + + + + + + + + + + + + + diff --git a/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/mapper/CarMiddleGroupMapper.xml b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/mapper/CarMiddleGroupMapper.xml new file mode 100644 index 0000000..e95c1a4 --- /dev/null +++ b/cloud-modules/cloud-Vehicle-Simulation/src/main/resources/mapper/CarMiddleGroupMapper.xml @@ -0,0 +1,15 @@ + + + + + + diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java index 3718837..a15dcf2 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarFenceController.java @@ -1,16 +1,11 @@ package com.muyu.server.controller; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.muyu.common.core.domain.Result; import com.muyu.domain.CarFence; -import com.muyu.domain.CarFenceGroup; -import com.muyu.domain.CarInformation; -import com.muyu.domain.req.CarFenceReq; -import com.muyu.domain.req.CarGroupIdReq; -import com.muyu.domain.req.CarGroupReq; -import com.muyu.domain.req.FenceGroupReq; -import com.muyu.domain.resq.CarFenceGroupReq; +import com.muyu.domain.req.*; +import com.muyu.domain.resq.CarFenceGroupResq; +import com.muyu.domain.resq.CarFenceGroupsResq; import com.muyu.domain.resq.CarFenceResq; import com.muyu.server.service.CarFenceService; import io.swagger.v3.oas.annotations.Operation; @@ -105,10 +100,10 @@ public class CarFenceController { */ @PostMapping("/selectCarFenceGroupList") @Operation(summary = "查询数据",description = "查询数据") - public Result> selectCarFenceGroupList( + public Result> selectCarFenceGroupList( @Validated @RequestBody Integer id ){ - List list = carFenceService.selectCarFenceGroupList(id); + List list = carFenceService.selectCarFenceGroupList(id); return list.size()!=0?Result.success( list, "操作成功" ):Result.success( @@ -130,5 +125,17 @@ public class CarFenceController { null, "未绑定围栏" ); } + + /** + * 查询车辆围栏组信息 + */ + @PostMapping("/carGroupList") + @Operation(summary = "查询车辆围栏组数据",description = "查询车辆围栏组信息") + public Result> carGroupList(@RequestBody CarFenceGroupReq req){ + List connects = carFenceService.carGroupList(req); + return Result.success( + connects, "操作成功" + ); + } } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java index de9d3ca..6a27f3a 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/controller/CarMiddleController.java @@ -4,6 +4,7 @@ import com.muyu.common.core.domain.Result; import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarMiddle; import com.muyu.domain.req.CarFenceGroupReq; +import com.muyu.domain.resq.CarFenceGroupsResq; import com.muyu.server.service.CarMiddleSerivce; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; @@ -49,15 +50,5 @@ public class CarMiddleController { ); } - /** - * 查询车辆围栏组信息 - */ - @PostMapping("/carGroupList") - @Operation(summary = "查询车辆围栏组数据",description = "查询车辆围栏组信息") - public Result> carGroupList(@RequestBody CarFenceGroupReq req){ - List connects = carMiddleSerivce.carGroupList(req); - return Result.success( - connects, "操作成功" - ); - } + } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java index edd2ffc..2a3b5e6 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarFenceService.java @@ -3,13 +3,9 @@ package com.muyu.server.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.domain.CarFence; -import com.muyu.domain.CarFenceGroup; -import com.muyu.domain.CarInformation; -import com.muyu.domain.req.CarFenceReq; -import com.muyu.domain.req.CarGroupIdReq; -import com.muyu.domain.req.CarGroupReq; -import com.muyu.domain.req.FenceGroupReq; -import com.muyu.domain.resq.CarFenceGroupReq; +import com.muyu.domain.req.*; +import com.muyu.domain.resq.CarFenceGroupResq; +import com.muyu.domain.resq.CarFenceGroupsResq; import com.muyu.domain.resq.CarFenceResq; import java.util.List; @@ -33,7 +29,9 @@ public interface CarFenceService extends IService { Boolean addFenceGroup(FenceGroupReq req); - List selectCarFenceGroupList(Integer id); + List selectCarFenceGroupList(Integer id); Boolean carFenceGroupDel(CarGroupIdReq carGroupIdReq); + + List carGroupList(CarFenceGroupReq req); } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java index b64b91d..7365dbd 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/CarMiddleSerivce.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.domain.CarFenceGroup; import com.muyu.domain.CarMiddle; import com.muyu.domain.req.CarFenceGroupReq; +import com.muyu.domain.resq.CarFenceGroupsResq; import java.util.List; @@ -15,5 +16,5 @@ import java.util.List; * @Date:2024/9/20 16:34 */ public interface CarMiddleSerivce extends IService { - List carGroupList(CarFenceGroupReq req); + } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java index 25a51d8..3b10fea 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarFenceServiceImpl.java @@ -5,11 +5,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.StringUtils; import com.muyu.domain.*; -import com.muyu.domain.req.CarFenceReq; -import com.muyu.domain.req.CarGroupIdReq; -import com.muyu.domain.req.CarGroupReq; -import com.muyu.domain.req.FenceGroupReq; -import com.muyu.domain.resq.CarFenceGroupReq; +import com.muyu.domain.req.*; +import com.muyu.domain.resq.CarFenceGroupResq; +import com.muyu.domain.resq.CarFenceGroupsResq; import com.muyu.domain.resq.CarFenceResq; import com.muyu.server.mapper.CarFenceMapper; import com.muyu.server.service.*; @@ -43,6 +41,8 @@ public class CarFenceServiceImpl private CarFenceGroupService carFenceGroupService; @Autowired private CarMiddleSerivce carMiddleSerivce; + @Autowired + private CarInformationService carInformationService; /** * 查询围栏信息 */ @@ -150,18 +150,18 @@ public class CarFenceServiceImpl } @Override - public List selectCarFenceGroupList(Integer id) { + public List selectCarFenceGroupList(Integer id) { List list = carMiddleGroupService.list( new LambdaQueryWrapper() .eq(CarMiddleGroup::getFenceGroupId,id)) .stream() .map(CarMiddleGroup::carMiddleGroupBuilder) .toList(); - List carFenceGroupReqs = new ArrayList<>(); + List carFenceGroupResqs = new ArrayList<>(); list.forEach(carMiddleGroup -> { - this.carMiddleList(carMiddleGroup,carFenceGroupReqs); + this.carMiddleList(carMiddleGroup, carFenceGroupResqs); }); - return carFenceGroupReqs; + return carFenceGroupResqs; } @Override @@ -177,7 +177,7 @@ public class CarFenceServiceImpl return carMiddleGroupService.removeBatchByIds(list); } - private void carMiddleList(CarMiddleGroup carMiddleGroup, List carFenceGroupReqs) { + private void carMiddleList(CarMiddleGroup carMiddleGroup, List carFenceGroupResqs) { Integer carFenceId = carMiddleGroup.getCarFenceId(); Integer fenceGroupId = carMiddleGroup.getFenceGroupId(); List carFenceList = this.list( @@ -193,23 +193,23 @@ public class CarFenceServiceImpl .map(CarFenceGroup::carFenceBuild) .toList(); carFenceList.forEach(carFence -> { - CarFenceGroupReq carFenceGroupReq = new CarFenceGroupReq(); - carFenceGroupReq.setId(carFence.getId()); - carFenceGroupReq.setName(carFence.getName()); - carFenceGroupReq.setClazzId(carFence.getClazzId()); - carFenceGroupReq.setTypeId(carFence.getTypeId()); - carFenceGroupReq.setFenceText(carFence.getFenceText()); - carFenceGroupReq.setFenceStart(carFence.getFenceStart()); - carFenceGroupReq.setFenceEnd(carFence.getFenceEnd()); - carFenceGroupReq.setFenceCreate(carFence.getFenceCreate()); + CarFenceGroupResq carFenceGroupResq = new CarFenceGroupResq(); + carFenceGroupResq.setId(carFence.getId()); + carFenceGroupResq.setName(carFence.getName()); + carFenceGroupResq.setClazzId(carFence.getClazzId()); + carFenceGroupResq.setTypeId(carFence.getTypeId()); + carFenceGroupResq.setFenceText(carFence.getFenceText()); + carFenceGroupResq.setFenceStart(carFence.getFenceStart()); + carFenceGroupResq.setFenceEnd(carFence.getFenceEnd()); + carFenceGroupResq.setFenceCreate(carFence.getFenceCreate()); - carFenceGroupReqs.add(carFenceGroupReq); + carFenceGroupResqs.add(carFenceGroupResq); }); carFenceGroupsList.forEach(carFenceGroup -> { - carFenceGroupReqs.forEach(carFenceGroupReq -> { - carFenceGroupReq.setPriority(carFenceGroup.getPriority()); - carFenceGroupReq.setStatus(carFenceGroup.getStatus()); - carFenceGroupReq.setGroupType(carFenceGroup.getGroupType()); + carFenceGroupResqs.forEach(carFenceGroupResq -> { + carFenceGroupResq.setPriority(carFenceGroup.getPriority()); + carFenceGroupResq.setStatus(carFenceGroup.getStatus()); + carFenceGroupResq.setGroupType(carFenceGroup.getGroupType()); }); }); } @@ -242,4 +242,60 @@ public class CarFenceServiceImpl }); }); } + @Override + public List carGroupList(CarFenceGroupReq req) { + + List fenceGroupList = new ArrayList<>(); + CarFenceGroupsResq carFenceGroupsResq = new CarFenceGroupsResq(); + + List list = carMiddleGroupService.list( + new LambdaQueryWrapper() + .eq(CarMiddleGroup::getCarFenceId, req.getId())) + .stream() + .map(CarMiddleGroup::carMiddleGroupBuilder) + .toList(); + List carFenceList = this.list() + .stream() + .map(CarFence::carFenceBuild) + .toList(); + list.forEach(carMiddleGroup -> { + List carMiddleGroupList = carMiddleSerivce.list( + new LambdaQueryWrapper() + .eq(CarMiddle::getFenceGroupId, carMiddleGroup.getFenceGroupId())) + .stream() + .map(CarMiddle::carMiddleBuilder) + .toList(); + carMiddleGroupList.forEach(carMiddle -> { + List carFenceGroupList = carFenceGroupService.list( + new LambdaQueryWrapper() + .eq(CarFenceGroup::getId, carMiddle.getFenceGroupId())) + .stream() + .map(CarFenceGroup::carFenceBuild) + .toList(); + List carInformationList = carInformationService.list( + new LambdaQueryWrapper() + .eq(CarInformation::getCarInformationId, carMiddle.getCarInformationId())) + .stream() + .map(CarInformation::carInformationBuilder) + .toList(); + carFenceList.forEach(carFence -> { + + carFenceGroupsResq.setFenceText(carFence.getFenceText()); + + }); + carFenceGroupList.forEach(carFenceGroup -> { + carFenceGroupsResq.setId(carFenceGroup.getId()); + carFenceGroupsResq.setStatus(carFenceGroup.getStatus()); + carFenceGroupsResq.setPriority(carFenceGroup.getPriority()); + carFenceGroupsResq.setGroupType(carFenceGroup.getGroupType()); + + }); + carInformationList.forEach(carInformation -> { + carFenceGroupsResq.setCarInformationLicensePlate(carInformation.getCarInformationLicensePlate()); + }); + fenceGroupList.add(carFenceGroupsResq); + }); + }); + return fenceGroupList; + } } diff --git a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java index 8b04398..976532c 100644 --- a/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java +++ b/cloud-modules/cloud-electronic/src/main/java/com/muyu/server/service/impl/CarMiddleSerivceImpl.java @@ -1,11 +1,18 @@ package com.muyu.server.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.muyu.domain.CarMiddle; +import com.muyu.domain.*; +import com.muyu.domain.req.CarFenceGroupReq; +import com.muyu.domain.resq.CarFenceGroupsResq; import com.muyu.server.mapper.CarMiddleMapper; -import com.muyu.server.service.CarMiddleSerivce; +import com.muyu.server.service.*; +import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.List; + /** * @Author:yang * @Package:com.muyu.server.service.impl @@ -14,6 +21,7 @@ import org.springframework.stereotype.Service; * @Date:2024/9/20 16:34 */ @Service +@AllArgsConstructor public class CarMiddleSerivceImpl extends ServiceImpl implements CarMiddleSerivce { diff --git a/pom.xml b/pom.xml index 4aab805..7594852 100644 --- a/pom.xml +++ b/pom.xml @@ -283,6 +283,7 @@ cloud-modules cloud-common cloud-modules/cloud-electronic + cloud-modules/cloud-Vehicle-Simulation pom