Merge branch 'dev.saas.yp' into dev

# Conflicts:
#	cloud-modules/cloud-modules-data-process/cloud-modules-data-process-common/src/main/java/com/muyu/data/basics/EventQueueConfig.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarAndFenceGroupMiddleController.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/CarFenceUpdateController.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/controller/MiddleController.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarAndFenceGroupMiddleMapper.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/mapper/CarFenceUpdateMapper.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarAndFenceGroupMiddleService.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/CarFenceUpdateService.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarAndFenceGroupMiddleServiceImpl.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceServiceMybaitsImpl.java
#	cloud-modules/cloud-modules-enterprise/enterpise-service/src/main/java/com/muyu/enterpise/service/impl/CarFenceUpdateServiceImpl.java
#	cloud-modules/cloud-modules-enterprise/enterprise-cache/pom.xml
dev.gateway
YangPeng 2024-09-30 16:38:41 +08:00
commit d24110090c
24 changed files with 463 additions and 123 deletions

View File

@ -1,6 +1,7 @@
package com.muyu.common.core.web.controller; package com.muyu.common.core.web.controller;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.muyu.common.core.utils.DateUtils; import com.muyu.common.core.utils.DateUtils;
import com.muyu.common.core.utils.PageUtils; import com.muyu.common.core.utils.PageUtils;
import com.muyu.common.core.domain.Result; import com.muyu.common.core.domain.Result;

View File

@ -34,6 +34,11 @@
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -34,6 +34,11 @@
<groupId>io.swagger.core.v3</groupId> <groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-annotations-jakarta</artifactId> <artifactId>swagger-annotations-jakarta</artifactId>
</dependency> </dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
</dependencies> </dependencies>
</project> </project>

View File

@ -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<EventProcessBasics> taskNodeQueue = new LinkedBlockingDeque<>();
public void addEvent(EventProcessBasics obj){
this.taskNodeQueue.add(obj);
}
public boolean hashEventNext(){
return !taskNodeQueue.isEmpty();
}
private EventProcessBasics nextTaskNode(){
return taskNodeQueue.poll();
}
}

View File

@ -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;
/**
*
* * @Authoryan
* * @Packagecom.muyu.car.domain
* * @Projectplues
* * @nameFenceAndGroupMiddle
* * @Date2024/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;
}

View File

@ -3,6 +3,7 @@ package com.muyu.domain;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; 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.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
@ -30,7 +31,7 @@ public class FenceGroup {
*/ */
@TableId(value = "group_id",type = IdType.AUTO) @TableId(value = "group_id",type = IdType.AUTO)
@Schema(name = "围栏组id") @Schema(name = "围栏组id")
private Integer groupId; private Long groupId;
/** /**
* *
*/ */
@ -42,5 +43,18 @@ public class FenceGroup {
@Schema(name = "围栏组状态") @Schema(name = "围栏组状态")
private Integer groupStates; 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();
}
} }

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.domain.req
* @Projectplues
* @nameCarFenceUpdateReq
* @Date2024/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;
}

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.controller
* @Projectplues
* @nameCarAndFenceGroupMiddleController
* @Date2024/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<FenceGroup> fenceGroups ){
boolean b = carAndFenceGroupMiddleService.saveBatch(fenceGroups,carId);
return Result.success("成功");
}
}

View File

