package com.xinelu.manage.vo.patientquestionsubmitresult;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDate;

/**
 * 满意度调查
 *
 * @author xinelu
 * @date 2024-04-15
 */
@Data
public class SatisfactionSurveyVO {

    private Long patientQuestionSubmitResultId;

    /**
     * 患者姓名
     */
    @ApiModelProperty(value = "患者姓名")
    private String patientName;

    /**
     * 患者电话
     */
    @ApiModelProperty(value = "患者电话")
    private String patientPhone;

    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    private String cardNo;

    /**
     * 出生日期，格式：yyyy-MM-dd
     */
    @ApiModelProperty(value = "出生日期，格式：yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate birthDate;

    /**
     * 性别，男：MALE，女：FEMALE
     */
    @ApiModelProperty(value = "性别，男：MALE，女：FEMALE")
    private String sex;

    /**
     * 问卷类型，普通问卷：REGULAR_QUESTIONNAIRE,满意度问卷：SATISFACTION_QUESTIONNAIRE
     */
    @ApiModelProperty(value = "问卷类型")
    private String questionType;

    /**
     * 患者类型，预住院患者：PRE_HOSPITALIZED_PATIENT，在院患者：IN_HOSPITAL_PATIENT，门诊患者：OUTPATIENT，出院患者：DISCHARGED_PATIENT，
     * 签约患者：CONTRACTED_PATIENT
     */
    @ApiModelProperty(value = "患者类型，预住院患者：PRE_HOSPITALIZED_PATIENT，在院患者：IN_HOSPITAL_PATIENT，门诊患者：OUTPATIENT，出院患者：DISCHARGED_PATIENT，签约患者：CONTRACTED_PATIENT")
    private String patientType;

    /**
     * 签约状态，未签约：UN_SIGN,在签：IN_SIGN,解约：SEPARATE_SIGN, 服务到期：EXPIRE_SIGN
     */
    @ApiModelProperty(value = "签约状态，未签约：UN_SIGN,在签：IN_SIGN,解约：SEPARATE_SIGN, 过期：EXPIRE_SIGN")
    private String signStatus;

    /**
     * 服务状态，意向签约：INTENTIONAL_SIGNING，服务中：SERVICE_CENTER，服务结束：SERVICE_END
     */
    @ApiModelProperty(value = "服务状态，意向签约：INTENTIONAL_SIGNING，服务中：SERVICE_CENTER，服务结束：SERVICE_END")
    private String serviceStatus;

    /**
     * 就诊方式，门诊：OUTPATIENT_SERVICE，住院：BE_IN_HOSPITAL
     */
    @ApiModelProperty(value = "就诊方式，门诊：OUTPATIENT_SERVICE，住院：BE_IN_HOSPITAL")
    private String visitMethod;

    /**
     * 所属医院名称
     */
    @ApiModelProperty(value = "所属医院名称")
    private String hospitalAgencyName;

    /**
     * 所属科室名称
     */
    @ApiModelProperty(value = "所属科室名称")
    private String departmentName;

    @ApiModelProperty(value = "年龄")
    private Integer age;
}
