/** * Exclui um registro * * @param objTalento POJO representando o objeto a ser incluído * @throws CDException se ocorrer algum erro relacionado ao negócio */ public void excluir(Talento objTalento) throws CDException { if (log.isDebugEnabled()) { log.debug("Entrada no metodo"); } // Instancia DAO e inclui registro AtributoTalentoValoradoDAO objAtributoTalentoValoradoDAO = new AtributoTalentoValoradoDAO(); TalentoDAO objTalentoDAO = new TalentoDAO(); try { // Inicia transação DAO.iniciarTransacao(); // Exclui valorações objAtributoTalentoValoradoDAO.excluirPorTalento(objTalento); // Exclui objTalentoDAO.excluir(objTalento); // Realiza transação DAO.realizarTransacao(); } catch (Exception daoe) { DAO.desfazerTransacao(); CDException.dispararExcecao(daoe); } finally { DAO.desconectar(); } }
/** * Inclui um registro * * @param objTalento POJO representando o objeto a ser incluído * @param lstAtributosTalentoValoros List contendo as valorações do talento a serem incluídas * @throws CDException se ocorrer algum erro relacionado ao negócio * @return retorna a chave do objeto que foi incluido */ public String incluir(Talento objTalento, List lstAtributosTalentoValorados) throws CDException { if (log.isDebugEnabled()) { log.debug("Entrada no metodo"); } // Instancia DAO e inclui registro TalentoDAO objTalentoDAO = new TalentoDAO(); CategoriaTalentoDAO objCategoriaTalentoDAO = new CategoriaTalentoDAO(); String strChave = null; try { // Não é permitido que a pessoa tenha mais de uma categoria cadastrada se ela for perfil CategoriaTalento objCategoriaTalento = (CategoriaTalento) objCategoriaTalentoDAO.obterPelaChave( String.valueOf(objTalento.getCategoriaTalento().getIdentificador())); if ("S".equals(objCategoriaTalento.getIndicativoUnicidade())) { if (objTalentoDAO.verificarExistenciaPorPessoaCategoriaTalento( objTalento.getPessoa(), objTalento.getCategoriaTalento())) { throw new NegocioException( "Não é possível inserir mais de um talento se a categoria " + "em questão é perfil"); } } // Verifica as valorações obrigatórios verificarValoracoesObrigatorias( objTalento.getCategoriaTalento(), lstAtributosTalentoValorados); // Inicia transação DAO.iniciarTransacao(); // Preenche dados de talento objTalento.setDataLancamento(DataNova.formatarCalendar(DataNova.obterDataAtual())); // Inclui talento strChave = objTalentoDAO.incluir(objTalento); objTalento.setIdentificador(Integer.valueOf(strChave)); // Inclui valorações incluirValoracoes(objTalento, lstAtributosTalentoValorados); // Realiza transação DAO.realizarTransacao(); } catch (Exception daoe) { CDException.dispararExcecao(daoe); } finally { DAO.desconectar(); } // Retorna chave return strChave; }
/** * Altera um registro * * @param objTalento POJO representando o objeto a ser incluído * @throws CDException se ocorrer algum erro relacionado ao negócio */ public void alterar(Talento objTalento, List lstAtributosTalentoValorados) throws CDException { if (log.isDebugEnabled()) { log.debug("Entrada no metodo"); } // Instancia DAO e altera registro TalentoDAO objTalentoDAO = new TalentoDAO(); AtributoTalentoValoradoDAO objAtributoTalentoValoradoDAO = new AtributoTalentoValoradoDAO(); try { // Verifica as valorações obrigatórios verificarValoracoesObrigatorias( objTalento.getCategoriaTalento(), lstAtributosTalentoValorados); // Inicia transação DAO.iniciarTransacao(); // Preenche dados de talento objTalento.setDataLancamento(DataNova.formatarCalendar(DataNova.obterDataAtual())); // Exclui valorações anteriores objAtributoTalentoValoradoDAO.excluirPorTalento(objTalento); // Reinclui valorações incluirValoracoes(objTalento, lstAtributosTalentoValorados); // Altera objTalentoDAO.alterar(objTalento); // Realiza transação DAO.realizarTransacao(); } catch (Exception daoe) { DAO.desfazerTransacao(); CDException.dispararExcecao(daoe); } finally { DAO.desconectar(); } }