package br.ufsc.esus.fichaatendimentoodontologicochild;

import br.ufsc.esus.procedimentoquantidade.ProcedimentoQuantidadeTransport;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import java.util.ArrayList;
import java.util.List;

/**
 * <p>Classe Java de fichaAtendimentoOdontologicoChildTransport complex type.
 *
 * <p>O seguinte fragmento do esquema especifica o conteúdo esperado contido dentro desta classe.
 *
 * <pre>
 * &lt;complexType name="fichaAtendimentoOdontologicoChildTransport">
 *   &lt;complexContent>
 *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       &lt;sequence>
 *         &lt;element name="numProntuario" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="cnsCidadao" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="cpfCidadao" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
 *         &lt;element name="dtNascimento" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="localAtendimento" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="gestante" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="necessidadesEspeciais" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
 *         &lt;element name="tipoAtendimento" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="tiposEncamOdonto" type="{http://www.w3.org/2001/XMLSchema}long" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="tiposFornecimOdonto" type="{http://www.w3.org/2001/XMLSchema}long" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="tiposVigilanciaSaudeBucal" type="{http://www.w3.org/2001/XMLSchema}long" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="tiposConsultaOdonto" type="{http://www.w3.org/2001/XMLSchema}long" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="procedimentosRealizados" type="{http://esus.ufsc.br/procedimentoquantidade}procedimentoQuantidadeTransport" maxOccurs="unbounded" minOccurs="0"/>
 *         &lt;element name="turno" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="sexo" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="dataHoraInicialAtendimento" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *         &lt;element name="dataHoraFinalAtendimento" type="{http://www.w3.org/2001/XMLSchema}long" minOccurs="0"/>
 *       &lt;/sequence>
 *     &lt;/restriction>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "fichaAtendimentoOdontologicoChildTransport", propOrder = {
  "numProntuario",
  "cnsCidadao",
  "cpfCidadao",
  "dtNascimento",
  "localAtendimento",
  "gestante",
  "necessidadesEspeciais",
  "tipoAtendimento",
  "tiposEncamOdonto",
  "tiposFornecimOdonto",
  "tiposVigilanciaSaudeBucal",
  "tiposConsultaOdonto",
  "procedimentosRealizados",
  "turno",
  "sexo",
  "dataHoraInicialAtendimento",
  "dataHoraFinalAtendimento"
})
public class FichaAtendimentoOdontologicoChildTransport {

  protected String numProntuario;
  protected String cnsCidadao;
  protected String cpfCidadao;
  protected Long dtNascimento;
  protected Long localAtendimento;
  protected Boolean gestante;
  protected Boolean necessidadesEspeciais;
  protected Long tipoAtendimento;
  @XmlElement(type = Long.class)
  protected List<Long> tiposEncamOdonto;
  @XmlElement(type = Long.class)
  protected List<Long> tiposFornecimOdonto;
  @XmlElement(type = Long.class)
  protected List<Long> tiposVigilanciaSaudeBucal;
  @XmlElement(type = Long.class)
  protected List<Long> tiposConsultaOdonto;
  protected List<ProcedimentoQuantidadeTransport> procedimentosRealizados;
  protected Long turno;
  protected Long sexo;
  protected Long dataHoraInicialAtendimento;
  protected Long dataHoraFinalAtendimento;

  public String getNumProntuario() {
    return numProntuario;
  }

  public void setNumProntuario(String value) {
    this.numProntuario = value;
  }

  public String getCnsCidadao() {
    return cnsCidadao;
  }

  public void setCnsCidadao(String value) {
    this.cnsCidadao = value;
  }

  public Long getDtNascimento() {
    return dtNascimento;
  }

  public void setDtNascimento(Long value) {
    this.dtNascimento = value;
  }

  public Long getLocalAtendimento() {
    return localAtendimento;
  }

  public void setLocalAtendimento(Long value) {
    this.localAtendimento = value;
  }

  public Boolean isGestante() {
    return gestante;
  }

  public void setGestante(Boolean value) {
    this.gestante = value;
  }

  public Boolean isNecessidadesEspeciais() {
    return necessidadesEspeciais;
  }

  public void setNecessidadesEspeciais(Boolean value) {
    this.necessidadesEspeciais = value;
  }

  public Long getTipoAtendimento() {
    return tipoAtendimento;
  }

  public void setTipoAtendimento(Long value) {
    this.tipoAtendimento = value;
  }

  public List<Long> getTiposEncamOdonto() {
    if (tiposEncamOdonto == null) {
      tiposEncamOdonto = new ArrayList<>();
    }
    return this.tiposEncamOdonto;
  }

  public List<Long> getTiposFornecimOdonto() {
    if (tiposFornecimOdonto == null) {
      tiposFornecimOdonto = new ArrayList<>();
    }
    return this.tiposFornecimOdonto;
  }

  public List<Long> getTiposVigilanciaSaudeBucal() {
    if (tiposVigilanciaSaudeBucal == null) {
      tiposVigilanciaSaudeBucal = new ArrayList<>();
    }
    return this.tiposVigilanciaSaudeBucal;
  }

  public List<Long> getTiposConsultaOdonto() {
    if (tiposConsultaOdonto == null) {
      tiposConsultaOdonto = new ArrayList<>();
    }
    return this.tiposConsultaOdonto;
  }

  public List<ProcedimentoQuantidadeTransport> getProcedimentosRealizados() {
    if (procedimentosRealizados == null) {
      procedimentosRealizados = new ArrayList<>();
    }
    return this.procedimentosRealizados;
  }

  public Long getTurno() {
    return turno;
  }

  public void setTurno(Long value) {
    this.turno = value;
  }

  public Long getSexo() {
    return sexo;
  }

  public void setSexo(Long value) {
    this.sexo = value;
  }

  public Long getDataHoraInicialAtendimento() {
    return dataHoraInicialAtendimento;
  }

  public void setDataHoraInicialAtendimento(Long dataHoraInicialAtendimento) {
    this.dataHoraInicialAtendimento = dataHoraInicialAtendimento;
  }

  public Long getDataHoraFinalAtendimento() {
    return dataHoraFinalAtendimento;
  }

  public void setDataHoraFinalAtendimento(Long dataHoraFinalAtendimento) {
    this.dataHoraFinalAtendimento = dataHoraFinalAtendimento;
  }

  public String getCpfCidadao() {
    return cpfCidadao;
  }

  public void setCpfCidadao(String cpfCidadao) {
    this.cpfCidadao = cpfCidadao;
  }
}
