#!/bin/bash

#CURSOS DE ENTRADA DE DADOS: SE PRECISAR FAZER ALTERAÇÕES DEFINITIVAS, FAÇA NESTE CURSOS
#cursos_senac_1.csv
#cursos_ifsp_1.csv 
#cursos_ifsp_2.csv 
#cursos_ifsp_3.csv 
#cursos_ifsp_3.csv 
#cursos_senar_1.csv 
#cursos_escola_trabalhador.csv 
#cursos_ifb.csv 
#cursos_senai_2025.csv

#CABECALIOS DOS CURSOS:
#SENAC|segmento|tipo_de_curso|codigo_do_curso|titulo_do_curso|AC|AL|AM|AP|BA|CE|DF|ES|GO|MA|MG|MS|MT|PA|PB|PE|PI|PR|RJ|RN|RO|RR|RS|SC|SE|SP|TO|total_geral
#SENAR|codigo_do_curso|título_do_curso|carga_horaria|duracao|proxima_turma|tipo_de_curso|presencial_remoto|estado
#IFSP1|tipo_de_curso|campus|titulo_do_curso|tipo_de_tecnico|quantidade_de_vagas_resolução_ppc|turno|semestre_do_ano_que_ocorre_a_oferta|periodicidade_da_oferta|modalidade_de_oferta|confirme_se_o_curso_sera_ofertado_no_processo_seletivo_de_ingresso_em_2025_1
#IFSP2|tipo_de_curso|campus|titulo_do_curso|vagas|periodo|duracao
#IFSP3|tipo_de_curso|campus|titulo_do_curso|perido|vagas|duracao
#MTE|codigo_da_trilha|nome_da_trilha|segmento|titulo_do_curso|carga_horaria|tipo_de_curso|presencial_remoto|estado
#IFB|tipo_de_curso|campus|estado|cidade|titulo_do_curso|tipo_de_tecnico|quantidade_de_vagas|turno|modalidade_de_oferta|cbo|regime_de_matrícula|eixo_tecnologico|carga_horaria
#SENAI|estado|cidade|codigo_municipio|escola|local_de_realizacao_curso|curso|area_tecnologica|codigo_turma|tipo_de_curso|tipo_oferta|turno|data_inicio|data_fim|periodo_de_matricula|carga_horaria|quantidade_de_vagas|URL|endereco_escola|telefone_contato_escola|e-mail_contato_escola

SECONDS=0

echo "Gerando banco de dados Qualificação Brasil"
echo "Convertendo TXT para CSV"
#php converte_senar_csv_2.php
echo "Ajustando o arquivo da SENAC para individualizar os cursos por estado, criando arquivo cursos_senac_estado_1.csv a partir de cursos_senac_1.csv"
php converte_estados_senac.php cursos_senac_1.csv  cursos_senac_estado_1.csv

echo "Criando scripts SQL de inserção para SENAR"
echo "Colocando as cidades no cursos do ifsp"
./converte_cursos_ifsp_com_cidades.bash

#abaixo estão os arquivos de entrada para converte_cursos_ifsp_com_cidades.bash
#cat cursos_ifsp_1.csv | sed "s/|Campus|/|Campus|Estado|Cidade|/g" > cursos_ifsp_1_cidade.csv
#cat cursos_ifsp_2.csv | sed "s/|Campus|/|Campus|Estado|Cidade|/g" > cursos_ifsp_2_cidade.csv
#cat cursos_ifsp_3.csv | sed "s/|Campus|/|Campus|Estado|Cidade|/g" > cursos_ifsp_3_cidade.csv


echo "Limpando os enters do arquivo cursos_senai_2025.csv"
php limpa_enters_csv3.php cursos_senai_2025.csv saida_cursos_senai_2025.csv

echo "Colocando capitais no SENAC:"
php coloca_capitais_na_senac.php

