Browse Source

fix:bug

feature-1.1
Penny 3 years ago
parent
commit
daf16667f4
  1. 36
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/config/JsonConfig.java
  2. 24
      bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/serializer/LongToStringSerializer.java
  3. 4
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/UserVipController.java
  4. 1
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/AiPaintMapper.java
  5. 2
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/UserVipMapper.java
  6. 3
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/UserVipService.java
  7. 5
      bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java
  8. 3
      bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml

36
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/config/JsonConfig.java

@ -0,0 +1,36 @@
package com.bnyer.common.core.config;
import com.bnyer.common.core.serializer.LongToStringSerializer;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
/**
* 解决雪花Id长度超过16位前端传入精度丢失的问题
*/
@Configuration
public class JsonConfig {
@Bean
@Primary
@ConditionalOnMissingBean(ObjectMapper.class)
public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder)
{
ObjectMapper objectMapper = builder.createXmlMapper(false).build();
// 全局配置序列化返回 JSON 处理
SimpleModule simpleModule = new SimpleModule();
//JSON Long ==> String
//自定义字符串转化规则ToStringSerializer换成自定义的LongToStringSerializer
simpleModule.addSerializer(Long.class, LongToStringSerializer.instance);
simpleModule.addSerializer(Long.TYPE, LongToStringSerializer.instance);
objectMapper.registerModule(simpleModule);
//参数在bean中没有的情况处理
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
return objectMapper;
}
}

24
bnyer-common/bnyer-common-core/src/main/java/com/bnyer/common/core/serializer/LongToStringSerializer.java

@ -0,0 +1,24 @@
package com.bnyer.common.core.serializer;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import java.io.IOException;
public class LongToStringSerializer extends JsonSerializer<Long> {
public static final LongToStringSerializer instance = new LongToStringSerializer();
@Override
public void serialize(Long id, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
if(id != null){
//长度小于某个值的,还是保持long类型
if(id < 10000000000000000L){
jsonGenerator.writeNumber(id);
}else {
//长度超过某个值的,转化为字符串
jsonGenerator.writeString(id.toString());
}
}
}
}

4
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/UserVipController.java

@ -28,8 +28,8 @@ public class UserVipController {
@Operation(summary="获取会员列表",description = "获取会员列表")
@PostMapping(value = "/queryUserVipList")
public R<List<UserVipVo>> queryUserVipList(@RequestBody UserVipQuery query){
return R.ok(userVipService.queryUserVipList(query));
public R<List<UserVipVo>> queryUserVipList(){
return R.ok(userVipService.queryUserVipList());
}
@Operation(summary="获取会员信息",description = "获取会员信息")

1
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/AiPaintMapper.java

@ -2,7 +2,6 @@ package com.bnyer.img.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bnyer.common.core.domain.AiPaint;
import com.bnyer.common.core.dto.AiPaintPageDto;
import com.bnyer.img.vo.AiPaintVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

2
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/mapper/UserVipMapper.java

@ -15,6 +15,6 @@ public interface UserVipMapper extends BaseMapper<UserVip> {
* 获取小程序端会员vip列表
* @return -
*/
List<UserVipVo> queryVipList(UserVipQuery query);
List<UserVipVo> queryVipList();
}

3
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/UserVipService.java

@ -11,10 +11,9 @@ public interface UserVipService extends IService<UserVip> {
/**
* 获取用户会员列表
* @param query
* @return
*/
List<UserVipVo> queryUserVipList(UserVipQuery query);
List<UserVipVo> queryUserVipList();
/**
* 获取会员详细信息

5
bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/UserVipServiceImpl.java

@ -31,12 +31,11 @@ public class UserVipServiceImpl extends ServiceImpl<UserVipMapper, UserVip> impl
/**
* 获取用户会员列表
* @param query
* @return
*/
@Override
public List<UserVipVo> queryUserVipList(UserVipQuery query) {
return userVipMapper.queryVipList(query);
public List<UserVipVo> queryUserVipList() {
return userVipMapper.queryVipList();
}
/**

3
bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/UserVipMapper.xml

@ -46,9 +46,6 @@
from img_user_vip v left join
img_vip_type vt on vt.id = v.vip_type_id
where v.is_show = '1'
<if test="id!=null">
and v.id=#{id}
</if>
order by sort asc
</select>
</mapper>
Loading…
Cancel
Save