public async Task <UpdateApplicantDto> Update(int applicantId, UpdateApplicantDto applicanDto)
        {
            if (applicanDto == null || applicantId != applicanDto.Id)
            {
                return(null);
            }
            var entity = _mapper.Map <UpdateApplicantCommand>(applicanDto);

            return(await _mediator.Send(entity));
        }
Exemple #2
0
        public async Task <IActionResult> Update(UpdateApplicantDto model, int id)
        {
            model.ApplicantId = id;
            var applicantService = new ApplicantService(_unitOfWork);
            var response         = await applicantService.UpdateApplicant(model);

            if (!response.Success)
            {
                _logger.LogInformation($"Bad request on update of an applicant with id {id}.");

                return(BadRequest(response));
            }
            _logger.LogInformation($"Update request was made by applicant with id ${response.Data.ID}.");

            return(Ok(response));
        }
        public async Task <Response <Applicant> > UpdateApplicant(UpdateApplicantDto model)
        {
            var response = new Response <Applicant>();

            var applicant = await _unitOfWork.applicant.Find(model.ApplicantId);

            if (applicant == null)
            {
                response.Message = $"Applicant with applicantID {model.ApplicantId} does not exist";
                response.Success = false;
                return(response);
            }
            applicant.Name            = model.Name;
            applicant.EmailAddress    = model.EmailAddress;
            applicant.FamilyName      = model.FamilyName;
            applicant.Address         = model.Address;
            applicant.Age             = model.Age;
            applicant.Hired           = model.Hired;
            applicant.CountryOfOrigin = model.CountryOfOrigin;

            var validationErrors = await Helper.Helper.ApplicantValidationErrors(applicant);

            var hasValidationErrors = validationErrors.FirstOrDefault(e => e.HasValidationErrors);

            if (hasValidationErrors != null)
            {
                response.Success = false;
                response.Errors  = validationErrors;

                return(response);
            }


            await _unitOfWork.applicant.Update(applicant);

            var updatedApplicant = await _unitOfWork.applicant.Find(model.ApplicantId);

            response.Success = true;
            response.Message = "Applicant updated successfully";
            response.Data    = updatedApplicant;

            return(response);
        }
Exemple #4
0
        public async Task <IActionResult> Put(int applicantId, [FromBody] UpdateApplicantDto applicantDto)
        {
            var result = await _applicant.Update(applicantId, applicantDto);

            return(result != null ? (IActionResult)NoContent() : BadRequest());
        }