添加注解
parent
2cfc4be141
commit
5fe71701dc
|
@ -43,6 +43,11 @@
|
|||
<groupId>com.god</groupId>
|
||||
<artifactId>god-common-swagger</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.bawei</groupId>
|
||||
<artifactId>bawei-common-core</artifactId>
|
||||
<version>3.6.0</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
|
|
|
@ -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 ;
|
||||
}
|
|
@ -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;
|
||||
}
|
|
@ -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;
|
||||
|
||||
|
||||
}
|
|
@ -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;
|
||||
|
||||
|
||||
}
|
|
@ -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;
|
||||
}
|
|
@ -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 <T> Page<T> buildPage() {
|
||||
Page<T> page = new Page<>(this.getPage(), this.getPageSize());
|
||||
if (StringUtils.isEmpty(this.getOrderBy())){
|
||||
page.addOrder(OrderItem.asc(this.getOrderBy()));
|
||||
}
|
||||
return page;
|
||||
}
|
||||
|
||||
}
|
|
@ -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<RequestLog> {
|
||||
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;
|
||||
}
|
||||
|
||||
}
|
|
@ -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;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -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;
|
||||
}
|
|
@ -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;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -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 ;
|
||||
}
|
|
@ -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<String,String> map=new HashMap<>();
|
||||
|
||||
private Map<String,String> sentVindMap=new HashMap<>();
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -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;
|
||||
}
|
||||
}
|
|
@ -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<List<Breakdown>> breakdownList(Breakdown breakdown){
|
||||
log.info("名称:故障日志列表,请求URI:{},请求方法:{}",request.getRequestURI(),
|
||||
request.getMethod());
|
||||
Result<List<Breakdown>> 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<Breakdown>> list = breakdownService.breakdown(breakdown);
|
||||
ExcelUtil<Breakdown> 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;
|
||||
}
|
||||
|
||||
}
|
|
@ -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<List<Fault>> faultList(Fault fault){
|
||||
log.info("功能名称:故障码列表,请求URI:{},请求方法:{}",request.getRequestURI(),
|
||||
request.getMethod());
|
||||
Result<List<Fault>> 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<Fault>> list=faultService.faultList(fault);
|
||||
ExcelUtil<Fault> 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;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -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<List<Faultcodealarm>> faultcodealarmList(Faultcodealarm faultcodealarm){
|
||||
log.info("功能名称:故障告警列表,请求URI:{},请求方法:{}",request.getRequestURI(),
|
||||
request.getMethod());
|
||||
Result<List<Faultcodealarm>> result=faultcodealarmService.faultcodealarmList(faultcodealarm);
|
||||
log.info("功能名称:故障告警列表,请求URI:{},请求方法:{},响应结果:{}",request.getRequestURI(),
|
||||
request.getMethod(),JSONObject.toJSONString(result));
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
|
@ -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<List<FenceResponse>> fencingList(){
|
||||
log.info("功能名称:电子围栏,请求URL:【{}】,请求方法:【{}】",request.getRequestURI(),
|
||||
request.getMethod());
|
||||
Result<List<FenceResponse>> 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;
|
||||
}
|
||||
|
||||
}
|
|
@ -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<Breakdown> {
|
||||
List<Breakdown> breakdownList(Breakdown breakdown);
|
||||
|
||||
void query(Integer id);
|
||||
|
||||
void breakdownAdd(Breakdown breakdown);
|
||||
|
||||
void breakdownUpdate(Breakdown breakdown);
|
||||
|
||||
void breakdownDelete(Integer id);
|
||||
}
|
|
@ -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<Fault> {
|
||||
|
||||
|
||||
List<Fault> faultList(Fault fault);
|
||||
|
||||
void add(Fault fault);
|
||||
|
||||
void faultUpdate(Fault fault);
|
||||
|
||||
void faultDelete(Integer faultId);
|
||||
}
|
|
@ -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<Faultcodealarm> {
|
||||
|
||||
|
||||
List<Faultcodealarm> faultcodealarmList(Faultcodealarm faultcodealarm);
|
||||
}
|
|
@ -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<FenceResponse> fencingList();
|
||||
|
||||
void addfencing(Fence fence);
|
||||
|
||||
int deleteFencingById(Integer fencingId);
|
||||
|
||||
int updateFencing(Fence fence);
|
||||
}
|
|
@ -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<RequestLog> {
|
||||
//
|
||||
//}
|
|
@ -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<Breakdown> {
|
||||
|
||||
|
||||
Result<List<Breakdown>> breakdown(Breakdown breakdown);
|
||||
|
||||
|
||||
void query(Integer id);
|
||||
|
||||
void breakdownAdd(Breakdown breakdown);
|
||||
|
||||
void breakdownUpdate(Breakdown breakdown);
|
||||
|
||||
void breakdownDelete(Integer id);
|
||||
}
|
|
@ -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<Fault> {
|
||||
|
||||
|
||||
Result<List<Fault>> faultList(Fault fault);
|
||||
|
||||
void add(Fault fault);
|
||||
|
||||
|
||||
|
||||
void faultUpdate(Fault fault);
|
||||
|
||||
|
||||
|
||||
void faultDelete(Integer faultId);
|
||||
}
|
|
@ -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<List<Faultcodealarm>> faultcodealarmList(Faultcodealarm faultcodealarm);
|
||||
}
|
|
@ -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<List<FenceResponse>> fencingList();
|
||||
|
||||
void addfencing(Fence fence);
|
||||
|
||||
Result deleteFencingById(Integer fencingId);
|
||||
|
||||
Result updateFencing(Fence fence);
|
||||
}
|
|
@ -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<RequestLog> {
|
||||
// /**
|
||||
// * 异步保存
|
||||
// * @param entity
|
||||
// */
|
||||
// void asyncSave(RequestLog entity);
|
||||
//}
|
|
@ -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<BreakdownMapper, Breakdown> implements BreakdownService {
|
||||
@Autowired
|
||||
private BreakdownMapper breakdownMapper;
|
||||
|
||||
/**
|
||||
* 故障日志列表
|
||||
* @param breakdown
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Result<List<Breakdown>> breakdown(Breakdown breakdown) {
|
||||
List<Breakdown> 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);
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -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<FaultMapper, Fault> implements FaultService {
|
||||
@Autowired
|
||||
private FaultMapper faultMapper;
|
||||
|
||||
|
||||
@Override
|
||||
public Result<List<Fault>> faultList(Fault fault) {
|
||||
List<Fault> 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);
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -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<FaultcodealarmMapper, Faultcodealarm> implements FaultcodealarmService {
|
||||
|
||||
@Autowired
|
||||
private FaultcodealarmMapper faultcodealarmMapper;
|
||||
@Override
|
||||
public Result<List<Faultcodealarm>> faultcodealarmList(Faultcodealarm faultcodealarm) {
|
||||
List<Faultcodealarm> list=faultcodealarmMapper.faultcodealarmList(faultcodealarm);
|
||||
return Result.success(list);
|
||||
}
|
||||
}
|
|
@ -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<List<FenceResponse>> fencingList() {
|
||||
List<FenceResponse> 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("拦截失败");
|
||||
}
|
||||
}
|
|
@ -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<RequestLogMapper, RequestLog> implements RequestLogService {
|
||||
// @Async
|
||||
// @Override
|
||||
// public void asyncSave(RequestLog entity) {
|
||||
// super.save(entity);
|
||||
// }
|
||||
//}
|
|
@ -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);
|
||||
// }
|
||||
//}
|
|
@ -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<String,String> redisTemplate;
|
||||
// private final RabbitTemplate rabbitTemplate;
|
||||
// private Map<String, String> StringLastMsg;
|
||||
//
|
||||
// public BreakdownMessage(RedisTemplate<String, String> redisTemplate, RabbitTemplate rabbitTemplate) {
|
||||
// this.redisTemplate = redisTemplate;
|
||||
// this.rabbitTemplate= rabbitTemplate;
|
||||
// }
|
||||
//
|
||||
// public void falueSms(Map<String,String> messageModel,String vind){
|
||||
// String key="chenchen"+vind;
|
||||
// List<String> 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<String,String> messageModel){
|
||||
// // 获取redis中存储的Map数据
|
||||
// Map<Object, Object> lastMsg = redisTemplate.opsForHash().entries("chenchen:last_message");
|
||||
// Map<String, String> stringLastMsg = new HashMap<>(lastMsg.size());
|
||||
// for (Map.Entry<Object,Object> entry:lastMsg.entrySet()){
|
||||
// if (entry.getKey()!=null && entry.getValue()!=null){
|
||||
// stringLastMsg.put(entry.getKey().toString(),entry.getValue().toString());
|
||||
// }
|
||||
// }
|
||||
// List<String> chenchenError=redisTemplate.opsForList().range("chenchen:errorlog:one",0,1);
|
||||
// List<String> chenchenError2=redisTemplate.opsForList().range("chenchen:errorlog:two",0,-1);
|
||||
// Set<Object> extraKeys = new HashSet<>();
|
||||
// // 如果数据没有变化(包括空数据),则不需要处理,直接返回
|
||||
//
|
||||
// if(StringLastMsg.equals(messageModel)){
|
||||
// return;
|
||||
// }
|
||||
// // 发送新增的key-value
|
||||
// for (Map.Entry<String, String> 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();
|
||||
// }
|
||||
//}
|
|
@ -1,36 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.god.base.server.mapper.FenceMapper">
|
||||
<insert id="addfencing">
|
||||
insert into(
|
||||
fence_id,
|
||||
fence_name,
|
||||
fence_lat,
|
||||
fence_status,
|
||||
fence_time,
|
||||
create_by) values(
|
||||
#{fenceId},
|
||||
#{fenceName},
|
||||
#{fenceLat},
|
||||
#{fenceStatus},
|
||||
#{fenceTime},
|
||||
#{createBy})
|
||||
</insert>
|
||||
|
||||
<update id="updateFencing">
|
||||
update t_fence set
|
||||
fence_name=#{fenceName},
|
||||
fence_lat=#{fenceLat},
|
||||
fence_status=#{fenceStatus},
|
||||
fence_time=#{fenceTime},
|
||||
create_By=#{createBy} where fence_id=#{fenceId}
|
||||
</update>
|
||||
<delete id="deleteFencingById">
|
||||
delete from t_fence where fence_id=#{fenceId}
|
||||
</delete>
|
||||
|
||||
|
||||
<select id="fencingList" resultType="com.god.base.common.response.FenceResponse">
|
||||
select * from t_fence
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in New Issue