public async Task<ActionResult> Add(AddFacilityViewModel model, bool? backToOverview = null) { if (!ModelState.IsValid) { await this.BindCountryList(mediator, false); return View(model); } try { await mediator.SendAsync(model.ToRequest()); if (model.IsAddedToAddressBook) { await mediator.SendAsync(addFacilityAddressBookMap.Map(model)); } return RedirectToAction("List", "Facility", new { id = model.NotificationId, backToOverview }); } catch (ApiBadRequestException ex) { this.HandleBadRequest(ex); if (ModelState.IsValid) { throw; } } await this.BindCountryList(mediator, false); return View(model); }
public AddAddressBookEntry Map(AddFacilityViewModel source) { return(new AddAddressBookEntry { Address = source.Address, Business = source.Business.ToBusinessInfoData(), Contact = source.Contact, Type = AddressRecordType.Facility }); }
public async Task Add_InvalidModel_ReturnsView() { var model = new AddFacilityViewModel(); facilityController.ModelState.AddModelError("Test", "Error"); var result = await facilityController.Add(model) as ViewResult; Assert.Equal(string.Empty, result.ViewName); }
public AddFacilityView(FacilityListViewModel facilityListViewModel, FacilityService facilityService, PhysicianService physicianService, FacilityPhysicianService facilityPhysicianService) { _toAddFacility = new AddFacilityViewModel(facilityListViewModel, facilityService, physicianService, facilityPhysicianService); DataContext = _toAddFacility; InitializeComponent(); }
public async Task<ActionResult> Add(Guid id, bool? backToOverview = null) { var facility = new AddFacilityViewModel(); var response = await mediator.SendAsync(new GetNotificationBasicInfo(id)); facility.NotificationType = response.NotificationType; facility.NotificationId = id; await this.BindCountryList(mediator, false); facility.Address.DefaultCountryId = this.GetDefaultCountryId(); return View(facility); }
public async Task <ActionResult> Add(Guid id, bool?backToOverview = null) { var facility = new AddFacilityViewModel(); var response = await mediator.SendAsync(new GetNotificationBasicInfo(id)); facility.NotificationType = response.NotificationType; facility.NotificationId = id; await this.BindCountryList(mediator, false); facility.Address.DefaultCountryId = this.GetDefaultCountryId(); return(View(facility)); }
public async Task <ActionResult> Add(AddFacilityViewModel model, bool?backToOverview = null) { if (!ModelState.IsValid) { await this.BindCountryList(mediator, false); return(View(model)); } try { await mediator.SendAsync(model.ToRequest()); await this.auditService.AddAuditEntry(this.mediator, model.NotificationId, User.GetUserId(), NotificationAuditType.Added, model.NotificationType == NotificationType.Disposal?NotificationAuditScreenType.DisposalFacilities : NotificationAuditScreenType.RecoveryFacilities); if (model.IsAddedToAddressBook) { await mediator.SendAsync(addFacilityAddressBookMap.Map(model)); } return(RedirectToAction("List", "Facility", new { id = model.NotificationId, backToOverview })); } catch (ApiBadRequestException ex) { this.HandleBadRequest(ex); if (ModelState.IsValid) { throw; } } await this.BindCountryList(mediator, false); return(View(model)); }