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)); }
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)); }
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)); }