예제 #1
0
 public function inscrever_trabalho(\Entity\Trabalho $trabalho, $id_autor_princial, $id_curso, $email_trabalho)
 {
     //Verifica se quantidade de trabalhos desse autor <2.
     //.....
     //Verifica se modalidade permitida.
     //.....
     //Jean <<<<<<<<<<<<
     //Consulta o nível do curso do autor principal.
     //......
     $nivel = 0;
     //-1 para inscrever um novo trabalho.
     $trabalho->setIdTrabalho(-1);
     $trabalho->setNivel($nivel);
     $trabalho->setSeqSessao(0);
     $trabalho->setStatus(STATUS_TRAB_PENDENTE);
     //START TRANSACTION ?????
     $this->salvar_dados_trabalho($trabalho);
     //echo $trabalho->getIdTrabalho()." ".$id_autor_princial." ".$id_curso;
     //die();
     //Insere autor principal na tabela trabalho_autor_curso
     $this->insere_autor($trabalho->getIdTrabalho(), $id_autor_princial, $id_curso, $email_trabalho);
     //END TRAnSACTION ???????
     //Envia email para autor do trabalho ???????
     //envia_email_trabalho_inscrito($id_trabalho, $titulo, $email_trabalho);
 }
 /**
  * Inseri um registro na tabela
  *
  * @parametro TrabalhoMySql trabalho
  */
 public function insert(\Entity\Trabalho $Trabalho)
 {
     //Nao preenche os campos data_atualizacao e ip_atualizacao.
     //Preenche o campo data_cadastro automaticamente com a data atual do servidor de banco de dados.
     $sql = "INSERT INTO {$this->table} (fk_area, fk_categoria, fk_modalidade, nivel, titulo, titulo_ordenar, palavra1, palavra2, palavra3, apoiadores, resumo, resumo2, status, data_cadastro, ip_cadastro, fk_sessao, seq_sessao, nota, premiado, turno1, turno2, turno3) VALUES ( :fkArea,  :fkCategoria,  :fkModalidade,  :nivel,  :titulo,  :tituloOrdenar,  :palavra1,  :palavra2,  :palavra3,  :apoiadores,  :resumo,  :resumo2,  :status,  sysdate(),  :ipCadastro,  :fkSessao,  :seqSessao,  :nota,  :premiado, :turno1, :turno2, :turno3)";
     $fkArea = $Trabalho->getFkArea();
     $fkCategoria = $Trabalho->getFkCategoria();
     $fkModalidade = $Trabalho->getFkModalidade();
     $nivel = $Trabalho->getNivel();
     $titulo = $Trabalho->getTitulo();
     $tituloOrdenar = $Trabalho->getTituloOrdenar();
     $palavra1 = $Trabalho->getPalavra1();
     $palavra2 = $Trabalho->getPalavra2();
     $palavra3 = $Trabalho->getPalavra3();
     $apoiadores = $Trabalho->getApoiadores();
     $resumo = $Trabalho->getResumo();
     $resumo2 = $Trabalho->getResumo2();
     $status = $Trabalho->getStatus();
     $ipCadastro = $Trabalho->getIpCadastro();
     $fkSessao = $Trabalho->getFkSessao();
     $seqSessao = $Trabalho->getSeqSessao();
     $nota = $Trabalho->getNota();
     $premiado = $Trabalho->getPremiado();
     $turno1 = $Trabalho->getTurno1();
     $turno2 = $Trabalho->getTurno2();
     $turno3 = $Trabalho->getTurno3();
     $stmt = ConnectionFactory::prepare($sql);
     $stmt->bindParam(':fkArea', $fkArea);
     $stmt->bindParam(':fkCategoria', $fkCategoria);
     $stmt->bindParam(':fkModalidade', $fkModalidade);
     $stmt->bindParam(':nivel', $nivel);
     $stmt->bindParam(':titulo', $titulo);
     $stmt->bindParam(':tituloOrdenar', $tituloOrdenar);
     $stmt->bindParam(':palavra1', $palavra1);
     $stmt->bindParam(':palavra2', $palavra2);
     $stmt->bindParam(':palavra3', $palavra3);
     $stmt->bindParam(':apoiadores', $apoiadores);
     $stmt->bindParam(':resumo', $resumo);
     $stmt->bindParam(':resumo2', $resumo2);
     $stmt->bindParam(':status', $status);
     //$stmt->bindParam(':dataCadastro', $dataCadastro);
     //$stmt->bindParam(':dataAtualizacao', $dataAtualizacao);
     $stmt->bindParam(':ipCadastro', $ipCadastro);
     //$stmt->bindParam(':ipAtualizacao', $ipAtualizacao);
     $stmt->bindParam(':fkSessao', $fkSessao);
     $stmt->bindParam(':seqSessao', $seqSessao);
     $stmt->bindParam(':nota', $nota);
     $stmt->bindParam(':premiado', $premiado);
     $stmt->bindParam(':turno1', $turno1);
     $stmt->bindParam(':turno2', $turno2);
     $stmt->bindParam(':turno3', $turno3);
     $stmt->execute();
     $sql = "SELECT LAST_INSERT_ID() as last_id";
     $stmt = ConnectionFactory::prepare($sql);
     $stmt->execute();
     $last_id = (array) $stmt->fetch();
     //Pega o id_trabalho que foi gerado no banco e atualiza o objeto Trabalho.
     $id_trabalho = 0;
     foreach ($last_id as $value) {
         $id_trabalho = $value;
     }
     $Trabalho->setIdTrabalho($id_trabalho);
     return $id_tabalho;
 }