package cn.axzo.workflow.common.model.response.admin;

import cn.axzo.workflow.common.enums.AdminDataSource;
import cn.axzo.workflow.common.enums.AdminRoleType;
import cn.axzo.workflow.common.enums.AdminTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
public class ProcessAdminVo {

    /**
     * 管理员配置id
     */
    @ApiModelProperty("管理员配置id")
    private Long processAdminId;

    /**
     * 自然人id
     */
    @ApiModelProperty("自然人id")
    private Long personId;

    /**
     * 单位id
     */
    @ApiModelProperty("单位id")
    private Long organizationalUnitId;

    /**
     * 工作台ID
     */
    @ApiModelProperty("工作台ID")
    private Long workspaceId;

    /**
     * 工作台类型，1-企业, 2-项目, 3-政务监管平台, 6-oms工作台,参考 WorkspaceType枚举
     */
    @ApiModelProperty("工作台ID")
    private Integer workspaceType;

    /**
     * 管理员类型, super_admin-超级管理员, common_admin-普通管理员
     */
    @ApiModelProperty("管理员类型")
    private AdminTypeEnum adminType;

    /**
     * 角色类型, organization_admin-单位超管, organization_worksapce_admin-项目内单位负责人, workspace_admin-项目超管，other-其他用户
     */
    @ApiModelProperty("角色类型")
    private AdminRoleType roleType;

    /**
     * 数据来源, system-系统录入, user-用户手动录入
     */
    @ApiModelProperty("数据来源")
    private AdminDataSource dataSource;

    /**
     * 创建者
     */
    @ApiModelProperty("创建者")
    private Long createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createAt;

    /**
     * 更新者
     */
    @ApiModelProperty("更新者")
    private Long updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    private Date updateAt;
}
