Bonjour,
Je débute sur Visual Studios 2015 et en développement globalement.
Je souhaite créer une appli web asp net MVC.
Mon objectif est de permettre à des responsables d'agence de saisir les horaires de leur personnel chaque jour. (heure d'arrivée et heure de fin).
J'aimerai qu'ils puisseent sélectionner dans une liste déroulante une agence (centrale), plusieurs salariés (chauffeurs) ainsi que la date correspondante.
En fonction de ces choix je voudrai qu'ils soient redirigés vers une autre page (cette fois pour saisir les horaires des salariés).
Celle-ci reprendra les éléments sélectionnés pour obtenir un tableau ou chaque ligne correspond aux chauffeurs et 2 colonnes heuredebut et heurefin non renseignées.
Ceci afin de saisir les horaires dans ces 2 colonnes.
Pour le moment j'ai réussi à créer ma page de sélection avec 2 listes déroulantes et une zone de saisie pour la date.
Mon soucis est de créer ma seconde page de saisie décrite ci-dessus...je bloque...
Je vous mets mes codes ci-dessous en espérant que vous puissiez m'aiguiller et me donner de bon conseils
Merci d'avance
Mes modèles
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 // GET: Sélection des données public ActionResult Selection() { ViewBag.Central = new SelectList(db.Centrales, "ID", "NomCentrale"); var model = db.Chauffeurs; return View(new Chauffeurslist() { Chauffeurs = model.ToList() }); } [HttpPost] public ActionResult Selection(Chauffeurslist model) { List<Chauffeurheures> list = new List<Chauffeurheures>(); foreach (var item in model.SelectedIDs) { Chauffeurheures c = new Chauffeurheures(); c.Chauffeurs = item; var heure = db.Heures.Where(a => a.ChauffeurID == item && a.CentraleID == model.Central && a.DateTravail == model.DateTravail).FirstOrDefault(); if (heure != null) { c.heurededebut = heure.HeureDebut; c.heuredefin = heure.HeureFin; } list.Add(c); } return RedirectToAction("Saisie"); } // GET: Saisie public ActionResult Saisie() { // je n'ai aucune idée sur cette partie et comment reprendre les informations de la sélection ci-dessus return View(); }
Voici ma vue de selection
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 public class Chauffeur { [DatabaseGenerated(DatabaseGeneratedOption.None)] public int ID { get; set; } public string NomChauffeur { get; set; } public string PrenomChauffeur { get; set; } public DateTime DateNaissance { get; set; } public virtual ICollection<Heure> Heures { get; set; } } } public class Chauffeurheures { public int Chauffeurs { get; set; } public string heurededebut { get; set; } public string heuredefin { get; set; } public virtual Chauffeur Chauffeur { get; set; } } public class Chauffeurslist { public List<Chauffeur> Chauffeurs { get; set; } public List<int> SelectedIDs { get; set; } public int Central { get; set; } public DateTime DateTravail { get; set; } }
Code ASP.NET : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 @model ApplicationWeb.Models.Chauffeurslist @{ ViewBag.Title = "Selection"; } <h2>Sélection des chauffeurs pour une saisie des horaires des chauffeurs</h2> @using (Html.BeginForm()) { <div> <h4>Horaires</h4> <hr /> <dl class="dl-horizontal"> <dt> @Html.DropDownList("Central", null, htmlAttributes: new { @class = "form-control" }) </dt> <dt> @Html.ListBoxFor(m => m.SelectedIDs, new MultiSelectList(Model.Chauffeurs, "ID", "NomChauffeur", Model.SelectedIDs)) </dt> <dt> @Html.TextBoxFor(m => m.DateTravail) </dt> <dd> </dl> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value="Enregistrer la saisie" class="btn btn-default" /> </div> </div> </div> }
Partager