package cn.axzo.msg.center.service.pending.request;

import cn.axzo.msg.center.service.dto.PeerPerson;
import com.alibaba.fastjson.JSON;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotBlank;
import java.util.HashSet;
import java.util.Set;

/**
 * @author yanglin
 */
@Setter
@Getter
public class CardUpdateRequest {

    /**
     * 调用方应用编码或场景编码, 保证这个场景下bizCode唯一
     */
    @NotBlank(message = "应用编码不能为空")
    private String appCode;

    /**
     * 模版编码
     */
    @NotBlank(message = "模版编码不能为空")
    private String templateCode;

    /**
     * 业务编码
     */
    @NotBlank(message = "业务编码不能为空")
    private String bizCode;

    /**
     * 子业务编码
     */
    private String subBizCode;

    /**
     * 接收人, 可选. 不传则更新所有人的卡片
     */
    private Set<PeerPerson> receivers = new HashSet<>();

    @Override
    public String toString() {
        return JSON.toJSONString(this);
    }
}