public JsonResult Editer(int? id, ReservationView resaview) { if (ModelState.IsValid) { reservation resa; object retour; var resas = cnx.reservation.Where(r => r.id_materiel == resaview.id_matos && r.date_fin > resaview.debut && r.date_debut < resaview.fin && r.employe.z_actif == true); if (id.HasValue) { resas = resas.Where(r => r.id_reservation != id); } if (resas.Any()) return Json(new { succes = 0, message = "La ressource n'est pas disponible." }); if (!id.HasValue) { resa = new reservation(); resa.UpdateFromModelView(resaview); cnx.AddToreservation(resa); cnx.SaveChanges(); retour = new { succes = 1, creation=1, resa = resa.PourJson() }; } else { resa=cnx.reservation.Where(r=>r.id_reservation==id).Single(); resa.UpdateFromModelView(resaview); cnx.ObjectStateManager.ChangeObjectState(resa, EntityState.Modified); cnx.SaveChanges(); retour = new { succes = 1, creation = 0 }; } return Json(retour); } else { return Json(new { succes = 0, message = "Une erreur s'est produite" }); } }
public void UpdateFromModelView(ReservationView resaview) { this.id_employe = resaview.id_employe; this.commentaires = (String.IsNullOrEmpty(resaview.commentaires)) ? "" : resaview.commentaires; this.date_fin = resaview.fin; this.date_debut = resaview.debut; this.id_materiel = resaview.id_matos; }