@ -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.*;
/**
*
* @Authoryan
* @Packagecom.muyu.controller
* @Projectplues
* @nameCarFenceUpdateController
* @Date2024/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("成功");
}
}

View File

@ -1,10 +1,11 @@
package com.muyu.enterpise.controller; package com.muyu.controller;
import com.muyu.common.core.domain.Result; import com.muyu.common.core.domain.Result;
import com.muyu.domain.FenceGroup; import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceAdd; import com.muyu.domain.req.CarFenceAdd;
import com.muyu.enterpise.service.CarFenceServiceMybaits; import com.muyu.domain.req.FenceGroupUpdateReq;
import com.muyu.enterpise.service.MiddleService; import com.muyu.service.CarFenceServiceMybaits;
import com.muyu.service.MiddleService;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
@ -28,23 +29,17 @@ import java.util.List;
@Tag(name = "中间表添加",description = "添加") @Tag(name = "中间表添加",description = "添加")
@Log4j2 @Log4j2
public class MiddleController { public class MiddleController {
@Autowired
private MiddleService middleService;
@Autowired @Autowired
private CarFenceServiceMybaits carFenceServiceMybaits; private CarFenceServiceMybaits carFenceServiceMybaits;
/** /**
* *
*/ */
@PostMapping("/addCarFence") @PostMapping("/addCarFence")
@Operation(summary = "添加中间",description = "添加中间") @Operation(summary = "添加中间围栏和围栏组",description = "添加中间")
public Result addCarFence(@RequestParam("fenceGroupId") Integer fenceGroupId, @RequestBody List<CarFenceAdd> carFences){ public Result addCarFence(@RequestParam("fenceGroupId") Integer fenceGroupId, @RequestBody List<CarFenceAdd> carFences){
carFenceServiceMybaits.addFenceGroup(fenceGroupId,carFences); boolean i = carFenceServiceMybaits.saveBatch(carFences,fenceGroupId);
System.out.println("围栏组Id"+fenceGroupId); return i?Result.success("添加成功"):Result.error("失败");
System.out.println("围栏Id"+carFences);
return Result.success("成功");
} }
/** /**
@ -55,18 +50,11 @@ public class MiddleController {
@GetMapping("/updateFenceGroupById") @GetMapping("/updateFenceGroupById")
@Operation(summary = "修改围栏状态",description = "修改围栏状态") @Operation(summary = "修改围栏状态",description = "修改围栏状态")
public Result updateFenceGroupById(@RequestParam("groupId") Integer groupId){ 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 * id
@ -74,20 +62,12 @@ public class MiddleController {
@GetMapping("/BoundFenceGroup") @GetMapping("/BoundFenceGroup")
@Operation(summary = "根据围栏组的id查询绑定的围栏的中间表",description = "根据围栏组的id查询绑定的围栏的中间表") @Operation(summary = "根据围栏组的id查询绑定的围栏的中间表",description = "根据围栏组的id查询绑定的围栏的中间表")
public Result BoundFenceGroup(@RequestParam("groupId") Integer groupId){ public Result BoundFenceGroup(@RequestParam("groupId") Integer groupId){
carFenceServiceMybaits.BoundFenceGroup(groupId);
return Result.success(carFenceServiceMybaits.BoundFenceGroup(groupId));
}
/**
* id
*/
@PostMapping("/addFenceGroupAddCarMiddle")
@Operation(summary = "根据围栏组和车辆的id添加中间表",description = "根据围栏组和车辆的id添加中间表")
public Result addFenceGroupAddCarMiddle(@RequestParam("carId") Integer carId , @RequestBody List<FenceGroup> fenceGroups ){
carFenceServiceMybaits.addFenceGroupAddCarMiddle(carId,fenceGroups);
return Result.success(); return Result.success();
} }
/** /**
* *
*/ */

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.mapper
* @Projectplues
* @nameCarAndFenceGroupMiddleMapper
* @Date2024/9/29 20:12
*/
@Mapper
public interface CarAndFenceGroupMiddleMapper extends BaseMapper<CarAndGroupMiddle> {
}

View File

