package com.fs.qw.param;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import lombok.Data;

import java.util.ArrayList;
import java.util.HashMap;

@Data
public class QwGroupMsgParam {
    private static final long serialVersionUID = 1L;


    /** 群发任务的类型，默认为single，表示发送给客户，group表示发送给客户群 */
    @Excel(name = "群发任务的类型，默认为single，表示发送给客户，group表示发送给客户群")
    private String chatType;
    private String corpId;
    /** 是否允许成员在待发送客户列表中重新进行选择，默认为true(Y)，仅支持客户群发场景 */
    @Excel(name = "是否允许成员在待发送客户列表中重新进行选择，默认为true（1），仅支持客户群发场景")
    private Integer allowSelect;

    /** 定时发送 1定时发送 2立即发送  */
    private Integer isTimerSend;

    /** 定时发送时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String timerSend;

    /** 客户群列表 */
    @Excel(name = "客户群列表")
    private ArrayList<String> groupChatNamesList;

    private HashMap<String,ArrayList<String>> groupChatNamesMap;

    /**
     *  发送群发群标题
     */
    private String groupChatNames;
    /**
     *  企微成员id集合
     */
    private ArrayList<String> userIdsSelectList;

    /**
     *  全部客户还是部分客户
     */
    private int selectType;

    /** 按性别筛选客户 */
    private int gender;

    /** 按群聊id->筛选客户 */
    private  ArrayList<String> groupChatSelectList;

    /** 按添加时间筛选客户 */
    private ArrayList<String> timeScreenCharge;

    /** 按标签筛选客户 */
    private ArrayList<String> tagsIdsSelectList;

    /** 按排除标签筛选客户 */
    private ArrayList<String> outTagsIdsSelectList;

    /** 欢迎语类型   1文本+图片 2图文 3文本+小程序  4文本+文件 3文本+视频 */
    private Integer msgType;

    /** 消息文本内容 */
    private String textContent;

    /** 图片的链接，仅可使用上传图片接口得到的链接 */
    private String imagePicUrl;

    /** 图文消息标题，最长为128字节 */
    private String linkTitle;

    /** 图文消息封面的url */
    private String linkPicurl;

    /** 图文消息的描述，最长为512字节 */
    private String linkDesc;

    /** 图文消息的链接 */
    private String linkUrl;

    /** 小程序消息标题，最长为64字节 */
    private String miniprogramTitle;

    /** 小程序消息封面的mediaid，封面图建议尺寸为520*416 */
    private String miniprogramPicMediaId;

    /** 小程序封面地址 */
    private String miniprogramPicUrl;

    /** 小程序appid，必须是关联到企业的小程序应用 */
    private String miniprogramAppid;

    /** 小程序page路径 */
    private String miniprogramPage;

    /** 文件id，可以通过素材管理、异步上传临时素材接口获得 */
    private String fileMediaId;

    /** 视频媒体文件id，可以通过素材管理、异步上传临时素材接口获得 */
    private String videoMediaId;

    /** 文件地址 */
    private String fileUrl;

    /** 视频地址 */
    private String videoUrl;

    /** 创建人 */
    private String createName;

}
