コード例 #1
0
 /**
  * Metodo que faz o cadastro das formações do candidato
  * @param Candidato $candidato
  */
 public function insert(Candidato $candidato)
 {
     if (!$candidato->getId()) {
         throw new BTAlentoException("O candidato informado é inválido");
     }
     if (count($candidato->getFormacao())) {
         $query = "insert into {$this->tg->getTabela()}";
         $query .= "(formacao_tipo, formacao_nome, formacao_instituicao, ";
         $query .= "formacao_status, formacao_periodo, formacao_pk_candidato)";
         $query .= " values ";
         foreach ($candidato->getFormacao() as $formacao) {
             $query .= "({$formacao->getTipo()}, '{$formacao->getCurso()}',";
             $query .= "'{$formacao->getInstituicao()}', {$formacao->getStatus()},";
             $query .= "{$formacao->getPeriodoAtual()}, {$candidato->getId()}),";
         }
         $queryInsert = substr($query, 0, -1);
         $prepare = $this->tg->getPDO()->prepare($queryInsert);
         if (!$prepare->execute()) {
             $sqlCandidato = new SqlCandidato();
             $sqlCandidato->delete($candidato);
             throw new BTAlentoException("Ocorreu um erro ao tentar cadastrar o currículo." . "Tente novamente mais tarde");
         }
     }
 }