Browse Source

chore: support version time

master
wangxiang 2 years ago
parent
commit
0b7b093fe5
No known key found for this signature in database
GPG Key ID: 1BA7946AB6B232E4
  1. 7
      kicc-platform/kicc-platform-biz/kicc-workflow-biz/src/main/java/com/cloud/kicc/workflow/config/JacksonConfig.java
  2. 28
      kicc-platform/kicc-platform-biz/kicc-workflow-biz/src/main/java/com/cloud/kicc/workflow/override/jackson2/ModelRepresentationMixin.java

7
kicc-platform/kicc-platform-biz/kicc-workflow-biz/src/main/java/com/cloud/kicc/workflow/config/JacksonConfig.java

@ -1,11 +1,8 @@ @@ -1,11 +1,8 @@
package com.cloud.kicc.workflow.config;
import cn.hutool.core.date.DatePattern;
import com.cloud.kicc.common.core.jackson.KiccJavaTimeModule;
import com.cloud.kicc.workflow.override.jackson2.ModelRepresentationMixin;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.flowable.ui.modeler.model.ModelRepresentation;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
import org.springframework.context.annotation.Bean;
@ -32,12 +29,8 @@ public class JacksonConfig { @@ -32,12 +29,8 @@ public class JacksonConfig {
return builder -> {
builder.locale(Locale.CHINA);
builder.timeZone(TimeZone.getTimeZone(ZoneId.systemDefault()));
// 针对于Date类型,文本格式化,已经实现前端返回时间戳
builder.simpleDateFormat(DatePattern.NORM_DATETIME_PATTERN);
// 解决返回给前端的Long类型数据失去精度,将Long转换为String
builder.serializerByType(Long.class, ToStringSerializer.instance);
// 设置自定义的 Mixin 类
builder.mixIn(ModelRepresentation.class, ModelRepresentationMixin.class);
// 针对于JDK新时间类,序列化时带有T的问题,自定义格式化字符串
builder.modules(new KiccJavaTimeModule());
};

28
kicc-platform/kicc-platform-biz/kicc-workflow-biz/src/main/java/com/cloud/kicc/workflow/override/jackson2/ModelRepresentationMixin.java

@ -1,28 +0,0 @@ @@ -1,28 +0,0 @@
package com.cloud.kicc.workflow.override.jackson2;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.util.Date;
/**
*<p>
* 序列化模型版本冲突修改时间戳
*</p>
*
* @Author: wangxiang4
* @Since: 2023/9/28
*/
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.NONE,
getterVisibility = JsonAutoDetect.Visibility.PUBLIC_ONLY,
isGetterVisibility = JsonAutoDetect.Visibility.NONE)
@JsonIgnoreProperties(ignoreUnknown = true)
public abstract class ModelRepresentationMixin {
@JsonFormat(shape = JsonFormat.Shape.NUMBER)
abstract Date getLastUpdated();
}
Loading…
Cancel
Save