package com.xinelu.manage.dto.patientquestionsubmitresult;

import com.xinelu.manage.domain.patientquestionsubmitresult.PatientQuestionSubmitResult;
import com.xinelu.manage.dto.patientquestionsubjectresult.PatientQuestionSubjectResultDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;

/**
 * 患者问卷提交结果信息表DTO
 *
 * @author : youxilong
 * @date : 2024/4/7 13:48
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class PatientQuestionSubmitResultDTO extends PatientQuestionSubmitResult {
    @ApiModelProperty(value = "患者手机号")
    private String patientPhone;

    @ApiModelProperty(value = "任务类型，电话外呼：PHONE_OUTBOUND，问卷量表：QUESTIONNAIRE_SCALE，人工随访：ARTIFICIAL_FOLLOW_UP")
    private String taskType;

    @ApiModelProperty(value = "任务节点类型，电话外呼：PHONE_OUTBOUND，问卷量表：QUESTIONNAIRE_SCALE")
    private String taskNodeType;

    @ApiModelProperty(value = "任务处理人id")
    private Long routeHandleId;

    @ApiModelProperty(value = "任务处理人姓名")
    private String routeHandlePerson;

    @ApiModelProperty(value = "任务处理信息")
    private String routeHandleRemark;

    @ApiModelProperty(value = "电话模板ID")
    private String phoneTemplateId;

    @ApiModelProperty(value = "电话模板名称")
    private String phoneTemplateName;

    @ApiModelProperty(value = "电话内容")
    private String phoneNodeContent;

    @ApiModelProperty(value = "电话呼叫类型")
    private String phoneDialMethod;

    @ApiModelProperty(value = "电话短信模板表code")
    private String phoneMessageTemplateCode;

    @ApiModelProperty(value = "替换标签之后的电话内容")
    private String phoneMessageTemplateContent;

    @ApiModelProperty(value = "电话是否接通：已接通：CONNECTED；未接通:NOTCONNECTED")
    private String phoneConnectStatus;

    @ApiModelProperty(value = "电话短信提醒，不发送短信：NOT_SEND_MESSAGE，未接通发短信：NOT_CONNECTED_SEND_MESSAGE，接通后发短信：CONNECTED_SEND_MESSAGE，所有人发短信：EVERYONE_SEND_MESSAGE")
    private String phoneMessageRemind;

    @ApiModelProperty(value = "电话重拨次数，重拨一次：REDIAL_ONCE，重拨二次：REDIAL_TWICE，不重播：NOT_REPLAY")
    private String phoneRedialTimes;

    @ApiModelProperty(value = "患者就诊记录基本信息表id")
    private Long visitRecordId;

    /**
     * 患者问卷题目提交结果信息
     */
    private List<PatientQuestionSubjectResultDTO> subjectResultDTOList;
}
