From 46864a96b835154af30f96728e1e98a9f3177937 Mon Sep 17 00:00:00 2001 From: valdir Date: Tue, 15 Jun 2021 12:31:18 +0000 Subject: [PATCH] =?UTF-8?q?0022564:=20Comporte=20-=20GLPI=2037636=20-=20Pr?= =?UTF-8?q?oblema=20de=20criar=20hor=C3=A1rios=20em=20feriados=20cadastrad?= =?UTF-8?q?os=20bug#22564=20dev:wilian=20qua:?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@107217 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../service/impl/FeriadoServiceImpl.java | 10 ++++++++++ .../ventaboletos/utilerias/FeriadoCache.java | 15 +++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/com/rjconsultores/ventaboletos/service/impl/FeriadoServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/FeriadoServiceImpl.java index 103a67e53..11f17b0b1 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/FeriadoServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/FeriadoServiceImpl.java @@ -13,6 +13,7 @@ import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Estado; import com.rjconsultores.ventaboletos.entidad.Feriado; import com.rjconsultores.ventaboletos.service.FeriadoService; +import com.rjconsultores.ventaboletos.utilerias.FeriadoCache; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; @Service("feriadoService") @@ -20,6 +21,9 @@ public class FeriadoServiceImpl implements FeriadoService { @Autowired private FeriadoDAO feriadoDAO; + + @Autowired + private FeriadoCache feriadoCache; public List obtenerTodos() { return feriadoDAO.obtenerTodos(); @@ -34,6 +38,8 @@ public class FeriadoServiceImpl implements FeriadoService { entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); entidad.setActivo(Boolean.TRUE); + + feriadoCache.limparData(entidad.getFecferiado(), entidad.getEmpresa() == null ? null : entidad.getEmpresa().getEmpresaId(), entidad.getEstado() == null ? null : entidad.getEstado().getEstadoId()); return feriadoDAO.suscribir(entidad); } @@ -43,6 +49,8 @@ public class FeriadoServiceImpl implements FeriadoService { entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); entidad.setActivo(Boolean.TRUE); + + feriadoCache.limparData(entidad.getFecferiado(), entidad.getEmpresa() == null ? null : entidad.getEmpresa().getEmpresaId(), entidad.getEstado() == null ? null : entidad.getEstado().getEstadoId()); return feriadoDAO.actualizacion(entidad); } @@ -52,6 +60,8 @@ public class FeriadoServiceImpl implements FeriadoService { entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); entidad.setActivo(Boolean.FALSE); + + feriadoCache.limparData(entidad.getFecferiado(), entidad.getEmpresa() == null ? null : entidad.getEmpresa().getEmpresaId(), entidad.getEstado() == null ? null : entidad.getEstado().getEstadoId()); feriadoDAO.actualizacion(entidad); } diff --git a/src/com/rjconsultores/ventaboletos/utilerias/FeriadoCache.java b/src/com/rjconsultores/ventaboletos/utilerias/FeriadoCache.java index c110849f2..f507e91fc 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/FeriadoCache.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/FeriadoCache.java @@ -54,6 +54,21 @@ public class FeriadoCache { mapFeriado.clear(); } + + public void limparData(Date dataFeriado, Integer empresaId, Integer estadoId) { + try { + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); + String strDataFeriado = sdf.format(dataFeriado); + + log.info(String.format("Removendo feriado, data: "+ strDataFeriado +", empresaId: "+ empresaId+", estadoId: " + estadoId)); + + KeyFeriadoMap key = new KeyFeriadoMap(strDataFeriado, empresaId, estadoId); + + mapFeriado.remove(key); + } catch (Exception e) { + log.error("Erro ao remover Deriado de cache: ", e); + } + } class KeyFeriadoMap { private String dataFeriado;