package org.dromara.system.domain.vo;

import org.dromara.system.domain.SysScreeningAssessmentConfig;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.system.domain.bo.SysScreeningAssessmentQuestionBo;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
import java.util.List;


/**
 * 筛查/评估配置视图对象 sys_screening_assessment_config
 *
 * @author Lion Li
 * @date 2025-07-08
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = SysScreeningAssessmentConfig.class)
public class SysScreeningAssessmentConfigVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @ExcelProperty(value = "主键ID")
    private Long configId;

    /**
     * 量表类型
     */
    @ExcelProperty(value = "量表类型")
    private String type;

    private String typeName;

    /**
     * 性别
     */
    @ExcelProperty(value = "性别")
    private String gender;

    /**
     * 年龄
     */
    @ExcelProperty(value = "年龄")
    private String age;

    /**
     * 量表名称
     */
    @ExcelProperty(value = "量表名称")
    private String name;

    /**
     * 量表说明
     */
    @ExcelProperty(value = "量表说明")
    private String description;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     * 状态（0正常 1停用）
     */
    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "0=正常,1=停用")
    private String status;

    private Long createBy;

    private String createByName;

    private SysScreeningAssessmentQuestionVo baseInfo;

    private List<SysScreeningAssessmentQuestionVo> otherInfo;
}
