| | |
| | | package com.xiaopeng.api.model.operation; |
| | | |
| | | import java.io.IOException; |
| | | import java.math.BigDecimal; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | |
| | | import java.io.Serializable; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.fasterxml.jackson.core.JsonGenerator; |
| | | import com.fasterxml.jackson.core.JsonParser; |
| | | import com.fasterxml.jackson.databind.DeserializationContext; |
| | | import com.fasterxml.jackson.databind.JsonDeserializer; |
| | | import com.fasterxml.jackson.databind.JsonSerializer; |
| | | import com.fasterxml.jackson.databind.SerializerProvider; |
| | | import com.fasterxml.jackson.databind.annotation.JsonDeserialize; |
| | | import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
| | | import com.xiaopeng.common.core.web.domain.BaseModel; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | import org.apache.commons.lang3.StringEscapeUtils; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | private BigDecimal amount; |
| | | |
| | | @ApiModelProperty(value = "描述") |
| | | @JsonSerialize(using = HtmlContentSerializer.class) |
| | | @JsonDeserialize(using = HtmlContentDeserializer.class) |
| | | private String couponDescription; |
| | | |
| | | |
| | | @Component |
| | | public class HtmlContentSerializer extends JsonSerializer<String> { |
| | | @Override |
| | | public void serialize(String value, JsonGenerator gen, SerializerProvider serializers) throws IOException { |
| | | // 序列化时进行转义 |
| | | String escaped = StringEscapeUtils.escapeHtml4(value); |
| | | gen.writeString(escaped); |
| | | } |
| | | } |
| | | |
| | | @Component |
| | | public class HtmlContentDeserializer extends JsonDeserializer<String> { |
| | | @Override |
| | | public String deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { |
| | | String value = p.getValueAsString(); |
| | | // 反序列化时进行反转义 |
| | | return StringEscapeUtils.unescapeHtml4(value); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |