public ActionResult Edit([Bind(Include = "ID,Nom,Files,Columnes,Localitat,Codipostal")] TeatreVista teatre) { //Adreça e = new Adreça(teatre.Comarca, teatre.Localitat, teatre.Codipostal); //Teatre t = new Teatre(e, teatre.Nom, teatre.Files, teatre.Columnes); mpiscatalunya municipi = bd.obtenirMunicipi(teatre.Localitat); Teatre t = bd.obtenirTeatreperId(teatre.ID); Adreça adreça = bd.obtenirAdreçaperId(t.AdreçaID); adreça.editarAdreça(municipi, teatre.Codipostal); t.Files = teatre.Files; t.Columnes = teatre.Columnes; t.Nom = teatre.Nom; if (ModelState.IsValid) { bd.editar(t, adreça); //db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); //ViewBag.AdreçaID = new SelectList(db.Adreces, "ID", "Comarca", teatre.AdreçaID); return(View(teatre)); }
public ActionResult Create([Bind(Include = "ID,Nom,Files,Columnes,Localitat,Codipostal")] TeatreVista teatre) { mpiscatalunya municipi = bd.obtenirMunicipi(teatre.Localitat); Adreça e = new Adreça(municipi.Nomcomarca, teatre.Localitat, teatre.Codipostal); Teatre t = new Teatre(e, teatre.Nom, teatre.Files, teatre.Columnes); if (ModelState.IsValid) { bd.afegirTeatre(t, e); return(RedirectToAction("Index")); } ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); //ViewBag.AdreçaID = new SelectList(db.Adreces, "ID", "Comarca", teatre.AdreçaID); return(View(teatre)); }
public ActionResult Create([Bind(Include = "NIF,nom,edat,email,password,Localitat,dataNaixement,telefon,tipus,cognoms,Codipostal")] PersonaVista persona) { try { //Validation validation = new Validation(); mpiscatalunya municipi = bd.obtenirMunicipi(persona.Localitat); Adreça e = new Adreça(municipi.Nomcomarca, persona.Localitat, persona.Codipostal); // t = new Persona(); //int i = (int)persona.tipus; switch (persona.tipus) { case TipusPersona.Client: { if (bd.ExisteixEmail(persona.email)) { ModelState.AddModelError("email", "L'email ha de ser únic"); ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); return(View()); } if (ModelState.IsValid) { Client client = new Client(e, persona.NIF, persona.nom, persona.edat, persona.email, persona.password, persona.telefon.GetValueOrDefault(), persona.dataNaixement.HasValue ? persona.dataNaixement.Value : DateTime.Now, persona.Cognoms); bd.afegirClient(client, e); return(RedirectToAction("Index")); } break; } case TipusPersona.Administrador: { if (bd.ExisteixEmail(persona.email)) { ModelState.AddModelError("email", "L'email ha de ser únic"); ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); return(View()); } //camps.Select(e => e); if (ModelState.IsValid) { Administrador admin = new Administrador(e, persona.NIF, persona.nom, persona.edat, persona.email, persona.password, persona.telefon.GetValueOrDefault(), persona.dataNaixement.HasValue ? persona.dataNaixement.Value : DateTime.Now); bd.afegirAdministrador(admin, e); return(RedirectToAction("Index")); } break; } case TipusPersona.Director: { if (ModelState.IsValid) { Director director = new Director(e, persona.NIF, persona.nom, persona.edat); bd.afegirDirector(director, e); return(RedirectToAction("Index")); } break; } case TipusPersona.Autor: { if (ModelState.IsValid) { Autor autor = new Autor(e, persona.NIF, persona.nom, persona.edat); bd.afegirAutor(autor, e); return(RedirectToAction("Index")); } break; } default: break; } /*if (ModelState.IsValid) * { * * db.Persones.Add(persona); * db.SaveChanges(); * return RedirectToAction("Index"); * }*/ //ViewBag.AdreçaID = new SelectList(db.Adreces, "ID", "Comarca", persona.AdreçaID); ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); ViewBag.Actual = DateTime.Now.ToString("yyyy-MM-dd"); //ModelState.AddModelError("", "Omple tots els camps"); return(View()); }catch (DbUpdateException e) { ViewBag.Actual = DateTime.Now.ToString("yyyy-MM-dd"); ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); ModelState.AddModelError("NIF", "Aquest NIF ja existeix"); return(View()); } }
public ActionResult Edit([Bind(Include = "NIF,nom,edat,email,password,Comarca,Localitat,Codipostal,tipus,telefon,dataNaixement,Cognoms")] PersonaVista person) { if (ModelState.IsValid) { Adreça adreça = null; mpiscatalunya municipi = bd.obtenirMunicipi(person.Localitat); if (person.tipus == TipusPersona.Autor || person.tipus == TipusPersona.Director) { //Persona persona = new Persona(new Adreça(p.Comarca,p.Localitat,p.Codipostal),p.NIF,p.nom,p.edat); Persona tmpp = bd.obtenirPersonaperNIF(person.NIF); tmpp.edat = person.edat; tmpp.nom = person.nom; adreça = bd.obtenirAdreçaperId(tmpp.AdreçaID); adreça.editarAdreça(municipi, person.Codipostal); bd.editar(tmpp, adreça); return(RedirectToAction("Index")); } else if (person.tipus == TipusPersona.Administrador) { if (bd.ExisteixEmail(person.NIF, person.email)) { ModelState.AddModelError("email", "L'email ha de ser únic"); return(View()); } Administrador tmpp = bd.obtenirAdminperId(person.NIF); adreça = bd.obtenirAdreçaperId(tmpp.AdreçaID); adreça.editarAdreça(municipi, person.Codipostal); tmpp.edat = person.edat; tmpp.nom = person.nom; tmpp.email = person.email; tmpp.password = person.password; tmpp.telefon = person.telefon.GetValueOrDefault(); tmpp.dataNaixement = person.dataNaixement.HasValue ? person.dataNaixement.Value : DateTime.Now; bd.editar(tmpp, adreça); return(RedirectToAction("Index")); } else { if (bd.ExisteixEmail(person.NIF, person.email)) { ModelState.AddModelError("email", "L'email ha de ser únic"); return(View()); } Client tmpp = bd.obtenirClientperId(person.NIF); adreça = bd.obtenirAdreçaperId(tmpp.AdreçaID); adreça.editarAdreça(municipi, person.Codipostal); tmpp.edat = person.edat; tmpp.nom = person.nom; tmpp.email = person.email; tmpp.password = person.password; tmpp.telefon = person.telefon.GetValueOrDefault(); tmpp.dataNaixement = person.dataNaixement.HasValue? person.dataNaixement.Value : DateTime.Now; tmpp.Cognoms = person.Cognoms; bd.editar(tmpp, adreça); return(RedirectToAction("Index")); } } //ViewBag.AdreçaID = new SelectList(db.Adreces, "ID", "Comarca", persona.AdreçaID); ViewBag.Municipis = new SelectList(bd.obtenirMunicipis()); ViewBag.Actual = DateTime.Now.ToString("yyyy-MM-dd"); return(View()); }