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

import cn.axzo.msg.center.service.enums.AppTerminalTypeEnum;
import cn.axzo.msg.center.service.enums.IdentityTypeEnum;
import com.alibaba.fastjson.JSON;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Collection;
import java.util.List;

/**
 * @author cold_blade
 * @version 1.0
 * @description
 * @date 2023/9/23
 */
@Setter
@Getter
public class PendingMessageStatisticRequest implements Serializable {

    private static final long serialVersionUID = 9160942889637654608L;

    /**
     * 当前登录账户的自然id(前端不care)
     */
    @NotNull(message = "personId is required")
    private Long personId;
    /**
     * 单位id
     */
    private Long ouId;
    /**
     * 当前登录账户的身份id(前端不care)
     */
    private Long identityId;
    /**
     * 当前登录账户的身份类型(前端不care)
     */
    private IdentityTypeEnum identityType;
    /**
     * 消息的分类结点编码集合
     */
    private Collection<String> groupNodeCodes;
    /**
     * 应用终端类型
     */
    private AppTerminalTypeEnum terminalType;

    /**
     * 项目部id列表
     */
    private List<Long> workspaceIds;

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