public ActionResult Delete(IIdentity <Comment> id) { var comment = commentReader.Value.Read(id); if (ReferenceEquals(comment, null)) { return(HttpNotFound()); } var ticketRef = comment.Ticket.GetTicketReference(); var request = new DeleteCommentRequest { CommentId = id }; var sourceResponse = commentDeleter.Value.Delete(request); if (!sourceResponse.IsSuccess) { return(new HttpStatusCodeResult(System.Net.HttpStatusCode.Forbidden)); } return(RedirectToAction(nameof(TicketController.Index), this.GetName <TicketController>(), new { id = ticketRef })); }
/// <summary> /// Eliminamos el comentario /// </summary> /// <param name="deleteCommentRequest">Modelo mapeado, esta vez preparado en el end point del controlador</param> /// <returns>Response</returns> public async Task <Response> DeleteComment(DeleteCommentRequest deleteCommentRequest) { Response response = new Response(); try { using (var db = new ParchegramDBContext()) { response = await ValidatorSecurityComment(deleteCommentRequest.NameUser, deleteCommentRequest.IdPost, deleteCommentRequest.IdComment); if (response.Success.Equals(0)) { return(response); } Comment comment = await db.Comment.Where(c => c.Id.Equals(deleteCommentRequest.IdComment)).FirstOrDefaultAsync(); db.Comment.Remove(comment); if (await db.SaveChangesAsync() == 1) { return(response.GetResponse("Éxito al guardar el comentario", 1, true)); } return(response.GetResponse("Ocuerrieron problemas al eliminar el comentario", 0, false)); } } catch (Exception e) { _logger.LogInformation(e.Message); return(response.GetResponse($"Hubo un error inesperado {e.Message}", 0, false)); } }
public async Task <IActionResult> Delete([FromRoute] int idPost, [FromRoute] int idComment, [FromRoute] string nameUser) { DeleteCommentRequest deleteCommentRequest = new DeleteCommentRequest(idPost, idComment, nameUser); Response result = await _commentService.DeleteComment(deleteCommentRequest); return(Ok(result)); }
public async Task <IActionResult> DeleteComment([FromQuery] DeleteCommentRequest request) { var response = await mediator.Send(request); logger.LogResponse($"User #{HttpContext.GetCurrentUserId()} deleted comment #{request.CommentId}", response.Error); return(response.IsSucceeded ? (IActionResult)Ok(response) : BadRequest(response)); }
public object Any(DeleteCommentRequest request) { var repo = new PostRepository().DeleteComment(request.CommentId, request.ApiKey); AutoMapper.Mapper.CreateMap<PostEditResponseModel, PostEditResponse>(); return AutoMapper.Mapper.Map<PostEditResponse>(repo); }
public override async Task <DeleteReply> DeleteComment(DeleteCommentRequest request, ServerCallContext context) { if (!await _actions.DeleteComment(request.CommentId)) { throw new RpcException(new Status(StatusCode.NotFound, "Comment not found")); } return(new DeleteReply { Result = "Comment removed" }); }
public async Task DeleteComment(DeleteCommentRequest request, CancellationToken cancellationToken) { var comment = await _repository.FindById(request.Id, cancellationToken); if (comment == null) { throw new NotFoundCommentException(request.Id); } await _repository.DeleteById(comment.Id, cancellationToken); }
public JsonResult <object> DeleteComment(DeleteCommentRequest request) { var baseInfo = GetBaseInfo(); if (request == null) { return(JsonError("请求参数错误")); } _commentService.DeleteComment(request.CommentID); return(JsonNet("删除成功")); }
public ConfirmationResponse Execute(DeleteCommentRequest request) { request.ThrowExceptionIfInvalid(); var task = _workTaskRepository.Read(request.WorkTaskId); _workTaskRepository.DeleteComment(task.Id, request.CommentId); return(new ConfirmationResponse("Comment deleted successfully.") { Id = task.Id, }); }
public void TestDeleteComment() { var localName = "test_multi_pages.docx"; var remoteName = "TestDeleteComment.docx"; var fullName = Path.Combine(this.dataFolder, remoteName); var commentIndex = 0; var destFileName = Path.Combine(BaseTestOutPath, remoteName); this.StorageApi.PutCreate(fullName, null, null, File.ReadAllBytes(BaseTestContext.GetDataDir(BaseTestContext.CommonFolder) + localName)); var request = new DeleteCommentRequest(remoteName, commentIndex, this.dataFolder, destFileName: destFileName); var actual = this.WordsApi.DeleteComment(request); Assert.AreEqual(200, actual.Code); }
public IActionResult DeleteComment([FromBody] DeleteCommentRequest request) { try { var comment = _commentRepository.GetById(request.CommentId); if (comment == null) { return(BadRequest(new ErrorViewModel { ErrorCode = "400", ErrorMessage = "Comment not found" })); } if (comment.UserId != request.UserId) { return(BadRequest(new ErrorViewModel { ErrorCode = "400", ErrorMessage = "User can't change this comment" })); } var response = _commentServices.DeleteComment(comment); if (response != "OK") { return(BadRequest(new ErrorViewModel { ErrorCode = "400", ErrorMessage = "Can not execute. Plz contact admin" })); } return(Ok(comment)); } catch (Exception e) { return(BadRequest(new ErrorViewModel { ErrorCode = "400", ErrorMessage = $"Server Error: {e.Message}" })); } }
public void TestDeleteComment() { string remoteFileName = "TestDeleteComment.docx"; this.UploadFileToStorage( remoteDataFolder + "/" + remoteFileName, null, null, File.ReadAllBytes(LocalTestDataFolder + localFile) ); var request = new DeleteCommentRequest( name: remoteFileName, commentIndex: 0, folder: remoteDataFolder, destFileName: BaseTestOutPath + "/" + remoteFileName ); this.WordsApi.DeleteComment(request); }
public async Task <bool> Handle(DeleteCommentRequest message, IOutputPort <DeleteCommentResponse> outputPort) { var commentId = message.commentId; var requestId = message.requestId; var response = await _commentRepository.DeleteCommentOfRequest( commentId, requestId ); if (!response.Success) { outputPort.Handle( new DeleteCommentResponse(response.Errors) ); return(false); } outputPort.Handle(new DeleteCommentResponse()); return(true); }
public override JsonOperationResponseBase OnOperation(Arguments arguments, Authentication authentication) { DeleteCommentRequest request = new DeleteCommentRequest() { targetCommentId = arguments["targetCommentId"], targetModId = arguments["targetModId"] }; if (!request.IsValidRequest()) { return(new DeleteCommentResponse() { Error = "All fields were not filled out" }); } if (!authentication.HasAtLeastAuthenticationLevel(AuthenticationLevel.BasicUser)) { return(new DeleteCommentResponse() { Error = "You are not signed in" }); } if (!UploadedModsManager.Instance.HasModWithIdBeenUploaded(request.targetModId)) { return(new DeleteCommentResponse() { Error = "That mod does not exist" }); } SpecialModData specialModData = UploadedModsManager.Instance.GetSpecialModInfoFromId(request.targetModId); string userId = authentication.UserID; Comment comment = specialModData.GetCommentWithCommentID(request.targetCommentId); if (comment == null) { return(new DeleteCommentResponse() { Error = "There is no comment with that id on that mod" }); } if (userId != comment.PosterUserId && !authentication.HasAtLeastAuthenticationLevel(AuthenticationLevel.Admin)) { return(new DeleteCommentResponse() { Error = "You do not have premission to delete this comment" }); } specialModData.DeleteCommentWithId(request.targetCommentId); specialModData.Save(); return(new DeleteCommentResponse() { message = "Comment deleted." }); }
private void ClientThread(Socket client) { Console.WriteLine("Client thread started"); while (true) { //read byte[] rcvLenBytes = new byte[4]; client.Receive(rcvLenBytes); int rcvLen = BitConverter.ToInt32(rcvLenBytes, 0); byte[] dataFromClient = new byte[rcvLen]; client.Receive(dataFromClient); string message = Encoding.ASCII.GetString(dataFromClient, 0, rcvLen); Console.WriteLine(message); Request request = JsonSerializer.Deserialize <Request>(Encoding.ASCII.GetString(dataFromClient, 0, rcvLen)); if (message.Equals("stop")) { Console.WriteLine(message); break; } //respond switch (request.Type) { case RequestType.AddPost: AddPostRequest addPostRequest = JsonSerializer.Deserialize <AddPostRequest>(message); Post newPost = DbPersistence.AddPost(addPostRequest.Post); string responseMessageAddPost = JsonSerializer.Serialize(new AddPostRequest(newPost)); int toSendLenAddPost = Encoding.ASCII.GetByteCount(responseMessageAddPost); byte[] toSendBytesAddPost = Encoding.ASCII.GetBytes(responseMessageAddPost); byte[] toSendLenBytesAddPost = BitConverter.GetBytes(toSendLenAddPost); client.Send(toSendLenBytesAddPost); client.Send(toSendBytesAddPost); break; case RequestType.DeletePost: DeletePostRequest deletePostRequest = JsonSerializer.Deserialize <DeletePostRequest>(message); DbPersistence.DeletePost(deletePostRequest.PostId); int toSendDelPost = Encoding.ASCII.GetByteCount(message); byte[] toSendBytesDelPost = Encoding.ASCII.GetBytes(message); byte[] toSendLenBytesDelPost = BitConverter.GetBytes(toSendDelPost); client.Send(toSendLenBytesDelPost); client.Send(toSendBytesDelPost); break; case RequestType.DeleteUser: DeleteUserRequest deleteUserRequest = JsonSerializer.Deserialize <DeleteUserRequest>(message); DbPersistence.DeleteUser(deleteUserRequest.UserId); int toSendDelUser = Encoding.ASCII.GetByteCount(message); byte[] toSendBytesDelUser = Encoding.ASCII.GetBytes(message); byte[] toSendLenBytesDelUser = BitConverter.GetBytes(toSendDelUser); client.Send(toSendLenBytesDelUser); client.Send(toSendBytesDelUser); break; case RequestType.GetPosts: List <Post> posts = DbPersistence.GetPosts(); if (posts == null) { posts = new List <Post>(); } string getPostsResponseMessage = JsonSerializer.Serialize(new GetPostsResponse(posts)); int toGetPosts = Encoding.ASCII.GetByteCount(getPostsResponseMessage); byte[] toSendLenGetPosts = BitConverter.GetBytes(toGetPosts); byte[] dataToClientGetPosts = Encoding.ASCII.GetBytes(getPostsResponseMessage); client.Send(toSendLenGetPosts); client.Send(dataToClientGetPosts); break; case RequestType.GetUsers: List <User> users = DbPersistence.GetUsers(); if (users == null) { users = new List <User>(); } string getUsersResponseMessage = JsonSerializer.Serialize(new GetUsersResponse(users)); int toGetUsers = Encoding.ASCII.GetByteCount(getUsersResponseMessage); byte[] toSendLenGetUsers = BitConverter.GetBytes(toGetUsers); byte[] dataToClientGetUsers = Encoding.ASCII.GetBytes(getUsersResponseMessage); client.Send(toSendLenGetUsers); client.Send(dataToClientGetUsers); break; case RequestType.PostUser: PostUserRequest postUserRequest = JsonSerializer.Deserialize <PostUserRequest>(message); User newUser = DbPersistence.AddUser(postUserRequest.User); string responseMessagePostUser = JsonSerializer.Serialize(new PostUserRequest(newUser)); int toSendPostUser = Encoding.ASCII.GetByteCount(responseMessagePostUser); byte[] toSendBytesPostUser = Encoding.ASCII.GetBytes(responseMessagePostUser); byte[] toSendLenBytesPostUser = BitConverter.GetBytes(toSendPostUser); client.Send(toSendLenBytesPostUser); client.Send(toSendBytesPostUser); break; case RequestType.UpdatePost: UpdatePostRequest updatePostRequest = JsonSerializer.Deserialize <UpdatePostRequest>(message); DbPersistence.UpdatePost(updatePostRequest.Post); int toSendUpdatePost = Encoding.ASCII.GetByteCount(message); byte[] toSendBytesUpdatePost = Encoding.ASCII.GetBytes(message); byte[] toSendLenBytesUpdatePost = BitConverter.GetBytes(toSendUpdatePost); client.Send(toSendLenBytesUpdatePost); client.Send(toSendBytesUpdatePost); break; case RequestType.UpdateUser: UpdateUserRequest updateUserRequest = JsonSerializer.Deserialize <UpdateUserRequest>(message); DbPersistence.UpdateUser(updateUserRequest.User); int toSendUpdateUser = Encoding.ASCII.GetByteCount(message); byte[] toSendBytesUpdateUser = Encoding.ASCII.GetBytes(message); byte[] toSendLenBytesUpdateUser = BitConverter.GetBytes(toSendUpdateUser); client.Send(toSendLenBytesUpdateUser); client.Send(toSendBytesUpdateUser); break; case RequestType.AddComment: AddCommentRequest addCommentRequest = JsonSerializer.Deserialize <AddCommentRequest>(message); Comment newComment = DbPersistence.AddComment(addCommentRequest.Comment); string responseMessageAddComment = JsonSerializer.Serialize(new AddCommentRequest(newComment)); int toSendAddComment = Encoding.ASCII.GetByteCount(responseMessageAddComment); byte[] toSendBytesAddComment = Encoding.ASCII.GetBytes(responseMessageAddComment); byte[] toSendLenBytesAddComment = BitConverter.GetBytes(toSendAddComment); client.Send(toSendLenBytesAddComment); client.Send(toSendBytesAddComment); break; case RequestType.SendMessage: SendMessageRequest sendMessageRequest = JsonSerializer.Deserialize <SendMessageRequest>(message); Message newMessage = DbPersistence.SendMessage(sendMessageRequest.Message); string responseMessageSendMessage = JsonSerializer.Serialize(new SendMessageRequest(newMessage)); int toSendMessage = Encoding.ASCII.GetByteCount(responseMessageSendMessage); byte[] toSendBytesMessage = Encoding.ASCII.GetBytes(responseMessageSendMessage); byte[] toSendLenBytesMessage = BitConverter.GetBytes(toSendMessage); client.Send(toSendLenBytesMessage); client.Send(toSendBytesMessage); break; case RequestType.AddConversation: AddConversationRequest addConversation = JsonSerializer.Deserialize <AddConversationRequest>(message); List <UserConversation > newUserConversations = DbPersistence.AddConversation(addConversation.Conversation, addConversation.CreatorId, addConversation.WithWhomId); string responseMessageAddConversation = JsonSerializer.Serialize(new AddConversationResponse(newUserConversations)); int toSendAddConversation = Encoding.ASCII.GetByteCount(responseMessageAddConversation); byte[] toSendBytesAddConversation = Encoding.ASCII.GetBytes(responseMessageAddConversation); byte[] toSendLenBytesConversation = BitConverter.GetBytes(toSendAddConversation); client.Send(toSendLenBytesConversation); client.Send(toSendBytesAddConversation); break; case RequestType.DeleteComment: DeleteCommentRequest deleteCommentRequest = JsonSerializer.Deserialize <DeleteCommentRequest>(message); int deletedCommentId = DbPersistence.DeleteComment(deleteCommentRequest.CommentId); string responseMessageDeleteComment = JsonSerializer.Serialize(new DeleteCommentRequest(deletedCommentId)); int toSendDeleteComment = Encoding.ASCII.GetByteCount(responseMessageDeleteComment); byte[] toSendBytesDeleteComment = Encoding.ASCII.GetBytes(responseMessageDeleteComment); byte[] toSendLenBytesDeleteComment = BitConverter.GetBytes(toSendDeleteComment); client.Send(toSendLenBytesDeleteComment); client.Send(toSendBytesDeleteComment); break; case RequestType.MakeFriendRequest: MakeFriendRequest makeFriendRequest = JsonSerializer.Deserialize <MakeFriendRequest>(message); FriendRequestNotification friendRequestNotification = DbPersistence.MakeFriendRequestNotification(makeFriendRequest.FriendRequestNotification); Console.WriteLine(friendRequestNotification.FriendRequestId); string responseMakeFriendRequest = JsonSerializer.Serialize(new MakeFriendRequest(friendRequestNotification)); int toSendMakeFriends = Encoding.ASCII.GetByteCount(responseMakeFriendRequest); byte[] toSendBytesMakeFriendRequest = Encoding.ASCII.GetBytes(responseMakeFriendRequest); byte[] toSendLenBytesMakeFriendRequest = BitConverter.GetBytes(toSendMakeFriends); client.Send(toSendLenBytesMakeFriendRequest); client.Send(toSendBytesMakeFriendRequest); break; case RequestType.RespondToFriendRequest: RespondToFriendRequest respondToFriendRequest = JsonSerializer.Deserialize <RespondToFriendRequest>(message); List <UserFriend> userFriends = DbPersistence.RespondToFriendRequest(respondToFriendRequest.RespondStatus, respondToFriendRequest.FriendRequestNotification); string responseToFriendResponse = JsonSerializer.Serialize(new RespondToFriendResponse(userFriends)); int toSendRespondFriend = Encoding.ASCII.GetByteCount(responseToFriendResponse); byte[] toSendBytesRespondFriend = Encoding.ASCII.GetBytes(responseToFriendResponse); byte[] toSendLenBytesRespondFriend = BitConverter.GetBytes(toSendRespondFriend); client.Send(toSendLenBytesRespondFriend); client.Send(toSendBytesRespondFriend); break; case RequestType.SubscribeToUser: SubscribeToUserRequest subscribeToUserRequest = JsonSerializer.Deserialize <SubscribeToUserRequest>(message); UserSubscription userSubscription = DbPersistence.SubscribeToUser(subscribeToUserRequest.UserSubscription); string responseToSubscribeToUser = JsonSerializer.Serialize(new SubscribeToUserRequest(userSubscription)); int toSendSubscribeToUser = Encoding.ASCII.GetByteCount(responseToSubscribeToUser); byte[] toSendBytesSubscribeToUser = Encoding.ASCII.GetBytes(responseToSubscribeToUser); byte[] toSendLenBytesSubscribeToUser = BitConverter.GetBytes(toSendSubscribeToUser); client.Send(toSendLenBytesSubscribeToUser); client.Send(toSendBytesSubscribeToUser); break; case RequestType.UnsubscribeRequest: UnsubscribeRequest unsubscribeRequest = JsonSerializer.Deserialize <UnsubscribeRequest>(message); int unSubIndex = DbPersistence.UnsubscribeFromUser(unsubscribeRequest.SubscriptionId); string responseUnsubscribe = JsonSerializer.Serialize(new UnsubscribeRequest(unSubIndex)); int toSendUnSub = Encoding.ASCII.GetByteCount(responseUnsubscribe); byte[] toSendBytesUnsubscribe = Encoding.ASCII.GetBytes(responseUnsubscribe); byte[] toSendLenBytesUnsubscribe = BitConverter.GetBytes(toSendUnSub); client.Send(toSendLenBytesUnsubscribe); client.Send(toSendBytesUnsubscribe); break; case RequestType.DeleteFriendRequest: DeleteFriendRequest deleteFriendRequest = JsonSerializer.Deserialize <DeleteFriendRequest>(message); int deleteFriendIndex = DbPersistence.DeleteFriend(deleteFriendRequest.UserFriendId); string responseDeleteFriend = JsonSerializer.Serialize(new DeleteFriendRequest(deleteFriendIndex)); int toSendDeleteFriend = Encoding.ASCII.GetByteCount(responseDeleteFriend); byte[] toSendBytesDeleteFriendRequest = Encoding.ASCII.GetBytes(responseDeleteFriend); byte[] toSendBytesLenDeleteFriendRequest = BitConverter.GetBytes(toSendDeleteFriend); client.Send(toSendBytesLenDeleteFriendRequest); client.Send(toSendBytesDeleteFriendRequest); break; case RequestType.MakeReactionRequest: MakeReactionRequest makeReactionRequest = JsonSerializer.Deserialize <MakeReactionRequest>(message); PostReaction postReactionResult = DbPersistence.MakePostReaction(makeReactionRequest.PostReaction); string responseMakePostReaction = JsonSerializer.Serialize(new MakeReactionRequest(postReactionResult)); int toSendMakePostReaction = Encoding.ASCII.GetByteCount(responseMakePostReaction); byte[] toSendBytesMakePostReaction = Encoding.ASCII.GetBytes(responseMakePostReaction); byte[] toSendBytesLenMakePostReaction = BitConverter.GetBytes(toSendMakePostReaction); client.Send(toSendBytesLenMakePostReaction); client.Send(toSendBytesMakePostReaction); break; case RequestType.DeleteReactionRequest: DeleteReactionRequest deleteReactionRequest = JsonSerializer.Deserialize <DeleteReactionRequest>(message); int deleteReactionResult = DbPersistence.DeleteReaction(deleteReactionRequest.PostReactionId); string responseDeletePostReaction = JsonSerializer.Serialize(new DeleteReactionRequest(deleteReactionResult)); int toSendDeletePostReaction = Encoding.ASCII.GetByteCount(responseDeletePostReaction); byte[] toSendBytesMakeDeleteReaction = Encoding.ASCII.GetBytes(responseDeletePostReaction); byte[] toSendBytesLenMakeDeleteReaction = BitConverter.GetBytes(toSendDeletePostReaction); client.Send(toSendBytesLenMakeDeleteReaction); client.Send(toSendBytesMakeDeleteReaction); break; case RequestType.UpdateReactionRequest: UpdateReactionRequest updateReactionRequest = JsonSerializer.Deserialize <UpdateReactionRequest>(message); PostReaction postReactionResultFromUpdating = DbPersistence.UpdatePostReaction(updateReactionRequest.PostReaction); string updateReactionResponse = JsonSerializer.Serialize(new UpdateReactionRequest(postReactionResultFromUpdating)); int toSendUpdateBytes = Encoding.ASCII.GetByteCount(updateReactionResponse); byte[] toSendBytesMakeUpdateReaction = Encoding.ASCII.GetBytes(updateReactionResponse); byte[] toSendLenBytesMakeUpdateReaction = BitConverter.GetBytes(toSendUpdateBytes); client.Send(toSendLenBytesMakeUpdateReaction); client.Send(toSendBytesMakeUpdateReaction); break; } } // close connection client.Close(); }