/** * CentralIT - CITSmart */ package br.com.centralit.citcorpore.negocio; import java.util.List; import javax.servlet.http.HttpServletRequest; import br.com.centralit.citcorpore.bean.ParametroCorporeDTO; import br.com.centralit.citcorpore.integracao.ParametroCorporeDAO; import br.com.centralit.citcorpore.util.Enumerados.ParametroSistema; import br.com.centralit.citcorpore.util.ParametroUtil; import br.com.centralit.citcorpore.util.WebUtil; import br.com.citframework.dto.IDto; import br.com.citframework.excecao.LogicException; import br.com.citframework.excecao.ServiceException; import br.com.citframework.integracao.TransactionControler; import br.com.citframework.integracao.TransactionControlerImpl; import br.com.citframework.service.CrudServiceImpl; import br.com.citframework.util.UtilDatas; /** * @author valdoilo.damasceno * */ @SuppressWarnings("unchecked") public class ParametroCorporeServiceEjb extends CrudServiceImpl implements ParametroCorporeService { private ParametroCorporeDAO dao; @Override protected ParametroCorporeDAO getDao() { if (dao == null) { dao = new ParametroCorporeDAO(); } return dao; } @Override public List<ParametroCorporeDTO> pesquisarParamentro(final Integer id, final String nomeParametro) throws ServiceException, LogicException, Exception { try { return this.getDao().pesquisarParamentro(id, nomeParametro); } catch (final Exception e) { return null; } } @Override public ParametroCorporeDTO getParamentroAtivo(final Integer id) throws Exception { try { return this.getDao().getParamentroAtivo(id); } catch (final Exception e) { return null; } } @Override public void create(final ParametroCorporeDTO parametroBean, final HttpServletRequest request) throws ServiceException, LogicException { parametroBean.setIdEmpresa(WebUtil.getIdEmpresa(request)); parametroBean.setDataInicio(UtilDatas.getDataAtual()); try { super.create(parametroBean); if (parametroBean.getId() != null) { ParametroUtil.atualizarHashMapParametroCitSmart(parametroBean.getId(), parametroBean.getValor()); } } catch (final LogicException e) { e.printStackTrace(); } } /* * (non-Javadoc) * * @see br.com.centralit.citcorpore.negocio.ParametroCorporeService# criarParametrosNovos() */ @Override public void criarParametrosNovos() throws Exception { final ParametroCorporeDAO dao = this.getDao(); final TransactionControler tc = new TransactionControlerImpl(dao.getAliasDB()); try { tc.start(); dao.setTransactionControler(tc); for (final ParametroSistema parametroCitSmart : ParametroSistema.values()) { ParametroCorporeDTO parametro = new ParametroCorporeDTO(); parametro = dao.getParamentroAtivo(parametroCitSmart.id()); if (parametro != null) { parametro.setNome(parametroCitSmart.campo()); parametro.setTipoDado(parametroCitSmart.tipoCampo()); try { dao.updateNotNull(parametro); ParametroUtil.atualizarHashMapParametroCitSmart(parametroCitSmart.id(), parametro.getValor()); } catch (final Exception e) { System.out.println("ERRO AO ATUALIZAR PAR�METRO " + parametroCitSmart); e.printStackTrace(); } } else { parametro = new ParametroCorporeDTO(); parametro.setNome(parametroCitSmart.campo()); try { parametro.setId(parametroCitSmart.id()); parametro.setDataInicio(UtilDatas.getDataAtual()); parametro.setIdEmpresa(1); parametro.setTipoDado(parametroCitSmart.tipoCampo()); parametro.setValor(" "); dao.create(parametro); ParametroUtil.atualizarHashMapParametroCitSmart(parametroCitSmart.id(), parametro.getValor()); } catch (final Exception e) { System.out.println("ERRO AO CRIAR PAR�METRO " + parametroCitSmart); e.printStackTrace(); } } } tc.commit(); } finally { tc.closeQuietly(); } } @Override public void atualizarParametros(final ParametroCorporeDTO parametroDto) throws Exception { try { this.getDao().updateNotNull(parametroDto); if (parametroDto.getId() != null) { ParametroUtil.atualizarHashMapParametroCitSmart(parametroDto.getId(), parametroDto.getValor()); } } catch (final Exception e) { e.printStackTrace(); } } @Override public void updateNotNull(final IDto dto) { try { this.validaUpdate(dto); this.getDao().updateNotNull(dto); } catch (final Exception e) { e.printStackTrace(); } } /** * Atualiza o valor do parametro pelo id * */ @Override public void atualizarParametro(final Integer id, final String valor) throws Exception { try { this.getDao().atualizarParametro(id, valor); ParametroUtil.atualizarHashMapParametroCitSmart(id, valor); } catch (final Exception e) { System.out.println("ERRO AO ATUALIZAR PARAMETRO"); e.printStackTrace(); } } }