From c0fc641a363da9ed48efc6d214625db3e9cee5df Mon Sep 17 00:00:00 2001 From: baize <3533151373@qq.com> Date: Sat, 29 Jun 2024 10:17:56 +0800 Subject: [PATCH] =?UTF-8?q?feat():=20=E8=BD=A6=E8=BE=86=E6=BB=91=E7=AA=97?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E4=BF=AE=E6=94=B9redis?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../customer/business/domain/FaultCode.java | 2 +- .../customer/business/domain/FaultRecord.java | 2 +- .../business/domain/IndexConfiguration.java | 108 ++++++++++++ .../business/domain/req/FaultCodeEditReq.java | 2 +- .../domain/req/FaultCodeQueryReq.java | 2 +- .../business/domain/req/FaultCodeSaveReq.java | 2 +- .../domain/req/FaultRecordEditReq.java | 2 +- .../domain/req/FaultRecordQueryReq.java | 2 +- .../domain/req/FaultRecordSaveReq.java | 2 +- .../domain/req/IndexConfigurationEditReq.java | 49 ++++++ .../req/IndexConfigurationQueryReq.java | 30 ++++ .../domain/req/IndexConfigurationSaveReq.java | 61 +++++++ .../controller/FaultCodeController.java | 2 +- .../controller/FaultRecordController.java | 2 +- .../IndexConfigurationController.java | 154 ++++++++++++++++++ .../business/mapper/FaultCodeMapper.java | 2 +- .../business/mapper/FaultRecordMapper.java | 2 +- .../mapper/IndexConfigurationMapper.java | 20 +++ .../business/service/FaultCodeService.java | 2 +- .../business/service/FaultRecordService.java | 2 +- .../service/IndexConfigurationService.java | 27 +++ .../service/impl/FaultCodeServiceImpl.java | 2 +- .../service/impl/FaultRecordServiceImpl.java | 2 +- .../impl/IndexConfigurationServiceImpl.java | 48 ++++++ .../IndexConfigurationMapper.xml | 23 +++ 25 files changed, 536 insertions(+), 16 deletions(-) create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/IndexConfiguration.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationEditReq.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationQueryReq.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationSaveReq.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/IndexConfigurationController.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/IndexConfigurationMapper.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/IndexConfigurationService.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/IndexConfigurationServiceImpl.java create mode 100644 muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/resources/mapper/customerBusiness/IndexConfigurationMapper.xml diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultCode.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultCode.java index 8244560..63411d8 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultCode.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultCode.java @@ -18,7 +18,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 车辆故障码对象 fault_code * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultRecord.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultRecord.java index 7569d55..36f85d2 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultRecord.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/FaultRecord.java @@ -21,7 +21,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 故障记录对象 fault_record * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/IndexConfiguration.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/IndexConfiguration.java new file mode 100644 index 0000000..ed3e787 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/IndexConfiguration.java @@ -0,0 +1,108 @@ +package com.muyu.customer.business.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.customer.business.domain.req.IndexConfigurationEditReq; +import com.muyu.customer.business.domain.req.IndexConfigurationQueryReq; +import com.muyu.customer.business.domain.req.IndexConfigurationSaveReq; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; + + +/** + * 车辆指标预警配置对象 index_configuration + * + * @author muyu + * @date 2024-06-28 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("index_configuration") +@ApiModel(value = "IndexConfiguration", description = "车辆指标预警配置") +public class IndexConfiguration { + + private static final long serialVersionUID = 1L; + + /** 主键id */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "主键id", value = "主键id") + private Long id; + + /** 车辆vin */ + @Excel(name = "车辆vin") + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + + /** 指标项key */ + @Excel(name = "指标项key") + @ApiModelProperty(name = "指标项key", value = "指标项key") + private String keyCode; + + /** 滑窗范围(秒) */ + @Excel(name = "滑窗范围(秒)") + @ApiModelProperty(name = "滑窗范围(秒)", value = "滑窗范围(秒)") + private Long intervalRange; + + /** 滑窗时机(秒) */ + @Excel(name = "滑窗时机(秒)") + @ApiModelProperty(name = "滑窗时机(秒)", value = "滑窗时机(秒)") + private Long opportunity; + + /** 类型:1 上升 2 波动 3 下降 */ + @Excel(name = "类型:1 上升 2 波动 3 下降") + @ApiModelProperty(name = "类型:1 上升 2 波动 3 下降", value = "类型:1 上升 2 波动 3 下降") + private Long attributeType; + + /** 指标值 */ + @Excel(name = "指标值") + @ApiModelProperty(name = "指标值", value = "指标值") + private String attributeValue; + + /** + * 查询构造器 + */ + public static IndexConfiguration queryBuild( IndexConfigurationQueryReq indexConfigurationQueryReq){ + return IndexConfiguration.builder() + .vin(indexConfigurationQueryReq.getVin()) + .build(); + } + + /** + * 添加构造器 + */ + public static IndexConfiguration saveBuild(IndexConfigurationSaveReq indexConfigurationSaveReq){ + return IndexConfiguration.builder() + .vin(indexConfigurationSaveReq.getVin()) + .keyCode(indexConfigurationSaveReq.getKeyCode()) + .intervalRange(indexConfigurationSaveReq.getIntervalRange()) + .opportunity(indexConfigurationSaveReq.getOpportunity()) + .attributeType(indexConfigurationSaveReq.getAttributeType()) + .attributeValue(indexConfigurationSaveReq.getAttributeValue()) + .build(); + } + + /** + * 修改构造器 + */ + public static IndexConfiguration editBuild(Long id, IndexConfigurationEditReq indexConfigurationEditReq){ + return IndexConfiguration.builder() + .id(id) + .vin(indexConfigurationEditReq.getVin()) + .keyCode(indexConfigurationEditReq.getKeyCode()) + .intervalRange(indexConfigurationEditReq.getIntervalRange()) + .opportunity(indexConfigurationEditReq.getOpportunity()) + .attributeType(indexConfigurationEditReq.getAttributeType()) + .attributeValue(indexConfigurationEditReq.getAttributeValue()) + .build(); + } + +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeEditReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeEditReq.java index 18c268f..3804049 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeEditReq.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeEditReq.java @@ -11,7 +11,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 车辆故障码对象 fault_code * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeQueryReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeQueryReq.java index 0608b74..db9ab0f 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeQueryReq.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeQueryReq.java @@ -11,7 +11,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 车辆故障码对象 fault_code * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeSaveReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeSaveReq.java index 1c42b15..6300270 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeSaveReq.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultCodeSaveReq.java @@ -11,7 +11,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 车辆故障码对象 fault_code * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordEditReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordEditReq.java index b9fa7f8..34658eb 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordEditReq.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordEditReq.java @@ -13,7 +13,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 故障记录对象 fault_record * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordQueryReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordQueryReq.java index e7c907c..7ab6e97 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordQueryReq.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordQueryReq.java @@ -13,7 +13,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 故障记录对象 fault_record * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordSaveReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordSaveReq.java index b216163..5c3802d 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordSaveReq.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/FaultRecordSaveReq.java @@ -13,7 +13,7 @@ import com.muyu.common.core.web.domain.BaseEntity; /** * 故障记录对象 fault_record * - * @author chx + * @author muyu * @date 2024-06-20 */ @Data diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationEditReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationEditReq.java new file mode 100644 index 0000000..10642c4 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationEditReq.java @@ -0,0 +1,49 @@ +package com.muyu.customer.business.domain.req; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; + +/** + * 车辆指标预警配置对象 index_configuration + * + * @author muyu + * @date 2024-06-28 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "IndexConfigurationEditReq", description = "车辆指标预警配置") +public class IndexConfigurationEditReq { + + private static final long serialVersionUID = 1L; + + /** 车辆vin */ + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + + /** 指标项key */ + @ApiModelProperty(name = "指标项key", value = "指标项key") + private String keyCode; + + /** 滑窗范围(秒) */ + @ApiModelProperty(name = "滑窗范围(秒)", value = "滑窗范围(秒)") + private Long intervalRange; + + /** 滑窗时机(秒) */ + @ApiModelProperty(name = "滑窗时机(秒)", value = "滑窗时机(秒)") + private Long opportunity; + + /** 类型:1 上升 2 波动 3 下降 */ + @ApiModelProperty(name = "类型:1 上升 2 波动 3 下降", value = "类型:1 上升 2 波动 3 下降") + private Long attributeType; + + /** 指标值 */ + @ApiModelProperty(name = "指标值", value = "指标值") + private String attributeValue; + +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationQueryReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationQueryReq.java new file mode 100644 index 0000000..a38073c --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationQueryReq.java @@ -0,0 +1,30 @@ +package com.muyu.customer.business.domain.req; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; + + +/** + * 车辆指标预警配置对象 index_configuration + * + * @author muyu + * @date 2024-06-28 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "IndexConfigurationQueryReq", description = "车辆指标预警配置") +public class IndexConfigurationQueryReq { + + private static final long serialVersionUID = 1L; + + /** 车辆vin */ + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationSaveReq.java b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationSaveReq.java new file mode 100644 index 0000000..dadd153 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-common/src/main/java/com/muyu/customer/business/domain/req/IndexConfigurationSaveReq.java @@ -0,0 +1,61 @@ +package com.muyu.customer.business.domain.req; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; + + +/** + * 车辆指标预警配置对象 index_configuration + * + * @author muyu + * @date 2024-06-28 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "IndexConfigurationSaveReq", description = "车辆指标预警配置") +public class IndexConfigurationSaveReq { + + private static final long serialVersionUID = 1L; + + /** 主键id */ + + @ApiModelProperty(name = "主键id", value = "主键id") + private Long id; + + /** 车辆vin */ + + @ApiModelProperty(name = "车辆vin", value = "车辆vin") + private String vin; + + /** 指标项key */ + + @ApiModelProperty(name = "指标项key", value = "指标项key") + private String keyCode; + + /** 滑窗范围(秒) */ + + @ApiModelProperty(name = "滑窗范围(秒)", value = "滑窗范围(秒)") + private Long intervalRange; + + /** 滑窗时机(秒) */ + + @ApiModelProperty(name = "滑窗时机(秒)", value = "滑窗时机(秒)") + private Long opportunity; + + /** 类型:1 上升 2 波动 3 下降 */ + + @ApiModelProperty(name = "类型:1 上升 2 波动 3 下降", value = "类型:1 上升 2 波动 3 下降") + private Long attributeType; + + /** 指标值 */ + + @ApiModelProperty(name = "指标值", value = "指标值") + private String attributeValue; + +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultCodeController.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultCodeController.java index 6e9ecb9..69812a8 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultCodeController.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultCodeController.java @@ -29,7 +29,7 @@ import com.muyu.common.core.web.page.TableDataInfo; /** * 车辆故障码Controller * - * @author chx + * @author muyu * @date 2024-06-20 */ @Api(tags = "车辆故障码") diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultRecordController.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultRecordController.java index 89b0901..a3f18aa 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultRecordController.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/FaultRecordController.java @@ -30,7 +30,7 @@ import com.muyu.common.core.web.page.TableDataInfo; /** * 故障记录Controller * - * @author chx + * @author muyu * @date 2024-06-20 */ @Api(tags = "故障记录") diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/IndexConfigurationController.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/IndexConfigurationController.java new file mode 100644 index 0000000..d848324 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/controller/IndexConfigurationController.java @@ -0,0 +1,154 @@ +package com.muyu.customer.business.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.UUID; +import javax.servlet.http.HttpServletResponse; + +import com.alibaba.fastjson2.JSON; + +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.common.security.utils.SecurityUtils; +import com.muyu.customer.business.domain.IndexConfiguration; +import com.muyu.customer.business.domain.MessageDetail; +import com.muyu.customer.business.domain.Vehicle; +import com.muyu.customer.business.domain.req.IndexConfigurationEditReq; +import com.muyu.customer.business.domain.req.IndexConfigurationQueryReq; +import com.muyu.customer.business.domain.req.IndexConfigurationSaveReq; +import com.muyu.customer.business.mapper.MessageDetailMapper; +import com.muyu.customer.business.mapper.VehicleMapper; +import com.muyu.customer.business.service.IndexConfigurationService; +import com.muyu.customer.business.service.MessageDetailService; +import com.muyu.customer.business.service.VehicleService; +import io.swagger.annotations.*; +import lombok.extern.log4j.Log4j2; +import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.core.StringRedisTemplate; +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; + + +/** + * 车辆指标预警配置Controller + * + * @author muyu + * @date 2024-06-28 + */ +@Api(tags = "车辆指标预警配置") +@RestController +@Log4j2 +@RequestMapping("/indexConfiguration") +public class IndexConfigurationController extends BaseController { + @Autowired + private IndexConfigurationService indexConfigurationService; + +// @Autowired +// private VehicleMapper vehicleMapper; + @Autowired + private MessageDetailMapper messageDetailMapper; + + @Autowired + private RabbitTemplate rabbitTemplate; + + @Autowired + private StringRedisTemplate redisTemplate; + /** + * 查询车辆指标预警配置列表 + */ + @ApiOperation("获取车辆指标预警配置列表") + @GetMapping("/list") + public Result> list(IndexConfigurationQueryReq indexConfigurationQueryReq) { + startPage(); + List list = indexConfigurationService.list(IndexConfiguration.queryBuild(indexConfigurationQueryReq)); + return getDataTable(list); + } + + /** + * 导出车辆指标预警配置列表 + */ + @RequiresPermissions("customerBusiness:indexConfiguration:list") + @ApiOperation("导出车辆指标预警配置列表") + @Log(title = "车辆指标预警配置", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, IndexConfiguration indexConfiguration) { + List list = indexConfigurationService.list(indexConfiguration); + ExcelUtil util = new ExcelUtil(IndexConfiguration.class); + util.exportExcel(response, list, "车辆指标预警配置数据"); + } + + /** + * 获取车辆指标预警配置详细信息 + */ + @ApiOperation("获取车辆指标预警配置详细信息") + @RequiresPermissions("customerBusiness:indexConfiguration: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(indexConfigurationService.getById(id)); + } + + /** + * 新增车辆指标预警配置 + */ + @RequiresPermissions("customerBusiness:indexConfiguration:add") + @Log(title = "车辆指标预警配置", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增车辆指标预警配置") + public Result add(@RequestBody IndexConfigurationSaveReq indexConfigurationSaveReq) { + + indexConfigurationSaveReq.setOpportunity(indexConfigurationSaveReq.getIntervalRange()/indexConfigurationSaveReq.getOpportunity()); + boolean save = indexConfigurationService.save(IndexConfiguration.saveBuild(indexConfigurationSaveReq)); + redis(indexConfigurationSaveReq); + return toAjax(save); + } + + /** + * 修改车辆指标预警配置 + */ + @RequiresPermissions("customerBusiness:indexConfiguration:edit") + @Log(title = "车辆指标预警配置", businessType = BusinessType.UPDATE) + @PutMapping("/{id}") + @ApiOperation("修改车辆指标预警配置") + public Result edit(@PathVariable Long id, @RequestBody IndexConfigurationEditReq indexConfigurationEditReq) { + indexConfigurationEditReq.setOpportunity(indexConfigurationEditReq.getIntervalRange()/indexConfigurationEditReq.getOpportunity()); + boolean update = indexConfigurationService.updateById(IndexConfiguration.editBuild(id, indexConfigurationEditReq)); +// redis(indexConfigurationEditReq); + return toAjax(update); + } + + /** + * 删除车辆指标预警配置 + */ + @RequiresPermissions("customerBusiness:indexConfiguration: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(indexConfigurationService.removeBatchByIds(ids)); + } + + + + private void redis(IndexConfigurationSaveReq indexConfigurationSaveReq) { + List list = indexConfigurationService.selectByVin(indexConfigurationSaveReq.getVin()); +// list.add(IndexConfiguration.saveBuild(indexConfigurationSaveReq)); +// list.stream().distinct(); + redisTemplate.opsForHash().put("indexConfiguration", indexConfigurationSaveReq.getVin(), JSON.toJSONString(list)); + } +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultCodeMapper.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultCodeMapper.java index 912d222..46d7a64 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultCodeMapper.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultCodeMapper.java @@ -6,7 +6,7 @@ import com.muyu.customer.business.domain.FaultCode; /** * 车辆故障码Mapper接口 * - * @author chx + * @author muyu * @date 2024-06-20 */ public interface FaultCodeMapper extends BaseMapper { diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultRecordMapper.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultRecordMapper.java index 7512a9e..a9d50b1 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultRecordMapper.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/FaultRecordMapper.java @@ -8,7 +8,7 @@ import com.muyu.customer.business.domain.vo.FaultRecordVo; /** * 故障记录Mapper接口 * - * @author chx + * @author muyu * @date 2024-06-20 */ public interface FaultRecordMapper extends BaseMapper { diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/IndexConfigurationMapper.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/IndexConfigurationMapper.java new file mode 100644 index 0000000..8ce6dff --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/mapper/IndexConfigurationMapper.java @@ -0,0 +1,20 @@ +package com.muyu.customer.business.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.customer.business.domain.IndexConfiguration; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + + +/** + * 车辆指标预警配置Mapper接口 + * + * @author chx + * @date 2024-06-28 + */ +public interface IndexConfigurationMapper extends BaseMapper { + + List selectByVin(@Param("vin") String vin); +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultCodeService.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultCodeService.java index f5030fb..2a4ad33 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultCodeService.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultCodeService.java @@ -7,7 +7,7 @@ import com.muyu.customer.business.domain.FaultCode; /** * 车辆故障码Service接口 * - * @author chx + * @author muyu * @date 2024-06-20 */ public interface FaultCodeService extends IService { diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultRecordService.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultRecordService.java index 1c805b6..ec5cd88 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultRecordService.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/FaultRecordService.java @@ -8,7 +8,7 @@ import com.muyu.customer.business.domain.vo.FaultRecordVo; /** * 故障记录Service接口 * - * @author chx + * @author muyu * @date 2024-06-20 */ public interface FaultRecordService extends IService { diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/IndexConfigurationService.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/IndexConfigurationService.java new file mode 100644 index 0000000..86b8427 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/IndexConfigurationService.java @@ -0,0 +1,27 @@ +package com.muyu.customer.business.service; + + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.customer.business.domain.IndexConfiguration; + +import java.util.List; + +/** + * 车辆指标预警配置Service接口 + * + * @author chx + * @date 2024-06-28 + */ +public interface IndexConfigurationService extends IService { + /** + * 查询车辆指标预警配置列表 + * + * @param indexConfiguration 车辆指标预警配置 + * @return 车辆指标预警配置集合 + */ + public List list(IndexConfiguration indexConfiguration); + + + List selectByVin(String vin); +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultCodeServiceImpl.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultCodeServiceImpl.java index fbad0f1..1c1abcb 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultCodeServiceImpl.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultCodeServiceImpl.java @@ -14,7 +14,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; /** * 车辆故障码Service业务层处理 * - * @author chx + * @author muyu * @date 2024-06-20 */ @Slf4j diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultRecordServiceImpl.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultRecordServiceImpl.java index 1c22c4e..e93a1a5 100644 --- a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultRecordServiceImpl.java +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/FaultRecordServiceImpl.java @@ -16,7 +16,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; /** * 故障记录Service业务层处理 * - * @author chx + * @author muyu * @date 2024-06-20 */ @Slf4j diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/IndexConfigurationServiceImpl.java b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/IndexConfigurationServiceImpl.java new file mode 100644 index 0000000..2d42096 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/java/com/muyu/customer/business/service/impl/IndexConfigurationServiceImpl.java @@ -0,0 +1,48 @@ +package com.muyu.customer.business.service.impl; + +import java.util.List; + + +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.customer.business.domain.IndexConfiguration; +import com.muyu.customer.business.mapper.IndexConfigurationMapper; +import com.muyu.customer.business.service.IndexConfigurationService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * 车辆指标预警配置Service业务层处理 + * + * @author chx + * @date 2024-06-28 + */ +@Slf4j +@Service +public class IndexConfigurationServiceImpl extends ServiceImpl implements IndexConfigurationService { + @Autowired + private IndexConfigurationMapper indexConfigurationMapper; + + /** + * 查询车辆指标预警配置列表 + * + * @param indexConfiguration 车辆指标预警配置 + * @return 车辆指标预警配置 + */ + @Override + public List list(IndexConfiguration indexConfiguration) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (StringUtils.isNotEmpty(indexConfiguration.getVin())){ + queryWrapper.eq(IndexConfiguration::getVin, indexConfiguration.getVin()); + } + return list(queryWrapper); + } + + @Override + public List selectByVin(String vin) { + return indexConfigurationMapper.selectByVin(vin); + } +} diff --git a/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/resources/mapper/customerBusiness/IndexConfigurationMapper.xml b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/resources/mapper/customerBusiness/IndexConfigurationMapper.xml new file mode 100644 index 0000000..b8ed6f8 --- /dev/null +++ b/muyu-modules/muyu-customer-business/muyu-customer-business-server/src/main/resources/mapper/customerBusiness/IndexConfigurationMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + select id, vin, key_code, interval_range, opportunity, attribute_type, attribute_value from index_configuration + + +