public async Task <ResponseApi> Handle(UpdateListJobExperiencesCommand request, CancellationToken cancellationToken) { try { int invalidQty = 0; foreach (var job in request.JobExperiences) { job.Validate(); if (job.Invalid) { invalidQty += 1; } if (invalidQty > 0) { return(new ResponseApi(false, "Something is wrong...", job.Notifications)); } } List <JobExperienceViewModel> result = new List <JobExperienceViewModel>(); for (int i = 0; i < request.JobExperiences.Count; i++) { JobExperience jobExperience = _mapper.Map <JobExperience>(await _jobExperienceRepository.Get(request.JobExperiences[i].Id)); jobExperience.UpdateFields(_mapper.Map <JobExperience>(request.JobExperiences[i])); await _jobExperienceRepository.Update(jobExperience); var updateResult = new JobExperienceViewModel { Id = jobExperience.Id, EnterpriseName = jobExperience.EnterpriseName, BeginDate = jobExperience.BeginDate, FinalDate = jobExperience.FinalDate, JobTitle = jobExperience.JobTitle, ProjectDescription = jobExperience.ProjectDescription, ProjectResponsabilities = jobExperience.ProjectResponsabilities, TecnologiesUsed = jobExperience.TecnologiesUsed, Active = jobExperience.Active, Excluded = jobExperience.Excluded, CreationDate = jobExperience.CreationDate, LastUpdate = jobExperience.LastUpdate, IdUser = jobExperience.IdUser }; result.Add(updateResult); } return(new ResponseApi(true, "Job experiences updated sucessfuly", result)); } catch (Exception e) { return(new ResponseApi(false, "Error...", e)); } }
public async Task <IActionResult> UpdateLanguage([FromBody] UpdateListJobExperiencesCommand createCompetence) { var result = await _mediator.Send(createCompetence); return(Ok(result)); }