diff --git a/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/web/controller/BaseController.java b/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/web/controller/BaseController.java
index 26313b2..3d83a00 100644
--- a/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/web/controller/BaseController.java
+++ b/cloud-common/cloud-common-core/src/main/java/com/muyu/common/core/web/controller/BaseController.java
@@ -1,6 +1,7 @@
package com.muyu.common.core.web.controller;
import com.github.pagehelper.PageInfo;
+
import com.muyu.common.core.utils.DateUtils;
import com.muyu.common.core.utils.PageUtils;
import com.muyu.common.core.domain.Result;
diff --git a/cloud-common/cloud-common-iotdb/pom.xml b/cloud-common/cloud-common-iotdb/pom.xml
index 32ef405..2071b80 100644
--- a/cloud-common/cloud-common-iotdb/pom.xml
+++ b/cloud-common/cloud-common-iotdb/pom.xml
@@ -34,6 +34,11 @@
org.projectlombok
lombok
+
+ org.projectlombok
+ lombok
+ provided
+
diff --git a/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/pom.xml b/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/pom.xml
index 33d89e6..e105a58 100644
--- a/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/pom.xml
+++ b/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/pom.xml
@@ -34,6 +34,11 @@
io.swagger.core.v3
swagger-annotations-jakarta
+
+ org.projectlombok
+ lombok
+ provided
+
diff --git a/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/src/main/java/com/muyu/data/basics/EventQueueConfig.java b/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/src/main/java/com/muyu/data/basics/EventQueueConfig.java
new file mode 100644
index 0000000..ce3499d
--- /dev/null
+++ b/cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/src/main/java/com/muyu/data/basics/EventQueueConfig.java
@@ -0,0 +1,37 @@
+package com.muyu.data.basics;
+
+
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.concurrent.LinkedBlockingDeque;
+
+/**
+ * @Author WangXin
+ * @Data 2024/9/29
+ * @Description 事件队列配置
+ * @Version 1.0.0
+ */
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class EventQueueConfig {
+
+ private LinkedBlockingDeque taskNodeQueue = new LinkedBlockingDeque<>();
+
+ public void addEvent(EventProcessBasics obj){
+ this.taskNodeQueue.add(obj);
+ }
+
+ public boolean hashEventNext(){
+ return !taskNodeQueue.isEmpty();
+ }
+
+ private EventProcessBasics nextTaskNode(){
+ return taskNodeQueue.poll();
+ }
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/CarAndGroupMiddle.java b/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/CarAndGroupMiddle.java
new file mode 100644
index 0000000..6c5d5fc
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/CarAndGroupMiddle.java
@@ -0,0 +1,45 @@
+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.media.Schema;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 车辆电子围栏中间表
+ * * @Author:yan
+ * * @Package:com.muyu.car.domain
+ * * @Project:plues
+ * * @name:FenceAndGroupMiddle
+ * * @Date:2024/9/22 09:59
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+@Tag(name = "车辆和电子围栏组中间表")
+@TableName(value = "car_group_middle",autoResultMap = true)
+public class CarAndGroupMiddle {
+ /**
+ * id
+ */
+ @TableId(value = "id",type = IdType.AUTO)
+ @Schema(name = "id")
+ private Long id;
+ /**
+ * 车id
+ */
+ @Schema(name = "围栏id")
+ private Integer carId;
+ /**
+ * 围栏组id
+ */
+ @Schema(name = "围栏组id")
+ private Long groupId;
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/FenceGroup.java b/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/FenceGroup.java
index 132b031..41d75a0 100644
--- a/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/FenceGroup.java
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/FenceGroup.java
@@ -3,6 +3,7 @@ package com.muyu.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.muyu.domain.req.FenceGroupUpdateReq;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
@@ -30,7 +31,7 @@ public class FenceGroup {
*/
@TableId(value = "group_id",type = IdType.AUTO)
@Schema(name = "围栏组id")
- private Integer groupId;
+ private Long groupId;
/**
* 围栏组名称
*/
@@ -42,5 +43,18 @@ public class FenceGroup {
@Schema(name = "围栏组状态")
private Integer groupStates;
+ public static FenceGroup carFenceUpdateById(Integer states, FenceGroupUpdateReq fenceGroupBuilder ){
+ return FenceGroup.builder()
+ .groupId(fenceGroupBuilder.getGroupId())
+ .groupStates(states)
+ .build();
+ }
+
+ public static FenceGroup closeCarFenceUpdateById(Integer states, Long groupId ){
+ return FenceGroup.builder()
+ .groupId(groupId)
+ .groupStates(states)
+ .build();
+ }
}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/req/FenceGroupUpdateReq.java b/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/req/FenceGroupUpdateReq.java
new file mode 100644
index 0000000..6ffad3b
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-common/src/main/java/com/muyu/domain/req/FenceGroupUpdateReq.java
@@ -0,0 +1,31 @@
+package com.muyu.domain.req;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+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:yan
+ * @Package:com.muyu.domain.req
+ * @Project:plues
+ * @name:CarFenceUpdateReq
+ * @Date:2024/9/29 20:22
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Tag(name = "修改围栏的状态", description = "修改围栏的状态")
+public class FenceGroupUpdateReq {
+ /**
+ * id
+ */
+ @TableId(value = "group_id", type = IdType.AUTO)
+ @Schema(title = "围栏组Id")
+ private Long groupId;
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarAndFenceGroupMiddleController.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarAndFenceGroupMiddleController.java
new file mode 100644
index 0000000..7617b30
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarAndFenceGroupMiddleController.java
@@ -0,0 +1,42 @@
+package com.muyu.controller;
+
+import com.muyu.common.core.domain.Result;
+import com.muyu.domain.FenceGroup;
+import com.muyu.service.CarAndFenceGroupMiddleService;
+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.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 车辆和围栏组中间表
+ * @Author:yan
+ * @Package:com.muyu.controller
+ * @Project:plues
+ * @name:CarAndFenceGroupMiddleController
+ * @Date:2024/9/29 20:09
+ */
+@RequestMapping("/carandfencemiddle")
+@RestController
+@AllArgsConstructor
+@Log4j2
+@Tag(name = "车辆和围栏组中间表")
+public class CarAndFenceGroupMiddleController {
+ @Autowired
+ private CarAndFenceGroupMiddleService carAndFenceGroupMiddleService;
+
+ /**
+ * 根据围栏组和车辆的id添加中间表
+ */
+ @PostMapping("/addFenceGroupAddCarMiddle")
+ @Operation(summary = "根据围栏组和车辆的id添加中间表",description = "根据围栏组和车辆的id添加中间表")
+ public Result addFenceGroupAddCarMiddle(@RequestParam("carId") Integer carId , @RequestBody List fenceGroups ){
+ boolean b = carAndFenceGroupMiddleService.saveBatch(fenceGroups,carId);
+ return Result.success("成功");
+ }
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarFenceUpdateController.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarFenceUpdateController.java
new file mode 100644
index 0000000..7170fe7
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarFenceUpdateController.java
@@ -0,0 +1,58 @@
+package com.muyu.controller;
+
+import com.muyu.common.core.domain.Result;
+import com.muyu.domain.FenceGroup;
+import com.muyu.domain.req.FenceGroupUpdateReq;
+import com.muyu.service.CarFenceUpdateService;
+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.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 围栏组的修改状态
+ * @Author:yan
+ * @Package:com.muyu.controller
+ * @Project:plues
+ * @name:CarFenceUpdateController
+ * @Date:2024/9/30 09:10
+ *
+ */
+@RestController
+@RequestMapping("/fenceUpdate")
+@AllArgsConstructor
+@Log4j2
+@Tag(name = "修改围栏组的状态")
+public class CarFenceUpdateController {
+ @Autowired
+ private CarFenceUpdateService carFenceUpdateService;
+
+ /**
+ * 启动围栏组
+ */
+ @PutMapping("/activate")
+ @Operation(summary = "启动围栏状态",description = "启动围栏状态")
+ public Result activate(@RequestBody FenceGroupUpdateReq fenceGroupUpdateReq){
+ Integer states = 0;
+ boolean b = carFenceUpdateService.updateById(FenceGroup.carFenceUpdateById(states, fenceGroupUpdateReq));
+ return Result.success("成功");
+ }
+
+ /**
+ * 修改围栏状态为关闭
+ * @param groupId
+ * @return
+ */
+ @GetMapping("/updateFenceGroupById")
+ @Operation(summary = "修改围栏状态为关闭",description = "修改围栏状态为关闭")
+ public Result updateFenceGroupById(@RequestParam("groupId") Long groupId){
+ Integer states = 1;
+ carFenceUpdateService.updateById(FenceGroup.closeCarFenceUpdateById(states,groupId));
+
+ return Result.success("成功");
+ }
+
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/MiddleController.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/MiddleController.java
index 348561b..2eaa3cd 100644
--- a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/MiddleController.java
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/MiddleController.java
@@ -1,10 +1,11 @@
-package com.muyu.enterpise.controller;
+package com.muyu.controller;
import com.muyu.common.core.domain.Result;
import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceAdd;
-import com.muyu.enterpise.service.CarFenceServiceMybaits;
-import com.muyu.enterpise.service.MiddleService;
+import com.muyu.domain.req.FenceGroupUpdateReq;
+import com.muyu.service.CarFenceServiceMybaits;
+import com.muyu.service.MiddleService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor;
@@ -28,23 +29,17 @@ import java.util.List;
@Tag(name = "中间表添加",description = "添加")
@Log4j2
public class MiddleController {
- @Autowired
- private MiddleService middleService;
@Autowired
private CarFenceServiceMybaits carFenceServiceMybaits;
-
-
/**
* 添加围栏组 多对多
*/
@PostMapping("/addCarFence")
- @Operation(summary = "添加中间",description = "添加中间")
+ @Operation(summary = "添加中间围栏和围栏组",description = "添加中间")
public Result addCarFence(@RequestParam("fenceGroupId") Integer fenceGroupId, @RequestBody List carFences){
- carFenceServiceMybaits.addFenceGroup(fenceGroupId,carFences);
- System.out.println("围栏组Id"+fenceGroupId);
- System.out.println("围栏Id"+carFences);
- return Result.success("成功");
+ boolean i = carFenceServiceMybaits.saveBatch(carFences,fenceGroupId);
+ return i?Result.success("添加成功"):Result.error("失败");
}
/**
@@ -55,18 +50,11 @@ public class MiddleController {
@GetMapping("/updateFenceGroupById")
@Operation(summary = "修改围栏状态",description = "修改围栏状态")
public Result updateFenceGroupById(@RequestParam("groupId") Integer groupId){
+ carFenceServiceMybaits.updateFenceGroupById(groupId);
- return Result.success(carFenceServiceMybaits.updateFenceGroupById(groupId));
+ return Result.success();
}
- /**
- * 启动围栏
- */
- @GetMapping("/activate")
- @Operation(summary = "启动围栏状态",description = "启动围栏状态")
- public Result activate(@RequestParam("groupId") Integer groupId){
- return Result.success(carFenceServiceMybaits.activate(groupId));
- }
/**
* 根据围栏组的id查询绑定的围栏的中间表
@@ -74,20 +62,12 @@ public class MiddleController {
@GetMapping("/BoundFenceGroup")
@Operation(summary = "根据围栏组的id查询绑定的围栏的中间表",description = "根据围栏组的id查询绑定的围栏的中间表")
public Result BoundFenceGroup(@RequestParam("groupId") Integer groupId){
-
- return Result.success(carFenceServiceMybaits.BoundFenceGroup(groupId));
- }
-
- /**
- * 根据围栏组和车辆的id添加中间表
- */
- @PostMapping("/addFenceGroupAddCarMiddle")
- @Operation(summary = "根据围栏组和车辆的id添加中间表",description = "根据围栏组和车辆的id添加中间表")
- public Result addFenceGroupAddCarMiddle(@RequestParam("carId") Integer carId , @RequestBody List fenceGroups ){
- carFenceServiceMybaits.addFenceGroupAddCarMiddle(carId,fenceGroups);
+ carFenceServiceMybaits.BoundFenceGroup(groupId);
return Result.success();
}
+
+
/**
* 获取绑定的围栏组
*/
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarAndFenceGroupMiddleMapper.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarAndFenceGroupMiddleMapper.java
new file mode 100644
index 0000000..ea8ace3
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarAndFenceGroupMiddleMapper.java
@@ -0,0 +1,19 @@
+package com.muyu.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.muyu.common.core.web.controller.BaseController;
+import com.muyu.domain.CarAndGroupMiddle;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 车辆和围栏组中间表
+ * @Author:yan
+ * @Package:com.muyu.mapper
+ * @Project:plues
+ * @name:CarAndFenceGroupMiddleMapper
+ * @Date:2024/9/29 20:12
+ */
+@Mapper
+public interface CarAndFenceGroupMiddleMapper extends BaseMapper {
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceServiceMybaitsMapper.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceServiceMybaitsMapper.java
index 7503a27..4222e89 100644
--- a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceServiceMybaitsMapper.java
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceServiceMybaitsMapper.java
@@ -1,8 +1,9 @@
package com.muyu.enterpise.mapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.muyu.domain.CarFence;
import com.muyu.domain.CarMiddle;
-import com.muyu.domain.FenceAndGroupMiddle;
+import com.muyu.domain.CarAndGroupMiddle;
import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceGroup;
import org.apache.ibatis.annotations.Mapper;
@@ -19,7 +20,7 @@ import java.util.List;
* * @Date:2024/9/22 19:25
*/
@Mapper
-public interface CarFenceServiceMybaitsMapper {
+public interface CarFenceServiceMybaitsMapper extends BaseMapper {
void fenceAdd(CarFenceGroup carFence);
@@ -32,17 +33,6 @@ public interface CarFenceServiceMybaitsMapper {
*/
Integer addFenceGroup(@Param("fenceGroupId") Integer fenceGroupId, @Param("id") Integer id);
- /**
- * 修改围栏组状态
- * @param groupId
- * @return
- */
- void updateFenceGroupById(@Param("groupId") Integer groupId);
-
- /**
- * 启动围栏
- */
- void activate(@Param("groupId") Integer groupId);
/**
* 根据围栏组的id查询绑定的围栏的中间表
@@ -71,12 +61,12 @@ public interface CarFenceServiceMybaitsMapper {
* @param carId
* @return
*/
- List selectBoundGFenceGroup(@Param("carId") Integer carId);
+ List selectBoundGFenceGroup(@Param("carId") Integer carId);
/**
* 获取围栏组的数据
* @param carGroupId 参数
* @return
*/
- FenceGroup selectGroup(@Param("carGroupId") Integer carGroupId);
+ FenceGroup selectGroup(@Param("carGroupId") Long carGroupId);
}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceUpdateMapper.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceUpdateMapper.java
new file mode 100644
index 0000000..207ec23
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceUpdateMapper.java
@@ -0,0 +1,18 @@
+package com.muyu.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.muyu.domain.CarFence;
+import com.muyu.domain.FenceGroup;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 围栏组的修改状态
+ * @Author:yan
+ * @Package:com.muyu.mapper
+ * @Project:plues
+ * @name:CarFenceUpdateMapper
+ * @Date:2024/9/30 09:13
+ */
+@Mapper
+public interface CarFenceUpdateMapper extends BaseMapper {
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarAndFenceGroupMiddleService.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarAndFenceGroupMiddleService.java
new file mode 100644
index 0000000..9a4cdca
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarAndFenceGroupMiddleService.java
@@ -0,0 +1,22 @@
+package com.muyu.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.muyu.domain.CarAndGroupMiddle;
+import com.muyu.domain.FenceGroup;
+
+import java.util.List;
+
+/**
+ * 车辆和围栏组中间表
+ * @Author:yan
+ * @Package:com.muyu.service
+ * @Project:plues
+ * @name:CarAndFenceGroupMiddleService
+ * @Date:2024/9/29 20:10
+ */
+public interface CarAndFenceGroupMiddleService extends IService {
+ /**
+ * 根据围栏组和车辆的id添加中间表
+ */
+ boolean saveBatch(List fenceGroups, Integer carId);
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceServiceMybaits.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceServiceMybaits.java
index a2474ff..7076018 100644
--- a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceServiceMybaits.java
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceServiceMybaits.java
@@ -1,6 +1,8 @@
package com.muyu.enterpise.service;
+import com.baomidou.mybatisplus.extension.service.IService;
import com.muyu.domain.CarFence;
+import com.muyu.domain.CarMiddle;
import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceAdd;
@@ -14,15 +16,18 @@ import java.util.List;
* * @name:CarFenceServiceMybaits
* * @Date:2024/9/22 19:24
*/
-public interface CarFenceServiceMybaits {
- void add(Integer fenceGroupId, List carFenceId);
+public interface CarFenceServiceMybaits extends IService {
+
/**
* 添加多对多围栏组
+ *
* @param fenceGroupId
* @param carFences
+ * @return
*/
- void addFenceGroup(Integer fenceGroupId, List carFences);
+ boolean saveBatch(List carFences, Integer fenceGroupId);
+
/**
* 修改围栏状态
@@ -31,19 +36,18 @@ public interface CarFenceServiceMybaits {
*/
Object updateFenceGroupById(Integer groupId);
+
/**
* 启动围栏
*/
Object activate(Integer groupId);
+
/**
* 根据围栏组的id查询绑定的围栏的中间表
*/
List BoundFenceGroup(Integer groupId);
- /**
- * 根据围栏组和车辆的id添加中间表
- */
- void addFenceGroupAddCarMiddle(Integer id, List fenceGroups);
+
/**
* 获取绑定的围栏组
@@ -51,4 +55,6 @@ public interface CarFenceServiceMybaits {
*/
List selectBoundGFenceGroup(Integer carId);
+
+
}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceUpdateService.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceUpdateService.java
new file mode 100644
index 0000000..e1b6933
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceUpdateService.java
@@ -0,0 +1,16 @@
+package com.muyu.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.muyu.domain.CarFence;
+import com.muyu.domain.FenceGroup;
+
+/**
+ * 围栏组的修改状态
+ * @Author:yan
+ * @Package:com.muyu.service
+ * @Project:plues
+ * @name:CarFenceUpdateService
+ * @Date:2024/9/30 09:12
+ */
+public interface CarFenceUpdateService extends IService {
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarAndFenceGroupMiddleServiceImpl.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarAndFenceGroupMiddleServiceImpl.java
new file mode 100644
index 0000000..73e9793
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarAndFenceGroupMiddleServiceImpl.java
@@ -0,0 +1,41 @@
+package com.muyu.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.muyu.domain.CarAndGroupMiddle;
+import com.muyu.domain.FenceGroup;
+import com.muyu.mapper.CarAndFenceGroupMiddleMapper;
+import com.muyu.service.CarAndFenceGroupMiddleService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 车辆和围栏组中间表
+ * @Author:yan
+ * @Package:com.muyu.service.impl
+ * @Project:plues
+ * @name:CarAndFenceGroupMiddleServiceImpl
+ * @Date:2024/9/29 20:11
+ */
+@Service
+public class CarAndFenceGroupMiddleServiceImpl extends ServiceImpl implements CarAndFenceGroupMiddleService {
+ @Autowired
+ private CarAndFenceGroupMiddleMapper carAndFenceGroupMiddleMapper;
+
+ /**
+ * 根据围栏组和车辆的id添加中间表
+ */
+ @Override
+ public boolean saveBatch(List fenceGroups, Integer carId) {
+ List list = fenceGroups.stream().map(fenceGroup -> {
+ CarAndGroupMiddle carAndGroupMiddle = new CarAndGroupMiddle();
+ //获取围栏组的id
+ carAndGroupMiddle.setGroupId(fenceGroup.getGroupId());
+ carAndGroupMiddle.setCarId(carId);
+ return carAndGroupMiddle;
+ }).toList();
+ boolean b = this.saveBatch(list);
+ return b;
+ }
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceServiceMybaitsImpl.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceServiceMybaitsImpl.java
index 40023da..533555f 100644
--- a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceServiceMybaitsImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceServiceMybaitsImpl.java
@@ -1,12 +1,16 @@
-package com.muyu.enterpise.service.impl;
+package com.muyu.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.muyu.common.core.utils.StringUtils;
import com.muyu.domain.CarFence;
import com.muyu.domain.CarMiddle;
-import com.muyu.domain.FenceAndGroupMiddle;
+import com.muyu.domain.CarAndGroupMiddle;
import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceAdd;
-import com.muyu.enterpise.mapper.CarFenceServiceMybaitsMapper;
-import com.muyu.enterpise.service.CarFenceServiceMybaits;
+import com.muyu.mapper.CarFenceServiceMybaitsMapper;
+import com.muyu.service.CarFenceServiceMybaits;
+import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -22,59 +26,36 @@ import java.util.List;
* * @Date:2024/9/22 19:24
*/
@Service
-public class CarFenceServiceMybaitsImpl implements CarFenceServiceMybaits {
+@Log4j2
+public class CarFenceServiceMybaitsImpl extends ServiceImpl implements CarFenceServiceMybaits {
@Autowired
private CarFenceServiceMybaitsMapper carFenceServiceMybaitsMapper;
- /**
- * 添加多对多围栏组
- * @param fenceGroupId
- * @param carFenceId
- */
- @Override
- public void add(Integer fenceGroupId, List carFenceId) {
- for (Integer integer : carFenceId) {
- Integer addMiddle = carFenceServiceMybaitsMapper.addGroup(fenceGroupId,integer);
- }
-
-
-
- }
/**
* 添加多对多围栏组
+ *
* @param fenceGroupId
* @param carFences
- */
- @Override
- public void addFenceGroup(Integer fenceGroupId, List carFences) {
- for (CarFenceAdd carFence : carFences) {
- Integer id = carFence.getId();
- Integer addMiddle = carFenceServiceMybaitsMapper.addFenceGroup(fenceGroupId,id);
- }
- }
-
- /**
- * 修改围栏组状态
- * @param groupId
* @return
*/
@Override
- public Object updateFenceGroupById(Integer groupId) {
- carFenceServiceMybaitsMapper.updateFenceGroupById(groupId);
- return null;
+ public boolean saveBatch(List carFences, Integer fenceGroupId) {
+ List list = carFences.stream().map(carFenceAdd -> {
+ CarMiddle carMiddle = new CarMiddle();
+ carMiddle.setCarFenceId(carFenceAdd.getId());
+ carMiddle.setCarGroupId(fenceGroupId);
+ return carMiddle;
+ }).toList();
+ boolean b = this.saveBatch(list);
+ return b;
}
- /**
- * 启动围栏
- */
- @Override
- public Object activate(Integer groupId) {
- carFenceServiceMybaitsMapper.activate(groupId);
- return null;
- }
+
+
+
/**
* 根据围栏组的id查询绑定的围栏的中间表
@@ -93,20 +74,9 @@ public class CarFenceServiceMybaitsImpl implements CarFenceServiceMybaits {
return carFences;
}
- /**
- * 根据围栏组和车辆的id添加中间表
- */
- @Override
- public void addFenceGroupAddCarMiddle(Integer id, List fenceGroups) {
- //遍历集合
- for (FenceGroup fenceGroup : fenceGroups) {
- //获取围栏组的id
- Integer groupId = fenceGroup.getGroupId();
- carFenceServiceMybaitsMapper.addFenceGroupAddCarMiddle(id,groupId);
- }
- }
+
/**
* 获取绑定的围栏组
@@ -115,18 +85,22 @@ public class CarFenceServiceMybaitsImpl implements CarFenceServiceMybaits {
@Override
public List selectBoundGFenceGroup(Integer carId) {
/*根据id查询围栏组的id*/
- List list = carFenceServiceMybaitsMapper.selectBoundGFenceGroup(carId);
+ List list = carFenceServiceMybaitsMapper.selectBoundGFenceGroup(carId);
ArrayList fenceGroups = new ArrayList<>();
/*循环*/
- for (FenceAndGroupMiddle fenceAndGroupMiddle : list) {
+ for (CarAndGroupMiddle fenceAndGroupMiddle : list) {
/**
* 获取围栏组的id
*/
- Integer carGroupId = fenceAndGroupMiddle.getGroupId();
+ Long carGroupId = fenceAndGroupMiddle.getGroupId();
//获取围栏组的数据 并 存入list
fenceGroups.add(carFenceServiceMybaitsMapper.selectGroup(carGroupId));
}
return fenceGroups;
}
+
+
+
+
}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceUpdateServiceImpl.java b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceUpdateServiceImpl.java
new file mode 100644
index 0000000..898b9e3
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceUpdateServiceImpl.java
@@ -0,0 +1,26 @@
+package com.muyu.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.muyu.domain.CarFence;
+import com.muyu.domain.FenceGroup;
+import com.muyu.mapper.CarFenceUpdateMapper;
+import com.muyu.service.CarFenceUpdateService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 围栏组的修改状态
+ * @Author:yan
+ * @Package:com.muyu.service.impl
+ * @Project:plues
+ * @name:CarFenceUpdateServiceImpl
+ * @Date:2024/9/30 09:12
+ * 围栏组的修改状态
+ */
+
+@Service
+public class CarFenceUpdateServiceImpl extends ServiceImpl implements CarFenceUpdateService {
+ @Autowired
+ private CarFenceUpdateMapper carFenceUpdateMapper;
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/resources/mapper/CarFenceServiceMybaitsMapper.xml b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/resources/mapper/CarFenceServiceMybaitsMapper.xml
index 2f41ac0..c4bbb07 100644
--- a/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/resources/mapper/CarFenceServiceMybaitsMapper.xml
+++ b/cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/resources/mapper/CarFenceServiceMybaitsMapper.xml
@@ -17,12 +17,7 @@
insert into car_group_middle values (0,#{id},#{groupId})
-
- update fence_group set group_states = 1 where group_id = #{groupId}
-
-
- update fence_group set group_states = 0 where group_id = #{groupId}
-
+