From 5fe71701dcda64adaa262a98203ddfde7cf09d26 Mon Sep 17 00:00:00 2001 From: chenchenxinhai <2793915820@qq.com> Date: Fri, 24 Nov 2023 09:33:47 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E8=A7=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- car-base-common/pom.xml | 7 +- .../main/java/com/god/base/common/Fence.java | 30 ---- .../com/god/base/common/domain/Breakdown.java | 45 ++++++ .../com/god/base/common/domain/Fault.java | 55 +++++++ .../base/common/domain/Faultcodealarm.java | 65 +++++++++ .../god/base/common/domain/MessageModel.java | 23 +++ .../com/god/base/common/domain/PageQuery.java | 44 ++++++ .../god/base/common/domain/RequestLog.java | 73 ++++++++++ .../domain/request/BreakdownRequest.java | 30 ++++ .../common/domain/request/FaultRequest.java | 51 +++++++ .../domain/response/BreakdownResponse.java | 40 ++++++ .../base/common/response/FenceResponse.java | 30 ---- .../god/base/server/config/ErrorConfig.java | 25 ++++ .../god/base/server/config/SpringUtils.java | 28 ++++ .../base/server/constant/BreakConstant.java | 102 +++++++++++++ .../controller/BreakdownController.java | 136 ++++++++++++++++++ .../server/controller/FaultController.java | 126 ++++++++++++++++ .../controller/FaultcodealarmController.java | 54 +++++++ .../server/controller/FenceController.java | 71 --------- .../base/server/mapper/BreakdownMapper.java | 26 ++++ .../god/base/server/mapper/FaultMapper.java | 30 ++++ .../server/mapper/FaultcodealarmMapper.java | 20 +++ .../god/base/server/mapper/FenceMapper.java | 18 --- .../base/server/mapper/RequestLogMapper.java | 14 ++ .../base/server/service/BreakdownService.java | 30 ++++ .../god/base/server/service/FaultService.java | 32 +++++ .../server/service/FaultcodealarmService.java | 16 +++ .../god/base/server/service/FenceService.java | 17 --- .../server/service/RequestLogService.java | 18 +++ .../service/impl/BreakdownServiceImpl.java | 64 +++++++++ .../server/service/impl/FaultServiceImpl.java | 59 ++++++++ .../impl/FaultcodealarmServiceImpl.java | 33 +++++ .../server/service/impl/FenceServiceImpl.java | 51 ------- .../service/impl/RequestLogServiceImpl.java | 23 +++ .../base/server/service/impl/asyncSave.java | 84 +++++++++++ .../base/server/utils/BreakdownMessage.java | 101 +++++++++++++ .../src/main/resources/mapper/FenceMapper.xml | 36 ----- 37 files changed, 1453 insertions(+), 254 deletions(-) delete mode 100644 car-base-common/src/main/java/com/god/base/common/Fence.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/Breakdown.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/Fault.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/Faultcodealarm.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/MessageModel.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/PageQuery.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/RequestLog.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/request/BreakdownRequest.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/request/FaultRequest.java create mode 100644 car-base-common/src/main/java/com/god/base/common/domain/response/BreakdownResponse.java delete mode 100644 car-base-common/src/main/java/com/god/base/common/response/FenceResponse.java create mode 100644 car-base-server/src/main/java/com/god/base/server/config/ErrorConfig.java create mode 100644 car-base-server/src/main/java/com/god/base/server/config/SpringUtils.java create mode 100644 car-base-server/src/main/java/com/god/base/server/constant/BreakConstant.java create mode 100644 car-base-server/src/main/java/com/god/base/server/controller/BreakdownController.java create mode 100644 car-base-server/src/main/java/com/god/base/server/controller/FaultController.java create mode 100644 car-base-server/src/main/java/com/god/base/server/controller/FaultcodealarmController.java delete mode 100644 car-base-server/src/main/java/com/god/base/server/controller/FenceController.java create mode 100644 car-base-server/src/main/java/com/god/base/server/mapper/BreakdownMapper.java create mode 100644 car-base-server/src/main/java/com/god/base/server/mapper/FaultMapper.java create mode 100644 car-base-server/src/main/java/com/god/base/server/mapper/FaultcodealarmMapper.java delete mode 100644 car-base-server/src/main/java/com/god/base/server/mapper/FenceMapper.java create mode 100644 car-base-server/src/main/java/com/god/base/server/mapper/RequestLogMapper.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/BreakdownService.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/FaultService.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/FaultcodealarmService.java delete mode 100644 car-base-server/src/main/java/com/god/base/server/service/FenceService.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/RequestLogService.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/impl/BreakdownServiceImpl.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/impl/FaultServiceImpl.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/impl/FaultcodealarmServiceImpl.java delete mode 100644 car-base-server/src/main/java/com/god/base/server/service/impl/FenceServiceImpl.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/impl/RequestLogServiceImpl.java create mode 100644 car-base-server/src/main/java/com/god/base/server/service/impl/asyncSave.java create mode 100644 car-base-server/src/main/java/com/god/base/server/utils/BreakdownMessage.java delete mode 100644 car-base-server/src/main/resources/mapper/FenceMapper.xml diff --git a/car-base-common/pom.xml b/car-base-common/pom.xml index 2d75077..8d837e6 100644 --- a/car-base-common/pom.xml +++ b/car-base-common/pom.xml @@ -43,7 +43,12 @@ com.god god-common-swagger + + com.bawei + bawei-common-core + 3.6.0 + - \ No newline at end of file + diff --git a/car-base-common/src/main/java/com/god/base/common/Fence.java b/car-base-common/src/main/java/com/god/base/common/Fence.java deleted file mode 100644 index f76de0c..0000000 --- a/car-base-common/src/main/java/com/god/base/common/Fence.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.god.base.common; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModelProperty; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.springframework.format.annotation.DateTimeFormat; - -import java.util.Date; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class Fence { - /** 电子围栏ID */ - private Integer fenceId ; - /** 围栏名称 */ - private String fenceName ; - /** 围栏经纬度 */ - private String fenceLat ; - /** 激活状态 */ - private Integer fenceStatus ; - /** 操作时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") - private Date fenceTime ; - /** 操作者 */ - private Integer createBy ; -} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/Breakdown.java b/car-base-common/src/main/java/com/god/base/common/domain/Breakdown.java new file mode 100644 index 0000000..2ee4aaa --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/Breakdown.java @@ -0,0 +1,45 @@ +package com.god.base.common.domain; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.god.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import javax.validation.constraints.NotEmpty; +import java.util.Date; + +/** + * 故障信息 + * + * @author ChenXinHai + * @version 2023/11/20 - 19:08 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@Builder +@TableName("t_car_breakdown") +public class Breakdown { + // 故障信息表Id + private Integer id; + // 车辆VIN + private String carVin; + // 故障码Id + @NotEmpty(message = "故障码Id不能为空") + private String breadownId; + // 故障状态 + private Integer status; + // 故障开始时间 + private Date createTime; + // 故障结束时间 + private Date endTime; + // 创建者 + private String createBy; + // 更新人 + private String updateBy; + // 更新时间 + private Date updateTime; +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/Fault.java b/car-base-common/src/main/java/com/god/base/common/domain/Fault.java new file mode 100644 index 0000000..f0278af --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/Fault.java @@ -0,0 +1,55 @@ +package com.god.base.common.domain; + +import com.god.common.core.annotation.Excel; +import com.god.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 故障表 + * + * @author ChenXinHai + * @version 2023/11/21 - 14:59 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class Fault { + /** 故障id */ + private Integer faultId; + + /** 故障类型 */ + @Excel(name = "故障类型") + private String faultType; + + /** 故障组 */ + @Excel(name = "故障组") + private String faultGroup; + + /** 故障位 */ + @Excel(name = "故障位") + private String faultSite; + + /** 故障值 */ + @Excel(name = "故障值") + private String faultValue; + + /** 故障标签 */ + @Excel(name = "故障标签") + private String faultLabel; + + /** 故障码 */ + @Excel(name = "故障码") + private String faultCoed; + + /** 是否警告 */ + @Excel(name = "是否警告") + private Long isWarn; + + +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/Faultcodealarm.java b/car-base-common/src/main/java/com/god/base/common/domain/Faultcodealarm.java new file mode 100644 index 0000000..2cf68c9 --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/Faultcodealarm.java @@ -0,0 +1,65 @@ +package com.god.base.common.domain; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 故障码告警 + * + * @author ChenXinHai + * @version 2023/11/22 - 19:26 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class Faultcodealarm { + /** + * 序号 + */ + private Integer serialNumber; + /** + * 故障码 + */ + private Integer faultId; + /** + * 故障名称 + */ + private String faultName; + /** + * 车辆公告型号 + */ + private String vehicleAnnouncementType; + /** + * 零部件 + */ + private String parts; + /** + * 故障描述 + */ + private String faultDescribe; + /** + * 故障级别 + */ + private String faultType; + /** + * 级别描述 + */ + private String faultRankDescribe; + /** + * 是否产生报警 + */ + private Long isWarn; + /** + * 响应方式 + */ + private String responseMode; + /** + * 是否创建工单 + */ + private String ifCreate; + + +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/MessageModel.java b/car-base-common/src/main/java/com/god/base/common/domain/MessageModel.java new file mode 100644 index 0000000..800b93b --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/MessageModel.java @@ -0,0 +1,23 @@ +package com.god.base.common.domain; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 报文 + * + * @author ChenXinHai + * @version 2023/11/23 - 19:13 + */ +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class MessageModel { + /** + * 消息标识 + */ + private String messageId; +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/PageQuery.java b/car-base-common/src/main/java/com/god/base/common/domain/PageQuery.java new file mode 100644 index 0000000..901b4d6 --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/PageQuery.java @@ -0,0 +1,44 @@ +package com.god.base.common.domain; + +import com.alibaba.druid.util.StringUtils; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; +/** + * 分页查询对象 + * + * @author ChenXinHai + * @version 2023/11/20 - 20:00 + */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +public class PageQuery { + /** + * 第几页 + */ + private Integer page; + + /** + * 分页长度 + */ + private Integer pageSize; + + /** + *排序 + */ + private String orderBy; + + public Page buildPage() { + Page page = new Page<>(this.getPage(), this.getPageSize()); + if (StringUtils.isEmpty(this.getOrderBy())){ + page.addOrder(OrderItem.asc(this.getOrderBy())); + } + return page; + } + +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/RequestLog.java b/car-base-common/src/main/java/com/god/base/common/domain/RequestLog.java new file mode 100644 index 0000000..ffde055 --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/RequestLog.java @@ -0,0 +1,73 @@ +package com.god.base.common.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + * 日志 + * + * @author ChenXinHai + * @version 2023/11/22 - 18:31 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("request_log") +public class RequestLog extends Model { + private static final long serialVersionUID = 1L; + /** + * 编号 + */ + @TableId(value = "id",type = IdType.AUTO) + private Integer id; + /** + * 用户名 + */ + private String userName; + /** + * 用户代理(客户端) + */ + private String userAgent; + /** + * 请求URL + */ + private String requestUrl; + /** + * IP + */ + private String ip; + /** + * 请求方法 + */ + private String declaringSignature; + /** + * 请求参数 + */ + private String args; + /** + * 异常 + */ + private String exception; + /** + * 耗时,单位毫秒 + */ + private Integer elapsedTime; + /** + * 创建时间 + */ + private LocalDateTime createTime; + + @Override + public Serializable pkVal(){ + return this.id; + } + +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/request/BreakdownRequest.java b/car-base-common/src/main/java/com/god/base/common/domain/request/BreakdownRequest.java new file mode 100644 index 0000000..c52edd9 --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/request/BreakdownRequest.java @@ -0,0 +1,30 @@ +package com.god.base.common.domain.request; + +import com.god.base.common.domain.PageQuery; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import javax.validation.constraints.NotEmpty; + +/** + * 车辆故障码 + * + * @author ChenXinHai + * @version 2023/11/20 - 19:39 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@SuperBuilder +public class BreakdownRequest extends PageQuery { + + // 故障码Id + @NotEmpty(message = "故障码Id不能为空") + private String breadownId; + + + + +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/request/FaultRequest.java b/car-base-common/src/main/java/com/god/base/common/domain/request/FaultRequest.java new file mode 100644 index 0000000..60f4886 --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/request/FaultRequest.java @@ -0,0 +1,51 @@ +package com.god.base.common.domain.request; + +import com.god.common.core.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * 故障码request + * + * @author ChenXinHai + * @version 2023/11/21 - 18:38 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class FaultRequest { + /** 故障id */ + private Integer faultId; + + /** 故障类型 */ + @Excel(name = "故障类型") + private String faultType; + + /** 故障组 */ + @Excel(name = "故障组") + private String faultGroup; + + /** 故障位 */ + @Excel(name = "故障位") + private String faultSite; + + /** 故障值 */ + @Excel(name = "故障值") + private String faultValue; + + /** 故障标签 */ + @Excel(name = "故障标签") + private String faultLabel; + + /** 故障码 */ + @Excel(name = "故障码") + private String faultCoed; + + /** 是否警告 */ + @Excel(name = "是否警告") + private Long isWarn; +} diff --git a/car-base-common/src/main/java/com/god/base/common/domain/response/BreakdownResponse.java b/car-base-common/src/main/java/com/god/base/common/domain/response/BreakdownResponse.java new file mode 100644 index 0000000..52d03f2 --- /dev/null +++ b/car-base-common/src/main/java/com/god/base/common/domain/response/BreakdownResponse.java @@ -0,0 +1,40 @@ +package com.god.base.common.domain.response; + +import com.god.base.common.domain.PageQuery; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * 车辆故障码 + * + * @author ChenXinHai + * @version 2023/11/20 - 19:39 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@SuperBuilder +public class BreakdownResponse extends PageQuery { + + // 故障信息表Id + private Integer id; + // 故障码Id + + private String breadownId; + // 创建者 + private String createBy; + // 创建时间 + private Date createTime; + // 更新人 + private String updateBy; + // 更新时间 + private Date updateTime; + + + + +} diff --git a/car-base-common/src/main/java/com/god/base/common/response/FenceResponse.java b/car-base-common/src/main/java/com/god/base/common/response/FenceResponse.java deleted file mode 100644 index 3a32d2e..0000000 --- a/car-base-common/src/main/java/com/god/base/common/response/FenceResponse.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.god.base.common.response; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModelProperty; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.springframework.format.annotation.DateTimeFormat; - -import java.util.Date; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class FenceResponse { - /** 电子围栏ID */ - private Integer fenceId ; - /** 围栏名称 */ - private String fenceName ; - /** 围栏经纬度 */ - private String fenceLat ; - /** 激活状态 */ - private Integer fenceStatus ; - /** 操作时间 */ - @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") - private Date fenceTime ; - /** 操作者 */ - private Integer createBy ; -} diff --git a/car-base-server/src/main/java/com/god/base/server/config/ErrorConfig.java b/car-base-server/src/main/java/com/god/base/server/config/ErrorConfig.java new file mode 100644 index 0000000..492fd7c --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/config/ErrorConfig.java @@ -0,0 +1,25 @@ +package com.god.base.server.config; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.HashMap; +import java.util.Map; + +/** + * 故障管理 + * + * @author ChenXinHai + * @version 2023/11/22 - 19:47 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class ErrorConfig { + private Map map=new HashMap<>(); + + private Map sentVindMap=new HashMap<>(); +} diff --git a/car-base-server/src/main/java/com/god/base/server/config/SpringUtils.java b/car-base-server/src/main/java/com/god/base/server/config/SpringUtils.java new file mode 100644 index 0000000..9e9a870 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/config/SpringUtils.java @@ -0,0 +1,28 @@ +package com.god.base.server.config; + +import org.springframework.beans.BeansException; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; + +/** + * @author ChenXinHai + * @version 2023/11/22 - 19:55 + */ +public class SpringUtils implements ApplicationContextAware { + private static ApplicationContext applicationContext; + + @Override + public void setApplicationContext(ApplicationContext applicationContext) { + SpringUtils.applicationContext=applicationContext; + } + public static ApplicationContext getApplicationContext(){ + return applicationContext; + } + + /** + * 通过name 获取bean + */ + public static Object getBean(String name){ + return getApplicationContext().getBean(name); + } +} diff --git a/car-base-server/src/main/java/com/god/base/server/constant/BreakConstant.java b/car-base-server/src/main/java/com/god/base/server/constant/BreakConstant.java new file mode 100644 index 0000000..53f3618 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/constant/BreakConstant.java @@ -0,0 +1,102 @@ +package com.god.base.server.constant; + +/** + * 故障信息 + * + * @author ChenXinHai + * @version 2023/11/22 - 21:48 + */ +public enum BreakConstant { + /** + * 车辆状态 + */ + GET001("GTX001","vehicleStatus",0), + /** + * 充点状态 + */ + GTX002("GTX002","chargingStatus",0), + /** + * 运行状态 + */ + GTX003("GTX003","operatingStatus",0), + /** + * SOC + */ + GTX004("GTX004","socStatus",0), + /** + * 可充电储能装置工作状态 + */ + GTX005("GTX005","chargingEnergyStorageStatus",0), + /** + * 驱动电机状态 + */ + GTX006("GTX006","driveMotorStatus",0), + /** + * 定位是否有效 + */ + GTX007("GTX007","positionStatus",0), + /** + * EPS工作状态 + */ + GTO0001("GTO001","epsStatus",0), + /** + * EAS工作状态 + */ + GTO0002("GTO002","easStatus",0), + /** + * PTC工作状态 + */ + GTO003("GTO003","ptcStatus",0), + /** + * DCDC工作状态 + */ + GTO004("GTO004","dcdcStatus",0), + /** + * EPS工作状态 + */ + GTO005("GTO005","epsStatus",0), + /** + * CHG工作状态 + */ + GTO006("GTO006","chgStatus",0), + /** + * ABS工作状态 + */ + GTO007("GTO007","absStatus",0), + /** + * MCU工作状态 + */ + GTO008("GTO008","mcuStatus",0), + /** + * 动力电池加热状态 + */ + GTB001("GTB001","heatingStatus",0), + /** + * 动力电池当前状态 + */ + GTB002("GTB002","batteryStatus",0), + /** + * 动力电池保温状态 + */ + GTB003("GTB003","batteryInsulationStatus",0); + private String key; + private String value; + private Integer status; + public String key(){ + return key; + } + public Integer status(){ + return status; + } + public String value(){ + return value; + } + public void value(String value){ + this.value=value; + } + BreakConstant(String key,String value,Integer status){ + this.key=key; + this.value=value; + this.status=status; + } +} diff --git a/car-base-server/src/main/java/com/god/base/server/controller/BreakdownController.java b/car-base-server/src/main/java/com/god/base/server/controller/BreakdownController.java new file mode 100644 index 0000000..afc4a57 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/controller/BreakdownController.java @@ -0,0 +1,136 @@ +package com.god.base.server.controller; + +import com.alibaba.fastjson.JSONObject; +import com.alibaba.nacos.api.model.v2.Result; +import com.bawei.common.core.domain.R; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.request.BreakdownRequest; +import com.god.base.server.service.BreakdownService; +import com.god.common.core.utils.poi.ExcelUtil; +import com.god.common.core.web.page.TableDataInfo; +import com.god.common.log.annotation.Log; +import com.god.common.log.enums.BusinessType; +import com.god.common.security.annotation.RequiresPermissions; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 车辆故障码controller + * + * @author ChenXinHai + * @version 2023/11/20 - 19:31 + */ +@RestController +@RequestMapping("/Breakdown") +@Log4j2 +public class BreakdownController { + @Autowired + private BreakdownService breakdownService; + private HttpServletRequest request; + + /** + * 故障日志列表 + * @param breakdown + * @return + */ + @RequiresPermissions("breakedown:breakedown:list") + @GetMapping("/list") + public Result> breakdownList(Breakdown breakdown){ + log.info("名称:故障日志列表,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod()); + Result> result=breakdownService.breakdown(breakdown); + log.info("名称:故障日志列表,请求URI:{},请求方法:{},响应方法:{}",request.getRequestURI(), + request.getMethod(), JSONObject.toJSONString(result)); + return result; + } + + /** + * 导出故障数据日志 + * @param response + * @param breakdown + */ + @RequiresPermissions("breakdown:breakdown:export") + @Log(title = "故障日志",businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, Breakdown breakdown){ + + Result> list = breakdownService.breakdown(breakdown); + ExcelUtil util = new ExcelUtil<>(Breakdown.class); + // 对list数据源将其里面的数据导入出来 + util.exportExcel(response,list.getData(),"车辆故障码"); + } + + /** + * 获取故障日志详细信息 + * @param id + * @return + */ + @RequiresPermissions("breakdown:breakdown:query") + @GetMapping("query") + public Result query(Integer id){ + log.info("名称:获取日志详细信息,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(id)); + breakdownService.query(id); + Result result=Result.success(); + log.info("名称:获取日志详细信息,请求URI:{},请求方法:{},响应方法:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + @RequiresPermissions("breakdown:breakdown:breakdownAdd") + @Log(title = "故障日志",businessType = BusinessType.INSERT) + @PostMapping("breakdownAdd") + public Result breakdown(@RequestBody Breakdown breakdown){ + log.info("名称:新增故障日志,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),breakdown); + breakdownService.breakdownAdd(breakdown); + Result result=Result.success(); + log.info("名称:新增故障日志,请求URI:{},请求方法:{},响应方法:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /** + * 修改故障日志 + * @param breakdown + * @return + */ + @RequiresPermissions("breakdown:breakdown:breakdownUpdate") + @Log(title = "故障日志",businessType = BusinessType.UPDATE) + @PostMapping("breakdownUpdate") + public Result breakdownUpdate(@RequestBody Breakdown breakdown){ + log.info("名称:修改故障日志,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),breakdown); + breakdownService.breakdownUpdate(breakdown); + Result result=Result.success(); + log.info("名称:修改故障日志,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /** + * 删除故障日志 + * @param id + * @return + */ + @RequiresPermissions("breakdown:breakdown:breakdownDelete") + @Log(title = "故障日志",businessType = BusinessType.DELETE) + @PostMapping("breakdownDelete") + public Result breakdownDelete(Integer id){ + log.info("名称:删除故障日志,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(id)); + breakdownService.breakdownDelete(id); + Result result= Result.success(); + log.info("名称:删除故障日志,请求URI:{},请求方法:{},响应方法:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + +} diff --git a/car-base-server/src/main/java/com/god/base/server/controller/FaultController.java b/car-base-server/src/main/java/com/god/base/server/controller/FaultController.java new file mode 100644 index 0000000..92a26e0 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/controller/FaultController.java @@ -0,0 +1,126 @@ +package com.god.base.server.controller; + +import com.alibaba.fastjson.JSONObject; +import com.alibaba.nacos.api.model.v2.Result; +import com.bawei.common.core.domain.R; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.request.BreakdownRequest; +import com.god.base.common.domain.request.FaultRequest; +import com.god.base.server.service.FaultService; +import com.god.common.core.utils.poi.ExcelUtil; +import com.god.common.core.web.controller.BaseController; +import com.god.common.core.web.page.TableDataInfo; +import com.god.common.log.annotation.Log; +import com.god.common.log.enums.BusinessType; +import com.god.common.security.annotation.RequiresPermissions; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 故障表 + * + * @author ChenXinHai + * @version 2023/11/21 - 18:33 + */ +@RestController +@RequestMapping("/fault") +@Log4j2 +public class FaultController extends BaseController { + @Autowired + private FaultService faultService; + private HttpServletRequest request; + /** + *查询车辆故障码列表 + */ +// @RequiresPermissions("fault:fault:list") + @GetMapping("/list") + public Result> faultList(Fault fault){ + log.info("功能名称:故障码列表,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod()); + Result> result=faultService.faultList(fault); + log.info("功能名称:故障码列表,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(), + request.getMethod(), JSONObject.toJSONString(result)); + return result; + } + + /** + * 导出车辆故障码列表 + */ +// @RequiresPermissions("fault:fault:export") + @Log(title="车辆故障码",businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response,Fault fault){ + Result> list=faultService.faultList(fault); + ExcelUtil util = new ExcelUtil<>(Fault.class); + // 对list数据源将其里面的数据导入出来 + util.exportExcel(response,list.getData(),"车辆故障码"); + } + + + /** + * 添加故障数据 + * @param fault + * @return + */ + +// @RequiresPermissions("fault:fault:add") + @Log(title = "车辆故障码",businessType = BusinessType.EXPORT) + @PostMapping("/faultAdd") + public Result faultAdd(@RequestBody Fault fault){ + log.info("名称:添加故障数据,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),fault); + faultService.add(fault); + Result result= Result.success(); + log.info("名称:添加故障数据,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /** + * 删除故障数据 + * @param faultId + * @return + */ + +// @RequiresPermissions("fault:fault:delete") + @Log(title = "车辆故障码",businessType = BusinessType.EXPORT) + @PostMapping("faultDelete") + public Result faultDelete(Integer faultId){ + log.info("名称:删除故障编码,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(faultId)); + faultService.faultDelete(faultId); + Result result=Result.success(); + log.info("名称:删除故障数据,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + /** + * 修改故障数据 + * @param fault + * @return + */ +// @RequiresPermissions("fault:fault:update") + @Log(title = "车辆故障码",businessType = BusinessType.EXPORT) + @PostMapping("faultUpdate") + public Result faultUpdate(@RequestBody Fault fault){ + log.info("名称:修改故障数据,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod(),fault); + faultService.faultUpdate(fault); + Result result=Result.success(); + log.info("名称:修改故障数据,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + + +} diff --git a/car-base-server/src/main/java/com/god/base/server/controller/FaultcodealarmController.java b/car-base-server/src/main/java/com/god/base/server/controller/FaultcodealarmController.java new file mode 100644 index 0000000..dbca6ce --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/controller/FaultcodealarmController.java @@ -0,0 +1,54 @@ +package com.god.base.server.controller; + +import com.alibaba.fastjson.JSONObject; +import com.alibaba.nacos.api.model.v2.Result; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.Faultcodealarm; +import com.god.base.common.domain.request.BreakdownRequest; +import com.god.base.server.service.FaultcodealarmService; +import com.god.common.core.web.page.TableDataInfo; +import com.god.common.security.annotation.RequiresPermissions; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; + +/** + * 故障码告警规则 + * + * @author ChenXinHai + * @version 2023/11/22 - 19:35 + */ +@RestController +@RequestMapping("/Faultcodealarm") +@Log4j2 +public class FaultcodealarmController { + + @Autowired + private FaultcodealarmService faultcodealarmService; + private HttpServletRequest request; + + + @RequiresPermissions("faultcodealarm:faultcodealarm:list") + @GetMapping("/list") + public Result> faultcodealarmList(Faultcodealarm faultcodealarm){ + log.info("功能名称:故障告警列表,请求URI:{},请求方法:{}",request.getRequestURI(), + request.getMethod()); + Result> result=faultcodealarmService.faultcodealarmList(faultcodealarm); + log.info("功能名称:故障告警列表,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(), + request.getMethod(),JSONObject.toJSONString(result)); + return result; + } + + + + + +} diff --git a/car-base-server/src/main/java/com/god/base/server/controller/FenceController.java b/car-base-server/src/main/java/com/god/base/server/controller/FenceController.java deleted file mode 100644 index 2ff2cc3..0000000 --- a/car-base-server/src/main/java/com/god/base/server/controller/FenceController.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.god.base.server.controller; - -import com.alibaba.fastjson.JSONObject; -import com.alibaba.nacos.api.model.v2.Result; -import com.god.base.common.Fence; -import com.god.base.common.response.FenceResponse; -import com.god.base.server.service.FenceService; -import lombok.extern.log4j.Log4j2; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; -import java.util.List; - -@RestController -@RequestMapping("/fence") -@Log4j2 -public class FenceController { - @Autowired - private FenceService fenceService; - private HttpServletRequest request; - - - // 电子围栏列表 - @GetMapping("/fencingList") - public Result> fencingList(){ - log.info("功能名称:电子围栏,请求URL:【{}】,请求方法:【{}】",request.getRequestURI(), - request.getMethod()); - Result> result = fenceService.fencingList(); - log.info("功能名称:电子围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), - request.getMethod(), JSONObject.toJSONString(result)); - return result; - } - - // 添加电子围栏 - @PostMapping("/addfencing") - public Result addfencing(@RequestBody Fence fence){ - log.info("功能名称:添加电子围栏,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(), - request.getMethod(),fence); - fenceService.addfencing(fence); - Result result = Result.success(); - log.info("功能名称:添加电子围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), - request.getMethod(), JSONObject.toJSONString(result)); - return result; - } - - - // 删除围栏 - @PostMapping("/deleteFencingById/{fencingId}") - public Result deleteFencingById(@PathVariable Integer fencingId){ - log.info("功能名称:获取编号删除围栏,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(), - request.getMethod(),fencingId); - Result result = fenceService.deleteFencingById(fencingId); - log.info("功能名称:获取编号删除围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), - request.getMethod(), JSONObject.toJSONString(result)); - return result; - } - - - // 修改围栏 - @PostMapping("/updateFencing") - public Result updateFencing(@RequestBody Fence fence){ - log.info("功能名称:修改围栏,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(), - request.getMethod(),fence); - Result result = fenceService.updateFencing(fence); - log.info("功能名称:修改围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(), - request.getMethod(), JSONObject.toJSONString(result)); - return result; - } - -} diff --git a/car-base-server/src/main/java/com/god/base/server/mapper/BreakdownMapper.java b/car-base-server/src/main/java/com/god/base/server/mapper/BreakdownMapper.java new file mode 100644 index 0000000..fce4906 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/mapper/BreakdownMapper.java @@ -0,0 +1,26 @@ +package com.god.base.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.god.base.common.domain.Breakdown; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 车辆故障码mapper + * + * @author ChenXinHai + * @version 2023/11/20 - 19:31 + */ +@Mapper +public interface BreakdownMapper extends BaseMapper { + List breakdownList(Breakdown breakdown); + + void query(Integer id); + + void breakdownAdd(Breakdown breakdown); + + void breakdownUpdate(Breakdown breakdown); + + void breakdownDelete(Integer id); +} diff --git a/car-base-server/src/main/java/com/god/base/server/mapper/FaultMapper.java b/car-base-server/src/main/java/com/god/base/server/mapper/FaultMapper.java new file mode 100644 index 0000000..94c70d2 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/mapper/FaultMapper.java @@ -0,0 +1,30 @@ +package com.god.base.server.mapper; + +import com.alibaba.nacos.api.model.v2.Result; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.request.FaultRequest; +import com.god.common.core.web.page.TableDataInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 故障Mapper + * + * @author ChenXinHai + * @version 2023/11/21 - 18:33 + */ +@Mapper +public interface FaultMapper extends BaseMapper { + + + List faultList(Fault fault); + + void add(Fault fault); + + void faultUpdate(Fault fault); + + void faultDelete(Integer faultId); +} diff --git a/car-base-server/src/main/java/com/god/base/server/mapper/FaultcodealarmMapper.java b/car-base-server/src/main/java/com/god/base/server/mapper/FaultcodealarmMapper.java new file mode 100644 index 0000000..d3b6599 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/mapper/FaultcodealarmMapper.java @@ -0,0 +1,20 @@ +package com.god.base.server.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.god.base.common.domain.Faultcodealarm; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 故障码告警Mapper + * + * @author ChenXinHai + * @version 2023/11/22 - 19:35 + */ +@Mapper +public interface FaultcodealarmMapper extends BaseMapper { + + + List faultcodealarmList(Faultcodealarm faultcodealarm); +} diff --git a/car-base-server/src/main/java/com/god/base/server/mapper/FenceMapper.java b/car-base-server/src/main/java/com/god/base/server/mapper/FenceMapper.java deleted file mode 100644 index 7900781..0000000 --- a/car-base-server/src/main/java/com/god/base/server/mapper/FenceMapper.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.god.base.server.mapper; - -import com.god.base.common.Fence; -import com.god.base.common.response.FenceResponse; -import org.apache.ibatis.annotations.Mapper; - -import java.util.List; - -@Mapper -public interface FenceMapper { - List fencingList(); - - void addfencing(Fence fence); - - int deleteFencingById(Integer fencingId); - - int updateFencing(Fence fence); -} diff --git a/car-base-server/src/main/java/com/god/base/server/mapper/RequestLogMapper.java b/car-base-server/src/main/java/com/god/base/server/mapper/RequestLogMapper.java new file mode 100644 index 0000000..9f81b84 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/mapper/RequestLogMapper.java @@ -0,0 +1,14 @@ +//package com.god.base.server.mapper; +// +//import com.baomidou.mybatisplus.core.mapper.BaseMapper; +//import com.god.base.common.domain.RequestLog; +// +///** +// * AOP +// * +// * @author ChenXinHai +// * @version 2023/11/22 - 18:38 +// */ +//public interface RequestLogMapper extends BaseMapper { +// +//} diff --git a/car-base-server/src/main/java/com/god/base/server/service/BreakdownService.java b/car-base-server/src/main/java/com/god/base/server/service/BreakdownService.java new file mode 100644 index 0000000..b904051 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/BreakdownService.java @@ -0,0 +1,30 @@ +package com.god.base.server.service; + +import com.alibaba.nacos.api.model.v2.Result; +import com.baomidou.mybatisplus.extension.service.IService; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.request.BreakdownRequest; +import com.god.common.core.web.page.TableDataInfo; + +import java.util.List; + +/** + * 车辆故障码service + * + * @author ChenXinHai + * @version 2023/11/20 - 19:32 + */ +public interface BreakdownService extends IService { + + + Result> breakdown(Breakdown breakdown); + + + void query(Integer id); + + void breakdownAdd(Breakdown breakdown); + + void breakdownUpdate(Breakdown breakdown); + + void breakdownDelete(Integer id); +} diff --git a/car-base-server/src/main/java/com/god/base/server/service/FaultService.java b/car-base-server/src/main/java/com/god/base/server/service/FaultService.java new file mode 100644 index 0000000..0fe767d --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/FaultService.java @@ -0,0 +1,32 @@ +package com.god.base.server.service; + +import com.alibaba.nacos.api.model.v2.Result; +import com.baomidou.mybatisplus.extension.service.IService; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.request.FaultRequest; +import com.god.common.core.web.page.TableDataInfo; + +import java.util.List; + +/** + * 故障service + * + * @author ChenXinHai + * @version 2023/11/21 - 18:33 + */ +public interface FaultService extends IService { + + + Result> faultList(Fault fault); + + void add(Fault fault); + + + + void faultUpdate(Fault fault); + + + + void faultDelete(Integer faultId); +} diff --git a/car-base-server/src/main/java/com/god/base/server/service/FaultcodealarmService.java b/car-base-server/src/main/java/com/god/base/server/service/FaultcodealarmService.java new file mode 100644 index 0000000..2df60af --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/FaultcodealarmService.java @@ -0,0 +1,16 @@ +package com.god.base.server.service; + +import com.alibaba.nacos.api.model.v2.Result; +import com.god.base.common.domain.Faultcodealarm; + +import java.util.List; + +/** + * 故障码告警service + * + * @author ChenXinHai + * @version 2023/11/22 - 19:37 + */ +public interface FaultcodealarmService { + Result> faultcodealarmList(Faultcodealarm faultcodealarm); +} diff --git a/car-base-server/src/main/java/com/god/base/server/service/FenceService.java b/car-base-server/src/main/java/com/god/base/server/service/FenceService.java deleted file mode 100644 index 3dd1ff7..0000000 --- a/car-base-server/src/main/java/com/god/base/server/service/FenceService.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.god.base.server.service; - -import com.alibaba.nacos.api.model.v2.Result; -import com.god.base.common.Fence; -import com.god.base.common.response.FenceResponse; - -import java.util.List; - -public interface FenceService { - Result> fencingList(); - - void addfencing(Fence fence); - - Result deleteFencingById(Integer fencingId); - - Result updateFencing(Fence fence); -} diff --git a/car-base-server/src/main/java/com/god/base/server/service/RequestLogService.java b/car-base-server/src/main/java/com/god/base/server/service/RequestLogService.java new file mode 100644 index 0000000..079f9a5 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/RequestLogService.java @@ -0,0 +1,18 @@ +//package com.god.base.server.service; +// +//import com.baomidou.mybatisplus.extension.service.IService; +//import com.god.base.common.domain.RequestLog; +// +///** +// * AOP +// * +// * @author ChenXinHai +// * @version 2023/11/22 - 18:39 +// */ +//public interface RequestLogService extends IService { +// /** +// * 异步保存 +// * @param entity +// */ +// void asyncSave(RequestLog entity); +//} diff --git a/car-base-server/src/main/java/com/god/base/server/service/impl/BreakdownServiceImpl.java b/car-base-server/src/main/java/com/god/base/server/service/impl/BreakdownServiceImpl.java new file mode 100644 index 0000000..a25b8e6 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/impl/BreakdownServiceImpl.java @@ -0,0 +1,64 @@ +package com.god.base.server.service.impl; + +import com.alibaba.nacos.api.model.v2.Result; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.request.BreakdownRequest; +import com.god.base.server.mapper.BreakdownMapper; +import com.god.base.server.service.BreakdownService; +import com.god.common.core.utils.StringUtils; +import com.god.common.core.web.page.TableDataInfo; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 车辆故障码serviceImpl + * + * @author ChenXinHai + * @version 2023/11/20 - 19:32 + */ +@Log4j2 +@Service +public class BreakdownServiceImpl extends ServiceImpl implements BreakdownService { + @Autowired + private BreakdownMapper breakdownMapper; + + /** + * 故障日志列表 + * @param breakdown + * @return + */ + @Override + public Result> breakdown(Breakdown breakdown) { + List list=breakdownMapper.breakdownList(breakdown); + return Result.success(list); + } + + @Override + public void query(Integer id) { + breakdownMapper.query(id); + } + + @Override + public void breakdownAdd(Breakdown breakdown) { + breakdownMapper.breakdownAdd(breakdown); + + } + + @Override + public void breakdownUpdate(Breakdown breakdown) { + breakdownMapper.breakdownUpdate(breakdown); + } + + @Override + public void breakdownDelete(Integer id) { + breakdownMapper.breakdownDelete(id); + } + + +} diff --git a/car-base-server/src/main/java/com/god/base/server/service/impl/FaultServiceImpl.java b/car-base-server/src/main/java/com/god/base/server/service/impl/FaultServiceImpl.java new file mode 100644 index 0000000..b6dcbec --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/impl/FaultServiceImpl.java @@ -0,0 +1,59 @@ +package com.god.base.server.service.impl; + +import com.alibaba.nacos.api.model.v2.Result; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.request.FaultRequest; +import com.god.base.server.mapper.BreakdownMapper; +import com.god.base.server.mapper.FaultMapper; +import com.god.base.server.service.BreakdownService; +import com.god.base.server.service.FaultService; +import com.god.common.core.web.page.TableDataInfo; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.function.Function; + +/** + * 故障serviceImpl + * + * @author ChenXinHai + * @version 2023/11/21 - 18:34 + */ + +@Service +public class FaultServiceImpl extends ServiceImpl implements FaultService { + @Autowired + private FaultMapper faultMapper; + + + @Override + public Result> faultList(Fault fault) { + List list=faultMapper.faultList(fault); + return Result.success(list); + } + + @Override + public void add(Fault fault) { + faultMapper.add(fault); + } + + + @Override + public void faultUpdate(Fault fault) { + faultMapper.faultUpdate(fault); + } + + @Override + public void faultDelete(Integer faultId) { + faultMapper.faultDelete(faultId); + } + + +} diff --git a/car-base-server/src/main/java/com/god/base/server/service/impl/FaultcodealarmServiceImpl.java b/car-base-server/src/main/java/com/god/base/server/service/impl/FaultcodealarmServiceImpl.java new file mode 100644 index 0000000..d5721ea --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/impl/FaultcodealarmServiceImpl.java @@ -0,0 +1,33 @@ +package com.god.base.server.service.impl; + +import com.alibaba.nacos.api.model.v2.Result; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.god.base.common.domain.Breakdown; +import com.god.base.common.domain.Fault; +import com.god.base.common.domain.Faultcodealarm; +import com.god.base.server.mapper.BreakdownMapper; +import com.god.base.server.mapper.FaultcodealarmMapper; +import com.god.base.server.service.BreakdownService; +import com.god.base.server.service.FaultcodealarmService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 故障码告警serviceImpl + * + * @author ChenXinHai + * @version 2023/11/22 - 19:37 + */ +@Service +public class FaultcodealarmServiceImpl extends ServiceImpl implements FaultcodealarmService { + + @Autowired + private FaultcodealarmMapper faultcodealarmMapper; + @Override + public Result> faultcodealarmList(Faultcodealarm faultcodealarm) { + List list=faultcodealarmMapper.faultcodealarmList(faultcodealarm); + return Result.success(list); + } +} diff --git a/car-base-server/src/main/java/com/god/base/server/service/impl/FenceServiceImpl.java b/car-base-server/src/main/java/com/god/base/server/service/impl/FenceServiceImpl.java deleted file mode 100644 index a287490..0000000 --- a/car-base-server/src/main/java/com/god/base/server/service/impl/FenceServiceImpl.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.god.base.server.service.impl; - -import com.alibaba.nacos.api.model.v2.Result; -import com.god.base.common.Fence; -import com.god.base.common.response.FenceResponse; -import com.god.base.server.mapper.FenceMapper; -import com.god.base.server.service.FenceService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -@Service -public class FenceServiceImpl implements FenceService { - @Autowired - private FenceMapper fenceMapper; - - - // 围栏列表 - @Override - public Result> fencingList() { - List list=fenceMapper.fencingList(); - return Result.success(list); - } - - // 添加围栏 - @Override - public void addfencing(Fence fence) { - Date date = new Date(); - fence.setFenceTime(date); - fenceMapper.addfencing(fence); - - } - - // 删除围栏 - @Override - public Result deleteFencingById(Integer fencingId) { - int i=fenceMapper.deleteFencingById(fencingId); - return i>0?Result.success("围栏已成功删除"):Result.failure("删除失败"); - } - - // 删除围栏 - @Override - public Result updateFencing(Fence fence) { - Date date = new Date(); - fence.setFenceTime(date); - int i=fenceMapper.updateFencing(fence); - return i>0?Result.success("围栏已成功拦截"):Result.failure("拦截失败"); - } -} diff --git a/car-base-server/src/main/java/com/god/base/server/service/impl/RequestLogServiceImpl.java b/car-base-server/src/main/java/com/god/base/server/service/impl/RequestLogServiceImpl.java new file mode 100644 index 0000000..4272539 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/impl/RequestLogServiceImpl.java @@ -0,0 +1,23 @@ +//package com.god.base.server.service.impl; +// +//import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +//import com.god.base.common.domain.RequestLog; +//import com.god.base.server.mapper.RequestLogMapper; +//import com.god.base.server.service.RequestLogService; +//import org.springframework.scheduling.annotation.Async; +//import org.springframework.stereotype.Service; +// +///** +// * AOP +// * +// * @author ChenXinHai +// * @version 2023/11/22 - 18:43 +// */ +//@Service +//public class RequestLogServiceImpl extends ServiceImpl implements RequestLogService { +// @Async +// @Override +// public void asyncSave(RequestLog entity) { +// super.save(entity); +// } +//} diff --git a/car-base-server/src/main/java/com/god/base/server/service/impl/asyncSave.java b/car-base-server/src/main/java/com/god/base/server/service/impl/asyncSave.java new file mode 100644 index 0000000..f683f2a --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/service/impl/asyncSave.java @@ -0,0 +1,84 @@ +//package com.god.base.server.service.impl; +// +//import com.god.base.common.domain.RequestLog; +//import com.god.base.server.service.RequestLogService; +//import com.god.common.log.aspect.LogAspect; +//import org.aspectj.lang.JoinPoint; +//import org.aspectj.lang.annotation.*; +//import org.slf4j.Logger; +//import org.slf4j.LoggerFactory; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.stereotype.Component; +//import org.springframework.web.context.request.RequestContextHolder; +//import org.springframework.web.context.request.ServletRequestAttributes; +// +//import javax.servlet.http.HttpServletRequest; +//import java.time.LocalDateTime; +//import java.util.Arrays; +// +///** +// * AOP日志处理 +// * +// * @author ChenXinHai +// * @version 2023/11/22 - 18:45 +// */ +//@Aspect +//@Component +//public class asyncSave { +// private static final Logger logger= LoggerFactory.getLogger(LogAspect.class); +// @Autowired +// private RequestLogService requestLogService; +// +// private long startTime; +// private RequestLog requestLog; +// +// /** +// * 切点声明 +// */ +// @Pointcut(value = "execution(* com.god.base.server.controller.*.*(..))") +// public void pointcut(){ +// } +// @Before(value = "pointcut()") +// public void doBefore(JoinPoint joinPoint){ +// ServletRequestAttributes servletRequestAttributes +// =(ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); +// HttpServletRequest request=servletRequestAttributes.getRequest(); +// +// // 获取请求参数 +// String requestUrl = request.getRequestURL().toString(); +// String ip = request.getRemoteAddr(); +// String userAgent = request.getHeader("User-Agent"); // 用户代理(客户端) +// String declaringSignature=joinPoint.getSignature().getDeclaringTypeName() +// +"."+joinPoint.getSignature().getName(); +// String args=(joinPoint.getArgs().length==0)?null: Arrays.toString(joinPoint.getArgs()); +// +// // 设置请求参数 +// this.requestLog = new RequestLog(); +// this.requestLog.setUserName("admin"); +// this.requestLog.setUserAgent(userAgent); +// this.requestLog.setRequestUrl(requestUrl); +// this.requestLog.setIp(ip); +// this.requestLog.setDeclaringSignature(declaringSignature); +// this.requestLog.setArgs(args); +// this.startTime=System.currentTimeMillis(); +// } +// @AfterReturning(pointcut="pointcut()",returning = "returnedValue") +// public void doAfterReturning(Object returnedValue){ +// Integer elapsedTime=(int) (System.currentTimeMillis()-this.startTime); +// this.requestLog.setElapsedTime(elapsedTime); +// this.requestLog.setException(null); +// this.requestLog.setCreateTime(LocalDateTime.now()); +// +// logger.info(this.requestLog.toString()); +// this.requestLogService.asyncSave(this.requestLog); // 异步保存到数据库 +// } +// +// @AfterThrowing(pointcut = "pointcut()",throwing = "throwable") +// public void doAfterThrowing(Throwable throwable){ +// this.requestLog.setException(throwable.toString()); +// this.requestLog.setCreateTime(LocalDateTime.now()); +// +// logger.error(this.requestLog.toString()); +// this.requestLogService.asyncSave(this.requestLog); +// } +//} diff --git a/car-base-server/src/main/java/com/god/base/server/utils/BreakdownMessage.java b/car-base-server/src/main/java/com/god/base/server/utils/BreakdownMessage.java new file mode 100644 index 0000000..1a7b142 --- /dev/null +++ b/car-base-server/src/main/java/com/god/base/server/utils/BreakdownMessage.java @@ -0,0 +1,101 @@ +//package com.god.base.server.utils; +// +//import lombok.extern.log4j.Log4j2; +//import org.springframework.amqp.rabbit.core.RabbitTemplate; +//import org.springframework.data.redis.core.RedisTemplate; +//import org.springframework.stereotype.Component; +// +//import java.util.*; +// +///** +// * 故障消息 +// * +// * @author ChenXinHai +// * @version 2023/11/22 - 22:01 +// */ +//@Component +//@Log4j2 +//public class BreakdownMessage { +// private final RedisTemplate redisTemplate; +// private final RabbitTemplate rabbitTemplate; +// private Map StringLastMsg; +// +// public BreakdownMessage(RedisTemplate redisTemplate, RabbitTemplate rabbitTemplate) { +// this.redisTemplate = redisTemplate; +// this.rabbitTemplate= rabbitTemplate; +// } +// +// public void falueSms(Map messageModel,String vind){ +// String key="chenchen"+vind; +// List chenchenError = redisTemplate.opsForList().range(key, 0, -1); +// redisTemplate.opsForList().range("chenchen:errorlog:one",0,-1); +// +// int size = chenchenError.size(); +// +// if (messageModel.containsKey(vind) && size<1){ +// log.info("发送消息报告异常状态:{}",vind); +// rabbitTemplate.convertAndSend("chenchen.error",vind); +// redisTemplate.opsForList().leftPush(key,vind); +// messageModel.clear(); +// }else if (!messageModel.containsKey(vind) && redisTemplate.hasKey(key)){ +// log.info("发送消息报告故障修复:{}",vind); +// rabbitTemplate.convertAndSend("chenchen.success",vind); +// redisTemplate.delete(key); +// for (String extraKey : chenchenError){ +// log.info("修复故障信息发送:{}",extraKey); +// rabbitTemplate.convertAndSend("chenchen.successlog",extraKey); +// redisTemplate.opsForList().remove("chenchen:errorlog:one",1,extraKey); +// redisTemplate.opsForList().remove("chenchen:errorlog:two",1,extraKey); +// redisTemplate.opsForHash().delete("chenchen:last_message",extraKey); +// } +// }else { +// log.info("不做操作:{}",vind); +// } +// messageModel.clear(); +// } +// +// public void falueSms2(Map messageModel){ +// // 获取redis中存储的Map数据 +// Map lastMsg = redisTemplate.opsForHash().entries("chenchen:last_message"); +// Map stringLastMsg = new HashMap<>(lastMsg.size()); +// for (Map.Entry entry:lastMsg.entrySet()){ +// if (entry.getKey()!=null && entry.getValue()!=null){ +// stringLastMsg.put(entry.getKey().toString(),entry.getValue().toString()); +// } +// } +// List chenchenError=redisTemplate.opsForList().range("chenchen:errorlog:one",0,1); +// List chenchenError2=redisTemplate.opsForList().range("chenchen:errorlog:two",0,-1); +// Set extraKeys = new HashSet<>(); +// // 如果数据没有变化(包括空数据),则不需要处理,直接返回 +// +// if(StringLastMsg.equals(messageModel)){ +// return; +// } +// // 发送新增的key-value +// for (Map.Entry stringStringEntry : messageModel.entrySet()) { +// if (!chenchenError2.contains(stringStringEntry.getKey())){ +// log.info("故障信息发送:{}",stringStringEntry.getKey()); +// rabbitTemplate.convertAndSend("chenchen:errorlog",stringStringEntry.getKey()); +// redisTemplate.opsForList().leftPush("chenchen:errorlog:two",stringStringEntry.getKey()); +// redisTemplate.opsForList().leftPush("chenchen:errorlog:one",stringStringEntry.getKey()); +// redisTemplate.opsForHash().putAll("chenchen:last_message",stringLastMsg); +// } +// } +// for (String key : chenchenError) { +// if (!messageModel.containsKey(key)){ +// extraKeys.add(key); +// } +// } +// log.info("需要修复的:{}",extraKeys.toString()); +// if(extraKeys.size()>0){ +// for (Object extraKey : extraKeys) { +// log.info("修复故障信息发送:{}",extraKey); +// rabbitTemplate.convertAndSend("chenchen.successlog",extraKey); +// redisTemplate.opsForList().remove("chenchen:errorlog:one",1,extraKey); +// redisTemplate.opsForList().remove("chenchen:errorlog:two",1,extraKey); +// redisTemplate.opsForHash().delete("chenchen:last_message",extraKey); +// } +// } +// extraKeys.clear(); +// } +//} diff --git a/car-base-server/src/main/resources/mapper/FenceMapper.xml b/car-base-server/src/main/resources/mapper/FenceMapper.xml deleted file mode 100644 index 958ef82..0000000 --- a/car-base-server/src/main/resources/mapper/FenceMapper.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - - - insert into( - fence_id, - fence_name, - fence_lat, - fence_status, - fence_time, - create_by) values( - #{fenceId}, - #{fenceName}, - #{fenceLat}, - #{fenceStatus}, - #{fenceTime}, - #{createBy}) - - - - update t_fence set - fence_name=#{fenceName}, - fence_lat=#{fenceLat}, - fence_status=#{fenceStatus}, - fence_time=#{fenceTime}, - create_By=#{createBy} where fence_id=#{fenceId} - - - delete from t_fence where fence_id=#{fenceId} - - - - -