From 42c80590ff3265624a07f948e357627d26e35b76 Mon Sep 17 00:00:00 2001 From: liuyunhu <3286117488@qq.com> Date: Sun, 31 Mar 2024 10:53:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=99=8E=EF=BC=8C=E8=BD=A6=E8=BE=86=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E4=BC=98=E5=8C=96=EF=BC=8C=E8=BD=A6=E8=BE=86=E5=92=8C?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E7=9A=84=E5=85=B3=E8=81=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../couplet/mq/controller/MqController.java | 13 ++-- .../java/com/couplet/mq/service/Consumer.java | 2 - .../vehicle/controller/VehicleController.java | 9 ++- .../controller/VehicleTypeController.java | 35 ++++++++++ .../domain/{LyhVehicle.java => Vehicle.java} | 12 +++- .../vehicle/domain/VehicleAndLogo.java | 44 ++++++++++++ .../couplet/vehicle/domain/VehicleType.java | 36 ++++++++++ .../domain/req/VehicleInsertParams.java | 10 ++- .../vehicle/mapper/VehicleAndLogoMapper.java | 21 ++++++ .../couplet/vehicle/mapper/VehicleMapper.java | 4 +- .../vehicle/mapper/VehicleTypeMapper.java | 18 +++++ .../service/VehicleAndLogoService.java | 17 +++++ .../vehicle/service/VehicleService.java | 6 +- .../vehicle/service/VehicleTypeService.java | 17 +++++ .../impl/VehicleAndLogoServiceImpl.java | 40 +++++++++++ .../service/impl/VehicleServiceImpl.java | 70 +++++++++++++++---- .../service/impl/VehicleTypeServiceImpl.java | 37 ++++++++++ .../src/main/resources/banner.txt | 4 ++ .../mapper/vehicle/VehicleAndLogoMapper.xml | 15 ++++ .../mapper/vehicle/VehicleTypeMapper.xml | 8 +++ 20 files changed, 387 insertions(+), 31 deletions(-) create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleTypeController.java rename couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/{LyhVehicle.java => Vehicle.java} (88%) create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleAndLogo.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleType.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleAndLogoMapper.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleTypeMapper.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleAndLogoService.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleTypeService.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleAndLogoServiceImpl.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleTypeServiceImpl.java create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleAndLogoMapper.xml create mode 100644 couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleTypeMapper.xml diff --git a/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/controller/MqController.java b/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/controller/MqController.java index b5572aa..7188a91 100644 --- a/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/controller/MqController.java +++ b/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/controller/MqController.java @@ -1,14 +1,15 @@ package com.couplet.mq.controller; -import com.alibaba.fastjson2.JSON; import com.couplet.common.core.utils.uuid.IdUtils; import com.couplet.mq.config.RabbitMQConfig; -import com.couplet.mq.domain.Test; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.connection.CorrelationData; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; /** * @ProjectName: five-groups-couplet @@ -23,12 +24,12 @@ public class MqController { @Autowired private RabbitTemplate rabbitTemplate; - @PostMapping("/receive") - public void receive(@RequestBody Test data) { + @GetMapping("/receive/{data}") + public void receive(@PathVariable("data") String data) { //创建配置类对象,用于获取配置值 RabbitMQConfig config = new RabbitMQConfig(); - rabbitTemplate.convertAndSend(config.exchangeName, config.routingKey, JSON.toJSONString(data) , message -> { + rabbitTemplate.convertAndSend(config.exchangeName, config.routingKey, data , message -> { message.getMessageProperties().setMessageId(IdUtils.randomUUID()); return message; }, new CorrelationData(IdUtils.randomUUID())); diff --git a/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/service/Consumer.java b/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/service/Consumer.java index f49c3ac..5d27eec 100644 --- a/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/service/Consumer.java +++ b/couplet-modules/couplet-modules-mq/src/main/java/com/couplet/mq/service/Consumer.java @@ -1,6 +1,5 @@ package com.couplet.mq.service; -import com.couplet.mq.config.RabbitMQConfig; import com.rabbitmq.client.Channel; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.core.Message; @@ -9,7 +8,6 @@ import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Component; -import org.springframework.stereotype.Service; import java.io.IOException; import java.util.concurrent.TimeUnit; diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleController.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleController.java index 3744685..d78d7aa 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleController.java +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleController.java @@ -4,7 +4,8 @@ import com.couplet.common.core.domain.Result; import com.couplet.common.core.web.controller.BaseController; import com.couplet.common.log.annotation.Log; import com.couplet.common.log.enums.BusinessType; -import com.couplet.vehicle.domain.LyhVehicle; +import com.couplet.common.security.annotation.RequiresPermissions; +import com.couplet.vehicle.domain.Vehicle; import com.couplet.vehicle.domain.req.VehicleEditParams; import com.couplet.vehicle.domain.req.VehicleInsertParams; import com.couplet.vehicle.domain.req.VehicleListParams; @@ -34,11 +35,12 @@ public class VehicleController extends BaseController { * @Param: [listParams] * @Return: com.couplet.common.core.domain.Result **/ + @RequiresPermissions("couplet:vehicle:list") @PostMapping("/list") @Log(title = "车辆列表") public Result list(@RequestBody VehicleListParams listParams) { - List List = vehicleService.list(listParams); + List List = vehicleService.list(listParams); return Result.success(List); } @@ -50,6 +52,7 @@ public class VehicleController extends BaseController { * @Param: [vehicleId] * @Return: com.couplet.common.core.domain.Result **/ + @RequiresPermissions("couplet:vehicle:deleteById") @GetMapping("/deleteById/{vehicleId}") @Log(title = "删除车辆", businessType = BusinessType.DELETE) public Result deleteById(@PathVariable Long vehicleId) { @@ -66,6 +69,7 @@ public class VehicleController extends BaseController { * @Param: [editParams] * @Return: com.couplet.common.core.domain.Result **/ + @RequiresPermissions("couplet:vehicle:editById") @PostMapping("/editById") @Log(title = "编辑车辆", businessType = BusinessType.UPDATE) public Result editById(@RequestBody VehicleEditParams editParams) { @@ -82,6 +86,7 @@ public class VehicleController extends BaseController { * @Param: [insertParams] * @Return: com.couplet.common.core.domain.Result **/ + @RequiresPermissions("couplet:vehicle:insert") @PostMapping("/insert") @Log(title = "新增车辆", businessType = BusinessType.INSERT) public Result insert(@RequestBody @Validated VehicleInsertParams insertParams) { diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleTypeController.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleTypeController.java new file mode 100644 index 0000000..33ca5db --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/controller/VehicleTypeController.java @@ -0,0 +1,35 @@ +package com.couplet.vehicle.controller; + +import com.couplet.common.core.domain.Result; +import com.couplet.common.core.web.controller.BaseController; +import com.couplet.common.security.annotation.RequiresPermissions; +import com.couplet.vehicle.domain.VehicleType; +import com.couplet.vehicle.service.VehicleTypeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/31 + * @Description: 车辆类型控制器 + */ + +@RestController +@RequestMapping("/vehicleType") +public class VehicleTypeController extends BaseController { + @Autowired + private VehicleTypeService service; + + //获取所有的车辆类型 + @RequiresPermissions("couplet:vehicle:list") + @GetMapping("/list") + public Result> list() { + List vehicleTypeList = service.list(); + return success(vehicleTypeList); + } +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/LyhVehicle.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/Vehicle.java similarity index 88% rename from couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/LyhVehicle.java rename to couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/Vehicle.java index 26058ed..a12fcbe 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/LyhVehicle.java +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/Vehicle.java @@ -20,8 +20,8 @@ import lombok.experimental.SuperBuilder; @SuperBuilder @AllArgsConstructor @NoArgsConstructor -@TableName("lyh_vehicle") -public class LyhVehicle { +@TableName("couplet_vehicle") +public class Vehicle { /* *车辆id @@ -33,7 +33,13 @@ public class LyhVehicle { *车辆类型 * */ @TableField(value = "vehicle_type") - private Integer vehicleType; + private Long vehicleType; + + /* + * 车辆类型名称 + * */ + @TableField(exist = false) + private String vehicleTypeName; /* diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleAndLogo.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleAndLogo.java new file mode 100644 index 0000000..7664101 --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleAndLogo.java @@ -0,0 +1,44 @@ +package com.couplet.vehicle.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 lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/30 + * @Description: 车辆和标志中间表 + */ + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@TableName("couplet_vehicle_and_logo") +public class VehicleAndLogo { + + /* + * 车辆、标志中间表id + * */ + @TableId(type = IdType.AUTO, value = "vehicle_logo_middle_id") + private Long vehicleLogoMiddleId; + + /* + * 车辆id + * */ + @TableField("vehicle_id") + private Long vehicleId; + + /* + * 标志id + * */ + @TableField("logo_id") + private Long logoId; + +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleType.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleType.java new file mode 100644 index 0000000..8d5afd9 --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/VehicleType.java @@ -0,0 +1,36 @@ +package com.couplet.vehicle.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 lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/31 + * @Description: 车辆类型 + */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@TableName("couplet_vehicle_type") +public class VehicleType { + + /* + * 车辆类型id + * */ + @TableId(type = IdType.AUTO, value = "vehicle_type_id") + private Long vehicleTypeId; + + /* + * 车辆类型名称 + * */ + @TableField(value = "vehicle_type_name") + private String vehicleTypeName; +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/req/VehicleInsertParams.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/req/VehicleInsertParams.java index 581475f..db7a36d 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/req/VehicleInsertParams.java +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/domain/req/VehicleInsertParams.java @@ -7,6 +7,8 @@ import lombok.experimental.SuperBuilder; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; +import javax.validation.constraints.Size; +import java.util.List; /** * @ProjectName: five-groups-couplet @@ -25,7 +27,7 @@ public class VehicleInsertParams { *车辆类型 * */ @NotNull(message = "车辆类型不能为空") - private Integer vehicleType; + private Long vehicleType; /* @@ -52,4 +54,10 @@ public class VehicleInsertParams { @NotBlank(message = "电池编号不能为空") private String batteryNumber; + /* + * 一辆车可以绑定多个标识 + * */ + @Size(min = 1, message = "车辆至少绑定一个标识") + private List logoIds; + } diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleAndLogoMapper.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleAndLogoMapper.java new file mode 100644 index 0000000..4d0072b --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleAndLogoMapper.java @@ -0,0 +1,21 @@ +package com.couplet.vehicle.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.couplet.vehicle.domain.VehicleAndLogo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/26 + * @Description: 车辆与标志Mapper + */ +@Mapper +@Component +public interface VehicleAndLogoMapper extends BaseMapper { + int vehicleBindLogo(@Param("vehicleId") Long vehicleId, @Param("logoIds") List logoIds); +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleMapper.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleMapper.java index 51fd5a0..264e973 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleMapper.java +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleMapper.java @@ -1,7 +1,7 @@ package com.couplet.vehicle.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.couplet.vehicle.domain.LyhVehicle; +import com.couplet.vehicle.domain.Vehicle; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Component; @@ -13,5 +13,5 @@ import org.springframework.stereotype.Component; */ @Mapper @Component -public interface VehicleMapper extends BaseMapper { +public interface VehicleMapper extends BaseMapper { } diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleTypeMapper.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleTypeMapper.java new file mode 100644 index 0000000..4e406bc --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/mapper/VehicleTypeMapper.java @@ -0,0 +1,18 @@ +package com.couplet.vehicle.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.couplet.vehicle.domain.Vehicle; +import com.couplet.vehicle.domain.VehicleType; +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Component; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/26 + * @Description: 车辆类型Mapper + */ +@Mapper +@Component +public interface VehicleTypeMapper extends BaseMapper { +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleAndLogoService.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleAndLogoService.java new file mode 100644 index 0000000..59c40d7 --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleAndLogoService.java @@ -0,0 +1,17 @@ +package com.couplet.vehicle.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.couplet.vehicle.domain.VehicleAndLogo; + +import java.util.List; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/30 + * @Description: + */ + +public interface VehicleAndLogoService extends IService { + int vehicleBindLogo(Long vehicleId, List logoIds); +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleService.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleService.java index ee3c6c9..dcf66fa 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleService.java +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleService.java @@ -1,7 +1,7 @@ package com.couplet.vehicle.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.couplet.vehicle.domain.LyhVehicle; +import com.couplet.vehicle.domain.Vehicle; import com.couplet.vehicle.domain.req.VehicleEditParams; import com.couplet.vehicle.domain.req.VehicleInsertParams; import com.couplet.vehicle.domain.req.VehicleListParams; @@ -15,8 +15,8 @@ import java.util.List; * @Description: 车辆服务 */ -public interface VehicleService extends IService { - List list(VehicleListParams listParams); +public interface VehicleService extends IService { + List list(VehicleListParams listParams); String deleteById(Long vehicleId); diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleTypeService.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleTypeService.java new file mode 100644 index 0000000..b92b896 --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/VehicleTypeService.java @@ -0,0 +1,17 @@ +package com.couplet.vehicle.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.couplet.vehicle.domain.VehicleType; + +import java.util.List; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/31 + * @Description: 车辆类型服务层 + */ + +public interface VehicleTypeService extends IService { + List list(); +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleAndLogoServiceImpl.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleAndLogoServiceImpl.java new file mode 100644 index 0000000..7a82c69 --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleAndLogoServiceImpl.java @@ -0,0 +1,40 @@ +package com.couplet.vehicle.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.couplet.vehicle.domain.VehicleAndLogo; +import com.couplet.vehicle.mapper.VehicleAndLogoMapper; +import com.couplet.vehicle.service.VehicleAndLogoService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/30 + * @Description: 车辆和标识关联 + */ + +@Service +@Slf4j +public class VehicleAndLogoServiceImpl extends ServiceImpl implements VehicleAndLogoService { + + //注入mapper + @Autowired + private VehicleAndLogoMapper mapper; + + /* + * @Author: LiuYunHu + * @Date: 2024/3/30 11:51 + * @Description: 车辆绑定标志 + * @Param: [vehicleId, logoIds] + * @Return: int + **/ + @Override + public int vehicleBindLogo(Long vehicleId, List logoIds) { + + return mapper.vehicleBindLogo(vehicleId, logoIds); + } +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleServiceImpl.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleServiceImpl.java index 33287c7..5302c01 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleServiceImpl.java +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleServiceImpl.java @@ -4,13 +4,16 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.couplet.common.core.utils.StringUtils; -import com.couplet.vehicle.domain.LyhVehicle; +import com.couplet.vehicle.domain.Vehicle; +import com.couplet.vehicle.domain.VehicleType; import com.couplet.vehicle.domain.req.VehicleEditParams; import com.couplet.vehicle.domain.req.VehicleInsertParams; import com.couplet.vehicle.domain.req.VehicleListParams; import com.couplet.vehicle.exception.VehicleException; import com.couplet.vehicle.mapper.VehicleMapper; +import com.couplet.vehicle.service.VehicleAndLogoService; import com.couplet.vehicle.service.VehicleService; +import com.couplet.vehicle.service.VehicleTypeService; import com.couplet.vehicle.utils.SnowflakeIdGenerator; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -27,10 +30,19 @@ import java.util.List; @Service @Slf4j -public class VehicleServiceImpl extends ServiceImpl implements VehicleService { +public class VehicleServiceImpl extends ServiceImpl implements VehicleService { + //车辆mapper @Autowired private VehicleMapper vehicleMapper; + //车辆类型服务 + @Autowired + private VehicleTypeService vehicleTypeService; + + //车辆与标志关联 的mapper + @Autowired + private VehicleAndLogoService vehicleAndLogoService; + /* * @Author: LiuYunHu * @Date: 2024/3/26 22:11 @@ -39,25 +51,40 @@ public class VehicleServiceImpl extends ServiceImpl i * @Return: java.util.List **/ @Override - public List list(VehicleListParams listParams) { + public List list(VehicleListParams listParams) { // 创建查询条件包装器 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); // 如果车辆类型不为空,添加车辆类型作为查询条件 if (!StringUtils.isNull(listParams.getVehicleType())) { - queryWrapper.eq(LyhVehicle::getVehicleType, listParams.getVehicleType()); + queryWrapper.eq(Vehicle::getVehicleType, listParams.getVehicleType()); } // 如果车辆状态不为空,添加车辆状态作为查询条件 if (!StringUtils.isNull(listParams.getVehicleState())) { - queryWrapper.eq(LyhVehicle::getVehicleState, listParams.getVehicleState()); + queryWrapper.eq(Vehicle::getVehicleState, listParams.getVehicleState()); } //只查询车辆未被删除的 - queryWrapper.eq(LyhVehicle::getIsdelete, 0); + queryWrapper.eq(Vehicle::getIsdelete, 0); - // 执行查询并返回结果 - return this.list(queryWrapper); + // 执行查询 + List list = this.list(queryWrapper); + + //调用服务,得到车辆类型 + List vehicleTypes = vehicleTypeService.list(); + + //将类型id一样的记录 名称进行赋值 + list.forEach(vehicle -> { + vehicleTypes.forEach(vehicleType -> { + if (vehicle.getVehicleType() == vehicleType.getVehicleTypeId()) { + vehicle.setVehicleTypeName(vehicleType.getVehicleTypeName()); + } + }); + }); + + + return list; } /* @@ -71,7 +98,7 @@ public class VehicleServiceImpl extends ServiceImpl i public String deleteById(Long vehicleId) { String result = ""; - UpdateWrapper updateWrapper = new UpdateWrapper<>(); + UpdateWrapper updateWrapper = new UpdateWrapper<>(); updateWrapper.set("isdelete", 1) .eq("vehicle_id", vehicleId); @@ -99,7 +126,7 @@ public class VehicleServiceImpl extends ServiceImpl i public String editById(VehicleEditParams editParams) { String result = ""; - UpdateWrapper updateWrapper = new UpdateWrapper<>(); + UpdateWrapper updateWrapper = new UpdateWrapper<>(); //编辑车辆类型 @@ -149,14 +176,33 @@ public class VehicleServiceImpl extends ServiceImpl i long randomId = idGenerator.nextId(); String vin = "VIN" + randomId; + + //创建入参对象 + Vehicle vehicle = new Vehicle(); + + vehicle.setVehicleType(insertParams.getVehicleType()); + vehicle.setMotorManufacturer(insertParams.getMotorManufacturer()); + vehicle.setBatteryManufacturer(insertParams.getBatteryManufacturer()); + vehicle.setMotorNumber(insertParams.getMotorNumber()); + vehicle.setBatteryNumber(insertParams.getBatteryNumber()); + vehicle.setVin(vin); + vehicle.setVehicleState(0); + vehicle.setIsdelete(0); + + //执行插入操作 - int insert = vehicleMapper.insert(new LyhVehicle(null, insertParams.getVehicleType(), insertParams.getMotorManufacturer(), insertParams.getBatteryManufacturer(), insertParams.getMotorNumber(), insertParams.getBatteryNumber(), vin, 0, 0)); + int insert = vehicleMapper.insert(vehicle); if (insert == 0) { result = "新增失败"; throw new VehicleException(result); } + //获取新增的车辆id值 + //执行添加电子围栏 + int i = vehicleAndLogoService.vehicleBindLogo(vehicle.getVehicleId(), insertParams.getLogoIds()); + + result = "新增成功!"; return result; diff --git a/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleTypeServiceImpl.java b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleTypeServiceImpl.java new file mode 100644 index 0000000..4fc867f --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/java/com/couplet/vehicle/service/impl/VehicleTypeServiceImpl.java @@ -0,0 +1,37 @@ +package com.couplet.vehicle.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.couplet.vehicle.domain.VehicleType; +import com.couplet.vehicle.mapper.VehicleTypeMapper; +import com.couplet.vehicle.service.VehicleTypeService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @ProjectName: five-groups-couplet + * @Author: LiuYunHu + * @CreateTime: 2024/3/31 + * @Description: 车辆类型服务实现类 + */ +@Service +@Slf4j +public class VehicleTypeServiceImpl extends ServiceImpl implements VehicleTypeService { + + + /* + * @Author: LiuYunHu + * @Date: 2024/3/31 10:17 + * @Description: 获取所有的车辆类型 + * @Param: [] + * @Return: java.util.List + **/ + @Override + public List list() { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + return this.list(queryWrapper); + } +} diff --git a/couplet-modules/couplet-modules-vehicle/src/main/resources/banner.txt b/couplet-modules/couplet-modules-vehicle/src/main/resources/banner.txt index 0dd5eee..0f828d6 100644 --- a/couplet-modules/couplet-modules-vehicle/src/main/resources/banner.txt +++ b/couplet-modules/couplet-modules-vehicle/src/main/resources/banner.txt @@ -1,2 +1,6 @@ Spring Boot Version: ${spring-boot.version} Spring Application Name: ${spring.application.name} + _ _ ____ _ _ ____ ___ __ ____ +( \/ )( ___)( )_( )(_ _) / __)( ) ( ___) + \ / )__) ) _ ( _)(_ ( (__ )(__ )__) + \/ (____)(_) (_)(____) \___)(____)(____) diff --git a/couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleAndLogoMapper.xml b/couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleAndLogoMapper.xml new file mode 100644 index 0000000..ac6051c --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleAndLogoMapper.xml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleTypeMapper.xml b/couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleTypeMapper.xml new file mode 100644 index 0000000..a71954f --- /dev/null +++ b/couplet-modules/couplet-modules-vehicle/src/main/resources/mapper/vehicle/VehicleTypeMapper.xml @@ -0,0 +1,8 @@ + + + + + +