// PUT: api/Ressource/5 public void Put(ressClient majRes) { Ressource ressource = db.Ressource.Where(res => res.ID == majRes.id).FirstOrDefault(); ressource.Initial = majRes.initial; ressource.Name = majRes.name; ressource.Niveau = majRes.niveau; ressource.Mail = majRes.mail; ressource.Obsolete = false; List <Tarification_Ressource> tarRess = db.Tarification_Ressource.Where(t => t.FK_Ressource == majRes.id).ToList(); foreach (Tarification_Ressource tar in tarRess) { db.Tarification_Ressource.Attach(tar); db.Tarification_Ressource.Remove(tar); } db.SaveChanges(); foreach (Int16 idTar in majRes.tarification) { Tarification_Ressource tarification_ressource = new Tarification_Ressource(); tarification_ressource.FK_Ressource = majRes.id; Tarification tar = db.Tarification.Where(res => res.ID == idTar).FirstOrDefault(); tarification_ressource.FK_Tarification = tar.ID; db.Tarification_Ressource.Add(tarification_ressource); } db.SaveChanges(); }
// GET: api/TarificationRessource/5 public Tarification_Ressource Get(int id) // renvoie la Tarification Ressource d'id ID { Tarification_Ressource res = this.db.Tarification_Ressource.Where(s => s.ID == id).FirstOrDefault(); // renvoi l'objet pointé par l'id pris en paramètre if (res != null) { return(res); } else { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.NotFound, "pas d'objet pour cet ID")); } }
// DELETE: api/TarificationRessource/5 public void Delete(int id) // Détruit une Une TarificationRessource { try // vérrif si un objet a été trouvé pour l'id { Tarification_Ressource ts = db.Tarification_Ressource.Where(res => res.ID == id).FirstOrDefault(); // récupération de la tache pointé par l'id db.Tarification_Ressource.Attach(ts); // ecouter les changement de l'objet db.Tarification_Ressource.Remove(ts); // remove l'objet ts db.SaveChanges(); // mettre a jour la table } catch (Exception e) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Pas d'objet pour cet Id")); } }
// POST: api/TarificationRessource public void Post([FromBody] Tarification_Ressource tsk) // Ajoute et créer une nouvelle TarificationRessource { try { if (tsk != null) { this.db.Tarification_Ressource.Add(tsk); // Ajout d'un nouvel objet dans la table this.db.SaveChanges(); // mise a jour de la table } else { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Objet source null")); } } catch (Exception e) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)); } }
// POST: api/Ressource public void Post(ressClient rss) // Ajout d'une nouvelle ressource { Ressource newRess = new Ressource(); newRess.Initial = rss.initial; newRess.Mail = rss.mail; newRess.Name = rss.name; newRess.Niveau = rss.niveau; newRess.Obsolete = false; newRess.Date = DateTime.Now; Tarification_Ressource tarRes = new Tarification_Ressource(); foreach (Int16 idTar in rss.tarification) { tarRes.FK_Ressource = newRess.ID; Tarification tar = db.Tarification.Where(res => res.ID == idTar).FirstOrDefault(); tarRes.FK_Tarification = tar.ID; } db.Ressource.Add(newRess); db.Tarification_Ressource.Add(tarRes); db.SaveChanges(); }
// PUT: api/TarificationRessource/5 public void Put(int id, [FromBody] Tarification_Ressource tsk) // Met a jour une TarificationRessource a partir de son ID { try { if (tsk != null) // si l'objet source n'est pas null => update de la base { Tarification_Ressource ts = db.Tarification_Ressource.Where(res => res.ID == id).FirstOrDefault(); // recuperer la tache pointé par l'id pris en paramètre de la fonction db.Tarification_Ressource.Attach(ts); // Faire ecouter le contexte de base de donnée sur les changements de l'objet ts ts.FK_Ressource = tsk.FK_Ressource; // changement des différents attribut de l'objet pointé avec les attributs de l'objet pris en paramètre ts.FK_Tarification = tsk.FK_Tarification; // same db.SaveChanges(); // mise a jour de la table } else // sinon je throw une exception { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.NotFound, "l'objet source est vide")); } } catch (Exception e) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)); } }