public async Task <IActionResult> Edit(EditApplicationViewModel viewModel) { var model = await _mediatr.Send(new GetEntityCommand <Application>(viewModel.Id)); var updateModel = _mapper.Map(viewModel, model); if (viewModel.ApplicationImage != Guid.Empty) { updateModel.ApplicationImage = await _mediatr.Send(new GetEntityCommand <DockerImage>(viewModel.ApplicationImage)); } if (viewModel.BenchmarkingImage != Guid.Empty) { updateModel.BenchmarkingImage = await _mediatr.Send(new GetEntityCommand <DockerImage>(viewModel.BenchmarkingImage)); } if (viewModel.ApacheTestFileId.HasValue) { updateModel.TestFile = await _mediatr.Send(new GetEntityCommand <ApacheJmeterTestFile>(viewModel.ApacheTestFileId.Value)); updateModel.ApacheJmeterTestId = viewModel.ApacheTestFileId.Value; } if (viewModel.DatabaseImage.HasValue) { updateModel.DatabaseImage = await _mediatr.Send(new GetEntityCommand <DockerImage>(viewModel.DatabaseImage.Value)); updateModel.DatabaseImageId = viewModel.DatabaseImage.Value; } await _mediatr.Send(new UpdateCommand <Application>(model)); return(Ok()); }
/// <summary> /// Generates Editing page for a given application ID and form # /// </summary> /// <param name="id">Application Id</param> /// <param name="formId">if 0 or unassigned then default to Project Info</param> /// <returns></returns> public ActionResult Details(int id, int?formId) { if (TempData["SavedForm"] != null) { ViewBag.SavedForm = TempData["SavedForm"]; } if (User.IsInRole(EUserRoles.Admin.ToString()) || User.IsInRole(EUserRoles.Bsm.ToString())) { return(RedirectToAction("Submitted", new { id = id })); } var applicant = GetCurrentApplicant(); var application = _context.Applications.Where(x => x.Id == id) .Include(x => x.Forms).FirstOrDefault(); if (application == null || applicant.Applications.All(x => x.Id != application.Id)) { throw new HttpResponseException(HttpStatusCode.BadRequest); } if (!application.CanEdit) { return(RedirectToAction("Submitted", new { id = id })); } EditApplicationViewModel toEdit = new EditApplicationViewModel() { FormId = formId.HasValue ? formId.Value : 0, Application = application, Forms = application.GetOrderedForms() }; return(View(toEdit)); }
public ActionResult Create(EditApplicationViewModel model) { try { Application ap = new Application(); systRepo.AddSyst(ap); MapToApplication(model, ap); systRepo.SaveChanges(); TempData["message"] = String.Format("Application {0} has been created", ap.Name); return(RedirectToAction("Index")); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); } List <Models.Domain.ApplicationType> type = new List <Models.Domain.ApplicationType>(); foreach (Models.Domain.ApplicationType t in Enum.GetValues(typeof(Models.Domain.ApplicationType))) { type.Add(t); } model.TypeList = type.Select(t => new SelectListItem { Value = t.ToString(), Text = t.ToString() }); return(View("Create", model)); }
public ActionResult Edit(int id, EditApplicationViewModel model) { try { Application ap = systRepo.FindById(id); MapToApplication(model, ap); systRepo.SaveChanges(); TempData["message"] = String.Format("Application {0} werd aangepast", ap.Name); return(RedirectToAction("Index")); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); } // http policy requires to fill the list again after the post List <ApplicationType> type = new List <ApplicationType>(); foreach (ApplicationType t in Enum.GetValues(typeof(ApplicationType))) { type.Add(t); } model.TypeList = type.Select(t => new SelectListItem { Value = t.ToString(), Text = t.ToString() }); return(Edit(id)); }
public ActionResult Edit(int id) { Application ap = systRepo.FindById(id); List <ApplicationType> type = new List <ApplicationType>(); foreach (ApplicationType t in Enum.GetValues(typeof(ApplicationType))) { type.Add(t); } //check if the application exist (normally this can never give null unless DB failure) if (ap == null) { return(HttpNotFound()); } //fill the dropdown and select the default type EditApplicationViewModel eavm = new EditApplicationViewModel(ap) { SelectedStatusId = type.FirstOrDefault().ToString(), TypeList = type.Select(t => new SelectListItem { Value = t.ToString(), Text = t.ToString() }) }; return(View(eavm)); }
public async Task <ActionResult> Edit(int applicationId, CloudOdsEnvironment environment) { var application = _getApplicationByIdQuery.Execute(applicationId); var apiFacade = await _odsApiFacadeFactory.Create(environment); var leas = apiFacade.GetAllLocalEducationAgencies().ToList(); var schools = apiFacade.GetAllSchools().ToList(); var profiles = _mapper.Map <List <ProfileModel> >(_getProfilesQuery.Execute()); var educationOrganizationIds = application.ApplicationEducationOrganizations.Select(x => x.EducationOrganizationId).ToList(); var edOrgType = schools.Any(x => educationOrganizationIds.Contains(x.EducationOrganizationId)) ? ApplicationEducationOrganizationType.School : ApplicationEducationOrganizationType.LocalEducationAgency; var model = new EditApplicationViewModel { ApplicationId = applicationId, ApplicationName = application.DisplayName(), ClaimSetName = application.ClaimSetName, ClaimSetNames = GetClaimSetNames(), EducationOrganizationIds = application.ApplicationEducationOrganizations.Select(x => x.EducationOrganizationId), LocalEducationAgencies = leas, Schools = schools, Environment = environment, ProfileId = application.Profiles.FirstOrDefault()?.ProfileId ?? 0, Profiles = profiles, VendorId = application.Vendor.VendorId, EducationOrganizationType = edOrgType }; return(PartialView("_EditApplicationModal", model)); }
public async Task <IActionResult> Edit(Guid id, EditApplicationViewModel model) { if (ModelState.IsValid) { await model.SaveChangesAsync(_ctx); return(RedirectToAction(nameof(Details), new { id })); } return(View(model)); }
public async Task <IActionResult> Edit(Guid id) { var model = await EditApplicationViewModel.LoadAsync(_ctx, id); if (model != null) { return(View(model)); } return(NotFound()); }
public async Task <IActionResult> EditAsync(int applicationId) { VendorApplication application = await _vendorApplicationRepository.GetApplicationByIdAsync(applicationId); EditApplicationViewModel editApplicationViewModel = new EditApplicationViewModel { VendorApplicationId = application.VendorApplicationId, ExitingIdProofURL = application.IdProofUrl, ExistingResidencyProofURL = application.ResidencyProofUrl, FullName = application.ApplicantName, Status = application.Status, RejectMessage = application.RejectMessage, ApplicantId = application.ApplicantId }; return(View(editApplicationViewModel)); }
// GET: Applications/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var application = await _context.Application.FindAsync(id); EditApplicationViewModel model = new EditApplicationViewModel { userId = application.UserId, Id = application.Id, Email = application.Email, Fullname = application.Fullname, Main_place_of_work = application.Main_place_of_work, Position_in_combination = application.Position_in_combination, Type = application.Type, Purpose = application.Purpose, Saving_salary = application.Saving_salary, Trip_city = application.Trip_city, Institution = application.Institution, Start_date = application.Start_date, End_date = application.End_date, Itinerary = application.Itinerary, App_transport = _context.Transport.Where( el => (from t in _context.App_Transport where t.ApplicationId == application.Id select t.TransportId).Contains(el.Id)).Select(t => t.TransportType).ToList(), App_fundation = _context.Foundation.Where( el => (from f in _context.App_Fundation where f.ApplicationId == application.Id select f.FundationId).Contains(el.Id)).Select(f => f.Trip_Foundation).ToList(), InstitutionLocation = application.InstitutionLocation, Allfundations = new List <string> { "запрошення", "витяг з протоколу засідання Вченої Ради факультету", "рапорт проректора" }, Alltransports = new List <string> { "Залізничий", "Автомобільний", "Літак" } }; return(View(model)); }
public ActionResult Edit([Bind(Include = "Id,TenantId,Code,Domain,Name,Culture,TimeZone,Updated,Created,Status")] EditApplicationViewModel applicationViewModel) { try { using (var ctx = new SaasDbContext()) { if (applicationViewModel.TenantId == CurrentTenant.TenantId || User.IsInRole("SystemAdministrator")) { //Get existing application from db var application = ctx.Applications.Where(a => a.Id == applicationViewModel.Id).FirstOrDefault(); application.Name = applicationViewModel.Name; application.Code = applicationViewModel.Code; application.Domain = applicationViewModel.Domain; application.Culture = applicationViewModel.Culture; application.TimeZone = applicationViewModel.TimeZone; application.Status = applicationViewModel.Status; if (ModelState.IsValid) { // Update application ctx.Entry(application).State = EntityState.Modified; ctx.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.TenantId = new SelectList(ctx.Tenants.ToList(), "TenantId", "Name"); } else { return(View("Authorize")); } } } catch (Exception ex) { LogService.Info("Applications not found", ex.Message, ex.InnerException); } return(View(applicationViewModel)); }
public async Task <IActionResult> EditAsync(EditApplicationViewModel model) { if (ModelState.IsValid) { VendorApplication application = await _vendorApplicationRepository.GetApplicationByIdAsync(model.VendorApplicationId); application.ApplicantName = model.FullName; application.ApplicationDate = DateTime.Now; //make all application pending after editing application.Status = "Pending"; application.RejectMessage = null; if (model.IdProof != null) { if (model.ExitingIdProofURL != null) { string filePath = Path.Combine(_webHostEnvironment.WebRootPath + model.ExitingIdProofURL); System.IO.File.Delete(filePath); } application.IdProofUrl = ProcessUploadedImage(model.IdProof); } if (model.ResidencyProof != null) { if (model.ExistingResidencyProofURL != null) { string filePath = Path.Combine(_webHostEnvironment.WebRootPath + model.ExistingResidencyProofURL); System.IO.File.Delete(filePath); } application.ResidencyProofUrl = ProcessUploadedImage(model.ResidencyProof); } await _vendorApplicationRepository.UpdateApplicationAsync(application); return(RedirectToAction("MyApplications", new { applicantId = application.ApplicantId })); } return(View()); }
public ActionResult Create() { //making the list of status List <Models.Domain.ApplicationType> type = new List <Models.Domain.ApplicationType>(); foreach (Models.Domain.ApplicationType t in Enum.GetValues(typeof(Models.Domain.ApplicationType))) { type.Add(t); } Application a = new Application(); EditApplicationViewModel avm = new EditApplicationViewModel(a) { SelectedStatusId = type.FirstOrDefault().ToString(), TypeList = type.Select(t => new SelectListItem { Value = t.ToString(), Text = t.ToString() }), }; return(View(avm)); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //Create the model var model = new EditApplicationViewModel(); try { using (var ctx = new SaasDbContext()) { //Get application from db var application = ctx.Applications.Find(id); if (User.IsInRole("SystemAdministrator") || application.TenantId == CurrentTenant.TenantId) { // Add application item to model model.Id = application.Id; model.Name = application.Name; model.ParentId = application.ParentId; model.TenantId = application.TenantId; model.TimeZone = application.TimeZone; model.Code = application.Code; model.Culture = application.Culture; model.Domain = application.Domain; model.Created = application.Created; model.Status = application.Status; } else { return(View("Authorize")); } if (model == null) { return(View("Error")); } } // Create the breadcrumb var breadcrumb = new List <BreadcrumbItemViewModel>(); breadcrumb.Add(new BreadcrumbItemViewModel() { Text = "Applications", Link = "/Applications" }); breadcrumb.Add(new BreadcrumbItemViewModel() { Text = model.Name.ToString(), Link = "/Application/" + id + "/Details" }); breadcrumb.Add(new BreadcrumbItemViewModel() { Text = "Edit" }); ViewBag.Breadcrumb = breadcrumb; } catch (Exception ex) { LogService.Info("Application not found", ex.Message, ex.InnerException); } return(View(model)); }
public async Task <IActionResult> Edit(EditApplicationViewModel request, List <string> Transport, string OtherTransport, List <string> Foundation, string OtherFoundation) { // получаем текущего пользователя Application app = _context.Application.Where(m => m.Id == request.Id).FirstOrDefault(); if (app == null) { return(RedirectToAction("Index", "Applications")); } if (ModelState.IsValid) { //получаем время открытия DateTime current = DateTime.Now; string temp; foreach (string f in Foundation) { temp = f; if (f == "Інше") { temp = OtherFoundation; } if (!_context.Foundation.Select(n => n.Trip_Foundation).Contains(temp)) { _context.Foundation.Add(new Foundation { Trip_Foundation = temp }); _context.SaveChanges(); } if (_context.App_Fundation.Where(af => af.ApplicationId == request.Id && af.FundationId == _context.Foundation.FirstOrDefault(f => f.Trip_Foundation == temp).Id).Count() == 0) { _context.App_Fundation.Add(new App_Fundation { ApplicationId = request.Id, FundationId = _context.Foundation.FirstOrDefault(n => n.Trip_Foundation == temp).Id }); } _context.SaveChanges(); } foreach (string t in Transport) { temp = t; if (t == "Інше") { temp = OtherTransport; } if (!_context.Transport.Select(n => n.TransportType).Contains(temp)) { _context.Transport.Add(new Transport { TransportType = temp }); _context.SaveChanges(); } if (_context.App_Transport.Where(at => at.ApplicationId == request.Id && at.TransportId == _context.Transport.FirstOrDefault(t => t.TransportType == temp).Id).Count() == 0) { _context.App_Transport.Add(new App_Transport { ApplicationId = request.Id, TransportId = _context.Transport.FirstOrDefault(n => n.TransportType == temp).Id }); } _context.SaveChanges(); } app.Institution = request.Institution; app.Email = request.Email; app.End_date = request.End_date; app.Fullname = request.Fullname; app.InstitutionLocation = request.InstitutionLocation; app.Itinerary = request.Itinerary; app.Main_place_of_work = request.Main_place_of_work; app.Payment = request.Payment; app.Position_in_combination = request.Position_in_combination; app.Purpose = request.Purpose; app.Saving_salary = request.Saving_salary; app.Start_date = request.Start_date; app.Trip_city = request.Trip_city; app.Trip_country = request.Trip_country; app.App_fundation_Id = request.Id; app.App_transport_Id = request.Id; if (ModelState.IsValid) { try { _context.Update(app); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ApplicationExists(app.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } } return(RedirectToAction("Edit")); }
public ActionResult Details(int id, int formId, IForm editApp) { IForm form = (editApp is Form) ? _context.Forms.Where(x => x.Id == formId).Include(x => x.Application).FirstOrDefault() : (IForm)_context.ProjectInfos.Where(x => x.Id == formId).Include(x => x.Application).FirstOrDefault(); var applicant = this.GetCurrentApplicant(); if (form == null || applicant.Applications.All(x => x.Id != form.ApplicationId)) { throw new HttpResponseException(HttpStatusCode.BadRequest); } var application = form.Application; if (!application.CanEdit && !(form is PaymentForm)) { return(RedirectToAction("Review", new { id = form.ApplicationId })); } // Get current form // Ensure all files have been updated if (form is UploadableFileForm) { var errorProperty = ((UploadableFileForm)form).FindEmptyFileProperty(); if (errorProperty.HasValue) { ModelState.AddModelError(errorProperty.Value.UniqueKey, "Please upload a " + errorProperty.Value.StandardName + " file"); } } // Ensure Model Validation if (!ModelState.IsValid) { // Copy Values of form into the model binded application. // This copies in "reverse" flow, meaning that everything that is not mdoel binded by default should be copied editApp.CopyValues(form, true); EditApplicationViewModel toEdit = new EditApplicationViewModel() { Application = application, Forms = application.GetOrderedForms(), FormId = form.Id, Form = editApp // Optional Value, lets the UI display the form that //was marked incorrect (instead of displaying an empty form) }; return(View("Details", toEdit)); } // Ensure that nobody messed with the form params by checking application type before copying if (editApp.GetType() != ObjectContext.GetObjectType(form.GetType())) { throw new HttpResponseException(HttpStatusCode.BadRequest); } // Notify all Observing forms within the application that a single form has been updated application.FormUpdated(_context, form, editApp); form.CopyValues(editApp); _context.SaveChanges(); TempData["SavedForm"] = form.DisplayName; return(RedirectToAction("Details", "Applications", new { id = application.Id, formId = form is BasicProjectInfo ? 0 : form.Id })); }
private void MapToApplication(EditApplicationViewModel model, Application ap) { ap.Name = model.Name; ap.Type = getEnum(model.SelectedStatusId); ap.ApplicationId = model.Id; }