From b01d8e81124140da16b28d554ec40a1863dfcbd4 Mon Sep 17 00:00:00 2001 From: xiaohuang <1559741705@qq.com> Date: Mon, 24 Jun 2024 19:04:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E8=BD=A6=E4=B8=8A=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../muyu/vehicle/MuYuVehicleApplication.java | 2 + .../controller/FaultCodeController.java | 104 ++++++++++ .../controller/FaultRecordController.java | 115 +++++++++++ .../vehicle/controller/FenceController.java | 17 +- .../vehicle/controller/GroupController.java | 19 +- .../vehicle/controller/VehicleController.java | 6 +- ...roller.java => VehicleInfoController.java} | 27 ++- .../com/muyu/vehicle/domain/FaultCode.java | 90 ++++++++ .../com/muyu/vehicle/domain/FaultRecord.java | 110 ++++++++++ .../java/com/muyu/vehicle/domain/Fence.java | 3 - .../java/com/muyu/vehicle/domain/Group.java | 6 +- .../java/com/muyu/vehicle/domain/Type.java | 2 +- .../java/com/muyu/vehicle/domain/Vehicle.java | 8 +- .../com/muyu/vehicle/domain/VehicleInfo.java | 140 ++++++------- .../vehicle/domain/req/FaultCodeEditReq.java | 41 ++++ .../vehicle/domain/req/FaultCodeQueryReq.java | 29 +++ .../vehicle/domain/req/FaultCodeSaveReq.java | 52 +++++ .../domain/req/FaultRecordEditReq.java | 54 +++++ .../domain/req/FaultRecordQueryReq.java | 34 +++ .../vehicle/domain/req/FaultRecordReqVo.java | 31 +++ .../domain/req/FaultRecordSaveReq.java | 65 ++++++ .../muyu/vehicle/domain/vo/FaultRecordVo.java | 26 +++ .../java/com/muyu/vehicle/domain/vo/Path.java | 2 +- .../muyu/vehicle/domain/vo/VehicleReq.java | 9 +- .../com/muyu/vehicle/domain/vo/VehicleVo.java | 6 +- .../java/com/muyu/vehicle/job/ManyJob.java | 56 +++++ .../muyu/vehicle/mapper/FaultCodeMapper.java | 14 +- .../vehicle/mapper/FaultRecordMapper.java | 23 ++- .../com/muyu/vehicle/mapper/FenceMapper.java | 1 - .../muyu/vehicle/mapper/VehicleMapper.java | 2 + .../rabbitmq/producer/VehicleProducer.java | 194 ++++++++++++------ .../vehicle/service/FaultCodeService.java | 21 +- .../vehicle/service/FaultRecordService.java | 30 ++- .../muyu/vehicle/service/IFenceService.java | 5 +- .../muyu/vehicle/service/IGroupService.java | 1 - .../service/impl/FaultCodeServiceImpl.java | 43 ++++ .../service/impl/FaultCodeServicelmpl.java | 10 - .../service/impl/FaultRecordServiceImpl.java | 70 +++++++ .../service/impl/FaultRecordServicelmpl.java | 10 - .../service/impl/FenceServiceImpl.java | 3 +- .../service/impl/VehicleServiceImpl.java | 1 - .../mapper/Fault/FaultRecordMapper.xml | 50 +++++ .../mapper/FaultCode/FaultCodeMapper.xml | 18 ++ .../resources/mapper/fence/FenceMapper.xml | 8 +- .../resources/mapper/group/GroupMapper.xml | 8 +- .../mapper/vehicle/VehicleMapper.xml | 21 +- 46 files changed, 1320 insertions(+), 267 deletions(-) create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultCodeController.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultRecordController.java rename muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/{VehiclelnfoController.java => VehicleInfoController.java} (64%) create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultCode.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultRecord.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeEditReq.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeQueryReq.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeSaveReq.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordEditReq.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordQueryReq.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordReqVo.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordSaveReq.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/FaultRecordVo.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/job/ManyJob.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServiceImpl.java delete mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServiceImpl.java delete mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/Fault/FaultRecordMapper.xml create mode 100644 muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/FaultCode/FaultCodeMapper.xml diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/MuYuVehicleApplication.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/MuYuVehicleApplication.java index baac0e9..4f1cd2c 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/MuYuVehicleApplication.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/MuYuVehicleApplication.java @@ -9,6 +9,7 @@ import com.muyu.common.swagger.annotation.EnableCustomSwagger2; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.scheduling.annotation.EnableScheduling; /** * BingRui.Hou @@ -21,6 +22,7 @@ import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; @EnableCustomConfig @EnableCustomSwagger2 @EnableMyFeignClients +@EnableScheduling @SpringBootApplication(exclude = {DynamicDataSourceAutoConfiguration.class, DataSourceAutoConfiguration.class }) public class MuYuVehicleApplication { public static void main (String[] args) { diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultCodeController.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultCodeController.java new file mode 100644 index 0000000..3dc3e86 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultCodeController.java @@ -0,0 +1,104 @@ +package com.muyu.vehicle.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.poi.ExcelUtil; +import com.muyu.common.core.web.controller.BaseController; +import com.muyu.common.core.web.page.TableDataInfo; +import com.muyu.common.log.annotation.Log; +import com.muyu.common.log.enums.BusinessType; +import com.muyu.vehicle.domain.FaultCode; +import com.muyu.vehicle.domain.req.FaultCodeEditReq; +import com.muyu.vehicle.domain.req.FaultCodeQueryReq; +import com.muyu.vehicle.domain.req.FaultCodeSaveReq; +import com.muyu.vehicle.service.FaultCodeService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +/** + * 车辆故障码Controller + * + * @author chx + * @date 2024-06-20 + */ +@Api(tags = "车辆故障码") +@RestController +@RequestMapping("/faultCode") +public class FaultCodeController extends BaseController { + @Autowired + private FaultCodeService faultCodeService; + + /** + * 查询车辆故障码列表 + */ + @ApiOperation("获取车辆故障码列表") +// @RequiresPermissions("client:faultCode:list") + @GetMapping("/list") + public Result> list(FaultCodeQueryReq faultCodeQueryReq) { + startPage(); + List list = faultCodeService.list(FaultCode.queryBuild(faultCodeQueryReq)); + return getDataTable(list); + } + + /** + * 导出车辆故障码列表 + */ + @ApiOperation("导出车辆故障码列表") +// @RequiresPermissions("client:faultCode:export") + @Log(title = "车辆故障码", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, FaultCode faultCode) { + List list = faultCodeService.list(faultCode); + ExcelUtil util = new ExcelUtil(FaultCode.class); + util.exportExcel(response, list, "车辆故障码数据"); + } + + /** + * 获取车辆故障码详细信息 + */ + @ApiOperation("获取车辆故障码详细信息") +// @RequiresPermissions("client:faultCode:query") + @GetMapping(value = "/{id}") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("id") Long id) { + return Result.success(faultCodeService.getById(id)); + } + + /** + * 新增车辆故障码 + */ +// @RequiresPermissions("client:faultCode:add") + @Log(title = "车辆故障码", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增车辆故障码") + public Result add(@RequestBody FaultCodeSaveReq faultCodeSaveReq) { + return toAjax(faultCodeService.save(FaultCode.saveBuild(faultCodeSaveReq))); + } + + /** + * 修改车辆故障码 + */ +// @RequiresPermissions("client:faultCode:edit") + @Log(title = "车辆故障码", businessType = BusinessType.UPDATE) + @PutMapping("/{id}") + @ApiOperation("修改车辆故障码") + public Result edit(@PathVariable Long id, @RequestBody FaultCodeEditReq faultCodeEditReq) { + return toAjax(faultCodeService.updateById(FaultCode.editBuild(id,faultCodeEditReq))); + } + + /** + * 删除车辆故障码 + */ +// @RequiresPermissions("client:faultCode:remove") + @Log(title = "车辆故障码", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + @ApiOperation("删除车辆故障码") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List ids) { + return toAjax(faultCodeService.removeBatchByIds(ids)); + } +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultRecordController.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultRecordController.java new file mode 100644 index 0000000..a90981e --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FaultRecordController.java @@ -0,0 +1,115 @@ +package com.muyu.vehicle.controller; + +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.poi.ExcelUtil; +import com.muyu.common.core.web.controller.BaseController; +import com.muyu.common.core.web.page.TableDataInfo; +import com.muyu.common.log.annotation.Log; +import com.muyu.common.log.enums.BusinessType; +import com.muyu.vehicle.domain.FaultRecord; +import com.muyu.vehicle.domain.req.FaultRecordEditReq; +import com.muyu.vehicle.domain.req.FaultRecordQueryReq; +import com.muyu.vehicle.domain.req.FaultRecordReqVo; +import com.muyu.vehicle.domain.req.FaultRecordSaveReq; +import com.muyu.vehicle.domain.vo.FaultRecordVo; +import com.muyu.vehicle.service.FaultRecordService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + + +/** + * 故障记录Controller + * + * @author chx + * @date 2024-06-20 + */ +@Api(tags = "故障记录") +@RestController +@RequestMapping("/faultRecord") +public class FaultRecordController extends BaseController { + @Autowired + private FaultRecordService faultRecordService; + + /** + * 查询故障记录列表 + */ + @ApiOperation("获取故障记录列表") +// @RequiresPermissions("client:faultRecord:list") + @GetMapping("/list") + public Result> list(FaultRecordQueryReq faultRecordQueryReq) { + startPage(); + List list = faultRecordService.list(FaultRecord.queryBuild(faultRecordQueryReq)); + return getDataTable(list); + } + + /** + * 导出故障记录列表 + */ + @ApiOperation("导出故障记录列表") +// @RequiresPermissions("client:faultRecord:export") + @Log(title = "故障记录", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, FaultRecord faultRecord) { + List list = faultRecordService.list(faultRecord); + ExcelUtil util = new ExcelUtil(FaultRecord.class); + util.exportExcel(response, list, "故障记录数据"); + } + + /** + * 获取故障记录详细信息 + */ + @ApiOperation("获取故障记录详细信息") +// @RequiresPermissions("client:faultRecord:query") + @GetMapping(value = "/{id}") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("id") Long id) { + return Result.success(faultRecordService.getById(id)); + } + + /** + * 新增故障记录 + */ +// @RequiresPermissions("client:faultRecord:add") + @Log(title = "故障记录", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增故障记录") + public Result add(@RequestBody FaultRecordSaveReq faultRecordSaveReq) { + return toAjax(faultRecordService.save(FaultRecord.saveBuild(faultRecordSaveReq))); + } + + /** + * 修改故障记录 + */ +// @RequiresPermissions("client:faultRecord:edit") + @Log(title = "故障记录", businessType = BusinessType.UPDATE) + @PutMapping("/{id}") + @ApiOperation("修改故障记录") + public Result edit(@PathVariable Long id, @RequestBody FaultRecordEditReq faultRecordEditReq) { + return toAjax(faultRecordService.updateById(FaultRecord.editBuild(id,faultRecordEditReq))); + } + + /** + * 删除故障记录 + */ +// @RequiresPermissions("client:faultRecord:remove") + @Log(title = "故障记录", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + @ApiOperation("删除故障记录") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List ids) { + return toAjax(faultRecordService.removeBatchByIds(ids)); + } + + @Log(title = "图",businessType = BusinessType.DELETE) + @PostMapping("/countList") + @ApiOperation("图展示") + public Result> countList(@RequestBody FaultRecordReqVo recordReqVo) { + return Result.success(faultRecordService.countList(recordReqVo)); + } +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FenceController.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FenceController.java index fed3f66..54be14f 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FenceController.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/FenceController.java @@ -1,28 +1,19 @@ package com.muyu.vehicle.controller; -import java.util.List; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; - import com.muyu.common.core.domain.Result; import com.muyu.common.core.utils.poi.ExcelUtil; import com.muyu.common.core.web.controller.BaseController; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; -import com.muyu.common.security.annotation.RequiresPermissions; import com.muyu.vehicle.domain.Fence; import com.muyu.vehicle.service.IFenceService; import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -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 javax.servlet.http.HttpServletResponse; +import java.util.List; /** diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/GroupController.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/GroupController.java index 75f3fe3..2ef9bbd 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/GroupController.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/GroupController.java @@ -1,31 +1,22 @@ package com.muyu.vehicle.controller; -import java.util.List; -import java.io.IOException; -import javax.servlet.http.HttpServletResponse; - import com.muyu.common.core.domain.Result; import com.muyu.common.core.utils.poi.ExcelUtil; import com.muyu.common.core.web.controller.BaseController; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; -import com.muyu.common.security.annotation.RequiresPermissions; import com.muyu.vehicle.domain.Group; import com.muyu.vehicle.service.IGroupService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -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 javax.servlet.http.HttpServletResponse; +import java.util.List; /** * 围栏组Controller * - * @author xiaohuang + * @author BingRui.Hou * @date 2024-06-02 */ @RestController diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleController.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleController.java index e9ac5f2..6a76f3b 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleController.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleController.java @@ -2,25 +2,21 @@ package com.muyu.vehicle.controller; import com.muyu.common.core.domain.Result; -import com.muyu.common.core.utils.poi.ExcelUtil; import com.muyu.common.core.web.controller.BaseController; import com.muyu.common.core.web.page.TableDataInfo; - import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; import com.muyu.vehicle.domain.Vehicle; import com.muyu.vehicle.service.IVehicleService; -import org.springframework.amqp.rabbit.annotation.RabbitHandler; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletResponse; import java.util.List; /** * 车辆录入Controller * - * @author xiaohuang + * @author BingRui.Hou * @date 2024-05-27 */ @RestController diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehiclelnfoController.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleInfoController.java similarity index 64% rename from muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehiclelnfoController.java rename to muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleInfoController.java index d134143..e694d02 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehiclelnfoController.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/controller/VehicleInfoController.java @@ -1,6 +1,7 @@ package com.muyu.vehicle.controller; -import com.alibaba.fastjson.JSON; + +import com.alibaba.fastjson2.JSON; import com.muyu.common.core.domain.Result; import com.muyu.common.core.web.controller.BaseController; import com.muyu.vehicle.domain.VehicleInfo; @@ -13,29 +14,27 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** - * 车辆录入 VehiclelnfoController + * 车辆录入Controller * - * @author xiaohuang - * Date 2024/6/18 18:35 + * @author BingRui.Hou + * @date 2024-05-27 */ - @Log4j2 @RestController @RequestMapping("/vehicleInfo") -public class VehiclelnfoController extends BaseController { - - +public class VehicleInfoController extends BaseController +{ @Autowired private RedisTemplate redisTemplate; @GetMapping("/list/{vin}") public Result vehicleInfoAllList(@PathVariable String vin){ - if (vin.isEmpty()){ - return Result.error("该车辆未上线"); + + if (redisTemplate.hasKey(vin)){ + String lastElement = redisTemplate.opsForList().index(vin, -1); + VehicleInfo vehicleInfo = JSON.parseObject(lastElement, VehicleInfo.class); + return Result.success(vehicleInfo); } - String lastElement = redisTemplate.opsForList().index(vin, 0); - VehicleInfo vehicleInfo = JSON.parseObject(lastElement, VehicleInfo.class); - return Result.success(vehicleInfo); + return null; } } - diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultCode.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultCode.java new file mode 100644 index 0000000..5163525 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultCode.java @@ -0,0 +1,90 @@ +package com.muyu.vehicle.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.muyu.common.core.annotation.Excel; +import com.muyu.vehicle.domain.req.FaultCodeEditReq; +import com.muyu.vehicle.domain.req.FaultCodeQueryReq; +import com.muyu.vehicle.domain.req.FaultCodeSaveReq; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 车辆故障码对象 fault_code + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("fault_code") +@ApiModel(value = "FaultCode", description = "车辆故障码") +public class FaultCode { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 故障码 */ + @Excel(name = "故障码") + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 故障标签 */ + @Excel(name = "故障标签") + @ApiModelProperty(name = "故障标签", value = "故障标签") + private String faultLabel; + + /** 故障位 */ + @Excel(name = "故障位") + @ApiModelProperty(name = "故障位", value = "故障位") + private Long faultBit; + + /** 故障值 */ + @Excel(name = "故障值") + @ApiModelProperty(name = "故障值", value = "故障值") + private Long faultValue; + + /** + * 查询构造器 + */ + public static FaultCode queryBuild( FaultCodeQueryReq faultCodeQueryReq){ + return FaultCode.builder() + .faultCode(faultCodeQueryReq.getFaultCode()) + .build(); + } + + /** + * 添加构造器 + */ + public static FaultCode saveBuild(FaultCodeSaveReq faultCodeSaveReq){ + return FaultCode.builder() + .faultCode(faultCodeSaveReq.getFaultCode()) + .faultLabel(faultCodeSaveReq.getFaultLabel()) + .faultBit(faultCodeSaveReq.getFaultBit()) + .faultValue(faultCodeSaveReq.getFaultValue()) + .build(); + } + + /** + * 修改构造器 + */ + public static FaultCode editBuild(Long id, FaultCodeEditReq faultCodeEditReq){ + return FaultCode.builder() + .id(id) + .faultCode(faultCodeEditReq.getFaultCode()) + .faultLabel(faultCodeEditReq.getFaultLabel()) + .faultBit(faultCodeEditReq.getFaultBit()) + .faultValue(faultCodeEditReq.getFaultValue()) + .build(); + } + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultRecord.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultRecord.java new file mode 100644 index 0000000..978f367 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/FaultRecord.java @@ -0,0 +1,110 @@ +package com.muyu.vehicle.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.muyu.common.core.annotation.Excel; +import com.muyu.vehicle.domain.req.FaultRecordEditReq; +import com.muyu.vehicle.domain.req.FaultRecordQueryReq; +import com.muyu.vehicle.domain.req.FaultRecordSaveReq; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * 故障记录对象 fault_record + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("fault_record") +@ApiModel(value = "FaultRecord", description = "故障记录") +public class FaultRecord { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 故障码 */ + @Excel(name = "故障码") + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 车辆vin */ + @Excel(name = "车辆vin") + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + + /** 故障开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "故障开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(name = "故障开始时间", value = "故障开始时间") + private Date startTime; + + /** 故障结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "故障结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(name = "故障结束时间", value = "故障结束时间") + private Date endTime; + + /** 故障级别 */ + @Excel(name = "故障级别") + @ApiModelProperty(name = "故障级别", value = "故障级别") + private String faultLevel; + + /** 故障是否处理 */ + @Excel(name = "故障是否处理") + @ApiModelProperty(name = "故障是否处理", value = "故障是否处理") + private String faultHandle; + + /** + * 查询构造器 + */ + public static FaultRecord queryBuild( FaultRecordQueryReq faultRecordQueryReq){ + return FaultRecord.builder() + .faultCode(faultRecordQueryReq.getFaultCode()) + .vin(faultRecordQueryReq.getVin()) + .build(); + } + + /** + * 添加构造器 + */ + public static FaultRecord saveBuild(FaultRecordSaveReq faultRecordSaveReq){ + return FaultRecord.builder() + .faultCode(faultRecordSaveReq.getFaultCode()) + .vin(faultRecordSaveReq.getVin()) + .startTime(faultRecordSaveReq.getStartTime()) + .endTime(faultRecordSaveReq.getEndTime()) + .faultLevel(faultRecordSaveReq.getFaultLevel()) + .faultHandle(faultRecordSaveReq.getFaultHandle()) + .build(); + } + + /** + * 修改构造器 + */ + public static FaultRecord editBuild(Long id, FaultRecordEditReq faultRecordEditReq){ + return FaultRecord.builder() + .id(id) + .faultCode(faultRecordEditReq.getFaultCode()) + .vin(faultRecordEditReq.getVin()) + .startTime(faultRecordEditReq.getStartTime()) + .endTime(faultRecordEditReq.getEndTime()) + .faultLevel(faultRecordEditReq.getFaultLevel()) + .faultHandle(faultRecordEditReq.getFaultHandle()) + .build(); + } + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Fence.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Fence.java index 638a5bd..1b3655f 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Fence.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Fence.java @@ -1,7 +1,6 @@ package com.muyu.vehicle.domain; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.muyu.common.core.annotation.Excel; import com.muyu.common.core.web.domain.BaseEntity; @@ -11,8 +10,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; import java.util.List; diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Group.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Group.java index a20ac9c..9a3468b 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Group.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Group.java @@ -1,7 +1,5 @@ package com.muyu.vehicle.domain; -import java.util.Date; - import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.muyu.common.core.annotation.Excel; @@ -11,8 +9,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; /** diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Type.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Type.java index fa0a59c..891e22d 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Type.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Type.java @@ -10,7 +10,7 @@ import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; /** - * xiaohuang + * BingRui.Hou * * @Description 描述 * @ClassName Type diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Vehicle.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Vehicle.java index 6a2d8f8..308db14 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Vehicle.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/Vehicle.java @@ -1,5 +1,6 @@ package com.muyu.vehicle.domain; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.muyu.common.core.annotation.Excel; import com.muyu.common.core.web.domain.BaseEntity; @@ -8,8 +9,6 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; /** * 车辆录入对象 vehicle @@ -59,8 +58,9 @@ public class Vehicle extends BaseEntity private Long batteryNumber; /** 企业ID */ -// @Excel(name = "企业ID") -// private Long businessId; + @Excel(name = "企业ID") + @TableField(value = "business_id") + private Long businessId; @Excel(name="围栏组ID") private Long groupId; diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/VehicleInfo.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/VehicleInfo.java index 6f8b39e..86e3031 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/VehicleInfo.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/VehicleInfo.java @@ -1,208 +1,202 @@ package com.muyu.vehicle.domain; import lombok.AllArgsConstructor; -import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; - -import java.math.BigDecimal; +import lombok.experimental.SuperBuilder; /** - * 车辆数据信息 - * @author Mobai - * @className Vehicle - * @description 描述 - * @date 2024/6/6 8:18 + * 车辆信息 + * @author YunFei.Du + * @date 9:03 2024/6/4 */ @Data -@Builder +@SuperBuilder @NoArgsConstructor @AllArgsConstructor public class VehicleInfo { - /** - * 车辆vin + * VIN */ private String vin; - /** - * 时间戳 - */ private Long startTime; + /** * 经度 */ - private BigDecimal longitude; + private String longitude; /** * 纬度 */ - private BigDecimal latitude; + private String latitude; /** * 速度 */ - private BigDecimal speed; + private String speed; /** - * 总里程 + * 里程 */ - private BigDecimal mileage; + private String mileage; /** * 总电压 */ - private BigDecimal voltage; + private String voltage; /** * 总电流 */ - private BigDecimal current; + private String current; /** * 绝缘电阻 */ - private BigDecimal resistance; + private String resistance; + + private String gear; /** * 档位 */ - private String gear; - /** - * 加速踏板行程值 - */ - private BigDecimal accelerationPedal; + private String accelerationPedal; /** * 制动踏板行程值 */ - private BigDecimal brakePedal; + private String brakePedal; /** * 燃料消耗率 */ - private BigDecimal fuelConsumptionRate; + private String fuelConsumptionRate; /** * 电机控制器温度 */ - private BigDecimal motorControllerTemperature; + private String motorControllerTemperature; /** * 电机转速 */ - private BigDecimal motorSpeed; + private String motorSpeed; /** * 电机转矩 */ - private BigDecimal motoTorque; + private String motorTorque; /** * 电机温度 */ - private BigDecimal motorTemperature; + private String motorTemperature; /** * 电机电压 */ - private BigDecimal motorVoltage; + private String motorVoltage; /** * 电机电流 */ - private BigDecimal motorCurrent; + private String motorCurrent; /** - * 动力电池剩余电量SOC + * 电池总容量 */ - private BigDecimal remainingBattery; + private String remainingBattery; /** * 当前状态允许的最大反馈功率 */ - private BigDecimal maximumFeedbackPower; + private String maximumFeedbackPower; /** - * 当前状态允许的最大放电功率 + * 当前状态允许最大放电功率 */ - private BigDecimal maximumDischargePower; + private String maximumDischargePower; /** * BMS自检计数器 */ - private BigDecimal selfCheckCounter; + private String selfCheckCounter; /** * 动力电池充放电电流 */ - private BigDecimal totalBatteryCurrent; + private String totalBatteryCurrent; /** * 动力电池负载端总电压V3 */ - private BigDecimal totalBatteryVoltage; + private String totalBatteryVoltage; /** * 单次最大电压 */ - private BigDecimal singleBatteryMaxVoltage; + private String singleBatteryMaxVoltage; /** - * 单次最低电压 + * 单体电池最低电压 */ - private BigDecimal singleBatteryMinVoltage; + private String singleBatteryMinVoltage; /** * 单体电池最高温度 */ - private BigDecimal singleBatteryMaxTemperature; + private String singleBatteryMaxTemperature; /** * 单体电池最低温度 */ - private BigDecimal singleBatteryMinTemperature; + private String singleBatteryMinTemperature; /** * 动力电池可用容量 */ - private BigDecimal availableBatteryCapacity; + private String availableBatteryCapacity; /** * 车辆状态 */ - private Integer vehicleStatus; + private String vehicleStatus; /** * 充电状态 */ - private Integer chargingStatus; + private String chargingStatus; /** * 运行状态 */ - private Integer operatingStatus; + private String operatingStatus; /** * SOC */ - private Integer chargingEnergyStorageStatus; + private String socStatus; /** * 可充电储能装置工作状态 */ - private Integer driveMotorStatus; + private String chargingEnergyStorageStatus; + /** + * 驱动电机状态 + */ + private String driveMotorStatus; /** * 定位是否有效 */ - private Integer positionStatus; + private String positionStatus; /** - * EAS + * EAS(汽车防盗系统)状态 */ - private Integer easStatus; + private String easStatus; /** - * PTC + * PTC(电动加热器)状态 */ - private Integer ptcStatus; + private String ptcStatus; /** - * EPS + * EPS(电动助力系统)状态 */ - private Integer epsStatus; + private String epsStatus; /** - * ABS + * ABS(防抱死)状态 */ - private Integer absStatus; + private String absStatus; /** - * MCU + * MCU(电机/逆变器)状态 */ - private Integer mcuStatus; + private String mcuStatus; /** * 动力电池加热状态 */ - private Integer heatingStatus; + private String heatingStatus; /** * 动力电池当前状态 */ - private Integer batteryStatus; + private String batteryStatus; /** * 动力电池保温状态 */ - private Integer batteryInsulationStatus; + private String batteryInsulationStatus; /** - * DCDC + * DCDC(电力交换系统)状态 */ - private Integer dcdcStatus; + private String dcdcStatus; /** - * CHG + * CHG(充电机)状态 */ - private Integer chgStatus; - + private String chgStatus; } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeEditReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeEditReq.java new file mode 100644 index 0000000..5617beb --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeEditReq.java @@ -0,0 +1,41 @@ +package com.muyu.vehicle.domain.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 车辆故障码对象 fault_code + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "FaultCodeEditReq", description = "车辆故障码") +public class FaultCodeEditReq { + + private static final long serialVersionUID = 1L; + + /** 故障码 */ + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 故障标签 */ + @ApiModelProperty(name = "故障标签", value = "故障标签") + private String faultLabel; + + /** 故障位 */ + @ApiModelProperty(name = "故障位", value = "故障位") + private Long faultBit; + + /** 故障值 */ + @ApiModelProperty(name = "故障值", value = "故障值") + private Long faultValue; + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeQueryReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeQueryReq.java new file mode 100644 index 0000000..5f936ca --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeQueryReq.java @@ -0,0 +1,29 @@ +package com.muyu.vehicle.domain.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 车辆故障码对象 fault_code + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "FaultCodeQueryReq", description = "车辆故障码") +public class FaultCodeQueryReq { + + private static final long serialVersionUID = 1L; + + /** 故障码 */ + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeSaveReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeSaveReq.java new file mode 100644 index 0000000..8dd37e0 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultCodeSaveReq.java @@ -0,0 +1,52 @@ +package com.muyu.vehicle.domain.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + + + +/** + * 车辆故障码对象 fault_code + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "FaultCodeSaveReq", description = "车辆故障码") +public class FaultCodeSaveReq { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 故障码 */ + + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 故障标签 */ + + @ApiModelProperty(name = "故障标签", value = "故障标签") + private String faultLabel; + + /** 故障位 */ + + @ApiModelProperty(name = "故障位", value = "故障位") + private Long faultBit; + + /** 故障值 */ + + @ApiModelProperty(name = "故障值", value = "故障值") + private Long faultValue; + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordEditReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordEditReq.java new file mode 100644 index 0000000..e4ac134 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordEditReq.java @@ -0,0 +1,54 @@ +package com.muyu.vehicle.domain.req; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * 故障记录对象 fault_record + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "FaultRecordEditReq", description = "故障记录") +public class FaultRecordEditReq { + + private static final long serialVersionUID = 1L; + + /** 故障码 */ + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 车辆vin */ + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + + /** 故障开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(name = "故障开始时间", value = "故障开始时间") + private Date startTime; + + /** 故障结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(name = "故障结束时间", value = "故障结束时间") + private Date endTime; + + /** 故障级别 */ + @ApiModelProperty(name = "故障级别", value = "故障级别") + private String faultLevel; + + /** 故障是否处理 */ + @ApiModelProperty(name = "故障是否处理", value = "故障是否处理") + private String faultHandle; + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordQueryReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordQueryReq.java new file mode 100644 index 0000000..42e3cbb --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordQueryReq.java @@ -0,0 +1,34 @@ +package com.muyu.vehicle.domain.req; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + + +/** + * 故障记录对象 fault_record + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "FaultRecordQueryReq", description = "故障记录") +public class FaultRecordQueryReq { + + private static final long serialVersionUID = 1L; + + /** 故障码 */ + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 车辆vin */ + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordReqVo.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordReqVo.java new file mode 100644 index 0000000..912dfaf --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordReqVo.java @@ -0,0 +1,31 @@ +package com.muyu.vehicle.domain.req; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * 故障记录对象 fault_record + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +public class FaultRecordReqVo { + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date max; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date min; + + + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordSaveReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordSaveReq.java new file mode 100644 index 0000000..85522bd --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/req/FaultRecordSaveReq.java @@ -0,0 +1,65 @@ +package com.muyu.vehicle.domain.req; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * 故障记录对象 fault_record + * + * @author hbr + * @date 2024-06-20 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "FaultRecordSaveReq", description = "故障记录") +public class FaultRecordSaveReq { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 故障码 */ + + @ApiModelProperty(name = "故障码", value = "故障码") + private String faultCode; + + /** 车辆vin */ + + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + + /** 故障开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + + @ApiModelProperty(name = "故障开始时间", value = "故障开始时间") + private Date startTime; + + /** 故障结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + + @ApiModelProperty(name = "故障结束时间", value = "故障结束时间") + private Date endTime; + + /** 故障级别 */ + + @ApiModelProperty(name = "故障级别", value = "故障级别") + private String faultLevel; + + /** 故障是否处理 */ + + @ApiModelProperty(name = "故障是否处理", value = "故障是否处理") + private String faultHandle; + +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/FaultRecordVo.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/FaultRecordVo.java new file mode 100644 index 0000000..86ba665 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/FaultRecordVo.java @@ -0,0 +1,26 @@ +package com.muyu.vehicle.domain.vo; + + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * BingRui.Hou + * + * @Description 描述 + * @ClassName FaultRecordVo + * @Date 2024/06/21 11:44 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class FaultRecordVo { + private String faultCode; + + private String vin; + + private Integer count; + + private String faultLabel; +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/Path.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/Path.java index e0e95b2..8dbb42f 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/Path.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/Path.java @@ -7,7 +7,7 @@ import lombok.NoArgsConstructor; import lombok.ToString; /** - * xiaohuang + * BingRui.Hou * * @Description 描述 * @ClassName Path diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleReq.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleReq.java index 33d035f..8a9e79f 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleReq.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleReq.java @@ -1,10 +1,9 @@ package com.muyu.vehicle.domain.vo; -import com.baomidou.mybatisplus.annotation.TableName; -import com.muyu.common.core.annotation.Excel; -import com.muyu.common.core.web.domain.BaseEntity; -import lombok.*; -import lombok.experimental.SuperBuilder; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; /** * 车辆录入对象 vehicle diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleVo.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleVo.java index 942642e..39be26c 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleVo.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/domain/vo/VehicleVo.java @@ -1,11 +1,7 @@ package com.muyu.vehicle.domain.vo; -import com.baomidou.mybatisplus.annotation.TableName; -import com.muyu.common.core.annotation.Excel; -import com.muyu.common.core.web.domain.BaseEntity; import lombok.AllArgsConstructor; import lombok.Data; -import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; @@ -19,7 +15,7 @@ import lombok.experimental.SuperBuilder; @SuperBuilder @NoArgsConstructor @AllArgsConstructor -public class VehicleVo extends BaseEntity +public class VehicleVo { diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/job/ManyJob.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/job/ManyJob.java new file mode 100644 index 0000000..ab9dd75 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/job/ManyJob.java @@ -0,0 +1,56 @@ +package com.muyu.vehicle.job; + + +import com.muyu.vehicle.datasource.config.holder.DynamicDataSourceHolder; +import com.muyu.vehicle.domain.Vehicle; +import com.muyu.vehicle.mapper.VehicleMapper; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; + +/** + * BingRui.Hou + * + * @Description 描述 + * @ClassName ManyJob + * @Date 2024/06/20 17:34 + */ +@Component +@Log4j2 +public class ManyJob { + + @Autowired + private RedisTemplate redisTemplate; + + @Autowired + private VehicleMapper vehicleService; + + @Scheduled(cron = "*/10 * * * * ?")// 每10分钟执行一次 + public void manyJob(){ + DynamicDataSourceHolder.setDynamicDataSourceKey("test_00"); + List list = vehicleService.selectVehicleListAll(new Vehicle()); + ExecutorService executor = Executors.newFixedThreadPool(list.size()); + list.forEach(vehicle -> { + executor.submit(new Runnable() { + @Override + public void run() { + redisTemplate + .opsForValue() + .set(vehicle.getNumber()+"1", + String.valueOf(vehicle.getBusinessId()), + 24, + TimeUnit.HOURS); + } + }); + }); + DynamicDataSourceHolder.removeDynamicDataSourceKey(); + + } +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java index 087f0f9..3ce9027 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultCodeMapper.java @@ -1,10 +1,16 @@ package com.muyu.vehicle.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.vehicle.domain.FaultCode; + + /** - * 车辆故障码接口 FaultCodeMapper + * 车辆故障码Mapper接口 * - * @author xiaohuang - * Date 2024/6/20 17:16 + * @author chx + * @date 2024-06-20 */ -public interface FaultCodeMapper { +public interface FaultCodeMapper extends BaseMapper { + } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java index a045346..e831fb9 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FaultRecordMapper.java @@ -1,11 +1,26 @@ package com.muyu.vehicle.mapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.vehicle.domain.FaultRecord; +import com.muyu.vehicle.domain.req.FaultRecordReqVo; +import com.muyu.vehicle.domain.vo.FaultRecordVo; + +import java.util.List; + + /** - * 故障记录接口 FaultRecordMapper + * 故障记录Mapper接口 * - * @author xiaohuang - * Date 2024/6/20 17:17 + * @author chx + * @date 2024-06-20 */ -public interface FaultRecordMapper { +public interface FaultRecordMapper extends BaseMapper { + + void updateByFaultRecord(FaultRecord build); + + FaultRecord getByFaultRecord(FaultRecord faultRecord); + + List countList(FaultRecordReqVo recordReqVo); + } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FenceMapper.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FenceMapper.java index a89ed04..4dd39d0 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FenceMapper.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/FenceMapper.java @@ -2,7 +2,6 @@ package com.muyu.vehicle.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.vehicle.domain.Fence; -import com.muyu.vehicle.domain.Vehicle; import java.util.List; diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/VehicleMapper.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/VehicleMapper.java index 0e0883f..07c9771 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/VehicleMapper.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/mapper/VehicleMapper.java @@ -61,4 +61,6 @@ public interface VehicleMapper extends BaseMapper * @return 结果 */ public int deleteVehicleByIds(Long[] ids); + + List selectVehicleListAll(Vehicle vehicle); } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java index 90c8347..7beaa3e 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/rabbitmq/producer/VehicleProducer.java @@ -1,5 +1,13 @@ package com.muyu.vehicle.rabbitmq.producer; + +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.muyu.common.core.utils.uuid.UUID; +import com.muyu.vehicle.datasource.config.holder.DynamicDataSourceHolder; +import com.muyu.vehicle.domain.FaultRecord; +import com.muyu.vehicle.service.FaultRecordService; import com.rabbitmq.client.Channel; import lombok.extern.log4j.Log4j2; import org.springframework.amqp.core.Message; @@ -10,86 +18,142 @@ import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Component; import java.io.IOException; +import java.util.Date; /** - * VehicleProducer - * - * @author xiaohuang - * Date 2024/6/20 15:56 + * @BelongsProject: Bob_Up_Like_A_Cork + * @BelongsPackage: com.bwie.sms.config + * @Author: zhangquan + * @CreateTime: 2023/7/30 20:48 */ - @Component @Log4j2 public class VehicleProducer { - + @Autowired + private RedisTemplate redisTemplate; @Autowired - private RedisTemplate redisTemplate; + private FaultRecordService faultRecordService; - //调用注解,添加队列名称 + //调用注解 添加队列名称 @RabbitListener(queuesToDeclare = {@Queue(name = "zhiLian-vehicle-start")}) public void smsConfigStart(String msg, Message message, Channel channel){ - //获取消息的id + //获取消息的ID String messageId = message.getMessageProperties().getMessageId(); - - try { - Long count = redisTemplate.opsForSet().add("messageId", messageId); - - if (count==1) { - log.info("开始消费:{}", msg); - - //判断车辆属于哪个企业 - - //选择数据源,切换数据源 - - - channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); - log.info("消费成功!数据源为:{}", message); - - } - } catch (IOException e) { - log.info("消费失败"); - try { - channel.basicReject(message.getMessageProperties().getDeliveryTag(),false); - log.info("回退成功"); - } catch (IOException ex) { - log.info("回退失败"); - } - - throw new RuntimeException(e); - } - - } - - @RabbitListener(queuesToDeclare = {@Queue(name = "zhiLian-vehicle-ent")}) - public void smsConfigEnt(String msg, Message message, Channel channel){ - - //获取消息的id - String messageId = message.getMessageProperties().getMessageId(); - try { - //提那家消费id到redis set集合中, - Long count = redisTemplate.opsForSet().add("messageId", messageId); - - //成功 - if (count == 1 ) { - log.info("开始消费:{}", msg); - - //确认消费 - channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); - log.info("消费成功"); - } - } catch (Exception e) { - //删除队列id - log.info("消费失败"); - try { - channel.basicReject(message.getMessageProperties().getDeliveryTag(),false); - log.info("消费失败"); - - }catch (IOException ex){ - log.info("消费异常"); + Long count=null; + messageId= messageId !=null? messageId : UUID.randomUUID().toString().replaceAll("_",""); + JSONObject jsonObject = JSON.parseObject(msg); + String vin = jsonObject.get("vin").toString(); + if (vin.length()!=17){ + messageId=0+""; + log.error("车辆vin格式不正确:{}",vin); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); + }else { + count= redisTemplate.opsForSet().add("messageId", messageId); } + if (count==1) { + log.info("开始消费!{}", msg); + FaultRecord faultRecord = new FaultRecord(){{ + setVin(vin); + setFaultCode(String.valueOf(jsonObject.get("faultCode"))); + setStartTime(new Date((Long) jsonObject.get("timestamp"))); + }}; + + //判断车辆属于哪个企业 + String s = redisTemplate.opsForValue().get(faultRecord.getVin()+"1"); + //选择数据源,切换数据源, + DynamicDataSourceHolder.setDynamicDataSourceKey("test_"+s); + // 进行添加故障表 + FaultRecord build = FaultRecord + .builder() + .faultCode(faultRecord.getFaultCode()) + .vin(faultRecord.getVin()) + .startTime(faultRecord.getStartTime()).build(); + FaultRecord one = faultRecordService.getOne(new LambdaQueryWrapper<>() {{ + eq(FaultRecord::getVin, faultRecord.getVin()); + eq(FaultRecord::getFaultCode, faultRecord.getFaultCode()); + isNotNull(FaultRecord::getStartTime); + isNull(FaultRecord::getEndTime); + }}); + if (one!= null){ + log.info("不用消费,异常已存在,待结束!数据源为:{}",message); + }else { + faultRecordService.save(build); + // 移除数据源, + DynamicDataSourceHolder.removeDynamicDataSourceKey(); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); + log.info("消费成功!数据源为:{}",message); + } + } + } catch (IOException e) { + log.info("消费失败,{}",e.getMessage()); + try { + //回退消息 + channel.basicReject(message.getMessageProperties().getDeliveryTag(),false); + log.info("回退成功"); + }catch (IOException ex){ + log.info("回退失败:{}",ex.getMessage()); + } + throw new RuntimeException(e); } } + @RabbitListener(queuesToDeclare = {@Queue(name = "zhiLian-vehicle-end")}) + public void smsConfigEnt(String msg, Message message, Channel channel){ + //获取消息的ID + String messageId = message.getMessageProperties().getMessageId(); + try { + Long count=null; + messageId= messageId !=null? messageId : UUID.randomUUID().toString().replaceAll("_",""); + JSONObject jsonObject = JSON.parseObject(msg); + String vin = jsonObject.get("vin").toString(); + if (vin.length()!=17){ + messageId=0+""; + log.error("车辆vin格式不正确:{}",vin); + channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); + }else { + count= redisTemplate.opsForSet().add("messageId", messageId); + } + //添加消息id到redis set集合中 添加成功返回1 表示未消费 添加失败返回0 表示已消费 +// Long count = redisTemplate.opsForSet().add("messageId", messageId); + //添加成功 正常消费信息 + if (count == 1) { + log.info("开始消费:{}",msg); +// JSONObject jsonObject = JSON.parseObject(msg); + FaultRecord faultRecord = new FaultRecord(){{ + setVin(vin); + setFaultCode(String.valueOf(jsonObject.get("faultCode"))); + setEndTime(new Date((long) jsonObject.get("timestamp"))); + }}; + + //判断车辆属于哪个企业 + String s = redisTemplate.opsForValue().get(faultRecord.getVin()+"1"); + //选择数据源,切换数据源, + DynamicDataSourceHolder.setDynamicDataSourceKey("test_"+s); + // 进行查询故障表 + FaultRecord faultRecordOne = faultRecordService.getByFaultRecord(faultRecord); + log.info("查询到的故障为:{}",faultRecordOne); + faultRecordOne.setEndTime(faultRecord.getEndTime()); + // 进行修改故障表 + faultRecordService.updateByFaultRecord(faultRecordOne); + // 移除数据源, + DynamicDataSourceHolder.removeDynamicDataSourceKey(); + //确认消费 + channel.basicAck(message.getMessageProperties().getDeliveryTag(),false); + log.info("消费成功"); + } + } catch (Exception e) { + //删除队列ID + log.info("消费失败,{}",e.getMessage()); + try { + //回退消息 + channel.basicReject(message.getMessageProperties().getDeliveryTag(),false); + log.info("回退消息"); + } catch (IOException ex) { + //回退失败 + log.info("回退失败"); + } + } + } } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java index da5e4c6..1cdfc87 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultCodeService.java @@ -1,10 +1,23 @@ package com.muyu.vehicle.service; +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.vehicle.domain.FaultCode; + +import java.util.List; + /** - * 车辆故障码接口 FaultCodeService + * 车辆故障码Service接口 * - * @author xiaohuang - * Date 2024/6/20 17:12 + * @author chx + * @date 2024-06-20 */ -public interface FaultCodeService { +public interface FaultCodeService extends IService { + /** + * 查询车辆故障码列表 + * + * @param faultCode 车辆故障码 + * @return 车辆故障码集合 + */ + public List list(FaultCode faultCode); + } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java index 3dd6b59..ca8f6f9 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/FaultRecordService.java @@ -1,10 +1,32 @@ package com.muyu.vehicle.service; +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.vehicle.domain.FaultRecord; +import com.muyu.vehicle.domain.req.FaultRecordReqVo; +import com.muyu.vehicle.domain.vo.FaultRecordVo; + +import java.util.List; + + /** - * 故障记录借口哦 FaultRecordService + * 故障记录Service接口 * - * @author xiaohuang - * Date 2024/6/20 17:12 + * @author chx + * @date 2024-06-20 */ -public interface FaultRecordService { +public interface FaultRecordService extends IService { + /** + * 查询故障记录列表 + * + * @param faultRecord 故障记录 + * @return 故障记录集合 + */ + public List list(FaultRecord faultRecord); + + void updateByFaultRecord(FaultRecord build); + + FaultRecord getByFaultRecord(FaultRecord faultRecord); + + List countList(FaultRecordReqVo recordReqVo); + } diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IFenceService.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IFenceService.java index 501188d..4aebd0c 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IFenceService.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IFenceService.java @@ -1,10 +1,9 @@ package com.muyu.vehicle.service; -import java.util.List; - import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.vehicle.domain.Fence; -import com.muyu.vehicle.domain.Vehicle; + +import java.util.List; /** * 围栏Service接口 diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IGroupService.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IGroupService.java index 6e3d63e..f24c05e 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IGroupService.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/IGroupService.java @@ -2,7 +2,6 @@ package com.muyu.vehicle.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.muyu.vehicle.domain.Fence; import com.muyu.vehicle.domain.Group; import java.util.List; diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServiceImpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServiceImpl.java new file mode 100644 index 0000000..e41fed6 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServiceImpl.java @@ -0,0 +1,43 @@ +package com.muyu.vehicle.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.vehicle.domain.FaultCode; +import com.muyu.vehicle.mapper.FaultCodeMapper; +import com.muyu.vehicle.service.FaultCodeService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 车辆故障码Service业务层处理 + * + * @author chx + * @date 2024-06-20 + */ +@Slf4j +@Service +public class FaultCodeServiceImpl extends ServiceImpl implements FaultCodeService { + + /** + * 查询车辆故障码列表 + * + * @param faultCode 车辆故障码 + * @return 车辆故障码 + */ + @Override + public List list(FaultCode faultCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + + if (StringUtils.isNotEmpty(faultCode.getFaultCode())){ + queryWrapper.eq(FaultCode::getFaultCode, faultCode.getFaultCode()); + } + + + + return list(queryWrapper); + } +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java deleted file mode 100644 index 3bcb356..0000000 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultCodeServicelmpl.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.muyu.vehicle.service.impl; - -/** - * 车辆故障码业务层处理 FaultCodeServicelmpl - * - * @author xiaohuang - * Date 2024/6/20 17:13 - */ -public class FaultCodeServicelmpl { -} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServiceImpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServiceImpl.java new file mode 100644 index 0000000..c2c31f5 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServiceImpl.java @@ -0,0 +1,70 @@ +package com.muyu.vehicle.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.vehicle.domain.FaultRecord; +import com.muyu.vehicle.domain.req.FaultRecordReqVo; +import com.muyu.vehicle.domain.vo.FaultRecordVo; +import com.muyu.vehicle.mapper.FaultRecordMapper; +import com.muyu.vehicle.service.FaultRecordService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 故障记录Service业务层处理 + * + * @author chx + * @date 2024-06-20 + */ +@Slf4j +@Service +public class FaultRecordServiceImpl extends ServiceImpl implements FaultRecordService { + + + @Autowired + private FaultRecordMapper faultRecordMapper; + /** + * 查询故障记录列表 + * + * @param faultRecord 故障记录 + * @return 故障记录 + */ + @Override + public List list(FaultRecord faultRecord) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + + if (StringUtils.isNotEmpty(faultRecord.getFaultCode())){ + queryWrapper.eq(FaultRecord::getFaultCode, faultRecord.getFaultCode()); + } + + if (StringUtils.isNotEmpty(faultRecord.getVin())){ + queryWrapper.eq(FaultRecord::getVin, faultRecord.getVin()); + } + + + + + return list(queryWrapper); + } + + @Override + public void updateByFaultRecord(FaultRecord build) { + faultRecordMapper.updateByFaultRecord(build); + } + + @Override + public FaultRecord getByFaultRecord(FaultRecord faultRecord) { + return faultRecordMapper.getByFaultRecord(faultRecord); + } + + @Override + public List countList(FaultRecordReqVo recordReqVo) { + return faultRecordMapper.countList(recordReqVo); + } +} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java deleted file mode 100644 index 3a64217..0000000 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FaultRecordServicelmpl.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.muyu.vehicle.service.impl; - -/** - * 故障记录业务层处理 FaultRecordServicelmpl - * - * @author xiaohuang - * Date 2024/6/20 17:15 - */ -public class FaultRecordServicelmpl { -} diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FenceServiceImpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FenceServiceImpl.java index 4790910..3c06039 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FenceServiceImpl.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/FenceServiceImpl.java @@ -1,6 +1,5 @@ package com.muyu.vehicle.service.impl; -import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.muyu.common.core.utils.DateUtils; import com.muyu.vehicle.domain.Fence; @@ -9,6 +8,8 @@ import com.muyu.vehicle.service.IFenceService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** * 围栏Service业务层处理 diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/VehicleServiceImpl.java b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/VehicleServiceImpl.java index b19cffb..2b38c27 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/VehicleServiceImpl.java +++ b/muyu-vehicle/muyu-vehicle-service/src/main/java/com/muyu/vehicle/service/impl/VehicleServiceImpl.java @@ -8,7 +8,6 @@ import com.muyu.common.system.domain.LoginUser; import com.muyu.common.system.domain.SysUser; import com.muyu.common.system.remote.RemoteFileService; import com.muyu.common.system.remote.RemoteUserService; -import com.muyu.vehicle.datasource.config.role.DynamicDataSource; import com.muyu.vehicle.domain.Vehicle; import com.muyu.vehicle.mapper.VehicleMapper; import com.muyu.vehicle.service.IVehicleService; diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/Fault/FaultRecordMapper.xml b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/Fault/FaultRecordMapper.xml new file mode 100644 index 0000000..b479db4 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/Fault/FaultRecordMapper.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + select id, fault_code, vin, start_time, end_time, fault_level, fault_handle from fault_record + + + update fault_record set end_time=#{endTime} where id=#{id} + + + + diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/FaultCode/FaultCodeMapper.xml b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/FaultCode/FaultCodeMapper.xml new file mode 100644 index 0000000..56046b2 --- /dev/null +++ b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/FaultCode/FaultCodeMapper.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + select id, fault_code, fault_label, fault_bit, fault_value from fault_code + + diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/fence/FenceMapper.xml b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/fence/FenceMapper.xml index 5264353..1ad28bb 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/fence/FenceMapper.xml +++ b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/fence/FenceMapper.xml @@ -1,7 +1,7 @@ + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> @@ -60,7 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" create_time, update_by, update_time, - + #{name}, #{groupId}, @@ -75,7 +75,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{createTime}, #{updateBy}, #{updateTime}, - + diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/group/GroupMapper.xml b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/group/GroupMapper.xml index 4feae4b..18bb1aa 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/group/GroupMapper.xml +++ b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/group/GroupMapper.xml @@ -1,7 +1,7 @@ + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> @@ -40,7 +40,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" create_time, update_by, update_time, - + #{groupName}, #{remark}, @@ -48,7 +48,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{createTime}, #{updateBy}, #{updateTime}, - + diff --git a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/vehicle/VehicleMapper.xml b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/vehicle/VehicleMapper.xml index 5684f88..c4595dc 100644 --- a/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/vehicle/VehicleMapper.xml +++ b/muyu-vehicle/muyu-vehicle-service/src/main/resources/mapper/vehicle/VehicleMapper.xml @@ -1,7 +1,7 @@ + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> @@ -13,7 +13,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + @@ -37,7 +37,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and battery = #{battery} and motor_number = #{motorNumber} and battery_number = #{batteryNumber} - + and group_id = #{groupId} @@ -46,6 +46,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where id = #{id} + insert into vehicle @@ -58,14 +61,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" battery, motor_number, battery_number, - + remark, create_by, create_time, update_by, update_time, group_id, - + #{id}, #{number}, @@ -75,14 +78,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{battery}, #{motorNumber}, #{batteryNumber}, - + #{remark}, #{createBy}, #{createTime}, #{updateBy}, #{updateTime}, #{groupId}, - + @@ -95,7 +98,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" battery = #{battery}, motor_number = #{motorNumber}, battery_number = #{batteryNumber}, - + remark = #{remark}, create_by = #{createBy}, create_time = #{createTime},