P280 - Auditoria alterações (issue 8366)

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@66909 d1611594-4594-4d17-8e1d-87c2c4800839
master
alberto 2017-03-15 22:16:53 +00:00
parent 41612bb5a2
commit 5637dc58e0
2 changed files with 36 additions and 2 deletions

View File

@ -25,6 +25,8 @@ public class AuditControl {
private String currentActionService;
private Boolean checkModuleAudit;
private AuditService currentService;
private Boolean auditar;
private static Gson gson;
private static SimpleDateFormat sdf;
@ -217,4 +219,12 @@ public class AuditControl {
public void setCheckModuleAudit(Boolean checkModuleAudit) {
this.checkModuleAudit = checkModuleAudit;
}
public Boolean getAuditar() {
return auditar;
}
public void setAuditar(Boolean auditar) {
this.auditar = auditar;
}
}

View File

@ -17,15 +17,16 @@ import com.rjconsultores.ventaboletos.auditoria.AuditManager;
import com.rjconsultores.ventaboletos.dao.util.DBUtil;
import com.rjconsultores.ventaboletos.entidad.AuditLog;
import com.rjconsultores.ventaboletos.entidad.AuditService;
import com.rjconsultores.ventaboletos.entidad.Constante;
import com.rjconsultores.ventaboletos.entidad.FuncionSistema;
import com.rjconsultores.ventaboletos.entidad.Sistema;
import com.rjconsultores.ventaboletos.enums.auditoria.EnumAuditAction;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
public class AuditInterceptor extends EmptyInterceptor {
private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(AuditInterceptor.class);
private static final long serialVersionUID = 1L;
// Considera que o ADM sempre tenha o ID igual a 1
private Integer SISTEMA_ID = 1;
@ -127,6 +128,29 @@ public class AuditInterceptor extends EmptyInterceptor {
}
private boolean getAuditModuleService(final Session session) {
if (AuditManager.getINSTANCE().getAuditar() == null) {
Criteria criteriaAuditar = session.createCriteria(Constante.class);
criteriaAuditar.add(Restrictions.eq("nombconstante", "AUDITAR_SISTEMA"));
criteriaAuditar.add(Restrictions.eq("activo", Boolean.TRUE));
Constante constante = (Constante) criteriaAuditar.uniqueResult();
Boolean auditar = Boolean.FALSE;
if (constante != null) {
try {
auditar = Boolean.valueOf(constante.getValorconstante());
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}
AuditManager.getINSTANCE().setAuditar(auditar);
}
if (AuditManager.getINSTANCE().getAuditar() == null || !AuditManager.getINSTANCE().getAuditar()) {
return false;
}
if (!AuditManager.getINSTANCE().getCheckModuleAudit()) {
return AuditManager.getINSTANCE().getCurrentService() != null ? true : false;
}