public ActionResult RegisterSalon(ViewModelFormAddSalon model) { if (ModelState.IsValid) { int idSalon = Bdd.AddSalon(model); if (idSalon == 0) { //Exception ModelState.AddModelError("Email", "Erreur inconnue"); model.CreateListeAbonnements(Bdd.GetAbonnements()); return View(model); } int idManager = Bdd.AddManager(new Manager { Email = model.Email, Genre = model.GenreId == 1, Nom = model.Nom, Prenom = model.Prenom, Password = model.Password.ToMd5(), IdRole = 3, IdSalon = idSalon }); if (idManager == 0) { //Exception ModelState.AddModelError("Email", "Erreur inconnue"); model.CreateListeAbonnements(Bdd.GetAbonnements()); return View(model); } //On est ok FormsAuthentication.SetAuthCookie(idManager.ToString(), false); return RedirectToRoute("Backend_salon_index", new {id = idSalon }); } model.CreateListeAbonnements(Bdd.GetAbonnements()); return View(model); }
/// <summary> /// Permet de générer la liste des jours ouvertures d'un salon /// </summary> /// <param name="modelAddSalon">ViewModelAddSalon</param> /// <returns>List{JourOuverture}</returns> private List<Disponibilite> CreateListeJourOuvertures(ViewModelFormAddSalon model = null) { try { if (model.IsNull()) return null; //Création des jours var listeJour = GetDisponibiliteInit(); //On attribut les jours var lundi = new Disponibilite(); var mardi = new Disponibilite(); var mercredi = new Disponibilite(); var jeudi = new Disponibilite(); var vendredi = new Disponibilite(); var samedi = new Disponibilite(); var dimanche = new Disponibilite(); foreach (var j in listeJour.Where(j => !j.IsNull() && !j.Jour.IsNull())) { switch (j.Jour.Id) { case 1: lundi = j; break; case 2: mardi = j; break; case 3: mercredi = j; break; case 4: jeudi = j; break; case 5: vendredi = j; break; case 6: samedi = j; break; case 7: dimanche = j; break; } } //Attribution horaire lundi lundi.CreneauMatin.DebutHeure = model.LundiOuvertureMatin.Split(':').First().ToInt(); lundi.CreneauMatin.DebutMinute = model.LundiOuvertureMatin.Split(':').Last().ToInt(); lundi.CreneauMatin.FinHeure = model.LundiFermetureMatin.Split(':').First().ToInt(); lundi.CreneauMatin.FinMinute = model.LundiFermetureMatin.Split(':').Last().ToInt(); lundi.CreneauAprem.DebutHeure = model.LundiOuvertureAprem.Split(':').First().ToInt(); lundi.CreneauAprem.DebutMinute = model.LundiOuvertureAprem.Split(':').Last().ToInt(); lundi.CreneauAprem.FinHeure = model.LundiFermetureAprem.Split(':').First().ToInt(); lundi.CreneauAprem.FinMinute = model.LundiFermetureAprem.Split(':').Last().ToInt(); //Attribution horaire mardi mardi.CreneauMatin.DebutHeure = model.MardiOuvertureMatin.Split(':').First().ToInt(); mardi.CreneauMatin.DebutMinute = model.MardiOuvertureMatin.Split(':').Last().ToInt(); mardi.CreneauMatin.FinHeure = model.MardiFermetureMatin.Split(':').First().ToInt(); mardi.CreneauMatin.FinMinute = model.MardiFermetureMatin.Split(':').Last().ToInt(); mardi.CreneauAprem.DebutHeure = model.MardiOuvertureAprem.Split(':').First().ToInt(); mardi.CreneauAprem.DebutMinute = model.MardiOuvertureAprem.Split(':').Last().ToInt(); mardi.CreneauAprem.FinHeure = model.MardiFermetureAprem.Split(':').First().ToInt(); mardi.CreneauAprem.FinMinute = model.MardiFermetureAprem.Split(':').Last().ToInt(); //Attribution horaire mercredi mercredi.CreneauMatin.DebutHeure = model.MercrediOuvertureMatin.Split(':').First().ToInt(); mercredi.CreneauMatin.DebutMinute = model.MercrediOuvertureMatin.Split(':').Last().ToInt(); mercredi.CreneauMatin.FinHeure = model.MercrediFermetureMatin.Split(':').First().ToInt(); mercredi.CreneauMatin.FinMinute = model.MercrediFermetureMatin.Split(':').Last().ToInt(); mercredi.CreneauAprem.DebutHeure = model.MercrediOuvertureAprem.Split(':').First().ToInt(); mercredi.CreneauAprem.DebutMinute = model.MercrediOuvertureAprem.Split(':').Last().ToInt(); mercredi.CreneauAprem.FinHeure = model.MercrediFermetureAprem.Split(':').First().ToInt(); mercredi.CreneauAprem.FinMinute = model.MercrediFermetureAprem.Split(':').Last().ToInt(); //Attribution horaire jeudi jeudi.CreneauMatin.DebutHeure = model.JeudiOuvertureMatin.Split(':').First().ToInt(); jeudi.CreneauMatin.DebutMinute = model.JeudiOuvertureMatin.Split(':').Last().ToInt(); jeudi.CreneauMatin.FinHeure = model.JeudiFermetureMatin.Split(':').First().ToInt(); jeudi.CreneauMatin.FinMinute = model.JeudiFermetureMatin.Split(':').Last().ToInt(); jeudi.CreneauAprem.DebutHeure = model.JeudiOuvertureAprem.Split(':').First().ToInt(); jeudi.CreneauAprem.DebutMinute = model.JeudiOuvertureAprem.Split(':').Last().ToInt(); jeudi.CreneauAprem.FinHeure = model.JeudiFermetureAprem.Split(':').First().ToInt(); jeudi.CreneauAprem.FinMinute = model.JeudiFermetureAprem.Split(':').Last().ToInt(); //Attribution horaire vendredi vendredi.CreneauMatin.DebutHeure = model.VendrediOuvertureMatin.Split(':').First().ToInt(); vendredi.CreneauMatin.DebutMinute = model.VendrediOuvertureMatin.Split(':').Last().ToInt(); vendredi.CreneauMatin.FinHeure = model.VendrediFermetureMatin.Split(':').First().ToInt(); vendredi.CreneauMatin.FinMinute = model.VendrediFermetureMatin.Split(':').Last().ToInt(); vendredi.CreneauAprem.DebutHeure = model.VendrediOuvertureAprem.Split(':').First().ToInt(); vendredi.CreneauAprem.DebutMinute = model.VendrediOuvertureAprem.Split(':').Last().ToInt(); vendredi.CreneauAprem.FinHeure = model.VendrediFermetureAprem.Split(':').First().ToInt(); vendredi.CreneauAprem.FinMinute = model.VendrediFermetureAprem.Split(':').Last().ToInt(); //Attribution horaire samedi samedi.CreneauMatin.DebutHeure = model.SamediOuvertureMatin.Split(':').First().ToInt(); samedi.CreneauMatin.DebutMinute = model.SamediOuvertureMatin.Split(':').Last().ToInt(); samedi.CreneauMatin.FinHeure = model.SamediFermetureMatin.Split(':').First().ToInt(); samedi.CreneauMatin.FinMinute = model.SamediFermetureMatin.Split(':').Last().ToInt(); samedi.CreneauAprem.DebutHeure = model.SamediOuvertureAprem.Split(':').First().ToInt(); samedi.CreneauAprem.DebutMinute = model.SamediOuvertureAprem.Split(':').Last().ToInt(); samedi.CreneauAprem.FinHeure = model.SamediFermetureAprem.Split(':').First().ToInt(); samedi.CreneauAprem.FinMinute = model.SamediFermetureAprem.Split(':').Last().ToInt(); //Attribution horaire dimanche dimanche.CreneauMatin.DebutHeure = model.DimancheOuvertureMatin.Split(':').First().ToInt(); dimanche.CreneauMatin.DebutMinute = model.DimancheOuvertureMatin.Split(':').Last().ToInt(); dimanche.CreneauMatin.FinHeure = model.DimancheFermetureMatin.Split(':').First().ToInt(); dimanche.CreneauMatin.FinMinute = model.DimancheFermetureMatin.Split(':').Last().ToInt(); dimanche.CreneauAprem.DebutHeure = model.DimancheOuvertureAprem.Split(':').First().ToInt(); dimanche.CreneauAprem.DebutMinute = model.DimancheOuvertureAprem.Split(':').Last().ToInt(); dimanche.CreneauAprem.FinHeure = model.DimancheFermetureAprem.Split(':').First().ToInt(); dimanche.CreneauAprem.FinMinute = model.DimancheFermetureAprem.Split(':').Last().ToInt(); return new List<Disponibilite> { lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche }; } catch (Exception) { return null; } }
/// <summary> /// Permet de créer l'objet Salon à partir du model /// </summary> /// <param name="model">Le model Form</param> /// <returns>Salon</returns> private Salon CreateSalon(ViewModelFormAddSalon model) { try { if (model.IsNull()) return null; var listeJours = CreateListeJourOuvertures(model); if (listeJours.IsEmpty()) return null; var salon = new Salon { FicheSalon = new FicheSalon { JourOuvertures = listeJours, Adresse = model.Adresse, CodePostal = model.CodePostal, Pays = model.Pays, Ville = model.NomVille, NombreEmployes = 0, Nom = model.NomSalon, Description = model.DescriptionSalon }, ListeAvis = new List<Avis>(), ListeEmployes = new List<Employe>(), Moyenne = 0, PrestationClients = new List<ReservationClient>() }; return salon; } catch (Exception) { return null; } }
/// <summary> /// Permet d'ajouter un salon /// </summary> /// <param name="admin">AdministrateurFranchise</param> /// <param name="salon">Salon</param> /// <returns>bool</returns> public int AddSalon(ViewModelFormAddSalon model = null) { try { if (model.IsNull()) return 0; var salon = new Salon { FicheSalon = new FicheSalon { JourOuvertures = GetDisponibiliteInit(), Adresse = model.Adresse, CodePostal = model.CodePostal, Pays = model.Pays, Ville = model.NomVille, NombreEmployes = 0, Nom = model.NomSalon, Description = model.DescriptionSalon }, ListeAvis = new List<Avis>(), ListeEmployes = new List<Employe>(), Moyenne = 0, PrestationClients = new List<ReservationClient>(), IdAbonnement = model.AbonnementId, }; if (salon.IsNull()) return 0; //On regarde si il y a une photo de profil du salon var rform = new RForm(); salon.FicheSalon.ImageProfil = rform.GetImage("~/Content/ImagesSalons/", "file", 400, 400); Salons.Add(salon); SaveChanges(); return salon.Id; } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { foreach (var ve in eve.ValidationErrors) { var g = ve.ErrorMessage; Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } return 0; } }