Beispiel #1
0
        public async Task <IActionResult> Review(SubmitReviewModel m)
        {
            if (ModelState.IsValid)
            {
                if (m.SubmitToEsfa.Value)
                {
                    await _orchestrator.ClearRejectedVacancyReason(m, User.ToVacancyUser());
                }
                else
                {
                    await _orchestrator.UpdateRejectedVacancyReason(m, User.ToVacancyUser());
                }

                return(RedirectToRoute(m.SubmitToEsfa.GetValueOrDefault()
                    ? RouteNames.ApproveJobAdvert_Get
                    : RouteNames.RejectJobAdvert_Get));
            }

            var viewModel = await _orchestrator.GetVacancyPreviewViewModelAsync(m);

            viewModel.SoftValidationErrors = null;
            viewModel.SubmitToEsfa         = m.SubmitToEsfa;
            viewModel.RejectedReason       = m.RejectedReason;
            viewModel.SetSectionStates(viewModel, ModelState);

            return(View(ViewNames.VacancyPreview, viewModel));
        }
        public async Task UpdateRejectedVacancyReason(SubmitReviewModel m, VacancyUser user)
        {
            var vacancy = await _utility.GetAuthorisedVacancyAsync(m, RouteNames.ApproveJobAdvert_Post);

            vacancy.EmployerRejectedReason = m.RejectedReason;

            await _vacancyClient.UpdateDraftVacancyAsync(vacancy, user);
        }
        public IActionResult Put(SubmitReviewModel model)
        {
            int serviceId = model.ServiceId;
            int ratingId  = model.RatingId;

            string userId = _userManager.GetUserId(User);

            var serviceObject = _dbContext.DepartmentServices.FirstOrDefault(x => x.Id == serviceId);
            var rating        = _dbContext.Ratings.FirstOrDefault(x => x.Id == ratingId);
            var userData      = _dbContext.Users.FirstOrDefault(x => x.Id == userId);


            Review userReview = new Review {
                User = userData,
                DepartmentService = serviceObject,
                Rating            = rating,
                Comment           = model.Comment
            };

            _dbContext.Add(userReview);
            _dbContext.SaveChanges();

            return(Ok(userReview));
        }