@ -1,8 +1,9 @@
package com.muyu.enterpise.mapper; package com.muyu.enterpise.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.muyu.domain.CarFence; import com.muyu.domain.CarFence;
import com.muyu.domain.CarMiddle; import com.muyu.domain.CarMiddle;
import com.muyu.domain.FenceAndGroupMiddle; import com.muyu.domain.CarAndGroupMiddle;
import com.muyu.domain.FenceGroup; import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceGroup; import com.muyu.domain.req.CarFenceGroup;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -19,7 +20,7 @@ import java.util.List;
* * @Date2024/9/22 19:25 * * @Date2024/9/22 19:25
*/ */
@Mapper @Mapper
public interface CarFenceServiceMybaitsMapper { public interface CarFenceServiceMybaitsMapper extends BaseMapper<CarMiddle> {
void fenceAdd(CarFenceGroup carFence); void fenceAdd(CarFenceGroup carFence);
@ -32,17 +33,6 @@ public interface CarFenceServiceMybaitsMapper {
*/ */
Integer addFenceGroup(@Param("fenceGroupId") Integer fenceGroupId, @Param("id") Integer id); 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 * id
@ -71,12 +61,12 @@ public interface CarFenceServiceMybaitsMapper {
* @param carId * @param carId
* @return * @return
*/ */
List<FenceAndGroupMiddle> selectBoundGFenceGroup(@Param("carId") Integer carId); List<CarAndGroupMiddle> selectBoundGFenceGroup(@Param("carId") Integer carId);
/** /**
* *
* @param carGroupId * @param carGroupId
* @return * @return
*/ */
FenceGroup selectGroup(@Param("carGroupId") Integer carGroupId); FenceGroup selectGroup(@Param("carGroupId") Long carGroupId);
} }

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.mapper
* @Projectplues
* @nameCarFenceUpdateMapper
* @Date2024/9/30 09:13
*/
@Mapper
public interface CarFenceUpdateMapper extends BaseMapper<FenceGroup> {
}

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.service
* @Projectplues
* @nameCarAndFenceGroupMiddleService
* @Date2024/9/29 20:10
*/
public interface CarAndFenceGroupMiddleService extends IService<CarAndGroupMiddle> {
/**
* id
*/
boolean saveBatch(List<FenceGroup> fenceGroups, Integer carId);
}

View File

@ -1,6 +1,8 @@
package com.muyu.enterpise.service; package com.muyu.enterpise.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.muyu.domain.CarFence; import com.muyu.domain.CarFence;
import com.muyu.domain.CarMiddle;
import com.muyu.domain.FenceGroup; import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceAdd; import com.muyu.domain.req.CarFenceAdd;
@ -14,15 +16,18 @@ import java.util.List;
* * @nameCarFenceServiceMybaits * * @nameCarFenceServiceMybaits
* * @Date2024/9/22 19:24 * * @Date2024/9/22 19:24
*/ */
public interface CarFenceServiceMybaits { public interface CarFenceServiceMybaits extends IService<CarMiddle> {
void add(Integer fenceGroupId, List<Integer> carFenceId);
/** /**
* *
*
* @param fenceGroupId * @param fenceGroupId
* @param carFences * @param carFences
* @return
*/ */
void addFenceGroup(Integer fenceGroupId, List<CarFenceAdd> carFences); boolean saveBatch(List<CarFenceAdd> carFences, Integer fenceGroupId);
/** /**
* *
@ -31,19 +36,18 @@ public interface CarFenceServiceMybaits {
*/ */
Object updateFenceGroupById(Integer groupId); Object updateFenceGroupById(Integer groupId);
/** /**
* *
*/ */
Object activate(Integer groupId); Object activate(Integer groupId);
/** /**
* id * id
*/ */
List<CarFence> BoundFenceGroup(Integer groupId); List<CarFence> BoundFenceGroup(Integer groupId);
/**
* id
*/
void addFenceGroupAddCarMiddle(Integer id, List<FenceGroup> fenceGroups);
/** /**
* *
@ -51,4 +55,6 @@ public interface CarFenceServiceMybaits {
*/ */
List<FenceGroup> selectBoundGFenceGroup(Integer carId); List<FenceGroup> selectBoundGFenceGroup(Integer carId);
} }

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.service
* @Projectplues
* @nameCarFenceUpdateService
* @Date2024/9/30 09:12
*/
public interface CarFenceUpdateService extends IService<FenceGroup> {
}

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.service.impl
* @Projectplues
* @nameCarAndFenceGroupMiddleServiceImpl
* @Date2024/9/29 20:11
*/
@Service
public class CarAndFenceGroupMiddleServiceImpl extends ServiceImpl<CarAndFenceGroupMiddleMapper, CarAndGroupMiddle> implements CarAndFenceGroupMiddleService {
@Autowired
private CarAndFenceGroupMiddleMapper carAndFenceGroupMiddleMapper;
/**
* id
*/
@Override
public boolean saveBatch(List<FenceGroup> fenceGroups, Integer carId) {
List<CarAndGroupMiddle> 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;
}
}

View File

@ -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.CarFence;
import com.muyu.domain.CarMiddle; import com.muyu.domain.CarMiddle;
import com.muyu.domain.FenceAndGroupMiddle; import com.muyu.domain.CarAndGroupMiddle;
import com.muyu.domain.FenceGroup; import com.muyu.domain.FenceGroup;
import com.muyu.domain.req.CarFenceAdd; import com.muyu.domain.req.CarFenceAdd;
import com.muyu.enterpise.mapper.CarFenceServiceMybaitsMapper; import com.muyu.mapper.CarFenceServiceMybaitsMapper;
import com.muyu.enterpise.service.CarFenceServiceMybaits; import com.muyu.service.CarFenceServiceMybaits;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -22,59 +26,36 @@ import java.util.List;
* * @Date2024/9/22 19:24 * * @Date2024/9/22 19:24
*/ */
@Service @Service
public class CarFenceServiceMybaitsImpl implements CarFenceServiceMybaits { @Log4j2
public class CarFenceServiceMybaitsImpl extends ServiceImpl<CarFenceServiceMybaitsMapper,CarMiddle> implements CarFenceServiceMybaits {
@Autowired @Autowired
private CarFenceServiceMybaitsMapper carFenceServiceMybaitsMapper; private CarFenceServiceMybaitsMapper carFenceServiceMybaitsMapper;
/**
*
* @param fenceGroupId
* @param carFenceId
*/
@Override
public void add(Integer fenceGroupId, List<Integer> carFenceId) {
for (Integer integer : carFenceId) {
Integer addMiddle = carFenceServiceMybaitsMapper.addGroup(fenceGroupId,integer);
}
}
/** /**
* *
*
* @param fenceGroupId * @param fenceGroupId
* @param carFences * @param carFences
*/
@Override
public void addFenceGroup(Integer fenceGroupId, List<CarFenceAdd> carFences) {
for (CarFenceAdd carFence : carFences) {
Integer id = carFence.getId();
Integer addMiddle = carFenceServiceMybaitsMapper.addFenceGroup(fenceGroupId,id);
}
}
/**
*
* @param groupId
* @return * @return
*/ */
@Override @Override
public Object updateFenceGroupById(Integer groupId) { public boolean saveBatch(List<CarFenceAdd> carFences, Integer fenceGroupId) {
carFenceServiceMybaitsMapper.updateFenceGroupById(groupId); List<CarMiddle> list = carFences.stream().map(carFenceAdd -> {
return null; 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 * id
@ -93,20 +74,9 @@ public class CarFenceServiceMybaitsImpl implements CarFenceServiceMybaits {
return carFences; return carFences;
} }
/**
* id
*/
@Override
public void addFenceGroupAddCarMiddle(Integer id, List<FenceGroup> fenceGroups) {
//遍历集合
for (FenceGroup fenceGroup : fenceGroups) {
//获取围栏组的id
Integer groupId = fenceGroup.getGroupId();
carFenceServiceMybaitsMapper.addFenceGroupAddCarMiddle(id,groupId);
}
}
/** /**
* *
@ -115,18 +85,22 @@ public class CarFenceServiceMybaitsImpl implements CarFenceServiceMybaits {
@Override @Override
public List<FenceGroup> selectBoundGFenceGroup(Integer carId) { public List<FenceGroup> selectBoundGFenceGroup(Integer carId) {
/*根据id查询围栏组的id*/ /*根据id查询围栏组的id*/
List<FenceAndGroupMiddle> list = carFenceServiceMybaitsMapper.selectBoundGFenceGroup(carId); List<CarAndGroupMiddle> list = carFenceServiceMybaitsMapper.selectBoundGFenceGroup(carId);
ArrayList<FenceGroup> fenceGroups = new ArrayList<>(); ArrayList<FenceGroup> fenceGroups = new ArrayList<>();
/*循环*/ /*循环*/
for (FenceAndGroupMiddle fenceAndGroupMiddle : list) { for (CarAndGroupMiddle fenceAndGroupMiddle : list) {
/** /**
* id * id
*/ */
Integer carGroupId = fenceAndGroupMiddle.getGroupId(); Long carGroupId = fenceAndGroupMiddle.getGroupId();
//获取围栏组的数据 并 存入list //获取围栏组的数据 并 存入list
fenceGroups.add(carFenceServiceMybaitsMapper.selectGroup(carGroupId)); fenceGroups.add(carFenceServiceMybaitsMapper.selectGroup(carGroupId));
} }
return fenceGroups; return fenceGroups;
} }
} }

View File

@ -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;
/**
*
* @Authoryan
* @Packagecom.muyu.service.impl
* @Projectplues
* @nameCarFenceUpdateServiceImpl
* @Date2024/9/30 09:12
*
*/
@Service
public class CarFenceUpdateServiceImpl extends ServiceImpl<CarFenceUpdateMapper, FenceGroup> implements CarFenceUpdateService {
@Autowired
private CarFenceUpdateMapper carFenceUpdateMapper;
}

View File

@ -17,12 +17,7 @@
<insert id="addFenceGroupAddCarMiddle"> <insert id="addFenceGroupAddCarMiddle">
insert into car_group_middle values (0,#{id},#{groupId}) insert into car_group_middle values (0,#{id},#{groupId})
</insert> </insert>
<update id="updateFenceGroupById">
update fence_group set group_states = 1 where group_id = #{groupId}
</update>
<update id="activate">
update fence_group set group_states = 0 where group_id = #{groupId}
</update>
<!--根据围栏组的id查询绑定的围栏的中间表--> <!--根据围栏组的id查询绑定的围栏的中间表-->
<select id="BoundFenceGroup" resultType="com.muyu.domain.CarMiddle"> <select id="BoundFenceGroup" resultType="com.muyu.domain.CarMiddle">
select * from car_middle where car_group_id = #{groupId} select * from car_middle where car_group_id = #{groupId}

View File

@ -22,9 +22,17 @@
<groupId>com.muyu</groupId> <groupId>com.muyu</groupId>
<artifactId>enterpise-common</artifactId> <artifactId>enterpise-common</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.muyu</groupId> <groupId>com.muyu</groupId>
<artifactId>cloud-common-cache</artifactId> <artifactId>cloud-common-cache</artifactId>
<version>3.6.3</version>
</dependency>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-modules-vehicle-gateway</artifactId>
<version>3.6.3</version>
<scope>compile</scope>
</dependency> </dependency>
</dependencies> </dependencies>

View File

@ -59,6 +59,11 @@
<version>2.0.43</version> <version>2.0.43</version>
</dependency> </dependency>
<!-- <dependency>-->
<!-- <groupId>com.muyu</groupId>-->
<!-- <artifactId>enterprise-cache</artifactId>-->
<!-- <version>3.6.3</version>-->
<!-- </dependency>-->
<!-- <dependency>--> <!-- <dependency>-->
<!-- <groupId>com.muyu</groupId>--> <!-- <groupId>com.muyu</groupId>-->
<!-- <artifactId>cloud-common-redis</artifactId>--> <!-- <artifactId>cloud-common-redis</artifactId>-->

View File

@ -3,6 +3,7 @@ package com.muyu.service.Impl;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.muyu.domain.Message; import com.muyu.domain.Message;
import com.muyu.domain.SubscribedUser; import com.muyu.domain.SubscribedUser;
import com.muyu.service.WxService; import com.muyu.service.WxService;
import com.muyu.util.OkHttpUtils; import com.muyu.util.OkHttpUtils;
import com.muyu.util.TokenUtil; import com.muyu.util.TokenUtil;
@ -14,6 +15,7 @@ import org.dom4j.Document;
import org.dom4j.DocumentException; import org.dom4j.DocumentException;
import org.dom4j.Element; import org.dom4j.Element;
import org.dom4j.io.SAXReader; import org.dom4j.io.SAXReader;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;

10
pom.xml
View File

@ -283,11 +283,11 @@
<version>${muyu.version}</version> <version>${muyu.version}</version>
</dependency> </dependency>
<dependency> <!-- <dependency>-->
<groupId>com.muyu</groupId> <!-- <groupId>com.muyu</groupId>-->
<artifactId>enterpise-client</artifactId> <!-- <artifactId>enterpise-c</artifactId>-->
<version>${muyu.version}</version> <!-- <version>${muyu.version}</version>-->
</dependency> <!-- </dependency>-->
<!-- mqtt --> <!-- mqtt -->
<dependency> <dependency>