public async Task <ActionResult> CancelFileView([FromBody] ViewFileDto fileDto)
        {
            if (!IsAvailableOperation())
            {
                return(BadRequest());
            }

            await _fileStorageService.CancelFileView(fileDto, UserId, ClientId);

            return(Ok());
        }
Пример #2
0
        public async Task ViewFile(ViewFileDto fileDto, int userId, int clientId)
        {
            var fileStorageRepository = DataContextManager.CreateRepository <IFileStorageRepository>();

            var file = await fileStorageRepository.GetById(fileDto.Id, userId, clientId);

            if (file == null)
            {
                throw new NotFoundException("File storage", fileDto.Id);
            }

            file.FileViewings.Add(new FileViewing
            {
                IsActive = true,
                ViewById = userId,
                ViewDate = DateTime.UtcNow
            });

            await fileStorageRepository.Update(file);
        }
Пример #3
0
        public async Task CancelFileView(ViewFileDto fileDto, int userId, int clientId)
        {
            var fileStorageRepository = DataContextManager.CreateRepository <IFileStorageRepository>();

            var file = await fileStorageRepository.GetById(fileDto.Id, userId, clientId);

            if (file == null)
            {
                throw new NotFoundException("File storage", fileDto.Id);
            }

            var viewing = file.FileViewings.FirstOrDefault(x => x.IsActive && x.ViewById == userId);

            if (viewing == null)
            {
                throw new NotFoundException("File viewing for file", fileDto.Id);
            }

            viewing.IsActive = false;

            await fileStorageRepository.Update(file);
        }