package br.com.elotech.saude.scripts;

public abstract class LaudoApacScript {
    private static StringBuilder sb;

    public static String getSql() {
        sb = new StringBuilder();
        sb.append(" SELECT")
          .append(" uni.uni_desc AS uniDesc, ")
          .append(" uni.uni_cnes AS uniCnes, ")
          .append(" usu.usu_nome AS usuNome, ")
          .append(" usu.usu_prontuario AS usuProntuario, ")
          .append(" usu.usu_cartao_sus AS usuCns, ")
          .append(" usu.usu_datanasc AS usuDatanasc, ")
          .append(" CASE usu.usu_sexo")
          .append("   WHEN 'F' THEN 'FEMININO'")
          .append("   WHEN 'M' THEN 'MASCULINO'")
          .append(" END AS usuSexo, ")
          .append(" rac.rac_descricao AS usuRacacor, ")
          .append(" usu.usu_mae AS usuMae, ")
          .append(" usu.usu_celular AS usuCelular, ")
          .append(" usu.usu_fone AS usuFone, ")
          .append(" cid.cid_nome AS cidadeNome,")
          .append(" cid.uf_sigla AS cidadeUf,")
          .append(" cid.cid_codigo_ibge AS cidadeIbge,")
          .append(" rua.rua_cep AS usuCep,")
          .append(" rua.rua_nome AS usuEndereco,")
          .append(" resp.usu_nome AS usuResponsavel ")
          .append(" FROM atendimento AS ate ")
          .append(" INNER JOIN usuario usu ON ate.usu_codigo = usu.usu_codigo ")
          .append(" INNER JOIN unidade uni ON ate.uni_codigo = uni.uni_codigo ")
          .append(" INNER JOIN raca rac ON usu.rac_codigo = rac.rac_codigo ")
          .append(" LEFT JOIN domicilio dom ON usu.dom_codigo = dom.dom_codigo ")
          .append(" LEFT JOIN rua rua ON dom.rua_codigo = rua.rua_codigo ")
          .append(" LEFT JOIN cidade cid ON rua.cid_codigo = cid.cid_codigo")
          .append(" LEFT JOIN usuario resp ON dom.usu_codigo_responsavel = resp.usu_codigo")
          .append(" WHERE ate_codigo =:codigoAtendimento");

      return sb.toString();
    }

}
