public async Task <ProfessionReplyOkDto> UpdateProfession(ProfessionUpdateDto input) { var prof = await _professionRepository.GetAllIncluding(p => p.Translations) .FirstOrDefaultAsync(p => p.Id == input.Id); prof.Translations.Clear(); var upd = ObjectMapper.Map(input, prof); var res = await _professionRepository.InsertOrUpdateAndGetIdAsync(upd); return(new ProfessionReplyOkDto { id = res, message = "updated" }); }
public async Task <ActionResult <ProfessionDto> > UpdateProfession(Guid professionId, ProfessionUpdateDto professionUpdateDto) { if (!await _professionRepository.ProfessionExistAsync(professionId)) { return(NotFound()); } var profession = await _professionRepository.GetProfessionAsync(professionId); if (profession == null) { var professionToAdd = _mapper.Map <Profession>(professionUpdateDto); professionToAdd.ProfessionId = professionId; _professionRepository.AddProfession(professionToAdd); await _professionRepository.SaveAsync(); var professionDtoNew = _mapper.Map <ProfessionDto>(professionToAdd); return(CreatedAtRoute(nameof(GetProfession), new { professionId = profession.ProfessionId }, professionDtoNew)); } _mapper.Map(professionUpdateDto, profession); _professionRepository.UpdateProfession(profession); await _professionRepository.SaveAsync(); var professionDto = _mapper.Map <ProfessionDto>(profession); return(CreatedAtRoute(nameof(GetProfession), new { professionId = profession.ProfessionId }, professionDto)); }