diff --git a/pom.xml b/pom.xml
index 7e960d7ca..d8d64fe49 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
br.com.rjconsultores
ModelWeb
- 1.32.2
+ 1.33.0
diff --git a/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcada.java b/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcada.java
index 5e46bebe1..17c2a154c 100644
--- a/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcada.java
+++ b/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcada.java
@@ -20,15 +20,22 @@ import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
+import javax.persistence.Transient;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
import org.hibernate.annotations.Where;
+import br.com.rjconsultores.auditador.annotations.AuditarClasse;
+import br.com.rjconsultores.auditador.annotations.AuditarID;
+import br.com.rjconsultores.auditador.annotations.NaoAuditar;
+import br.com.rjconsultores.auditador.interfaces.Auditavel;
+
@Entity
@Table(name = "OPERADOR_EMBARCADA")
+@AuditarClasse(nome = "OPERADOR_EMBARCADA", tela = "auditarClasse.OperadorEmbarcada")
@SequenceGenerator(name = "OPERADOR_EMBARCADA_SEQ", sequenceName = "OPERADOR_EMBARCADA_SEQ", allocationSize = 1)
-public class OperadorEmbarcada implements Serializable {
+public class OperadorEmbarcada implements Serializable, Auditavel {
private static final long serialVersionUID = 1L;
@@ -36,6 +43,7 @@ public class OperadorEmbarcada implements Serializable {
@Basic(optional = false)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "OPERADOR_EMBARCADA_SEQ")
@Column(name = "OPERADOR_EMBARCADA_ID")
+ @AuditarID
private Long operadorEmbarcadaId;
@OneToOne
@@ -58,6 +66,10 @@ public class OperadorEmbarcada implements Serializable {
@Column(name = "ACTIVO")
private Boolean activo;
+
+ @Transient
+ @NaoAuditar
+ private OperadorEmbarcada operadorClone;
public Long getOperadorEmbarcadaId() {
return operadorEmbarcadaId;
@@ -137,5 +149,21 @@ public class OperadorEmbarcada implements Serializable {
public String getName() {
return usuario.getName();
+ }
+
+ @Override
+ public void clonar() throws CloneNotSupportedException {
+ operadorClone = new OperadorEmbarcada();
+ operadorClone = (OperadorEmbarcada) this.clone();
+ }
+
+ @Override
+ public OperadorEmbarcada getCloneObject() throws CloneNotSupportedException {
+ return operadorClone;
+ }
+
+ @Override
+ public String getTextoInclusaoExclusao() {
+ return String.format("ID [%s]", getOperadorEmbarcadaId());
}
}
diff --git a/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaLinha.java b/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaLinha.java
index ed7fe139a..f78cd5fbe 100644
--- a/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaLinha.java
+++ b/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaLinha.java
@@ -13,11 +13,18 @@ import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
+import javax.persistence.Transient;
+
+import br.com.rjconsultores.auditador.annotations.AuditarClasse;
+import br.com.rjconsultores.auditador.annotations.AuditarID;
+import br.com.rjconsultores.auditador.annotations.NaoAuditar;
+import br.com.rjconsultores.auditador.interfaces.Auditavel;
@Entity
@Table(name = "OPERADOR_EMBARCADA_LINHA")
+@AuditarClasse(nome = "OPERADOR_EMBARCADA_LINHA", tela = "auditarClasse.OperadorEmbarcadaLinha")
@SequenceGenerator(name = "OPERADOR_EMBARCADA_LINHA_SEQ", sequenceName = "OPERADOR_EMBARCADA_LINHA_SEQ", allocationSize = 1)
-public class OperadorEmbarcadaLinha implements Serializable {
+public class OperadorEmbarcadaLinha implements Serializable, Auditavel {
private static final long serialVersionUID = 1L;
@@ -25,6 +32,7 @@ public class OperadorEmbarcadaLinha implements Serializable {
@Basic(optional = false)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "OPERADOR_EMBARCADA_LINHA_SEQ")
@Column(name = "OPERADOR_EMBARCADA_LINHA_ID")
+ @AuditarID
private Long operadorEmbarcadaLinhaId;
@ManyToOne
@@ -37,6 +45,10 @@ public class OperadorEmbarcadaLinha implements Serializable {
@Column(name = "ACTIVO")
private Boolean activo;
+
+ @Transient
+ @NaoAuditar
+ private OperadorEmbarcadaLinha operadorClone;
public Long getOperadorEmbarcadaLinhaId() {
return operadorEmbarcadaLinhaId;
@@ -70,4 +82,27 @@ public class OperadorEmbarcadaLinha implements Serializable {
this.ruta = ruta;
}
+ @Override
+ public void clonar() throws CloneNotSupportedException {
+ operadorClone = new OperadorEmbarcadaLinha();
+ operadorClone = (OperadorEmbarcadaLinha) this.clone();
+ }
+
+ @Override
+ public OperadorEmbarcadaLinha getCloneObject() throws CloneNotSupportedException {
+ return operadorClone;
+ }
+
+ @Override
+ public String getTextoInclusaoExclusao() {
+ return String.format("ID [%s]", getOperadorEmbarcadaLinhaId() + "- linha: " + ruta.getRutaId() + " - " + ruta.getDescruta());
+ }
+
+ @Override
+ public String toString() {
+ return ruta.getNumRuta();
+ }
+
+
+
}
diff --git a/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaServico.java b/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaServico.java
index 19ae14282..6ae07afab 100644
--- a/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaServico.java
+++ b/src/com/rjconsultores/ventaboletos/entidad/OperadorEmbarcadaServico.java
@@ -14,11 +14,18 @@ import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
+import javax.persistence.Transient;
+
+import br.com.rjconsultores.auditador.annotations.AuditarClasse;
+import br.com.rjconsultores.auditador.annotations.AuditarID;
+import br.com.rjconsultores.auditador.annotations.NaoAuditar;
+import br.com.rjconsultores.auditador.interfaces.Auditavel;
@Entity
@Table(name = "OPERADOR_EMBARCADA_SERVICO")
+@AuditarClasse(nome = "OPERADOR_EMBARCADA_SERVICO", tela = "auditarClasse.OperadorEmbarcadaServico")
@SequenceGenerator(name = "OPERADOR_EMBARCADA_SERVICO_SEQ", sequenceName = "OPERADOR_EMBARCADA_SERVICO_SEQ", allocationSize = 1)
-public class OperadorEmbarcadaServico implements Serializable {
+public class OperadorEmbarcadaServico implements Serializable, Auditavel {
private static final long serialVersionUID = 1L;
@@ -26,6 +33,7 @@ public class OperadorEmbarcadaServico implements Serializable {
@Basic(optional = false)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "OPERADOR_EMBARCADA_SERVICO_SEQ")
@Column(name = "OPERADOR_EMBARCADA_SERVICO_ID")
+ @AuditarID
private Long operadorEmbarcadaServicoId;
@ManyToOne
@@ -38,6 +46,10 @@ public class OperadorEmbarcadaServico implements Serializable {
@Column(name = "ACTIVO")
private Boolean activo;
+
+ @Transient
+ @NaoAuditar
+ private OperadorEmbarcadaServico operadorClone;
public Long getOperadorEmbarcadaServicoId() {
return operadorEmbarcadaServicoId;
@@ -69,5 +81,28 @@ public class OperadorEmbarcadaServico implements Serializable {
public void setCorrida(EsquemaCorrida corrida) {
this.corrida = corrida;
+ }
+
+ @Override
+ public void clonar() throws CloneNotSupportedException {
+ operadorClone = new OperadorEmbarcadaServico();
+ operadorClone = (OperadorEmbarcadaServico) this.clone();
+ }
+
+ @Override
+ public OperadorEmbarcadaServico getCloneObject() throws CloneNotSupportedException {
+ return operadorClone;
+ }
+
+ @Override
+ public String getTextoInclusaoExclusao() {
+ return String.format("ID [%s]", getOperadorEmbarcadaServicoId() + "- servico: " + corrida.getNumCorrida() + " - " + corrida.getInfoCorrida());
+ }
+
+ @Override
+ public String toString() {
+ return "" + corrida.getNumCorrida();
}
+
+
}
diff --git a/src/com/rjconsultores/ventaboletos/service/impl/OperadorEmbarcadaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/OperadorEmbarcadaServiceImpl.java
index 5ba7c3136..745ce2a5c 100644
--- a/src/com/rjconsultores/ventaboletos/service/impl/OperadorEmbarcadaServiceImpl.java
+++ b/src/com/rjconsultores/ventaboletos/service/impl/OperadorEmbarcadaServiceImpl.java
@@ -3,6 +3,7 @@ package com.rjconsultores.ventaboletos.service.impl;
import java.util.Date;
import java.util.List;
+import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -17,6 +18,7 @@ import com.rjconsultores.ventaboletos.entidad.OperadorEmbarcadaServico;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.entidad.PuntoVentaVO;
import com.rjconsultores.ventaboletos.exception.BusinessException;
+import com.rjconsultores.ventaboletos.service.LogAuditoriaService;
import com.rjconsultores.ventaboletos.service.OperadorEmbarcadaService;
import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO;
@@ -29,6 +31,10 @@ public class OperadorEmbarcadaServiceImpl implements OperadorEmbarcadaService {
private OperadorEmbarcadaServicoDAO opServicoDAO;
@Autowired
private OperadorEmbarcadaLinhaDAO opLinhaDAO;
+
+ @Autowired
+ private LogAuditoriaService logAuditoriaService;
+ private static final Logger log = Logger.getLogger(OperadorEmbarcadaServiceImpl.class);
@Transactional(rollbackFor = BusinessException.class)
@Override
@@ -57,8 +63,18 @@ public class OperadorEmbarcadaServiceImpl implements OperadorEmbarcadaService {
if (operador.getOperadorEmbarcadaId() == null) {
operador = operadorDAO.suscribir(operador);
+ logAuditoriaService.auditar(null, operador, null);
} else {
+ OperadorEmbarcada operadorClone = null;
+ try {
+ operadorClone = operador.getCloneObject();
+ } catch (CloneNotSupportedException e) {
+ log.error("Erro ao clonar oobjeto OperadorEmbarcada, erro: ",e);
+ }
+
operador = operadorDAO.actualizacion(operador);
+
+ logAuditoriaService.auditar(operadorClone, operador, null);
}
return operador;
}
@@ -66,12 +82,22 @@ public class OperadorEmbarcadaServiceImpl implements OperadorEmbarcadaService {
@Transactional
@Override
public void apagar(OperadorEmbarcada operador) throws BusinessException {
+ logAuditoriaService.auditarExclusao(operador, null);
operadorDAO.borrar(operador);
+
}
@Override
public OperadorEmbarcada buscarOperadorEmbarcadaPorUsuario(Integer idUsuario) {
- return operadorDAO.buscarOperadorEmbarcadaPorUsuario(idUsuario);
+ OperadorEmbarcada operador = operadorDAO.buscarOperadorEmbarcadaPorUsuario(idUsuario);
+ try {
+ if(operador != null) {
+ operador.clonar();
+ }
+ } catch (CloneNotSupportedException e) {
+ }
+
+ return operador;
}
@Override