コード例 #1
0
        public async Task Edit_InvalidModel_ReturnsView()
        {
            var model = new EditFacilityViewModel();

            facilityController.ModelState.AddModelError("Test", "Error");

            var result = await facilityController.Edit(model) as ViewResult;

            Assert.Equal(string.Empty, result.ViewName);
        }
コード例 #2
0
        //EDIT FACILITY
        public ActionResult EditFacility(int id, AccountController.ManageMessageId?message = null)
        {
            using (var db = new ApplicationDbContext())
            {
                Facility facility = db.Facilities.First(u => u.Id == id);
                var      model    = new EditFacilityViewModel();

                // TODO: Complete member initialization
                model.Id          = facility.Id;
                model.Name        = facility.Name;
                model.Address     = facility.Address;
                model.PhoneNumber = facility.PhoneNumber;
                model.IsActive    = facility.IsActive;

                ViewBag.MessageId = message;
                return(View(model));
            }
        }
コード例 #3
0
ファイル: FacilityController.cs プロジェクト: DEFRA/prsd-iws
        public async Task <ActionResult> Edit(EditFacilityViewModel model, bool?backToOverview = null)
        {
            if (!ModelState.IsValid)
            {
                await this.BindCountryList(mediator, false);

                return(View(model));
            }

            try
            {
                var request = model.ToRequest();

                await mediator.SendAsync(request);

                await this.auditService.AddAuditEntry(this.mediator,
                                                      model.NotificationId,
                                                      User.GetUserId(),
                                                      NotificationAuditType.Updated,
                                                      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));
        }
コード例 #4
0
ファイル: FacilityController.cs プロジェクト: DEFRA/prsd-iws
        public async Task <ActionResult> Edit(Guid id, Guid entityId, bool?backToOverview = null)
        {
            var facility =
                await
                mediator.SendAsync(new GetFacilityForNotification(id, entityId));

            var response =
                await mediator.SendAsync(new GetNotificationBasicInfo(id));

            var model = new EditFacilityViewModel(facility)
            {
                NotificationType = response.NotificationType
            };

            await this.BindCountryList(mediator, false);

            facility.Address.DefaultCountryId = this.GetDefaultCountryId();

            return(View(model));
        }
コード例 #5
0
        //EDIT FACILITY: POST
        public async Task <ActionResult> EditFacility(EditFacilityViewModel model)
        {
            using (var db = new ApplicationDbContext())
            {
                if (ModelState.IsValid)
                {
                    Facility facility = db.Facilities.First(u => u.Id == model.Id);

                    facility.Name        = model.Name;
                    facility.Address     = model.Address;
                    facility.PhoneNumber = model.PhoneNumber;
                    facility.IsActive    = model.IsActive;

                    db.Entry(facility).State = EntityState.Modified;
                    await db.SaveChangesAsync();

                    return(RedirectToAction("Facilities", "Facility"));
                }
                // If we got this far, something failed, redisplay form
                return(View(model));
            }
        }
コード例 #6
0
        public async Task Edit_InvalidModel_ReturnsView()
        {
            var model = new EditFacilityViewModel();

            facilityController.ModelState.AddModelError("Test", "Error");

            var result = await facilityController.Edit(model) as ViewResult;

            Assert.Equal(string.Empty, result.ViewName);
        }
コード例 #7
0
        public async Task<ActionResult> Edit(Guid id, Guid entityId, bool? backToOverview = null)
        {
            var facility =
                await
                    mediator.SendAsync(new GetFacilityForNotification(id, entityId));

            var response =
                await mediator.SendAsync(new GetNotificationBasicInfo(id));

            var model = new EditFacilityViewModel(facility) { NotificationType = response.NotificationType };

            await this.BindCountryList(mediator, false);
            facility.Address.DefaultCountryId = this.GetDefaultCountryId();

            return View(model);
        }
コード例 #8
0
        public async Task<ActionResult> Edit(EditFacilityViewModel model, bool? backToOverview = null)
        {
            if (!ModelState.IsValid)
            {
                await this.BindCountryList(mediator, false);
                return View(model);
            }

            try
            {
                var request = model.ToRequest();

                await mediator.SendAsync(request);

                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);
        }