public ActionResult DeleteConfirmed(int id) { Encheree encheree = db.Encherees.Find(id); db.Encherees.Remove(encheree); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Delete(Encheree ench) { // TODO: Add delete logic here var en = db.Encherees.Find(ench.Id); db.Encherees.Remove(en); db.SaveChanges(); return(RedirectToAction("GetObjetByUser")); }
private Encheree checkEnchere(Encheree offreActuelle, double niveauActuel, bool premiereOffre) { var ObjetId = (int)Session["ObjetId"]; Objet objet = (Objet)db.Objets.Where(a => a.Id == ObjetId).First(); newOffre = null; //est-ce qu'il y a déjà une o frre placée? if (db.Encherees.Where(a => a.ObjetId == ObjetId).Any()) { var offreMax = db.Encherees.Where(a => a.ObjetId == ObjetId).ToList().MaxBy(m => m.niveauMax); if (offreActuelle.enchereNiveau >= offreMax.niveauMax) { offreActuelle.niveauMax = offreActuelle.enchereNiveau; if (offreActuelle.enchereNiveau != offreMax.niveauMax) { offreActuelle.enchereNiveau = offreMax.niveauMax + 1; } //notifier User ici par email var idUser = offreMax.UserId; /*string subject = " Enchère dépassée"; * * string body = "votre enchère à été dépassée "; * * Controllers.AccountController.EnvoiMessage(item.User.Email, body, subject); */ return(offreActuelle); } else { //Des tests doivent encore etre faits offreActuelle.niveauMax = offreMax.niveauMax; newOffre = new Encheree(); newOffre.niveauMax = offreMax.niveauMax; newOffre.enchereNiveau = offreActuelle.enchereNiveau + 1; newOffre.UserId = offreMax.UserId; return(offreActuelle); } } else { offreActuelle.niveauMax = offreActuelle.enchereNiveau; if (offreActuelle.enchereNiveau - objet.objetPrixDepart > 1) { offreActuelle.enchereNiveau = objet.objetPrixDepart + 1; } return(offreActuelle); } }
public ActionResult Edit([Bind(Include = "Id,enchereNiveau,Message,niveauMax,enchereDate,ObjetId,UserId")] Encheree encheree) { if (ModelState.IsValid) { db.Entry(encheree).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ObjetId = new SelectList(db.Objets, "Id", "objetNom", encheree.ObjetId); ViewBag.UserId = new SelectList(db.Users, "Id", "Civilite", encheree.UserId); return(View(encheree)); }
// GET: Encherees/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Encheree encheree = db.Encherees.Find(id); if (encheree == null) { return(HttpNotFound()); } return(View(encheree)); }
// GET: Encherees/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Encheree encheree = db.Encherees.Find(id); if (encheree == null) { return(HttpNotFound()); } ViewBag.ObjetId = new SelectList(db.Objets, "Id", "objetNom", encheree.ObjetId); ViewBag.UserId = new SelectList(db.Users, "Id", "Civilite", encheree.UserId); return(View(encheree)); }
public ActionResult Appliquer(Enchere.Models.Encheree offreEnchere) { var UserId = User.Identity.GetUserId(); var ObjetId = (int)Session["ObjetId"]; Objet objet = (Objet)db.Objets.Where(a => a.Id == ObjetId).First(); string message = ""; double niveauActuel = 0; bool bonPrixDepart = false; Encheree derniereOffre = offreEnchere; DateTime dateLimite = objet.objetDateInsc.AddDays(objet.objetDureeVente); //est-ce qu'il y a deja une offre placé? if (db.Encherees.Where(a => a.ObjetId == ObjetId).Any()) { niveauActuel = db.Encherees.Where(a => a.ObjetId == ObjetId).ToList().Max(m => m.enchereNiveau); derniereOffre = db.Encherees.Where(a => a.ObjetId == ObjetId).ToList().MaxBy(m => m.enchereNiveau); bonPrixDepart = true; } //est-ce que la premiere offre est acceptable else { if (offreEnchere.enchereNiveau > objet.objetPrixDepart) { bonPrixDepart = true; } } if (offreEnchere.enchereNiveau > niveauActuel && bonPrixDepart && UserId != derniereOffre.UserId && dateLimite > DateTime.Now && objet.UserId != UserId) { var offre = checkEnchere(offreEnchere, niveauActuel, bonPrixDepart); offre.UserId = UserId; offre.ObjetId = ObjetId; offre.Message = offreEnchere.Message; offre.enchereNiveau = offreEnchere.enchereNiveau; offre.enchereDate = DateTime.Now; offre.niveauMax = offreEnchere.niveauMax; db.Encherees.Add(offre); message = "Bravo! Vous venez de surrenchérir!!"; db.SaveChanges(); if (newOffre != null) { newOffre.ObjetId = ObjetId; newOffre.enchereDate = DateTime.Now; newOffre.Message = "Surrencherissement automatique"; db.Encherees.Add(newOffre); message = "Bien Esseyé sauf qu'il va falloir surrenchérir pour gagner!!"; } db.SaveChanges(); TempData["Result"] = message; return(RedirectToAction("Index")); } else { if (derniereOffre.UserId == UserId) { message = "Vous ne devez pas encherir.Vous détenez déjà l'enchere avec une offre de :" + niveauActuel + "$."; } else if (dateLimite < DateTime.Now) { message = "Erreur!! L'enchere est Expiré depuis " + dateLimite + "."; } else if (!bonPrixDepart) { message = "L'offre que vous venez de faire est inférieure ou égale au prix initial qui est de " + objet.objetPrixDepart + "$"; } else if (objet.UserId == UserId) { message = "Vous ne pouvez pas faire une offre sur un objet que vous vendez"; } else { message = "Le montant que vous proposé est inférieur ou égal au niveau actuel qui est de " + niveauActuel + " $."; } ViewBag.Result = message; return(View()); } }