TemplateMessageParam.java 1.28 KB
package cn.fw.hestia.sdk.params;

import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Map;

/**
 * 模板消息param
 *
 * 模板消息样例:
 *
 * {{first.DATA}}
 * 变更类型:{{keyword1.DATA}}
 * 变更结果:{{keyword2.DATA}}
 * {{remark.DATA}}
 *
 * @author kurisu
 */
@Data
@ToString
public class TemplateMessageParam {
    /**
     * 会员id
     */
    @NotNull(message = "会员id不能为空")
    private Long memberId;
    /**
     * 标题 小程序展示用
     * maxLength 32
     */
    @NotBlank(message = "标题不能为空")
    @Size(max = 32, message = "标题太长")
    private String title;
    /**
     * 消息内容 对应「first」字段
     */
    @NotBlank(message = "消息内容不能为空")
    private String content;
    /**
     * 额外展示内容
     */
    @Size(max = 5, message = "最多展示5条额外信息")
    private Map<String, String> extraMap;
    /**
     * 备注
     */
    private String remark;
    /**
     * 如需跳转小程序,则是小程序页面路径
     */
    private String path;
    /**
     * 跳转小程序所携带的参数
     */
    private Map<String, String> paramMap;
}