//Todo: ekleme, güncelleme,silme gibi işlemlerde önyüzdeki kullanıcıya işlem başarıyla gerçekleşti veya başarısız bilgisi vermek isteyebiliriz. böyle durumlarda alttaki metot için void dönmek yerine ya boolean true false ya da int 1,0, -1 gibi bir şeyler dönecek halde kullanmak daha iyi olur. Projenin sonraki aşamalarda nasıl gelişebileceğini düşünerek kod yazmak avantaj sağlar. public void AddBlock(UserBlockVM model) { var blockRecord = _blockedUserRepository.Get(x => x.UserId == model.UserId && x.BlockedUserId == model.BlockedUserId); if (blockRecord != null) { return; } var blockedUser = new BlockedUser() { BlockedUserId = model.BlockedUserId, UserId = model.UserId }; //blockedUser.BlockedUserId = model.BlockedUserId, //blockedUser.UserId = model.UserId blockedUser.CreateDate = DateTime.Now; if (blockedUser.BlockedUserId != blockedUser.UserId) { var entity = _blockedUserRepository.Add(blockedUser); try { _blockedUserRepository.SaveChanges(); //return new EntryViewModel() { Id = entity.Id, Content = entity.Content }; } catch (Exception ex) { var errorMessage = ex.Message; throw; } } }
public Response <string> Block([FromBody] UserBlockVM block) { var service = new Services.Users.UserService(Context, CurrentAdmin); var success = service.Block(block); return(new Response <string>(success ? "Successful" : "Failed", !success)); }
public void RemoveBlock(UserBlockVM model) { var blockRecord = _blockedUserRepository.Get(x => x.UserId == model.UserId && x.BlockedUserId == model.BlockedUserId); if (blockRecord != null) { _blockedUserRepository.Remove(blockRecord); } }
private UserBlockVM CurrentBlock(Guid UserId) { var block = this.mainContext.UserBlocks.AsNoTracking().Where(b => b.UserId == UserId && b.EndDate >= DateTime.UtcNow).OrderByDescending(b => b.EndDate).FirstOrDefault(); UserBlockVM rtnBlock = null; if (block != null) { rtnBlock = new UserBlockVM(block); } return(rtnBlock); }
public IActionResult RemoveBlock(UserBlockVM model, int blockCurrentUserId, int blockBlockedUserId) { if (ModelState.IsValid) { model.UserId = blockCurrentUserId; model.BlockedUserId = blockBlockedUserId; //model.BlockedUserId } _blockedUserService.RemoveBlock(model); return(RedirectToAction(nameof(UserController.BlockedUsers), "User", new { blockCurrentUserId = model.UserId })); }
public IActionResult Block(UserBlockVM model, int blockUserId, int postId) { var user = HttpContext.User; var UserId = int.Parse(user.Claims.ToList().First(x => x.Type == ClaimTypes.NameIdentifier).Value); if (ModelState.IsValid) { model.UserId = UserId; model.BlockedUserId = blockUserId; } _blockedUserService.AddBlock(model); return(RedirectToAction(nameof(HomeController.Index), "Home", new { id = postId })); }
public bool Block(UserBlockVM block) { var result = false; if (this.Actor.Roles.Contains("Admin")) { if (!CurrentlyBlocked(block.UserId)) { var newBlock = new UserBlock(block.UserId, block.EndDate, this.Actor.UserId, block.PublicComments, block.PrivateComments); this.mainContext.UserBlocks.Add(newBlock); this.mainContext.SaveChanges(); result = true; } } return(result); }