public ActionResult Edit([Bind(Include = "Id,Name,Price,Type,Open,StationId")] FillStation fillStation) { if (ModelState.IsValid) { if (ValidateFillStation.AlreadyExistsFillStation(fillStation)) { ModelState.AddModelError(string.Empty, "O posto já existe na base de dados."); var userId = User.Identity.GetUserId(); if (User.IsInRole("Admin")) { ViewBag.StationIdList = ListStationByUserId.createallListItems(db); } else { ViewBag.StationIdList = ListStationByUserId.createListItems(db, userId); } return(View(fillStation)); } db.Entry(fillStation).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.StationId = new SelectList(db.Stations, "Id", "OwnerId", fillStation.StationId); return(View(fillStation)); }
public ActionResult DeleteConfirmed(int id) { FillStation fillStation = db.FillStations.Find(id); db.FillStations.Remove(fillStation); db.SaveChanges(); return(RedirectToAction("Index")); }
//Se existir algum objecto igual na base de dados retorna true public static bool AlreadyExistsFillStation(FillStation fillStation) { ApplicationDbContext db = new ApplicationDbContext(); foreach (var item in db.FillStations.ToList()) { if (item.Name.Equals(fillStation.Name) && item.StationId == fillStation.StationId && item.Type.Equals(fillStation.Type)) { return(true); } } return(false); }
public ActionResult Create(FillStation fillStation) { fillStation.Open = true; if (fillStation.Price == 0) { if (User.IsInRole("Admin")) { ViewBag.StationIdList = ListStationByUserId.createallListItems(db); } else { ViewBag.StationIdList = ListStationByUserId.createListItems(db, User.Identity.GetUserId()); } return(View(fillStation)); } if (ModelState.IsValid) { if (ValidateFillStation.AlreadyExistsFillStation(fillStation)) { ModelState.AddModelError(string.Empty, "O posto já existe na base de dados."); var userId = User.Identity.GetUserId(); if (User.IsInRole("Admin")) { ViewBag.StationIdList = ListStationByUserId.createallListItems(db); } else { ViewBag.StationIdList = ListStationByUserId.createListItems(db, userId); } return(View(fillStation)); } db.FillStations.Add(fillStation); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(fillStation)); }
public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } FillStation fillStation = db.FillStations.Find(id); if (fillStation == null) { return(HttpNotFound()); } if (fillStation.Station.OwnerId != User.Identity.GetUserId() && !User.IsInRole("Admin")) { return(new HttpStatusCodeResult(HttpStatusCode.Forbidden)); } return(View(fillStation)); }
public static SelectList createListItems(ApplicationDbContext db, string id, int stationId) { List <SelectListItem> selectListItems = new List <SelectListItem>(); FillStation fillStation = db.FillStations.Find(stationId); selectListItems.Add(new SelectListItem { Text = $"{fillStation.Name}", Value = $"{fillStation.Id}" }); foreach (var item in db.FillStations.ToList()) { if (item.Station.OwnerId.Equals(id) && item.Id != stationId) { selectListItems.Add(new SelectListItem { Text = $"{item.Name}", Value = $"{item.Id}" }); } } return(new SelectList(selectListItems, "Value", "Text")); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } FillStation fillStation = db.FillStations.Find(id); if (fillStation == null) { return(HttpNotFound()); } if (fillStation.Station.OwnerId != User.Identity.GetUserId() && !User.IsInRole("Admin")) { return(new HttpStatusCodeResult(HttpStatusCode.Forbidden)); } var userId = User.Identity.GetUserId(); ViewBag.StationIdList = ListStationByUserIdEdit.createListItems(db, userId, fillStation.StationId); return(View(fillStation)); }