package com.house365.beans.dto;

import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * <p>Title: </p>
 * <p>Description: </p>
 * <p>Date: 2017/3/24</p>
 *
 * @author XN
 * @version 1.0
 */
public class MessageDTO implements Serializable {
    private static final long serialVersionUID = -3215588967654592225L;

    //公共属性
    //成员ID列表（消息接收者，多个接收者用‘|’分隔，最多支持1000个）。特殊情况：指定为@all，则向关注该企业应用的全部成员发送
    String touser;
    //部门ID列表，多个接收者用‘|’分隔，最多支持100个。当touser为@all时忽略本参数
    String toparty;
    //标签ID列表，多个接收者用‘|’分隔，最多支持100个。当touser为@all时忽略本参数
    String totag;
    //消息类型
    @NotNull
    String msgtype;
    //企业应用的id，整型。可在应用的设置页面查看
    String agentid;
    //图文消息，一个图文消息支持1到8条图文
    String articles;
    //视频媒体文件id，可以调用上传临时素材接口获取
    String media_id;
    //消息内容，最长不超过2048个字节，注意：主页型应用推送的文本消息在微信端最多只显示20个字（包含中英文）
    String title;
    //描述，不超过512个字节，超过会自动截断
    String description;
    //点击后跳转的链接。
    String url;
    //图文消息的图片链接，支持JPG、PNG格式，较好的效果为大图640320，小图8080。
    String picurl;
    //按钮文字。 默认为“详情”， 不超过4个文字，超过自动截断。
    String btntxt;
    //消息内容，最长不超过2048个字节，注意：主页型应用推送的文本消息在微信端最多只显示20个字（包含中英文）
    String content;
    //表示是否是保密消息，0表示否，1表示是，默认0
    String safe;

    public String getTouser() {
        return touser;
    }

    public void setTouser(String touser) {
        this.touser = touser;
    }

    public String getToparty() {
        return toparty;
    }

    public void setToparty(String toparty) {
        this.toparty = toparty;
    }

    public String getTotag() {
        return totag;
    }

    public void setTotag(String totag) {
        this.totag = totag;
    }

    public String getMsgtype() {
        return msgtype;
    }

    public void setMsgtype(String msgtype) {
        this.msgtype = msgtype;
    }

    public String getAgentid() {
        return agentid;
    }

    public void setAgentid(String agentid) {
        this.agentid = agentid;
    }

    public String getMedia_id() {
        return media_id;
    }

    public void setMedia_id(String media_id) {
        this.media_id = media_id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getBtntxt() {
        return btntxt;
    }

    public void setBtntxt(String btntxt) {
        this.btntxt = btntxt;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getSafe() {
        return safe;
    }

    public void setSafe(String safe) {
        this.safe = safe;
    }

    public String getArticles() {
        return articles;
    }

    public void setArticles(String articles) {
        this.articles = articles;
    }

    public String getPicurl() {
        return picurl;
    }

    public void setPicurl(String picurl) {
        this.picurl = picurl;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("MessageDTO{");
        sb.append("touser='").append(touser).append('\'');
        sb.append(", toparty='").append(toparty).append('\'');
        sb.append(", totag='").append(totag).append('\'');
        sb.append(", msgtype='").append(msgtype).append('\'');
        sb.append(", agentid='").append(agentid).append('\'');
        sb.append(", articles='").append(articles).append('\'');
        sb.append(", media_id='").append(media_id).append('\'');
        sb.append(", title='").append(title).append('\'');
        sb.append(", description='").append(description).append('\'');
        sb.append(", url='").append(url).append('\'');
        sb.append(", picurl='").append(picurl).append('\'');
        sb.append(", btntxt='").append(btntxt).append('\'');
        sb.append(", content='").append(content).append('\'');
        sb.append(", safe='").append(safe).append('\'');
        sb.append('}');
        return sb.toString();
    }
}
