public static void EnviarEmail(List<Cliente> clientes, Reserva reserva, Cliente user) { SmtpClient SmtpServer = new SmtpClient(); SmtpServer.Credentials = new System.Net.NetworkCredential ("*****@*****.**", "colabora1234"); SmtpServer.Port = 587; SmtpServer.Host = "smtp.gmail.com"; SmtpServer.EnableSsl = true; var mail = new MailMessage(); String[] addr = clientes.Select(c => c.Email).ToArray(); try { mail.From = new MailAddress("*****@*****.**", "Developers", System.Text.Encoding.UTF8); Byte i; for( i = 0;i< addr.Length; i++) mail.To.Add(addr[i]); mail.Subject = "Reserva de sala"; mail.Body = user.Nombre + " " + user.Apellido + " te ha enviado una notificación de la reserva a la sala " + reserva.Sala.ID + ", desde " + reserva.Desde.ToShortDateString() + " hasta " + reserva.Hasta.ToShortDateString(); mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure; mail.ReplyTo = new MailAddress("*****@*****.**"); SmtpServer.Send(mail); } catch (Exception ex){ } }
public Reserva(Cliente cliente, Sala sala, DateTime fechaDesde, DateTime fechaHasta) { this.Desde = fechaDesde; this.Hasta = fechaHasta; this.Cliente = cliente; this.Sala = sala; this.SeNotifico = false; this.ID = cliente.ID + sala.ID + fechaDesde.Day + fechaDesde.Month + fechaDesde.Year; }
public ActionResult EditarCuenta(Cliente cliente, string confirmarContra, string idGrupoTrabajo, Membresia Membresia, bool membresiaOn = false) { ModelState.Remove("ID"); ModelState.Remove("Contraseña"); if (!membresiaOn) { ModelState.Remove("Membresia.Desde"); ModelState.Remove("Membresia.Hasta"); } if (ModelState.IsValid) { if (ValidarDatos(cliente, confirmarContra, Membresia, membresiaOn)) { return ContinuarEdicionCuenta(cliente, confirmarContra, idGrupoTrabajo, Membresia, membresiaOn); } } CargarViewBags(); return View(cliente); }
private bool ValidarDatos(Cliente cliente, string confirmarContra, Membresia Membresia, bool membresiaOn) { var ok = true; if (cliente.Contraseña != null && !cliente.Contraseña.Equals(confirmarContra)) { ModelState.AddModelError("confirmarContra", "Las contraseñas no coinciden"); ok = false; } if (membresiaOn && Membresia.Desde < DateTime.Today) { ModelState.AddModelError("Membresia.Desde", "La fecha desde debe ser mayoy o igual a hoy"); ok = false; } if (membresiaOn && Membresia.Desde >= Membresia.Hasta) { ModelState.AddModelError("Membresia.Hasta", "La fecha hasta debe ser mayor a la fecha desde"); ok = false; } if (membresiaOn && !Singleton.GetInstance().EsPeriodoMembresiaExcluyente(cliente, Membresia)) { ModelState.AddModelError("Membresia.Desde", "El período de membresia debe de ser excluyente de los anteriores"); ok = false; } return ok; }
private void ModificarCliente(Cliente cliente) { var clienteAModificar = Singleton.GetInstance().GetClientePorID(cliente.ID); clienteAModificar.Apellido = cliente.Apellido; if (!cliente.Contraseña.Equals("")) clienteAModificar.Contraseña = cliente.Contraseña; clienteAModificar.Direccion = cliente.Direccion; clienteAModificar.Email = cliente.Email; clienteAModificar.GrupoTrabajo = cliente.GrupoTrabajo; clienteAModificar.Membresias = cliente.Membresias; clienteAModificar.Nombre = cliente.Nombre; }
private ActionResult ContinuarEdicionCuenta(Cliente cliente, string confirmarContra, string idGrupoTrabajo, Membresia Membresia, bool membresiaOn) { if (idGrupoTrabajo != null) { cliente.GrupoTrabajo = Singleton.GetInstance().GetGrupoTrabajo(idGrupoTrabajo); } if (membresiaOn) { cliente.Membresias.Add(Membresia); Factura factura = new Factura(false) { Cliente = cliente, Membresia = Membresia, TotalAPagar = Membresia.CalcularTotal(), IVA = Membresia.CalcularImpuestos() }; ModificarCliente(cliente); ViewBag.ReturnUrl = "Home"; return View("MostrarFactura", factura); } ModificarCliente(cliente); return RedirectToAction("Index", "Home"); }
public ActionResult Register(Cliente user, string confirmarContra, string idGrupoTrabajo, Membresia Membresia) { if (ModelState.IsValid) { var ok = true; if (!user.Contraseña.Equals(confirmarContra)) { ModelState.AddModelError("confirmarContra", "Las contraseñas no coinciden"); ok = false; } if (Singleton.GetInstance().YaExisteIDCliente(user.ID)) { ModelState.AddModelError("ID", "El identificador ya existe"); ok = false; } if (Membresia.Desde >= Membresia.Hasta) { ModelState.AddModelError("Membresia.Hasta", "La fecha hasta debe ser mayor a la fecha desde"); ok = false; } if (ok) { if (idGrupoTrabajo != null) { user.GrupoTrabajo = Singleton.GetInstance().GetGrupoTrabajo(idGrupoTrabajo); } user.Membresias.Add(Membresia); Singleton.GetInstance().Clientes.Add(user); Factura factura = new Factura(false) { Cliente = user, Membresia = Membresia, TotalAPagar = Membresia.CalcularTotal(), IVA = Membresia.CalcularImpuestos() }; return View("MostrarFactura", factura); } } if (user.ID == null) user.ID = Singleton.GetInstance().GetClienteID(); CargarViewBags(); return View(user); }
public Factura GetFactura(Cliente cliente, DateTime desde, DateTime hasta) { foreach (Factura f in Facturas.Where(f => !f.EsPorReserva).ToList()) { if (f.Cliente.ID.Equals(cliente.ID)) { if (f.Membresia.Desde.Equals(desde) && f.Membresia.Hasta.Equals(hasta)) { return f; } } } return null; }
public bool EsPeriodoMembresiaExcluyente(Cliente cliente, Membresia membresia) { bool esExcluyente = true; foreach (var m in cliente.Membresias) { if (m.Desde < membresia.Desde && m.Hasta > membresia.Desde) { esExcluyente = false; break; } } return esExcluyente; }
public void AddReserva(DateTime desde, DateTime hasta, Sala sala, Cliente cliente) { Reserva reserva = new Reserva(cliente, sala, desde, hasta); Reservas.Add(reserva); }