package org.dromara.system.domain.bo;

import org.dromara.system.domain.SysScreeningAssessmentConfig;
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.*;

import java.util.List;

/**
 * 筛查/评估配置业务对象 sys_screening_assessment_config
 *
 * @author Lion Li
 * @date 2025-07-08
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = SysScreeningAssessmentConfig.class, reverseConvertGenerate = false)
public class SysScreeningAssessmentConfigBo extends BaseEntity {

    /**
     * 主键ID
     */
    @NotNull(message = "主键ID不能为空", groups = {EditGroup.class})
    private Long configId;

    /**
     * 量表类型
     */
    @NotBlank(message = "量表类型不能为空", groups = {AddGroup.class, EditGroup.class})
    private String type;

    /**
     * 性别
     */
    private String gender;

    /**
     * 年龄
     */
    private String age;

    /**
     * 量表名称
     */
    @NotBlank(message = "量表名称不能为空", groups = {AddGroup.class, EditGroup.class})
    private String name;

    /**
     * 量表说明
     */
    private String description;

    /**
     * 备注
     */
    private String remark;

    /**
     * 状态（0正常 1停用）
     */
    private String status;

    private SysScreeningAssessmentQuestionBo baseInfo;

    private List<SysScreeningAssessmentQuestionBo> otherInfo;
}
