public async Task <ActionResult> EnrollUnregistered(FormCollection collection, int id) { try { UnregisteredUserDTO newUnregistered = new UnregisteredUserDTO(); foreach (string key in collection.AllKeys) { switch (key) { case "Name": newUnregistered.Name = collection[key]; break; case "Email": newUnregistered.Email = collection[key]; break; case "PhoneNumber": newUnregistered.PhoneNumber = collection[key]; break; case "Info": newUnregistered.Info = collection[key]; break; case "Location": newUnregistered.Location = collection[key]; break; } } await UserFacade.CreateUnregisteredAsync(newUnregistered); // Tuto cast kodu prosim zignorujme. DB nam pri Create vzdy vracala Id 0, hoci objekt ho ma v DB ako napr. 47. // Inak neviem ako ziskat toho uzivatela var unregisteredUsersLikeThis = await UserFacade.GetUnregisteredsAsync(new UnregisteredUserFilterDTO { SearchedName = newUnregistered.Name, SearchedLocation = newUnregistered.Location }); var offer = await OfferFacade.GetOfferAsync(id); offer.ApplierId = unregisteredUsersLikeThis.Items.Last().Id; offer.ApplierRole = UserRole.Unregistered; offer.State = State.InProgress; await OfferFacade.EditOfferAsync(offer); return(View("EnrollmentCompleteView")); } catch { return(View("~/Views/Home/GeneralExceptionView.cshtml")); } }
public async Task <ActionResult> FinishOffer(int id) { var offer = await OfferFacade.GetOfferAsync(id); offer.State = State.Finished; await OfferFacade.EditOfferAsync(offer); return(RedirectToAction("Details", new { id = id })); }
public async Task <ActionResult> EnrollRegistered(int id, int userId, string userRole) { var offer = await OfferFacade.GetOfferAsync(id); offer.ApplierId = userId; if (Enum.TryParse <UserRole>(userRole, out UserRole role)) { offer.ApplierRole = role; } offer.State = State.InProgress; await OfferFacade.EditOfferAsync(offer); return(View("EnrollmentCompleteView")); }
public async Task <ActionResult> Edit(int id, FormCollection collection) { try { UserRole userRole; OfferDTO newOffer = new OfferDTO(); newOffer.Id = id; var idRoleTuple = await GetUserIdRole(); if (!Enum.TryParse <UserRole>(idRoleTuple.Item2, out userRole)) { return(View("~/Views/Home/GeneralExceptionView.cshtml")); } newOffer.CreatorId = idRoleTuple.Item1; newOffer.CreatorRole = userRole; foreach (string key in collection.AllKeys) { switch (key) { case "Name": newOffer.Name = collection[key]; break; case "Description": newOffer.Description = collection[key]; break; case "AdditionalInfo": newOffer.AdditionalInfo = collection[key]; break; case "Price": if (Double.TryParse(collection[key], out double value)) { newOffer.Price = (long)Math.Truncate(value); } break; case "Category": if (Enum.TryParse(collection[key], out Category newSex)) { newOffer.Category = newSex; } break; } } bool success = await OfferFacade.EditOfferAsync(newOffer); if (!success) { throw new NotImplementedException(); } return(RedirectToAction("Details", new { id = newOffer.Id })); } catch { return(View("~/Views/Home/GeneralExceptionView.cshtml")); } }