public async Task <IActionResult> Cancel()
        {
            var userName = User.Identity.Name;

            if (userName == null)
            {
                return(Unauthorized(ErrorEnum.NoUserLogIn));
            }

            var user = await userManager.FindByNameAsync(userName);

            Debug.Assert(user != null);

            var userId      = user.Id;
            var lastRequest = await GetLastRequestAsync(userId);

            if (lastRequest == null || lastRequest.Status != DriveRequest.RequestStatus.Open)
            {
                return(NotFound(ErrorEnum.InvalidRequestCancellation));
            }

            if (!await driveService.CancelRequestAsync(lastRequest.Id))
            {
                return(NotFound());
            }

            lastRequest.Status = DriveRequest.RequestStatus.Cancelled;

            requestsRepository.Update(lastRequest);

            await requestsRepository.ApplyChangesAsync();

            return(Ok());
        }