package com.agilex.healthcare.schedulingmanager.domain;

import java.util.Date;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;

import com.agilex.healthcare.mobilehealthplatform.domain.DomainTransferObject;
import com.agilex.healthcare.utility.datemarshallers.DateTimeMarshaller;


@XmlRootElement(name = "smConsult", namespace = Namespace.SchedulingManager)
@XmlAccessorType(value = XmlAccessType.NONE)
public class SMConsult extends DomainTransferObject {

    private static final long serialVersionUID = -7491134285810263756L;

    public static final String CONSULT_IEN_KEY = "consultIen";
    public static final String REQUEST_DATE_KEY = "requestDate";
    public static final String STATUS_KEY = "status";
    public static final String SERVICE_IEN_KEY = "serviceIen";
    public static final String SERVICE_NAME_KEY = "serviceName";
    public static final String PATIENT_DFN_KEY = "patientDfn";
    public static final String PATIENT_NAME_KEY = "patientName";
    public static final String SENDING_PROVIDER_DUZ_KEY = "sendingProviderDuz";
    public static final String SENDING_PROVIDER_NAME_KEY = "sendingProviderName";
    public static final String TEXT_KEY = "text";
    public static final String DAYS_ON_LIST_KEY = "daysOnList";

    @XmlElement
    private String consultIen;

    @XmlElement
    @XmlJavaTypeAdapter(DateTimeMarshaller.class)
    private Date requestDate;

    @XmlElement
    private String status;

    @XmlElement
    private String serviceIen;

    @XmlElement
    private String serviceName;

    @XmlElement
    private String patientDfn;

    @XmlElement
    private String patientName;

    @XmlElement
    private String sendingProviderDuz;

    @XmlElement
    private String sendingProviderName;

    @XmlElement
    private String text;

    @XmlElement
    private String daysOnList;

    public String getConsultIen() {
        return consultIen;
    }

    public void setConsultIen(String consultIen) {
        this.consultIen = consultIen;
    }

    public Date getRequestDate() {
        return requestDate;
    }

    public void setRequestDate(Date requestDate) {
        this.requestDate = requestDate;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getServiceIen() {
        return serviceIen;
    }

    public void setServiceIen(String serviceIen) {
        this.serviceIen = serviceIen;
    }

    public String getServiceName() {
        return serviceName;
    }

    public void setServiceName(String serviceName) {
        this.serviceName = serviceName;
    }

    public String getPatientDfn() {
        return patientDfn;
    }

    public void setPatientDfn(String patientDfn) {
        this.patientDfn = patientDfn;
    }

    public String getPatientName() {
        return patientName;
    }

    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }

    public String getSendingProviderDuz() {
        return sendingProviderDuz;
    }

    public void setSendingProviderDuz(String sendingProviderDuz) {
        this.sendingProviderDuz = sendingProviderDuz;
    }

    public String getSendingProviderName() {
        return sendingProviderName;
    }

    public void setSendingProviderName(String sendingProviderName) {
        this.sendingProviderName = sendingProviderName;
    }

    public String getText() {
        return text;
    }

    public void setText(String text) {
        this.text = text;
    }

    public String getDaysOnList() {
        return daysOnList;
    }

    public void setDaysOnList(String daysOnList) {
        this.daysOnList = daysOnList;
    }
}
