From afb3bfd681a356b4ee3046b0c44dabd7d22c0120 Mon Sep 17 00:00:00 2001 From: Kasper Juul Hermansen Date: Wed, 17 Nov 2021 22:18:29 +0100 Subject: [PATCH] Allow updates --- src/backend/server/src/Todo.Api/Hubs/TodoHub.cs | 5 ++++- src/backend/server/src/Todo.Core/Entities/Todo.cs | 1 + .../Todo.Persistence/Mongo/Repositories/TodoRepository.cs | 6 ++++-- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/backend/server/src/Todo.Api/Hubs/TodoHub.cs b/src/backend/server/src/Todo.Api/Hubs/TodoHub.cs index 2605bf6..54e61dc 100644 --- a/src/backend/server/src/Todo.Api/Hubs/TodoHub.cs +++ b/src/backend/server/src/Todo.Api/Hubs/TodoHub.cs @@ -115,12 +115,15 @@ public class TodoHub : Hub if (updateTodo is null) throw new InvalidOperationException("Could not parse invalid updateTodo"); + var userId = GetUserId(); + var updatedTodo = await _todoRepository.UpdateTodoAsync(new Core.Entities.Todo() { Id = updateTodo.Id, Project = updateTodo.Project, Status = updateTodo.Status, - Title = updateTodo.Title + Title = updateTodo.Title, + AuthorId = userId }); var serializedTodo = JsonSerializer.Serialize(new TodoResponse() diff --git a/src/backend/server/src/Todo.Core/Entities/Todo.cs b/src/backend/server/src/Todo.Core/Entities/Todo.cs index 11e8b24..5ab0959 100644 --- a/src/backend/server/src/Todo.Core/Entities/Todo.cs +++ b/src/backend/server/src/Todo.Core/Entities/Todo.cs @@ -6,4 +6,5 @@ public record Todo public string Title { get; init; } public bool Status { get; init; } public string Project { get; init; } + public string AuthorId { get; init; } } \ No newline at end of file diff --git a/src/backend/server/src/Todo.Persistence/Mongo/Repositories/TodoRepository.cs b/src/backend/server/src/Todo.Persistence/Mongo/Repositories/TodoRepository.cs index 33371b1..57e23a5 100644 --- a/src/backend/server/src/Todo.Persistence/Mongo/Repositories/TodoRepository.cs +++ b/src/backend/server/src/Todo.Persistence/Mongo/Repositories/TodoRepository.cs @@ -66,7 +66,8 @@ public class TodoRepository : ITodoRepository Id = todo.Id, Status = todo.Status, Title = todo.Title, - ProjectName = todo.Project + ProjectName = todo.Project, + AuthorId = todo.AuthorId }); return new Core.Entities.Todo() @@ -74,7 +75,8 @@ public class TodoRepository : ITodoRepository Id = updatedTodo.Id, Project = updatedTodo.ProjectName, Status = updatedTodo.Status, - Title = updatedTodo.Title + Title = updatedTodo.Title, + AuthorId = updatedTodo.AuthorId }; } } \ No newline at end of file