Пример #1
0
        public async Task <IActionResult> MarkSeen([FromBody] LastSeenCreateDto document)
        {
            if (document == null)
            {
                return(BadRequest());
            }

            var dbDocument = await _db.Documents.SingleOrDefaultAsync(d => d.DocumentId == document.DocumentId);

            if (dbDocument == null)
            {
                return(NotFound());
            }

            var newLastSeen = new LastSeenDocuments {
                UserId = UserId, DocumentId = document.DocumentId, TimeCreated = DateTime.UtcNow
            };

            _db.LastSeenDocuments.Add(newLastSeen);
            await _db.SaveChangesAsync();

            await _db.Entry(newLastSeen).Reference(l => l.Document).LoadAsync();

            return(Ok(new LastSeenDto(newLastSeen)));
        }
Пример #2
0
        public LastSeenDto(LastSeenDocuments lastSeen)
        {
            if (lastSeen != null)
            {
                LastSeenDocumentsId = lastSeen.LastSeenDocumentsId;
                UserId      = lastSeen.UserId;
                TimeCreated = lastSeen.TimeCreated;
                DocumentId  = lastSeen.DocumentId;

                if (lastSeen.Document != null)
                {
                    DocumentTitle = lastSeen.Document.Title;
                    DocumentSlug  = lastSeen.Document.Slug;
                }
            }
        }