public async Task SetDefectStatusAsync(int telegramId, int defectId, Status status) { var defect = await _defectRepository.GetDefectWithAssignedDefectByIdAsync(defectId); if (defect == null) { await SendMessageAsync(telegramId, DefectWasNotFound); } await UpdateDefect(defect, status); await TelegramBotEntity.Bot .SendTextMessageAsync(telegramId, StatusWasSuccessfullyChanged, replyMarkup : new ReplyKeyboardRemove()); }
public async Task <IActionResult> UpdateDefect([FromBody] DefectViewModel defectViewModel) { var defect = await _repo.GetDefectWithAssignedDefectByIdAsync(defectViewModel.Id); defect.Description = defectViewModel.Description; defect.RoomNumber = defectViewModel.RoomNumber; defect.AssignedDefect.Status = (Status)Enum.Parse(typeof(Status), defectViewModel.DefectStatus); var worker = await _userRepo.GetByIdAsync(defectViewModel.AssignedWorkerId); if (worker != null) { defect.AssignedDefect.AssignedWorker = worker; await _repo.UpdateAsync(defect); return(Ok()); } return(BadRequest()); }