コード例 #1
0
        public IActionResult Edit(JobOfferEditViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.Id == 0) // create
            {
                jobOffersService.Insert(model);

                return(RedirectToAction("List"));
            }

            // edit
            JobOfferEditViewModel jobOffer = jobOffersService.GetById(model.Id, HttpContext.Session.GetInt32("loggedUserId").Value);

            if (jobOffer == null)
            {
                return(RedirectToAction("List"));
            }

            jobOffersService.Update(model);

            return(RedirectToAction("List"));
        }
コード例 #2
0
        public IActionResult Edit(int?id)
        {
            if (!id.HasValue)
            {
                return(View(new JobOfferEditViewModel()));
            }

            JobOfferEditViewModel model = jobOffersService.GetById(id.Value, HttpContext.Session.GetInt32("loggedUserId").Value);

            if (model == null)
            {
                return(RedirectToAction("List"));
            }

            return(View(model));
        }
コード例 #3
0
        public IActionResult Accept(int?id)
        {
            if (!id.HasValue)
            {
                return(RedirectToAction("List", "UserJobOffers"));
            }

            UserApplicationEditViewModel model = userApplicationsService.GetById(id.Value);

            if (model == null)
            {
                return(RedirectToAction("List", "UserJobOffers"));
            }

            model.Status = ApplicationStatusEnum.Accepted;

            // User who created user application
            UserDetailsViewModel user = usersService.GetDetails(model.UserId);

            JobOfferEditViewModel jobOffer = jobOffersService.GetById(model.JobOfferId, user.Id);

            if (jobOffer == null)
            {
                return(RedirectToAction("List", "UserJobOffers"));
            }

            userApplicationsService.Update(model);

            emailService.SendAsync(new EmailViewModel
            {
                UserName  = user.FullName,
                UserEmail = user.Email,
                Subject   = "Application Accepted",
                Body      = $"Your application for job {jobOffer.Title} has been accepted."
            });

            return(RedirectToAction("Details", "UserJobOffers", new { id = model.JobOfferId }));
        }