lucas me pidio las lineas de codigo

This commit is contained in:
2025-01-29 01:59:16 -03:00
parent c7880b03b3
commit 72f277ab6c
14 changed files with 289 additions and 44 deletions
+45 -24
View File
@@ -44,14 +44,21 @@ public class AuditoriaFacade {
var valorNuevo = cambio.CurrentValues[propiedad]?.ToString();
if (_validadorDeCambios.ValidarCambio(valorAnterior??"", valorNuevo??"")) {
logDetalles.Add(new LogDetalle {
Fecha = fechaActual,
Dniusuario = dniUsuario,
NombreTabla = nombreTabla,
Columna = propiedad.Name,
ValorAnterior = valorAnterior,
ValorNuevo = valorNuevo
});
if (!_context.LogDetalles.Any(ld =>
ld.Fecha == fechaActual &&
ld.Dniusuario == dniUsuario &&
ld.NombreTabla == nombreTabla &&
ld.Columna == propiedad.Name))
{
logDetalles.Add(new LogDetalle {
Fecha = fechaActual,
Dniusuario = dniUsuario,
NombreTabla = nombreTabla,
Columna = propiedad.Name,
ValorAnterior = valorAnterior,
ValorNuevo = valorNuevo
});
}
}
}
break;
@@ -61,14 +68,21 @@ public class AuditoriaFacade {
if (propiedad.Name == "Token") break;
var valorNuevo = cambio.CurrentValues[propiedad]?.ToString();
logDetalles.Add(new LogDetalle {
Fecha = fechaActual,
Dniusuario = dniUsuario,
NombreTabla = nombreTabla,
Columna = propiedad.Name,
ValorAnterior = null,
ValorNuevo = valorNuevo
});
if (!_context.LogDetalles.Any(ld =>
ld.Fecha == fechaActual &&
ld.Dniusuario == dniUsuario &&
ld.NombreTabla == nombreTabla &&
ld.Columna == propiedad.Name))
{
logDetalles.Add(new LogDetalle {
Fecha = fechaActual,
Dniusuario = dniUsuario,
NombreTabla = nombreTabla,
Columna = propiedad.Name,
ValorAnterior = null,
ValorNuevo = valorNuevo
});
}
}
break;
@@ -77,14 +91,21 @@ public class AuditoriaFacade {
if (propiedad.Name == "Token") break;
var valorAnterior = cambio.OriginalValues[propiedad]?.ToString();
logDetalles.Add(new LogDetalle {
Fecha = fechaActual,
Dniusuario = dniUsuario,
NombreTabla = nombreTabla,
Columna = propiedad.Name,
ValorAnterior = valorAnterior,
ValorNuevo = null
});
if (!_context.LogDetalles.Any(ld =>
ld.Fecha == fechaActual &&
ld.Dniusuario == dniUsuario &&
ld.NombreTabla == nombreTabla &&
ld.Columna == propiedad.Name))
{
logDetalles.Add(new LogDetalle {
Fecha = fechaActual,
Dniusuario = dniUsuario,
NombreTabla = nombreTabla,
Columna = propiedad.Name,
ValorAnterior = valorAnterior,
ValorNuevo = null
});
}
}
break;
+6 -1
View File
@@ -4,8 +4,13 @@ public class PersistenciaLog {
private AlquilaFacilContext _context {get{return new AlquilaFacilContext();}}
public void GuardarLog(Log log, IEnumerable<LogDetalle> detalles) {
var con = _context;
int j = 1;
foreach (var i in log.LogDetalles) {
i.Id = j;
j++;
}
con.Logs.Add(log);
con.LogDetalles.AddRange(detalles);
//con.LogDetalles.AddRange(detalles);
con.SaveChanges();
}
}
+12 -2
View File
@@ -4,11 +4,21 @@ using Microsoft.EntityFrameworkCore;
namespace Modelo;
public class RepositorioLogs: RepositorioBase<RepositorioLogs> {
public ICollection<LogDetalle> ObtenerDetallesLogs(DateTime fecha, long idusuario) {
public int ObtenerCantidadPaginas() {
var con = Context;
float a = con.Logs.Count()/10f;
int b = (int)a;
if (b != a){
b++;
}
return b;
}
public IOrderedEnumerable<LogDetalle> ObtenerDetallesLogs(DateTime fecha, long idusuario) {
var con = Context;
var d = con.Logs.Include(x=>x.LogDetalles)
.FirstOrDefault(x => x.Fecha == fecha && x.Dniusuario == idusuario);
return d.LogDetalles;
return d.LogDetalles.OrderBy(x=>x.Id);
}
public IQueryable<Log>? ObtenerLogsPaginado(int pag) {
+4 -4
View File
@@ -129,7 +129,7 @@ public class RepositorioUsuarios: RepositorioBase<RepositorioUsuarios> {
return list;
}
public bool AñadirClienteAGrupo(string email, string grupo) {
public bool AñadirClienteAGrupo(string email, string grupo, long dni) {
var con = Context;
var cli = con.Clientes.Include(x => x.Idgrupos).FirstOrDefault(x => x.Email == email);
@@ -140,11 +140,11 @@ public class RepositorioUsuarios: RepositorioBase<RepositorioUsuarios> {
}
cli.Idgrupos.Add(gru);
GenerarLog(con, cli.Dni, $"Añadir grupo: {gru.Nombre}");
GenerarLog(con, dni, $"Añadir grupo: {gru.Nombre}");
return Guardar(con);
}
public bool EliminarClienteAGrupo(string email, string grupo) {
public bool EliminarClienteAGrupo(string email, string grupo, long dniresponsable) {
var con = Context;
var cli = con.Clientes.Include(x => x.Idgrupos).FirstOrDefault(x => x.Email == email);
@@ -154,7 +154,7 @@ public class RepositorioUsuarios: RepositorioBase<RepositorioUsuarios> {
return false;
}
cli.Idgrupos.Remove(gru);
GenerarLog(con, cli.Dni, $"Eliminar de grupo: {gru.Nombre}");
GenerarLog(con, dniresponsable, $"Eliminar de grupo: {gru.Nombre}");
return Guardar(con);
}