package com.storlead.message.pojo.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 站内消息发送参数（ApiPost 可用 x-www-form-urlencoded 或 query 传参）
 */
@Data
@Accessors(chain = true)
@ApiModel(value = "站内消息发送", description = "发送站内消息测试/业务参数")
public class MessageSendDTO {

    @ApiModelProperty(value = "消息标题", required = true, example = "测试消息标题")
    private String title;

    @ApiModelProperty(value = "消息内容", example = "这是一条 ApiPost 测试消息")
    private String content;

    @ApiModelProperty(value = "接收人用户 ID（单用户时可只传此字段）", example = "1")
    private Long receiverUserId;

    @ApiModelProperty(value = "接收人用户 ID 列表（多用户：toUserIds=1&toUserIds=2）")
    private Long[] toUserIds;

    @ApiModelProperty(value = "应用 ID，对应 inside_message_record.app_id", example = "10")
    private Long appId;

    @ApiModelProperty(value = "消息类型，对应 inside_message_record.message_type", example = "30")
    private Integer messageType;

    @ApiModelProperty(value = "发送人用户 ID，不传则取当前登录用户")
    private Long sendUserId;

    @ApiModelProperty(value = "回调地址")
    private String callbackUrl;

    @ApiModelProperty(value = "消息图标")
    private String messageIcon;

    @ApiModelProperty(value = "消息标签")
    private String messageTag;
}
