package com.fs.his.domain;

import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import com.vdurmont.emoji.EmojiParser;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 问诊报告对象 fs_inquiry_order_report
 *
 * @author fs
 * @date 2023-09-04
 */
public class FsInquiryOrderReport extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long reportId;

    /** 订单号 */
    @Excel(name = "订单号")
    private Long orderId;

    /** 会员ID */
    @Excel(name = "会员ID")
    private Long userId;

    /** 患者ID */
    @Excel(name = "患者ID")
    private Long patientId;

    /** 患者JSON */
    @Excel(name = "患者JSON")
    private String patientJson;


    /** 医生ID */
    @Excel(name = "医生ID")
    private Long doctorId;

    /** 报告ID */
    @Excel(name = "报告ID")
    private String reportSn;

    @Excel(name = "疾病类型")
    private String diseaseType;

    /** 诊断结果 */
    @Excel(name = "诊断结果")
    private String inquiryResult;

    /** 表单JSON数据 */
    @Excel(name = "表单JSON数据")
    private String formJson;

    /** 调理方案 */
    @Excel(name = "调理方案")
    private String conditioningPlanJson;

    /** 状态 0待处理 1已处理 */
    @Excel(name = "状态 0待处理 1已处理")
    private Integer status;

    private Long auditUserId;
    private String doctorSignUrl;

    private Long drugId;
    private String drugDoctorSignUrl;

    private Long triageUserId;

    public Long getTriageUserId() {
        return triageUserId;
    }

    public void setTriageUserId(Long triageUserId) {
        this.triageUserId = triageUserId;
    }

    public Long getDrugId() {
        return drugId;
    }

    public void setDrugId(Long drugId) {
        this.drugId = drugId;
    }

    public String getDrugDoctorSignUrl() {
        return drugDoctorSignUrl;
    }

    public void setDrugDoctorSignUrl(String drugDoctorSignUrl) {
        this.drugDoctorSignUrl = drugDoctorSignUrl;
    }

    public String getDiseaseType() {
        return diseaseType;
    }

    public void setDiseaseType(String diseaseType) {
        this.diseaseType = diseaseType;
    }

    public String getDoctorSignUrl() {
        return doctorSignUrl;
    }

    public void setDoctorSignUrl(String doctorSignUrl) {
        this.doctorSignUrl = doctorSignUrl;
    }


    public Long getAuditUserId() {
        return auditUserId;
    }

    public void setAuditUserId(Long auditUserId) {
        this.auditUserId = auditUserId;
    }



    public void setReportId(Long reportId)
    {
        this.reportId = reportId;
    }

    public Long getReportId()
    {
        return reportId;
    }
    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setPatientId(Long patientId)
    {
        this.patientId = patientId;
    }
    public String getReportSn() {
        return reportSn;
    }

    public void setInquiryResult(String inquiryResult) {
        this.inquiryResult = inquiryResult;
    }
    public Long getPatientId()
    {
        return patientId;
    }
    public void setPatientJson(String patientJson)
    {
        if(StringUtils.isNotEmpty(patientJson)){
            this.patientJson= EmojiParser.parseToHtmlDecimal(patientJson);
        }
        else{
            this.patientJson= patientJson;
        }

    }

    public String getPatientJson()
    {
        if(StringUtils.isNotEmpty(patientJson)){
            return EmojiParser.parseToUnicode(patientJson);
        }
        else{
            return patientJson;
        }
    }
    public void setDoctorId(Long doctorId)
    {
        this.doctorId = doctorId;
    }

    public Long getDoctorId()
    {
        return doctorId;
    }
    public void setReportSn(String reportSn)
    {
        this.reportSn = reportSn;
    }

    public String getInquiryResult()
    {
        return inquiryResult;
    }
    public void setFormJson(String formJson)
    {
        if(StringUtils.isNotEmpty(formJson)){
            this.formJson= EmojiParser.parseToHtmlDecimal(formJson);
        }
        else{
            this.formJson= formJson;
        }
    }

    public String getFormJson()
    {
        if(StringUtils.isNotEmpty(formJson)){
            return EmojiParser.parseToUnicode(formJson);
        }
        else{
            return formJson;
        }
    }
    public void setConditioningPlanJson(String conditioningPlanJson)
    {
        this.conditioningPlanJson = conditioningPlanJson;
    }

    public String getConditioningPlanJson()
    {
        return conditioningPlanJson;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("reportId", getReportId())
            .append("orderId", getOrderId())
            .append("userId", getUserId())
            .append("patientId", getPatientId())
            .append("patientJson", getPatientJson())
            .append("doctorId", getDoctorId())
            .append("diseaseType", getDiseaseType())
            .append("inquiryResult", getInquiryResult())
            .append("formJson", getFormJson())
            .append("conditioningPlanJson", getConditioningPlanJson())
            .append("createTime", getCreateTime())
            .append("remark", getRemark())
            .append("updateTime", getUpdateTime())
            .append("status", getStatus())
            .toString();
    }
}