php cria_inserts_cursos_metadados.php cursos_senac_estado_1_capitais.csv saida_cursos_senac_estado_1.sql
php cria_inserts_cursos_metadados.php cursos_senar_1.csv saida_cursos_senar_1.sql
php cria_inserts_cursos_metadados.php cursos_ifsp_1_cidade.csv saida_cursos_ifsp_1_cidade.sql
php cria_inserts_cursos_metadados.php cursos_ifsp_2_cidade.csv saida_cursos_ifsp_2_cidade.sql
php cria_inserts_cursos_metadados.php cursos_ifsp_3_cidade.csv saida_cursos_ifsp_3_cidade.sql
php cria_inserts_cursos_metadados.php cursos_escola_trabalhador.csv saida_cursos_escola_trabalhador.sql
php cria_inserts_cursos_metadados.php cursos_ifb.csv saida_cursos_ifb.sql
php cria_inserts_cursos_metadados.php saida_cursos_senai_2025.csv saida_cursos_senai_2025.sql 

echo "Criando banco de dados qualifica_brasil"
mysql -u root -ptoninho13 qualifica_brasil < cria_banco_cursos.sql
echo "Terminou de criar o banco"
echo "Inserindo dados gerais de cidades, estados, países, etc."
mysql -u root -ptoninho13 qualifica_brasil < insert_dados.sql

echo "Inserindo classificação de tokens"

mysql -u root -ptoninho13 qualifica_brasil < insert_classificacao_token.sql

#mysql -u root -ptoninho13 qualifica_brasil < insert_classificacao_senai.sql  este arquivo foi juntado com insert_classificacao_token.sql
echo "Insere códigos do SENAI"
mysql -u root -ptoninho13 qualifica_brasil < saida_novos_tokens_senai_codigo.sql #codigos complexos do SENAI 
echo "Inserindo cidades"
mysql -u root -ptoninho13 qualifica_brasil < inserts_cidades_id_estado_corrigido.sql 


echo "Inserindo dados de SENAC"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_senac_estado_1.sql
echo "Inserindo dados de SENAR"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_senar_1.sql 
echo "Inserindo dados de IFSP"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_ifsp_1_cidade.sql 
echo "Inserindo dados de IFSP"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_ifsp_2_cidade.sql 
echo "Inserindo dados de IFSP"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_ifsp_3_cidade.sql 
echo "Inserindo dados de Escola do Trabalhador"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_escola_trabalhador.sql 
echo "Inserindo dados de IFB"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_ifb.sql 
echo "Inserindo dados do SENAI"
mysql -u root -ptoninho13 qualifica_brasil < saida_cursos_senai_2025.sql
echo "Retira campos de buscas desnecessários"
mysql -u root -ptoninho13 qualifica_brasil < define_campos_busca.sql
echo "Terminou inserções principais"

echo "Número de linhas com problemas (faltando referência na tabela classificacoes_tokens- número apresentado tem repetições. O número efetivo é menor)"

./descobre_falta_classificacao.bash | grep -i xxxx  | wc -l

echo "Maior número de ocorrências"

echo "Gravando os tokens que não estão classificados na tabela classificacoes_tokens em resto_tokens.txt"

./descobre_falta_classificacao.bash | grep -iEo " [^[:space:]]+\[X+\]" | sort | uniq -c | sort -nr | sed 's/\[[X]*\]//I' | awk '{print $2;}' | sort > resto_tokens.txt 

cd tokens_fora_da_classificacao 

rm -f resto_tokens.txt 

cp -f ../resto_tokens.txt .

rm -f 50_resto_tokens_*

split -l 50 resto_tokens.txt 50_resto_tokens_


echo "Criando base de dados optimizada:"

mysql -u root -ptoninho13 qualifica_brasil < ../insere_base_optimizada.sql 
echo "Tempo de execução: $SECONDS segundos"

echo "Criando a base de dados CBO (demora)";

mysql -u root -ptoninho13 qualifica_brasil < ../cria_banco_cbo.sql

echo "fim";
