public void Registrar(NuevoUsuario peticion) { using (var db = new VentasDB()) { var usuario = db.Usuarios .FirstOrDefault(x => x.Alias.Equals(peticion.Alias)); if (usuario != null) { throw new InvalidOperationException("Ya existe un usuario con ese nombre"); } if (!peticion.Password.Equals(peticion.ConfirmacionDePassword)) { throw new InvalidOperationException("El password y su confirmacion no coinciden"); } var nuevoUsuario = peticion.ConvertirAEntidad(); nuevoUsuario.Password = this._gestorDeCriptografia.EncriptarEnAES256(peticion.Password); db.Roles .Where(x => peticion.NombresDeLosRoles.Contains(x.Nombre)) .ToList() .ForEach(x => nuevoUsuario.Roles.Add(x)); db.Usuarios.Add(nuevoUsuario); db.SaveChanges(); } }
public VentaRegistrada RegistrarNuevaVenta(NuevaVenta nuevaVenta) { using (var db = new VentasDB()) { Venta venta = nuevaVenta.ConvertirAEntidad(); db.Ventas.Add(venta); db.SaveChanges(); var informacionDeLaVenta = db.Ventas .Where(x => x.Id.Equals(venta.Id)) .Select(x => new { NombreDelCliente = x.Cliente.NombreCompleto, NombreDelVendedor = x.Vendedor.NombreCompleto }) .First(); return(new VentaRegistrada() { Id = venta.Id, Fecha = venta.Fecha, MontoTotal = venta.Total, NombreCliente = informacionDeLaVenta.NombreDelCliente, NombreDelVendedor = informacionDeLaVenta.NombreDelVendedor }); } }
public ClienteCompleto RegistrarNuevoCliente(NuevoCliente nuevoCliente) { using (var db = new VentasDB()) { var cliente = nuevoCliente.ConvertirAEntidad(); db.Clientes.Add(cliente); db.SaveChanges(); return(cliente.ConvertirADTOCompleto()); } }
public ClienteCompleto ActualizarCliente(ActualizacionDeCliente actualizacionDeCliente) { using (var db = new VentasDB()) { var cliente = db.Clientes.Find(actualizacionDeCliente.Id); actualizacionDeCliente.ActualizarRegistro(cliente); db.SaveChanges(); return(cliente.ConvertirADTOCompleto()); } }