From 9df6da2d36079e298cb52b2b3626f6e8c578191e Mon Sep 17 00:00:00 2001 From: leonardo Date: Tue, 14 May 2019 18:04:44 +0000 Subject: [PATCH] 14346: Duplicidade Imei fixes bug#14346 dev:valdevir qua:leo git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@93258 d1611594-4594-4d17-8e1d-87c2c4800839 --- ...positivoEmbarcadaJaCadastradoException.java | 18 ++++++++++++++++++ .../service/DispositivoEmbarcadaService.java | 5 +++-- .../impl/DispositivoEmbarcadaServiceImpl.java | 14 ++++++++++++-- 3 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 src/com/rjconsultores/ventaboletos/exception/DispositivoEmbarcadaJaCadastradoException.java diff --git a/src/com/rjconsultores/ventaboletos/exception/DispositivoEmbarcadaJaCadastradoException.java b/src/com/rjconsultores/ventaboletos/exception/DispositivoEmbarcadaJaCadastradoException.java new file mode 100644 index 000000000..7c1cc8b05 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/exception/DispositivoEmbarcadaJaCadastradoException.java @@ -0,0 +1,18 @@ +package com.rjconsultores.ventaboletos.exception; + +import java.text.MessageFormat; + +public class DispositivoEmbarcadaJaCadastradoException extends Exception { + + private static final long serialVersionUID = 1L; + + public DispositivoEmbarcadaJaCadastradoException(String message) { + super(message); + } + + public DispositivoEmbarcadaJaCadastradoException(String message, Object oMsg) { + super(new MessageFormat(message).format(oMsg)); + } + +} + diff --git a/src/com/rjconsultores/ventaboletos/service/DispositivoEmbarcadaService.java b/src/com/rjconsultores/ventaboletos/service/DispositivoEmbarcadaService.java index 174f4a1f0..4dc35d503 100644 --- a/src/com/rjconsultores/ventaboletos/service/DispositivoEmbarcadaService.java +++ b/src/com/rjconsultores/ventaboletos/service/DispositivoEmbarcadaService.java @@ -9,6 +9,7 @@ import java.util.List; import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.exception.DispositivoEmbarcadaJaCadastradoException; /** * @@ -17,10 +18,10 @@ import com.rjconsultores.ventaboletos.entidad.PuntoVenta; public interface DispositivoEmbarcadaService { public List obtenerTodos(); - public DispositivoEmbarcada suscribirActualizar(DispositivoEmbarcada dispositivoEmbarcada); + public DispositivoEmbarcada suscribirActualizar(DispositivoEmbarcada dispositivoEmbarcada) throws DispositivoEmbarcadaJaCadastradoException; public DispositivoEmbarcada buscarMac(String mac); public DispositivoEmbarcada buscarImei(String imei); - public DispositivoEmbarcada suscribir(DispositivoEmbarcada entidad); + public DispositivoEmbarcada suscribir(DispositivoEmbarcada entidad) throws DispositivoEmbarcadaJaCadastradoException; public DispositivoEmbarcada actualizacion(DispositivoEmbarcada entity); public DispositivoEmbarcada suscribirActualizacion(DispositivoEmbarcada entidad); public DispositivoEmbarcada buscarDispositivoPorId(DispositivoEmbarcada dispositivoEmbarcada); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/DispositivoEmbarcadaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/DispositivoEmbarcadaServiceImpl.java index 6409b6d5b..28b0b9ef1 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/DispositivoEmbarcadaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/DispositivoEmbarcadaServiceImpl.java @@ -13,6 +13,7 @@ import com.rjconsultores.ventaboletos.dao.DispositivoEmbarcadaDAO; import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.exception.DispositivoEmbarcadaJaCadastradoException; import com.rjconsultores.ventaboletos.service.DispositivoEmbarcadaService; /** @@ -29,9 +30,17 @@ public class DispositivoEmbarcadaServiceImpl implements DispositivoEmbarcadaServ public List obtenerTodos() { return dispositivoEmbarcadaDAO.obtenerTodos(); } + + private void validaDispositivoJaCadastrado(DispositivoEmbarcada dispositivoEmbarcada) throws DispositivoEmbarcadaJaCadastradoException{ + if (buscarDispositivoPorId(dispositivoEmbarcada) != null) { + if (buscarImei(dispositivoEmbarcada.getImei()) != null) throw new DispositivoEmbarcadaJaCadastradoException("Já existe um dispositivo cadastrado com esse Imei"); + if (buscarMac(dispositivoEmbarcada.getMac()) != null) throw new DispositivoEmbarcadaJaCadastradoException("Já existe um dispositivo cadastrado com esse MAC"); + } + } @Override - public DispositivoEmbarcada suscribirActualizar(DispositivoEmbarcada dispositivoEmbarcada) { + public DispositivoEmbarcada suscribirActualizar(DispositivoEmbarcada dispositivoEmbarcada) throws DispositivoEmbarcadaJaCadastradoException { + validaDispositivoJaCadastrado(dispositivoEmbarcada); return dispositivoEmbarcadaDAO.suscribirActualizar(dispositivoEmbarcada); } @@ -46,7 +55,8 @@ public class DispositivoEmbarcadaServiceImpl implements DispositivoEmbarcadaServ } @Override - public DispositivoEmbarcada suscribir(DispositivoEmbarcada entidad) { + public DispositivoEmbarcada suscribir(DispositivoEmbarcada entidad) throws DispositivoEmbarcadaJaCadastradoException { + validaDispositivoJaCadastrado(entidad); return dispositivoEmbarcadaDAO.suscribir(entidad); }