public IActionResult Delete(int id, bool?saveChangesError = false) { if (saveChangesError.GetValueOrDefault()) { ViewBag.ErrorMessage = "Delete failed"; } var post = _postService.GetById(id); var model = new DeletePost { TopicId = post.Topic.Id, PostContent = post.Content, PostId = post.Id }; if (post.User.UserName != User.Identity.Name) { return(NotFound()); } if (post == null) { return(NotFound()); } return(View(model)); }
public async Task <IActionResult> DeletePost(int groupId, int postId) { var command = new DeletePost { GroupId = groupId, PostId = postId }; return(Ok(await _mediator.Send(command))); }
public async Task <IActionResult> Delete(Guid id) { var command = new DeletePost { BlogId = BlogId, AggregateRootId = id }; await _mediator.SendAndPublishAsync <DeletePost, Post>(command); return(new NoContentResult()); }
public IActionResult Delete(Guid id) { var cmd = new DeletePost { Id = id, }; _mediatorHandler.SendCommand(cmd); return(Ok()); }
public async Task <IActionResult> Delete([FromBody] DeletePost model) { var result = await postServices.Remove(model.Id); if (result.Status) { return(Ok(result)); } return(BadRequest(result)); }
public async Task <IActionResult> Delete([FromBody] DeletePost model) { Guid userId = HttpContext.CurrentUserId(); var result = await postServices.Remove(userId, model.Id); if (result.Status) { return(Ok(result)); } return(BadRequest(result)); }
public DeletePostResponse Handle(DeletePost command) { var response = new DeletePostResponse(); try { var user = _membershipService.GetUserById(command.DeleteBy); if (user == null) { response.Error = "Invalid user."; return(response); } var post = _postService.GetPostById(command.PostId); if (post == null) { response.Error = "Invalid post."; return(response); } if (post.UserId == user.Id || user.IsAdmin) { post.Deleted = true; _postService.UpdatePost(post); // let's remove the single vote that the author may have attributed to this post. // this will prevent people from creating/deleting post for a single kudo, over and over. _commandBus.Send(new CastVoteForPost { VoteType = null, // unvote the comment! PostId = post.Id, DateCasted = Common.CurrentTime(), IpAddress = string.Empty, // TODO, UserId = post.UserId }); } else { response.Error = "You cannot delete this post."; return(response); } return(response); } catch (Exception ex) { _logger.Error("Error editing post.", ex); response.Error = "An unknown error occured."; return(response); } }
/// <summary> /// 删除一条或多条数据 /// </summary> /// <returns></returns> public async Task <ApiResult <string> > DeleteAsync(DeletePost parm) { var isok = SysCodeTypeDb.Delete(m => m.Guid == parm.guid); var res = new ApiResult <string> { statusCode = isok?200:500, data = isok ? "1" : "0", message = isok?"删除成功~":"删除失败~" }; return(await Task.Run(() => res)); }
/// <summary> /// 删除员工信息 /// </summary> /// <param name="parm"></param> /// <returns></returns> public async Task <ApiResult <string> > DeleteAsync(DeletePost parm) { var list = Utils.StrToListString(parm.guid); var isok = SysPersonDb.Delete(m => list.Contains(m.Guid)); var res = new ApiResult <string> { statusCode = isok ? (int)ApiEnum.Status : (int)ApiEnum.Error, data = isok ? "1" : "0", message = isok ? "删除成功~" : "删除失败~" }; return(await Task.Run(() => res)); }
public Task <Unit> Handle(DeletePost request, CancellationToken cancellationToken) { var userId = _userService.UserId; var aggregate = _personRepository.GetAggregateByUserId(userId); if (aggregate.GetState().UserId != userId) { throw new Exception("Não é possivel deletar um post de outro usuario"); } aggregate.DeletePost(request.Id); _personRepository.Save(aggregate); return(Unit.Task); }
public void HandleAsync_ShouldInvokeSpecificMethods() { var command = new DeletePost { ResourceId = Guid.NewGuid() }; _handler.Invoking(async x => await x.HandleAsync(command)) .Should() .NotThrow(); _postService.Verify(x => x.DeleteAsync(command.ResourceId), Times.Once); _eventPublisher.Verify(x => x.PublishAsync(It.Is <PostDeleted>(x => x.Id == command.ResourceId)), Times.Once); }
public async Task <Post> Handle(DeletePost request, CancellationToken cancellationToken) { var post = this.context.Posts.FindAsync(request.Id).AsTask(); this.context.Posts.Remove(post.Result); if (await this.context.SaveChangesAsync() > 0) { return(await post); } else { return(await Task.FromResult(new Post {})); } }
public object Delete(DeletePost request) { if (request.Id <= 0) { throw new ArgumentNullException(nameof(request.Id)); } var user = GetUser(); var post = AssertPost(request.Id); AssertCanPostToOrganization(Db, post.OrganizationId, user, out var org, out var orgMember); AssertCanUpdatePost(post, user, orgMember); var userId = user.GetUserId(); var now = DateTime.Now; if (!user.IsOrganizationModerator(orgMember)) { Db.UpdateOnly(() => new Post { Deleted = now, DeletedBy = user.UserName, Modified = now, }, where : x => x.Id == request.Id && x.UserId == userId); } else { Db.UpdateOnly(() => new Post { Deleted = now, DeletedBy = user.UserName, Modified = now, }, where : x => x.Id == request.Id); } ClearPostCaches(); return(new DeletePostResponse { Id = request.Id, }); }
public IActionResult DeleteByList([FromBody] DeletePost deletePost) { string ErrorMsg = string.Empty; var flag = sysAreaService.DeleteByList(deletePost, ref ErrorMsg); if (flag) { return(new JsonResult( ResponseHelper.IsSuccess_Msg_Data_HttpCode(ErrorMsg, flag) )); } else { return(new JsonResult( ResponseHelper.Error_Msg_Ecode_Elevel_HttpCode(ErrorMsg, flag) )); } }
/// <summary> /// 删除一条数据 /// </summary> /// <param name="parm"></param> /// <returns></returns> public async Task <ApiResult <string> > DeleteAsync(DeletePost parm) { var res = new ApiResult <string>(); try { var list = Utils.StrToListString(parm.guid); var isok = SysPersonEducateDb.Delete(m => list.Contains(m.Guid)); res.statusCode = isok ? (int)ApiEnum.Status : (int)ApiEnum.Error; res.data = "1"; res.message = isok ? "删除成功~" : "删除失败~"; } catch (Exception ex) { res.statusCode = (int)ApiEnum.Error; res.message = ex.Message; } return(await Task.Run(() => res)); }
/// <summary> /// deletebylist /// </summary> /// <param name="deletePost">deletePost</param> /// <param name="ErrorMsg">Result</param> /// <returns></returns> public bool DeleteByList(DeletePost deletePost, ref string ErrorMsg) { try { if (sysAreaRepository.DeleteNotTrue(deletePost.ObjectIds)) { ErrorMsg = "Edit Success"; return(true); } else { ErrorMsg = "Edit Faild"; return(false); } } catch (Exception ex) { ErrorMsg = "Edit Error"; return(false); } }
public static void Main(string[] args) { int menuSelection = 0; while (menuSelection != 6) { if (menuSelection == 1) { IViewPost readObject = new ViewPost(); List <Post> allPosts = readObject.ViewPost(); foreach (Post post in allPosts) { Console.WriteLine(post.ToString()); } } else if (menuSelection == 2) { ISavePost savePost = new SavePost(); savePost.SavePost(); } else if (menuSelection == 3) { IDeletePost deletePost = new DeletePost(); deletePost.DeletePost(); } else if (menuSelection == 4) { IEditPost editPost = new EditPost(); editPost.EditPost(); } else if (menuSelection == 5) { IReseedPost reseedPost = new ReseedPost(); reseedPost.ReseedPost(); } menuSelection = displayMenu(); } }
public void DeleteForeignPost() { HomePage homePage = new HomePage(this.driver); homePage.NavigateTo(); LoginPage logPage = new LoginPage(this.driver); logPage.NavigateTo(); var loginUser = AccessExcelData.GetTestDataLoging("LoginForeinUserData"); logPage.FillLoginForm(loginUser); homePage.DeletePostLink.Click(); DeletePost deletePost = new DeletePost(this.driver); deletePost.NavigateTo(); deletePost.Title.Click(); deletePost.DeleteButton.Click(); deletePost.AssertEditForeignPostErrorMessageIsDisplayed("You do not have permission to view this directory or page"); }
public async Task Setup() { _post = PostFactories.Post(); _command = new DeletePost { BlogId = Guid.NewGuid(), AggregateRootId = Guid.NewGuid() }; _postRepositoryMock = new Mock <IPostRepository>(); _postRepositoryMock .Setup(x => x.GetByIdAsync(_command.BlogId, _command.AggregateRootId)) .ReturnsAsync(_post); _postRepositoryMock .Setup(x => x.UpdateAsync(It.IsAny <Post>())) .Callback <Post>(p => _updatedPost = p) .Returns(Task.CompletedTask); _commandHandler = new DeletePostHandler(_postRepositoryMock.Object); _result = await _commandHandler.HandleAsync(_command); _event = _updatedPost.Events.OfType <PostDeleted>().Single(); }
public void CancelDeleteButtonFuntionality() { HomePage homePage = new HomePage(this.driver); homePage.NavigateTo(); LoginPage logPage = new LoginPage(this.driver); logPage.NavigateTo(); var loginUser = AccessExcelData.GetTestDataLoging("LoginSuccessfully"); logPage.FillLoginForm(loginUser); homePage.DeletePostLink.Click(); DeletePost deletePost = new DeletePost(this.driver); deletePost.NavigateTo(); deletePost.Title.Click(); deletePost.DeleteButton.Click(); deletePost.CancelButtonPost.Click(); deletePost.AssertPostDeleteCancelButton("Test Post Creation"); }
public void DeletePostSuccessfuly() { HomePage homePage = new HomePage(this.driver); homePage.NavigateTo(); LoginPage logPage = new LoginPage(this.driver); logPage.NavigateTo(); var loginUser = AccessExcelData.GetTestDataLoging("LoginSuccessfully"); logPage.FillLoginForm(loginUser); homePage.DeletePostLink.Click(); DeletePost deletePost = new DeletePost(this.driver); deletePost.NavigateTo(); deletePost.Title.Click(); deletePost.DeleteButton.Click(); deletePost.DeleteButtonPost.Click(); deletePost.AssertSuccessfulPostDelete("Test Post Edit"); }
public async Task <ApiResult <string> > DeleteCode(DeletePost parm) { return(await _sysPersonService.DeleteAsync(parm)); }
public void Handle(DeletePost command) { repository.Delete(command); }
public void Delete(int id) { IDeletePost deleteObject = new DeletePost(); deleteObject.DeleteAPost(id); }
/// <summary> /// 刪除貼文 /// </summary> /// <param name="data"> 封包資料 </param> /// <returns> 結果 </returns> public string OnDeletePost(string data) { string ret = ""; DeletePost packet = JsonConvert.DeserializeObject <DeletePost>(data); DeletePostResult rData = new DeletePostResult(); PostInfo post = null; try { post = GetSql().Queryable <PostInfo>().With(SqlSugar.SqlWith.RowLock).Where(it => it.PostID == packet.PostID).Single(); //貼文存在 if (post != null) { // 貼文所有者 if (post.MemberID == packet.MemberID) { // 設定DB 交易的起始點 GetSql().BeginTran(); if (GetSql().Deleteable <PostInfo>().With(SqlSugar.SqlWith.TabLockX).Where(it => it.PostID == packet.PostID).ExecuteCommand() > 0) { rData.Result = (int)DeletePostResult.ResultDefine.emResult_Success; SaveLog($"[Info] MessageFcunction::OnDeletePost Delete Member:{packet.MemberID}'s Post:{packet.PostID} Info Success"); } else { rData.Result = (int)DeletePostResult.ResultDefine.emResult_Fail; SaveLog($"[Info] MessageFcunction::OnDeletePost Delete Member:{packet.MemberID}'s Post:{packet.PostID} Info Fail"); } } else { rData.Result = (int)DeletePostResult.ResultDefine.emResult_Fail; SaveLog($"[Info] MessageFcunction::OnDeletePost Member:{packet.MemberID} Not Post:{packet.PostID} Owner"); } } else { rData.Result = (int)DeletePostResult.ResultDefine.emResult_Fail; SaveLog($"[Info] MessageFcunction::OnDeletePost Can Not Find Member:{packet.MemberID}'s Post:{packet.PostID}"); } } catch (Exception ex) { rData.Result = (int)DeletePostResult.ResultDefine.emResult_Fail; SaveLog($"[Error] MessageFcunction::OnDeletePost Catch Error Msg:{ex.Message}"); } if (rData.Result == (int)DeletePostResult.ResultDefine.emResult_Success) { // DB 交易提交 GetSql().CommitTran(); // 刪除Redus 會員的貼文 { if (GetRedis((int)Connect.RedisDB.emRedisDB_Post).KeyExists($"PostInfo_" + packet.PostID)) { GetRedis((int)Connect.RedisDB.emRedisDB_Post).KeyDelete($"PostInfo_" + packet.PostID); } } // 刪除Redis 會員的貼文列表 { if (GetRedis((int)Connect.RedisDB.emRedisDB_Post).KeyExists($"PostList_" + packet.MemberID)) { string sPostList = GetRedis((int)Connect.RedisDB.emRedisDB_Post).StringGet($"PostList_" + packet.MemberID); JArray jsMemberPostList = JArray.Parse(sPostList); List <string> memberPostList = jsMemberPostList.ToObject <List <string> >(); if (memberPostList.Contains(packet.PostID)) { memberPostList.Remove(packet.PostID); } JArray jsNewList = JArray.FromObject(memberPostList); GetRedis((int)Connect.RedisDB.emRedisDB_Post).StringSet($"PostList_" + packet.MemberID, jsNewList.ToString()); } } DeleteFriendPost(packet.MemberID, packet.PostID); } else { // DB 交易失敗, 啟動Rollback GetSql().RollbackTran(); } JObject jsMain = new JObject(); jsMain.Add("CmdID", (int)S2C_CmdID.emDeletePostResult); jsMain.Add("Data", JsonConvert.DeserializeObject <JObject>(JsonConvert.SerializeObject(rData))); ret = jsMain.ToString(); return(ret); }
public async Task <IActionResult> DeletePost([FromBody] DeletePost command) { await DispatchAsync(command); return(NoContent()); }