public ActionResult Import(HttpPostedFileBase file) { try { if (file.ContentLength > 0) { string _FileName = Path.GetFileName(file.FileName); string ext = Path.GetExtension(_FileName); if (ext.Equals(".csv")) { string _path = Path.Combine(Server.MapPath("~/UploadedFiles"), _FileName); file.SaveAs(_path); MgtResultat.GetInstance().DoTraitementImport(_path); ViewBag.Message = "Upload du fichier réussi"; } else { ViewBag.Message = "Veuillez uploader seulement un fichier csv"; } } else { ViewBag.Message = "Erreur fichier vide"; } return(View()); } catch { ViewBag.Message = "Upload du fichier en echec"; return(View()); } }
public ActionResult ResultatByUser() { PersonneModel user = (PersonneModel)Session.Contents["User"]; List <Resultat> results = new List <Resultat>(); results = MgtResultat.GetInstance().GetResultatsById(user.Id); List <ResultatModel> resultatModels = results.Select(x => x.ToModel()).ToList(); return(View(resultatModels)); }
public ActionResult AfficheResult(int idRace, int?page = 1) { List <Resultat> results = MgtResultat.GetInstance().GetResultatsByIdRace(idRace); Race race = MgtRace.GetInstance().GetRace(idRace); int pageSize = 50; int pageNumber = (page ?? 1); var resultPage = results.Select(x => x.ToModel()).ToPagedList(pageNumber, pageSize); ViewBag.race = race.Id; ViewBag.ville = race.Title + " - " + race.Town; return(View("Import", resultPage)); }
public ActionResult Import(int?page = 1) { PersonneModel personne = (PersonneModel)Session.Contents["user"]; List <ResultatModel> modelsResult = new List <ResultatModel>(); HttpPostedFileBase fichier = Request.Files["FileResult"]; if (fichier != null) { StreamReader stream = new StreamReader(fichier.InputStream); string chaine = stream.ReadToEnd(); String[] lignes = chaine.Split('\r', '\n'); foreach (var ligne in lignes) { if (String.IsNullOrEmpty(ligne)) { continue; } ResultatModel model = new ResultatModel(); string[] champs = ligne.Split(';'); model.Race = MgtRace.GetInstance().GetRace(int.Parse(champs[1])).ToModel(); model.Personne = MgtPersonne.GetInstance().GetPersonneByID(int.Parse(champs[0])).ToModel(); model.Classement = int.Parse(champs[2]); model.TempsDeCourse = TimeSpan.Parse(champs[3]); model.HeureDebut = TimeSpan.Parse(champs[4]); model.HeureArrivee = TimeSpan.Parse(champs[5]); modelsResult.Add(model); } } bool res = MgtResultat.GetInstance().Save(modelsResult.Select(x => x.ToBo()).ToList()); if (res) { return(RedirectToAction("Index", "Admin")); //return View(valRet); } else { return(View("Importresult")); } }
public ActionResult Affichage() { List <int> results = MgtResultat.GetInstance().GetResultats(); List <RaceModel> races = new List <RaceModel>(); foreach (int result in results) { RaceModel race = MgtRace.GetInstance().GetRace(result).ToModel(); races.Add(race); } return(View(races)); }
public ActionResult ExportResults(int idRace) { List <Resultat> results = MgtResultat.GetInstance().GetResultatsByIdRace(idRace); Race course = MgtRace.GetInstance().GetRace(idRace); string lines = "Id Particpant;IdCourse;Classement;.Temps de course"; // Write the string to a file. System.IO.StreamWriter file = new System.IO.StreamWriter("D:\\Result" + course.Title + "_" + course.Town + ".csv"); file.WriteLine(lines); foreach (Resultat resultat in results) { string ligne = resultat.Personne.Nom + ";" + resultat.Race.Town + ";" + resultat.Classement + ";" + resultat.TempsDeCourse; file.WriteLine(ligne); } file.Close(); return(RedirectToAction("Index", "Admin")); }
public ActionResult Delete(int idPoint, FormCollection collection) { try { PointModel point = MgtPoint.GetInstance().GetPointById(idPoint).ToModel(); List <Resultat> listResultats = MgtResultat.GetInstance().GetAllByPoint(idPoint).ToList(); //Suppression des résultats associés au point foreach (Resultat resultat in listResultats) { MgtResultat.GetInstance().DeleteResultat(resultat.id); } int ordre = point.Ordre; int taille = MgtPoint.GetInstance().GetAllWithCourseAndTypePointByCourse(point.IdCourse).Count; if (ordre < taille - 1) { while (ordre < taille - 1) { ordre++; Point pointSup = MgtPoint.GetInstance().GetPointByCourseAndOrder(point.IdCourse, ordre); pointSup.Ordre = ordre - 1; MgtPoint.GetInstance().UpdatePoint(pointSup); } } var result = MgtPoint.GetInstance().DeletePoint(idPoint); if (result) { return(RedirectToAction("Index", new { id = point.IdCourse })); } else { return(View()); } } catch { return(View()); } }
public ActionResult Resultat(int id = 0) { if (!WebSecurity.Initialized) { WebSecurity.InitializeDatabaseConnection("SqlAdoCs", "UserTable", "Id", "Name", autoCreateTables: true); } int idUser = WebSecurity.CurrentUserId; List <Resultat> resultats = MgtResultat.GetInstance().GetAllByCourseAndPersonne(id, idUser); Race course = MgtRace.GetInstance().GetRace(id); List <ResultatModel> models = new List <ResultatModel>(); Boolean first = true; DateTime debut = DateTime.Now; foreach (Resultat bo in resultats) { ResultatModel model = bo.ToModel(); if (first) { debut = model.temps; model.tempsPoint = "0:00:00.000"; first = false; } else { TimeSpan span = model.temps.Subtract(debut); model.tempsPoint = formatTemps(span); } model.Point = MgtPoint.GetInstance().GetPointById(model.idPoint).ToModel(); models.Add(model); } models.OrderBy(x => x.Point.Ordre); ResultatView view = new ResultatView() { Course = course.ToModel(), resultats = models }; return(View(view)); }