package com.crunii.micro.domain.dto.message;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;

/**
 * @Author: zwx
 * @CreateTime: 2023-10-27  10:32:53
 * @Description: 消息发送任务请求参数
 */
@Data
public class SendMessageTaskReqDTO {
    /**
     * 发送范围(1全用户、2角色、3组织【全用户可以用 user、role 、org、单独的用户id等】、4单独用户)
     */
    @NotEmpty(message = "发送范围必传")
    @ApiModelProperty(value = "发送范围(1全用户、2角色、3组织、4单独用户)")
    private Integer scopeType;
    /**
     * 范围数据(逗号拼接ID)
     */
    @ApiModelProperty(value = "范围数据(英文逗号拼接ID)")
    private String scopeData;
    /**
     * 发送方式( 1短信 、2站内、3全部)
     */
    @ApiModelProperty(value = "发送方式( 1短信 、2站内)【多个以英文逗号分割】")
    private String sendWay;
    /**
     * 推送终端 1PC 2APP 3管理台 4公众号
     */
    @ApiModelProperty(value = "推送终端 1PC 2APP 3管理台 4公众号【多个以英文逗号分割】")
    private String messageType;
    /**
     * 消息发送内容
     */
    @ApiModelProperty(value = "消息发送内容")
    private String messageContent;
    /**
     * 消息来源
     */
    @ApiModelProperty(value = "消息来源")
    private String dataSource;
    /**
     * 消息分类
     */
    @ApiModelProperty(value = "消息分类")
    private String messageClassify;

    /**
     * 模板ID
     */
    @ApiModelProperty(value = "模板ID")
    private Long templateId;

    /**
     * 发送人id
     */
    @ApiModelProperty(value = "发送人id")
    private Long sendLoginId;

    /**
     * 用于推送跳转
     */
    @ApiModelProperty(value = "路由+对应参数")
    private String pathAndJson;

    @ApiModelProperty(value = "json填充数据")
    private String fillData;


    @ApiModelProperty(value = "拓展参数")
    private String expandParam;


}
