Exemple #1
0
        public IResult ConfirmSharedWord(SharedWordDto sharedWordDto)
        {
            using WordBookContext db = new();
            SharedWord confirmedSharedWord = db.SharedWords.Where(s => s.SharedWordId == sharedWordDto.SharedWordId).SingleOrDefault();

            if (confirmedSharedWord == null)
            {
                return(new ErrorResult(Messages.SharedWordNotFound));
            }
            Word addedWord = db.Words.Where(w => w.WordId == confirmedSharedWord.WordId).SingleOrDefault();

            if (addedWord == null)
            {
                return(new ErrorResult(Messages.WordNotFound));
            }
            Category sharedCategory = db.Categories.Where(c => c.UserId == confirmedSharedWord.ReceiverId && c.Name == "Shared").SingleOrDefault();
            Type     sharedType     = db.Types.Where(t => t.UserId == confirmedSharedWord.ReceiverId && t.Name == "Shared").SingleOrDefault();

            addedWord.WordId     = 0;
            addedWord.UserId     = confirmedSharedWord.ReceiverId;
            addedWord.CategoryId = sharedCategory.CategoryId;
            addedWord.TypeId     = sharedType.TypeId;
            addedWord.BoxId      = 1;
            db.Words.Add(addedWord);
            db.SharedWords.Remove(confirmedSharedWord);
            db.SaveChanges();
            return(new SuccessResult(Messages.SharedWordConfirmed));
        }
Exemple #2
0
        public IResult DeleteSharedWord(SharedWordDto sharedWordDto)
        {
            using WordBookContext db = new();
            SharedWord deletedSharedWord = db.SharedWords.Where(s => s.SharedWordId == sharedWordDto.SharedWordId).SingleOrDefault();

            if (deletedSharedWord == null)
            {
                return(new ErrorResult(Messages.SharedWordNotFound));
            }
            db.SharedWords.Remove(deletedSharedWord);
            db.SaveChanges();
            return(new SuccessResult(Messages.SharedWordDeleted));
        }
Exemple #3
0
        public IResult ShareWord(SharedWordDto sharedWordDto)
        {
            using WordBookContext db = new();
            SharedWord sharedWord = new()
            {
                SharedWordId = 0,
                SenderId     = sharedWordDto.SenderId,
                ReceiverId   = sharedWordDto.ReceiverId,
                WordId       = sharedWordDto.WordId,
                CreatedAt    = System.DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString()
            };

            db.SharedWords.Add(sharedWord);
            db.SaveChanges();
            return(new SuccessResult(Messages.WordShared));
        }