public async Task <ActionResult <ShiftViewModel> > GetShiftAsync(Guid id) { if (id == Guid.Empty) { return(BadRequest()); } try { TaskResult <Shift> result = await shiftService.GetShiftAsync(id); if (!result.Succeeded) { return(UnprocessableEntity(new ErrorViewModel { Type = Type.Error, Message = result.Message })); } if (result.Data == null) { return(NotFound()); } return(Ok(ShiftViewModel.CreateVm(result.Data))); } catch (Exception ex) { string message = GetType() .Name + "Error in " + nameof(GetShiftAsync); logger.LogError(ex, message); return(UnprocessableEntity(new ErrorViewModel { Type = Type.Error, Message = message })); } }