public ActionResult Refuser(int?id) { tblSoumission soumi = provider.ReturnUneSoumi(id); tblAppelOffre appelOffre = provider.SelectAppelParSoumi(id); soumi.statut = 0; provider.Save(); return(RedirectToAction("Details/" + appelOffre.noAppelOffre, "AppellOffre")); }
public void AjoutAppelOffre(tblAppelOffre appel) { try { db.tblAppelOffre.Add(appel); } catch (Exception e) { LayoutController.erreur = e; } }
public ActionResult Edit([Bind(Include = "noAppelOffre,nom,dateRequis,dateEnvoi,description,dateSupprime,noEvenement,noMedia")] tblAppelOffre tblAppelOffre) { if (ModelState.IsValid) { var statut = provider.ReturnStatAppel(tblAppelOffre); var evenement = provider.ReturnEvenAppel(tblAppelOffre); var media = provider.ReturnMediaAppel(tblAppelOffre); if (Request.Form.Get("save") == "Save") { if (provider.RetunSoumission(tblAppelOffre.noAppelOffre).Count != 0) { foreach (tblSoumission s in provider.RetunSoumission(tblAppelOffre.noAppelOffre)) { s.dateSupprime = DateTime.Now; string filename = "E:\\inetpub\\wwwroot\\Projet2016\\Equipe2/Soumission_alle\\soumission_" + CleanFileName(tblAppelOffre.nom) + "_" + CleanFileName(s.tblAgencePublicite.nom) + ".xml"; provider.UpdateSoumission(s); DeleteXml(filename); } } tblAppelOffre.noStatut = provider.ReturnNoStatut("En Création"); tblAppelOffre.dateEnvoi = AffecterTemps(tblAppelOffre.dateEnvoi, "heureEnvoi", "minEnvoi", "secondeEnvoi"); tblAppelOffre.dateRequis = AffecterTemps(tblAppelOffre.dateRequis, "heureRequise", "minRequise", "secondeRequise"); provider.UpdateAppelOffre(tblAppelOffre); return(RedirectToAction("Index")); } //si l'Appel d'offre n'est pas en création il tombe à envoyé. tblAppelOffre.noStatut = provider.ReturnNoStatut("Envoyé"); tblAppelOffre.dateEnvoi = AffecterTemps(tblAppelOffre.dateEnvoi, "heureEnvoi", "minEnvoi", "secondeEnvoi"); tblAppelOffre.dateRequis = AffecterTemps(tblAppelOffre.dateRequis, "heureRequise", "minRequise", "secondeRequise"); provider.UpdateAppelOffre(tblAppelOffre); if (Request.Form.AllKeys.Contains("noAgencePub")) { int[] NoAgence = Request.Form.GetValues("noAgencePub").Select(no => int.Parse(no)).ToArray(); //On supprime les soumissions qui ne sont plus ratachées à l'appel d'offre. deleteSoumission(NoAgence, tblAppelOffre); //On créer les soumissions réliées à l'appel d'offre. foreach (int no in NoAgence) { tblSoumission soumi = CreateSoumission(no, tblAppelOffre.noAppelOffre); CreateSoumissionXml(soumi, tblAppelOffre); } } provider.Save(); return(RedirectToAction("Index")); } ViewBag.noEvenement = new SelectList(provider.ToutEvenement(), "noEvenement", "nom", tblAppelOffre.noEvenement); ViewBag.noStatut = new SelectList(provider.ToutStatutAppel(), "noStatut", "nom", tblAppelOffre.noStatut); ViewBag.noMedia = new SelectList(provider.ToutMedia(), "noMedia", "nom", tblAppelOffre.noMedia); ViewBag.noAgencePub = new SelectList(provider.ToutAgencePublicite(), "noAgencePub", "nom"); return(View(tblAppelOffre)); }
public void UpdateAppelOffre(tblAppelOffre appel) { try { db.Entry(db.tblAppelOffre.Find(appel.noAppelOffre)).CurrentValues.SetValues(appel); db.SaveChanges(); } catch (Exception e) { LayoutController.erreur = e; } }
public tblMedia ReturnMediaAppel(tblAppelOffre appel) { try { return((from q in db.tblMedia where q.noMedia == appel.noMedia select q).FirstOrDefault()); } catch (Exception e) { LayoutController.erreur = e; } return(new tblMedia()); }
public tblEvenement ReturnEvenAppel(tblAppelOffre appel) { try { return((from q in db.tblEvenement where q.noEvenement == appel.noEvenement select q).FirstOrDefault()); } catch (Exception e) { LayoutController.erreur = e; } return(new tblEvenement()); }
public tblStatutAppelOffre ReturnStatAppel(tblAppelOffre appel) { try { return((from q in db.tblStatutAppelOffre where q.noStatut == appel.noStatut select q).FirstOrDefault()); } catch (Exception e) { LayoutController.erreur = e; } return(new tblStatutAppelOffre()); }
//--Gestion de la création du xml d'une soumision.----- public XmlNode CrerUneSoumissionXml(XmlDocument doc, tblSoumission soumi, tblAppelOffre appelOffre) { double prix = 0.00; XmlNode xmlnoSoumi = doc.CreateNode(XmlNodeType.Element, "NoSoumission", ""); xmlnoSoumi.InnerText = soumi.noSoumission.ToString(); XmlNode xmlNom = doc.CreateNode(XmlNodeType.Element, "Nom", ""); xmlNom.InnerText = appelOffre.nom; XmlNode xmlNoSoumiAgence = doc.CreateNode(XmlNodeType.Element, "noSoumissionAgence", ""); xmlNoSoumiAgence.InnerText = soumi.noSoumissionAgence; XmlNode xmlPrix = doc.CreateNode(XmlNodeType.Element, "Prix", ""); if (soumi.prix == null) { xmlPrix.InnerText = prix.ToString(); } else { xmlPrix.InnerText = soumi.prix.ToString(); } XmlNode xmlnoAgencePub = doc.CreateNode(XmlNodeType.Element, "noAgencePub", ""); xmlnoAgencePub.InnerText = soumi.noAgencePub.ToString(); XmlNode xmlnoAppelOffre = doc.CreateNode(XmlNodeType.Element, "noAppelOffre", ""); xmlnoAppelOffre.InnerText = soumi.noAppelOffre.ToString(); XmlNode xmlStatut = doc.CreateNode(XmlNodeType.Element, "Statut", ""); xmlStatut.InnerText = soumi.statut.ToString(); XmlNode xmlCommentaire = doc.CreateNode(XmlNodeType.Element, "Commentaire", ""); xmlCommentaire.InnerText = soumi.commentaire; XmlNode xmlSoumission = doc.CreateNode(XmlNodeType.Element, "Soumission", ""); //On ajoute une soumision. xmlSoumission.AppendChild(xmlnoSoumi); xmlSoumission.AppendChild(xmlNoSoumiAgence); xmlSoumission.AppendChild(xmlNom); xmlSoumission.AppendChild(xmlPrix); xmlSoumission.AppendChild(xmlnoAgencePub); xmlSoumission.AppendChild(xmlnoAppelOffre); xmlSoumission.AppendChild(xmlStatut); xmlSoumission.AppendChild(xmlCommentaire); return(xmlSoumission); }
private void deleteSoumission(int[] NoAgence, tblAppelOffre appel) { List <tblSoumission> listSoumi = provider.RetunSoumission(appel.noAppelOffre); foreach (tblSoumission s in listSoumi) { if (!NoAgence.Contains(s.noAgencePub)) { provider.SupprimerSoumission(s); string filename = "E:\\inetpub\\wwwroot\\Projet2016\\Equipe2/Soumission_alle\\soumission_" + CleanFileName(appel.nom) + "_" + CleanFileName(s.tblAgencePublicite.nom) + ".xml"; provider.UpdateSoumission(s); DeleteXml(filename); } } }
public ActionResult Create([Bind(Include = "noAppelOffre,nom,dateRequis,dateEnvoi,description,dateSupprime,noEvenement,noMedia")] tblAppelOffre tblAppelOffre) { List <int> idSelect = new List <int>(); string[] NoAgence = Request.Form.GetValues("noAgencePub"); ViewBag.noAgencePub = new MultiSelectList(provider.ToutAgencePublicite(), "noAgencePub", "nom", idSelect); if (ModelState.IsValid) { // var statut = provider.ReturnStatAppel(tblAppelOffre); var evenement = provider.ReturnEvenAppel(tblAppelOffre); var media = provider.ReturnMediaAppel(tblAppelOffre); provider.AjoutAppelOffre(tblAppelOffre); if (Request.Form.Get("save") == "Save") { tblAppelOffre.noStatut = provider.ReturnNoStatut("En Création"); tblAppelOffre.dateEnvoi = AffecterTemps(tblAppelOffre.dateEnvoi, "heureEnvoi", "minEnvoi", "secondeEnvoi"); tblAppelOffre.dateRequis = AffecterTemps(tblAppelOffre.dateRequis, "heureRequise", "minRequise", "secondeRequise"); provider.Save(); return(RedirectToAction("Index")); } //si l'Appel d'offre n'est pas en création il tombe à envoyé. tblAppelOffre.noStatut = provider.ReturnNoStatut("Envoyé"); tblAppelOffre.dateEnvoi = AffecterTemps(tblAppelOffre.dateEnvoi, "heureEnvoi", "minEnvoi", "secondeEnvoi"); tblAppelOffre.dateRequis = AffecterTemps(tblAppelOffre.dateRequis, "heureRequise", "minRequise", "secondeRequise"); provider.Save(); //On créer les soumissions réliées à l'appel d'offre. foreach (string no in NoAgence) { tblSoumission souimi = CreateSoumission(int.Parse(no), tblAppelOffre.noAppelOffre); CreateSoumissionXml(souimi, tblAppelOffre); } // conn.Close(); //On ferme la connection. return(RedirectToAction("Index")); } ViewBag.noEvenement = new SelectList(provider.ToutEvenement(), "noEvenement", "nom", tblAppelOffre.noEvenement); ViewBag.noStatut = new SelectList(provider.ToutStatutAppel(), "noStatut", "nom", tblAppelOffre.noStatut); ViewBag.noMedia = new SelectList(provider.ToutMedia(), "noMedia", "nom", tblAppelOffre.noMedia); ViewBag.noAgencePub = new MultiSelectList(provider.ToutAgencePublicite(), "noAgencePub", "nom"); LayoutController.pagePermission = PermissionNames.CreerAppelOffre; return(View(tblAppelOffre)); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ViewBag.AllAgence = provider.ToutAgencePublicite(); ViewBag.AgenceParAppel = provider.ReturnAgence(id); tblAppelOffre tblAppelOffre = provider.returnAppel(id); if (tblAppelOffre == null) { return(HttpNotFound()); } ViewBag.noEvenement = new SelectList(provider.ToutEvenement(), "noEvenement", "nom", tblAppelOffre.noEvenement); ViewBag.noStatut = new SelectList(provider.ToutStatutAppel(), "noStatut", "nom", tblAppelOffre.noStatut); ViewBag.noMedia = new SelectList(provider.ToutMedia(), "noMedia", "nom", tblAppelOffre.noMedia); LayoutController.pagePermission = PermissionNames.CreerAppelOffre; return(View(tblAppelOffre)); }
// GET: AppellOffre/Details/5 public ActionResult Details(int?id) { //On retourne les soumissions associées à l'appel d'offre ViewBag.soumission = provider.RetunSoumission(id); //On retourne les agences de publicités associées à l'appel d'offre ViewBag.agencePub = provider.ReturnAgence(id); //ViewBag.Media = provider.RetunrMedia(); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } tblAppelOffre tblAppelOffre = provider.returnAppel(id); if (tblAppelOffre == null) { return(HttpNotFound()); } return(View(tblAppelOffre)); }
private void CreateSoumissionXml(tblSoumission soumi, tblAppelOffre appelOffre) { CptSoumi++; DirectoryInfo dr = null; XmlDocument doc = new XmlDocument(); XmlNode Racine = doc.CreateNode(XmlNodeType.Element, "SoumissionAgence", "http://tempuri.org/SoumissionAgence.xsd"); string pathAlle = "E:\\inetpub\\wwwroot\\Projet2016\\Equipe2\\Soumission_alle"; string pathXml = ""; dr = CreateDirectory(pathAlle); doc.AppendChild(Racine); Racine.AppendChild(CrerUneSoumissionXml(doc, soumi, appelOffre)); try { if (dr != null) { pathAlle = dr.FullName; } pathXml = pathAlle + "/soumission_" + CleanFileName(appelOffre.nom) + "_" + CleanFileName(provider.ReturnAgenceParSoumi(soumi).nom) + ".xml"; doc.Save(pathXml); string pathXsd = "//deptinfo420/P2016_Equipe2/App_Data/SoumissionAgence.xsd"; validerXML(pathXml, doc, pathXsd); } catch (UnauthorizedAccessException UAEx) { ViewBag.Autorisation = UAEx.Message; } catch (PathTooLongException PathEx) { ViewBag.PathLong = PathEx.Message; } catch (IOException IOEx) { ViewBag.IO = IOEx.Message; LayoutController.erreur = IOEx; } }