package org.dromara.business.domain.bo;

import org.dromara.business.domain.CaseImportUser;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;

/**
 * 用户导入记录业务对象 case_import_user
 *
 * @author wuzhigang
 * @date 2023-11-23
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = CaseImportUser.class, reverseConvertGenerate = false)
public class CaseImportUserBo extends BaseEntity {

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 用户账号
     */
    private String userName;

    /**
     * 用户昵称
     */
    @NotBlank(message = "用户昵称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String nickName;

    /**
     * 手机号码
     */
    @NotBlank(message = "手机号码不能为空", groups = { AddGroup.class, EditGroup.class })
    private String phonenumber;

    /**
     * 单位名称
     */
    private String organizationName;

    /**
     * 职称 0主任医师 1副主任医师 2主治医师 3住院医师
     */
    private String title;

    /**
     * 导入批次
     */
    @NotBlank(message = "导入批次不能为空", groups = { AddGroup.class, EditGroup.class })
    private String importBatch;

    /**
     * 用户状态（0新增 1已存在）
     */
    private String userStatus;

    /**
     * 角色ID
     */
    private Long roleId;

    /**
     * 导入状态（0未导入 1已导入）
     */
    private String importStatus;

    /**
     * 用户编码
     */
    private String userCode;

    /**
     * 身份 0医生 1志愿者 2专家
     */
    private String loginIdentity;

    /**
     * 解析次数
     */
    private Integer caseAnalysisTimes;
}
