说明:
1、增加mp通用枚举解决字典类型值自动映射 2、配置文件新增fastjson配置 3、前端apilog页面细节修改
This commit is contained in:
parent
5782b7b226
commit
17a702cdf2
|
|
@ -47,8 +47,8 @@
|
||||||
<el-table-column label="接口名称" align="center" prop="apiName" :show-overflow-tooltip="true"/>
|
<el-table-column label="接口名称" align="center" prop="apiName" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="URL" align="center" prop="url" :show-overflow-tooltip="true"/>
|
<el-table-column label="URL" align="center" prop="url" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="请求方法" align="center" prop="method" :show-overflow-tooltip="true"/>
|
<el-table-column label="请求方法" align="center" prop="method" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="请求体" align="center" prop="request" :show-overflow-tooltip="true"/>
|
<el-table-column label="请求参数" align="center" prop="request" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="响应体" align="center" prop="response" :show-overflow-tooltip="true"/>
|
<el-table-column label="响应参数" align="center" prop="response" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="是否请求成功" align="center" prop="isSuccess" :show-overflow-tooltip="true"/>
|
<el-table-column label="是否请求成功" align="center" prop="isSuccess" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package com.xjs.log.aop;
|
||||||
|
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import com.xjs.log.consts.ReqConst;
|
import com.xjs.log.consts.ReqConst;
|
||||||
|
import com.xjs.log.enums.StatusEnum;
|
||||||
import com.xjs.log.mapper.ApiLogMapper;
|
import com.xjs.log.mapper.ApiLogMapper;
|
||||||
import lombok.extern.log4j.Log4j2;
|
import lombok.extern.log4j.Log4j2;
|
||||||
import org.aspectj.lang.JoinPoint;
|
import org.aspectj.lang.JoinPoint;
|
||||||
|
|
@ -84,9 +85,9 @@ public class ApiLogAspect {
|
||||||
entity.setRequest(builder.toString());
|
entity.setRequest(builder.toString());
|
||||||
entity.setResponse(Optional.ofNullable(jsonResult).toString());
|
entity.setResponse(Optional.ofNullable(jsonResult).toString());
|
||||||
if (e != null) {
|
if (e != null) {
|
||||||
entity.setIsSuccess(ReqConst.ERROR);
|
entity.setIsSuccess(StatusEnum.ERROR);
|
||||||
}else {
|
}else {
|
||||||
entity.setIsSuccess(ReqConst.SUCCESS);
|
entity.setIsSuccess(StatusEnum.SUCCESS);
|
||||||
}
|
}
|
||||||
apiLogMapper.insert(entity);
|
apiLogMapper.insert(entity);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,10 +6,12 @@ import com.alibaba.fastjson.support.config.FastJsonConfig;
|
||||||
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
|
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
import com.fasterxml.jackson.databind.SerializationFeature;
|
||||||
import com.fasterxml.jackson.databind.module.SimpleModule;
|
import com.fasterxml.jackson.databind.module.SimpleModule;
|
||||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||||
import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
|
import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
|
||||||
|
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.context.annotation.Primary;
|
import org.springframework.context.annotation.Primary;
|
||||||
|
|
@ -39,6 +41,7 @@ public class JsonConfig {
|
||||||
list.add(SerializerFeature.WriteDateUseDateFormat);
|
list.add(SerializerFeature.WriteDateUseDateFormat);
|
||||||
list.add(SerializerFeature.DisableCircularReferenceDetect);
|
list.add(SerializerFeature.DisableCircularReferenceDetect);
|
||||||
list.add(SerializerFeature.WriteBigDecimalAsPlain);
|
list.add(SerializerFeature.WriteBigDecimalAsPlain);
|
||||||
|
list.add(SerializerFeature.WriteEnumUsingToString);
|
||||||
fastJsonConfig.setSerializerFeatures(list.toArray(new SerializerFeature[list.size()]));
|
fastJsonConfig.setSerializerFeatures(list.toArray(new SerializerFeature[list.size()]));
|
||||||
fastConverter.setFastJsonConfig(fastJsonConfig);
|
fastConverter.setFastJsonConfig(fastJsonConfig);
|
||||||
HttpMessageConverter<?> converter = fastConverter;
|
HttpMessageConverter<?> converter = fastConverter;
|
||||||
|
|
@ -54,4 +57,10 @@ public class JsonConfig {
|
||||||
});
|
});
|
||||||
return new HttpMessageConverters(converter);
|
return new HttpMessageConverters(converter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public Jackson2ObjectMapperBuilderCustomizer customizer(){
|
||||||
|
return builder -> builder.featuresToEnable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,13 @@
|
||||||
package com.xjs.log.domain;
|
package com.xjs.log.domain;
|
||||||
|
|
||||||
|
import com.alibaba.fastjson.annotation.JSONField;
|
||||||
|
import com.alibaba.fastjson.serializer.SerializerFeature;
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||||
|
import com.xjs.log.enums.StatusEnum;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||||
|
|
@ -51,5 +54,5 @@ public class ApiLog implements Serializable
|
||||||
|
|
||||||
/** 是否请求成功 */
|
/** 是否请求成功 */
|
||||||
@Excel(name = "是否请求成功")
|
@Excel(name = "是否请求成功")
|
||||||
private Integer isSuccess;
|
private StatusEnum isSuccess;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
package com.xjs.log.enums;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.EnumValue;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonValue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author xiejs
|
||||||
|
* @desc 状态类型枚举 需要返回什么参数就在toString实现 这个枚举需要mp在配置文件中配置扫描路径
|
||||||
|
* @create 2021-12-27
|
||||||
|
*/
|
||||||
|
public enum StatusEnum {
|
||||||
|
|
||||||
|
SUCCESS(1,"成功"),
|
||||||
|
ERROR(2,"失败");
|
||||||
|
|
||||||
|
|
||||||
|
private String desc;
|
||||||
|
|
||||||
|
@EnumValue//标记数据库存的值是value
|
||||||
|
@JsonValue
|
||||||
|
private final int value;
|
||||||
|
|
||||||
|
StatusEnum(int value, String desc) {
|
||||||
|
this.value = value;
|
||||||
|
this.desc = desc;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return desc;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue