public void Cliente_EstaActivo() { var BD = Singleton.GetInstance(); var cliente = BD.GetClientePorID("1"); Membresia membresia = new Membresia(DateTime.Today, DateTime.Today.AddDays(5), false); cliente.Membresias.Add(membresia); var obtenido = cliente.EstaActivo(); Assert.AreEqual(true, obtenido); }
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 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 void Membresia_CalcularTotal() { Membresia membresia = new Membresia(DateTime.Today, DateTime.Today.AddDays(5), false); double obtenido = membresia.CalcularTotal(); Assert.AreEqual(61, obtenido); }
public void EsPeriodoMembresiaExcluyente() { var BD = Singleton.GetInstance(); Membresia membresia = new Membresia(DateTime.Today.AddDays(-1), DateTime.Today.AddDays(1), true); var cliente = BD.GetClientePorID("1"); cliente.Membresias.Add(membresia); Membresia membresiaSolapada = new Membresia(DateTime.Today, DateTime.Today.AddDays(2), true); var obtenido = BD.EsPeriodoMembresiaExcluyente(cliente, membresiaSolapada); Assert.AreEqual(false, obtenido); }
public void AddGruposTrabajo() { var grupoNuevo = new GrupoTrabajo() { ID = "1", Nombre = "Grupo 1", Colaboradores = Clientes}; GruposTrabajo.Add(grupoNuevo); Clientes.Where(c => c.ID.Equals("1")).First().GrupoTrabajo = grupoNuevo; Clientes.Where(c => c.ID.Equals("2")).First().GrupoTrabajo = grupoNuevo; Clientes.Where(c => c.ID.Equals("3")).First().GrupoTrabajo = grupoNuevo; Membresia membresia = new Membresia(DateTime.Today, DateTime.Today.AddDays(5), false); Clientes.Where(c => c.ID.Equals("1")).First().Membresias.Add(membresia); }
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 bool DeleteFactura(string idCliente, Membresia membresia = null, Reserva reserva = null) { Factura factura = Facturas.Where(f => f.Cliente.ID.Equals(idCliente) && f.Reserva.Equals(reserva) && f.Membresia.Equals(membresia)).FirstOrDefault(); if (factura != null) { Facturas.Remove(factura); return true; } return false; }