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)); }
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); }
public async Task <IActionResult> Put(int applicantId, [FromBody] UpdateApplicantDto applicantDto) { var result = await _applicant.Update(applicantId, applicantDto); return(result != null ? (IActionResult)NoContent() : BadRequest()); }