package br.com.elotech.saude.scripts;

public abstract class UsuarioScript {

  public static String getInfo() {
    StringBuilder sb = new StringBuilder();
    sb.append(" select usu.usu_codigo,")
      .append("   usu.usu_prontuario as prontuarioPaciente,")
      .append("   usu.usu_nome as nomePaciente,")
      .append("   usu.usu_cartao_sus as cns,")
      .append("   usu.usu_rg as rg,")
      .append("   dom.dom_numero as domicilioNumeroPaciente,")
      .append("   log.ds_tipo_logradouro as tipoLogradouroPaciente,")
      .append("   rua.rua_nome as nomeRuaPaciente,")
      .append("   cid.cid_nome as nomeCidadePaciente")
      .append(" from usuario usu")
      .append(" left join estado_civil estc on estc.estc_codigo = usu.estc_codigo")
      .append(" left join domicilio dom on dom.dom_codigo=usu.dom_codigo")
      .append(" left join rua on rua.rua_codigo=dom.rua_codigo")
      .append(" left join tb_ms_tipo_logradouro log on log.co_tipo_logradouro=rua.co_tipo_logradouro")
      .append(" left join bairro bai on bai.bai_codigo=rua.bai_codigo")
      .append(" left join distrito dis on dis.dis_codigo=bai.dis_codigo")
      .append(" left join cidade c_dis on c_dis.cid_codigo=dis.cid_codigo")
      .append(" left join cidade cid on cid.cid_codigo=bai.cid_codigo")
      .append(" left join tb_ocupacao cbo on cbo.co_ocupacao=usu.usu_ocupacao")
      .append(" left join tb_ocupacao cbo2 on cbo2.co_ocupacao=usu.usu_cbo_r")
      .append(" left join cidade nasc on nasc.cid_codigo=usu.cid_codigo_nasc")
      .append(" where usu.usu_codigo = :usuCodigo");

    return sb.toString();
  }
}
