public async Task <IActionResult> PutAsync(int id, [FromBody] SaveQualificationResource resource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var qualification = _mapper.Map <SaveQualificationResource, Qualification>(resource); var result = await _qualificationService.UpdateAsync(id, qualification); if (!result.Success) { return(BadRequest(result.Message)); } var qualificationResource = _mapper.Map <Qualification, QualificationResource>(result.Resource); return(Ok(qualificationResource)); }
public async Task <IActionResult> PostAsync(int organizerId, int contractId, int musicianId, [FromBody] SaveQualificationResource resource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var existingOrganizer = await _organizerService.GetByIdAsync(organizerId); if (!existingOrganizer.Success) { return(BadRequest(existingOrganizer.Message)); } var existingContract = await _contractService.GetByIdAsync(contractId); if (!existingContract.Success) { return(BadRequest(existingContract.Message)); } var existingMusician = await _musicianService.GetByIdAsync(musicianId); if (!existingMusician.Success) { return(BadRequest(existingMusician.Message)); } var qualification = _mapper.Map <SaveQualificationResource, Qualification>(resource); qualification.Organizer = existingOrganizer.Resource; qualification.Contract = existingContract.Resource; qualification.Musician = existingMusician.Resource; var result = await _qualificationService.SaveAsync(qualification); if (!result.Success) { return(BadRequest(result.Message)); } var qualificationResource = _mapper.Map <Qualification, QualificationResource>(result.Resource); return(Ok(qualificationResource)); }