From 00fa23937169907cc796e1589b0ed264b287a027 Mon Sep 17 00:00:00 2001 From: Damien Nortier Date: Thu, 14 Mar 2024 22:33:11 +0100 Subject: [PATCH] =?UTF-8?q?feat=20+=20refactor=20+=20doc=20:=20r=C3=A9?= =?UTF-8?q?=C3=A9criture=20de=20m=C3=A9thodes=20(modification=20du=20nom)?= =?UTF-8?q?=20+=20=C3=A9criture=20de=20nouvelle=20m=C3=A9thode=20+=20modif?= =?UTF-8?q?ication=20de=20la=20documentation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DataManagers/AdministratorDataManager.cs | 4 +- WebApi/DataManagers/AnswerDataManager.cs | 17 ++++-- WebApi/DataManagers/ChapterDataManager.cs | 18 ++++-- WebApi/DataManagers/LobbyDataManager.cs | 8 +-- WebApi/DataManagers/PlayerDataManager.cs | 14 ++--- WebApi/DataManagers/QuestionDataManager.cs | 12 ++-- .../AdministratorEntityManager.cs | 4 +- WebApi/EntityManagers/AnswerEntityManager.cs | 17 ++++-- WebApi/EntityManagers/ChapterEntityManager.cs | 23 ++++++-- WebApi/EntityManagers/LobbyEntityManager.cs | 8 +-- WebApi/EntityManagers/PlayerEntityManager.cs | 18 +++--- .../EntityManagers/QuestionEntityManager.cs | 16 +++--- .../IAdministratorManager.cs | 18 +++--- WebApi/ManagerInterfaces/IAnswerManager.cs | 55 +++++++++++-------- WebApi/ManagerInterfaces/IChapterManager.cs | 37 ++++++++++--- WebApi/ManagerInterfaces/ILobbyManager.cs | 30 +++++----- WebApi/ManagerInterfaces/IPlayerManager.cs | 22 ++++---- WebApi/ManagerInterfaces/IQuestionManager.cs | 46 ++++++++-------- .../AdministratorServiceManager.cs | 4 +- .../ServiceManagers/AnswerServiceManager.cs | 23 +++++--- .../ServiceManagers/ChapterServiceManager.cs | 18 ++++-- WebApi/ServiceManagers/LobbyServiceManager.cs | 8 +-- .../ServiceManagers/PlayerServiceManager.cs | 14 ++--- .../ServiceManagers/QuestionServiceManager.cs | 12 ++-- 24 files changed, 262 insertions(+), 184 deletions(-) diff --git a/WebApi/DataManagers/AdministratorDataManager.cs b/WebApi/DataManagers/AdministratorDataManager.cs index ef020df..0f02222 100644 --- a/WebApi/DataManagers/AdministratorDataManager.cs +++ b/WebApi/DataManagers/AdministratorDataManager.cs @@ -42,9 +42,9 @@ namespace DataManagers return await Task.FromResult<(int nbPages, IEnumerable? administrators)>((res.nbPages, tmp)); } - public int getNbElements() + public int getNbAdmins() { - return manager.getNbElements(); + return manager.getNbAdmins(); } public async Task removeAdmin(Administrator admin) diff --git a/WebApi/DataManagers/AnswerDataManager.cs b/WebApi/DataManagers/AnswerDataManager.cs index ae72651..4167175 100644 --- a/WebApi/DataManagers/AnswerDataManager.cs +++ b/WebApi/DataManagers/AnswerDataManager.cs @@ -22,7 +22,7 @@ namespace DataManagers return await Task.FromResult((await manager.addAnswer(answer.ToEntity())).ToModel()); } - public async Task getAnswer(uint id) + public async Task getAnswer(int id) { return await Task.FromResult((await manager.getAnswer(id))?.ToModel()); } @@ -42,7 +42,12 @@ namespace DataManagers return await Task.FromResult<(int nbPages, IEnumerable? answers)>((res.nbPages, tmp)); } - public async Task?> getAnswersByIdQuestion(uint id) + public async Task?> getAnswers(string content) + { + return (await manager.getAnswers(content))?.Select(a => a.ToModel()); + } + + public async Task?> getAnswersByIdQuestion(int id) { var tmp = await manager.getAnswersByIdQuestion(id); List? answer = new List(); @@ -57,12 +62,12 @@ namespace DataManagers return await Task.FromResult?>(answer); } - public int getNbElements() + public int getNbAnswers() { - return manager.getNbElements(); + return manager.getNbAnswers(); } - public async Task removeAnswer(uint id) + public async Task removeAnswer(int id) { return (await manager.removeAnswer(id))?.ToModel(); } @@ -72,7 +77,7 @@ namespace DataManagers return (await manager.removeAnswer(answer.ToEntity()))?.ToModel(); } - public async Task updateAnswer(uint id, Answer answer) + public async Task updateAnswer(int id, Answer answer) { return (await manager.updateAnswer(id, answer.ToEntity()))?.ToModel(); } diff --git a/WebApi/DataManagers/ChapterDataManager.cs b/WebApi/DataManagers/ChapterDataManager.cs index 78c5507..19140a4 100644 --- a/WebApi/DataManagers/ChapterDataManager.cs +++ b/WebApi/DataManagers/ChapterDataManager.cs @@ -21,11 +21,16 @@ namespace DataManagers return await Task.FromResult((await manager.addChapter(chapter.ToEntity())).ToModel()); } - public async Task getChapter(uint id) + public async Task getChapter(int id) { return await Task.FromResult((await manager.getChapter(id))?.ToModel()); } + public async Task getChapter(string name) + { + return (await manager.getChapter(name))?.ToModel(); + } + public async Task<(int nbPages, IEnumerable? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById) { List? tmp = new List(); @@ -41,9 +46,9 @@ namespace DataManagers return await Task.FromResult<(int nbPages, IEnumerable? chapters)>((res.nbPages, tmp)); } - public int getNbElements() + public int getNbChapters() { - return manager.getNbElements(); + return manager.getNbChapters(); } public async Task removeChapter(Chapter chapter) @@ -51,9 +56,14 @@ namespace DataManagers return (await manager.removeChapter(chapter.ToEntity()))?.ToModel(); } - public async Task removeChapter(uint id) + public async Task removeChapter(int id) { return (await manager.removeChapter(id))?.ToModel(); } + + public async Task updateChapter(int id, string newName) + { + return (await manager.updateChapter(id, newName))?.ToModel(); + } } } diff --git a/WebApi/DataManagers/LobbyDataManager.cs b/WebApi/DataManagers/LobbyDataManager.cs index 9dd8796..b595b39 100644 --- a/WebApi/DataManagers/LobbyDataManager.cs +++ b/WebApi/DataManagers/LobbyDataManager.cs @@ -36,14 +36,14 @@ namespace DataManagers return await Task.FromResult<(int nbPages, IEnumerable? lobbies)>((res.nbPages, tmp)); } - public async Task getLobby(uint id) + public async Task getLobby(int id) { return await Task.FromResult((await manager.getLobby(id))?.ToModel()); } - public int getNbElements() + public int getNbLobbies() { - return manager.getNbElements(); + return manager.getNbLobbies(); } public async Task removeLobby(Lobby lobby) @@ -51,7 +51,7 @@ namespace DataManagers return (await manager.removeLobby(lobby.ToEntity()))?.ToModel(); } - public async Task removeLobby(uint id) + public async Task removeLobby(int id) { return (await manager.removeLobby(id))?.ToModel(); } diff --git a/WebApi/DataManagers/PlayerDataManager.cs b/WebApi/DataManagers/PlayerDataManager.cs index c7c46b2..590143d 100644 --- a/WebApi/DataManagers/PlayerDataManager.cs +++ b/WebApi/DataManagers/PlayerDataManager.cs @@ -21,22 +21,22 @@ namespace DataManagers return await Task.FromResult((await manager.addPlayer(player.ToEntity())).ToModel()); } - public async Task getMaxScorePlayer(uint id, uint idChapter) + public async Task getMaxScorePlayer(int id, int idChapter) { return await manager.getMaxScorePlayer(id, idChapter); } - public async Task getMaxScorePlayer(uint id) + public async Task getMaxScorePlayer(int id) { return await manager.getMaxScorePlayer(id); } - public int getNbElements() + public int getNbPlayers() { - return manager.getNbElements(); + return manager.getNbPlayers(); } - public async Task getPlayer(uint id) + public async Task getPlayer(int id) { return await Task.FromResult((await manager.getPlayer(id))?.ToModel()); } @@ -61,7 +61,7 @@ namespace DataManagers return await Task.FromResult<(int nbPages, IEnumerable? players)>((res.nbPages, tmp)); } - public async Task?> getPlayersInALobby(uint idLobby) + public async Task?> getPlayersInALobby(int idLobby) { List? tmp = new List(); var res = await manager.getPlayersInALobby(idLobby); @@ -81,7 +81,7 @@ namespace DataManagers return (await manager.removePlayer(player.ToEntity()))?.ToModel(); } - public async Task removePlayer(uint id) + public async Task removePlayer(int id) { return (await manager.removePlayer(id))?.ToModel(); } diff --git a/WebApi/DataManagers/QuestionDataManager.cs b/WebApi/DataManagers/QuestionDataManager.cs index 8d9d900..0916de7 100644 --- a/WebApi/DataManagers/QuestionDataManager.cs +++ b/WebApi/DataManagers/QuestionDataManager.cs @@ -39,12 +39,12 @@ namespace DataManagers return tmp2; } - public int getNbElements() + public int getNbQuestions() { - return manager.getNbElements(); + return manager.getNbQuestions(); } - public async Task getQuestion(uint id) + public async Task getQuestion(int id) { return await Task.FromResult((await manager.getQuestion(id))?.ToModel()); } @@ -85,17 +85,17 @@ namespace DataManagers return (await manager.removeQuestion(question.ToEntity()))?.ToModel(); } - public async Task removeQuestion(uint id) + public async Task removeQuestion(int id) { return (await manager.removeQuestion(id))?.ToModel(); } - public async Task updateQuestion(uint id, Question question) + public async Task updateQuestion(int id, Question question) { return (await manager.updateQuestion(id, question.ToEntity()))?.ToModel(); } - public async Task updateQuestionNbFalls(uint id) + public async Task updateQuestionNbFalls(int id) { return (await manager.updateQuestionNbFalls(id))?.ToModel(); } diff --git a/WebApi/EntityManagers/AdministratorEntityManager.cs b/WebApi/EntityManagers/AdministratorEntityManager.cs index 4d9fd18..441daa9 100644 --- a/WebApi/EntityManagers/AdministratorEntityManager.cs +++ b/WebApi/EntityManagers/AdministratorEntityManager.cs @@ -41,7 +41,7 @@ namespace EntityManagers public async Task<(int nbPages, IEnumerable? administrators)> getAdministrators(int nb, int count, AdministratorOrderCriteria orderCriteria = AdministratorOrderCriteria.ById) { - int nbEl = getNbElements(); + int nbEl = getNbAdmins(); if(nb < 0 || count < 0 || nb > nbEl/count) return await Task.FromResult<(int nbPages, IEnumerable? administrators)>((nbEl/count, null)); var tmp = dbContext.Administrators; switch (orderCriteria) @@ -56,7 +56,7 @@ namespace EntityManagers return await Task.FromResult<(int nbPages, IEnumerable? administrators)>((nbEl/count, tmp.Skip((nb-1)*count).Take(count))); } - public int getNbElements() + public int getNbAdmins() { return dbContext.Administrators.CountAsync().Result; } diff --git a/WebApi/EntityManagers/AnswerEntityManager.cs b/WebApi/EntityManagers/AnswerEntityManager.cs index 6e06288..f65274a 100644 --- a/WebApi/EntityManagers/AnswerEntityManager.cs +++ b/WebApi/EntityManagers/AnswerEntityManager.cs @@ -33,14 +33,19 @@ namespace EntityManagers return await dbContext.Answers.Where(a => a.Content == answer.Content && a.IdQuestion == answer.IdQuestion).FirstAsync(); } - public async Task getAnswer(uint id) + public async Task getAnswer(int id) { return await dbContext.Answers.Where(a => a.Id == id).FirstOrDefaultAsync(); } + public async Task?> getAnswers(string content) + { + return await Task.FromResult?>(dbContext.Answers.Where(a => a.Content == content)); + } + public async Task<(int nbPages, IEnumerable? answers)> getAnswers(int page, int count, AnswerOrderCriteria orderCriteria = AnswerOrderCriteria.ById) { - int nbEl = getNbElements(); + int nbEl = getNbAnswers(); if (page < 0 || count < 0 || page > nbEl / count) { return await Task.FromResult<( @@ -73,7 +78,7 @@ namespace EntityManagers )); } - public async Task?> getAnswersByIdQuestion(uint id) + public async Task?> getAnswersByIdQuestion(int id) { if(dbContext.Questions.Where(q => q.Id == id).Any()) { @@ -82,12 +87,12 @@ namespace EntityManagers return await Task.FromResult?>(null); } - public int getNbElements() + public int getNbAnswers() { return dbContext.Answers.CountAsync().Result; } - public async Task removeAnswer(uint id) + public async Task removeAnswer(int id) { var tmp = getAnswer(id).Result; if (tmp == null) return await Task.FromResult(tmp); @@ -105,7 +110,7 @@ namespace EntityManagers return await Task.FromResult(tmp); } - public async Task updateAnswer(uint id, AnswerEntity answer) + public async Task updateAnswer(int id, AnswerEntity answer) { var tmp = await dbContext.Answers.Where(a => a.Id == id).FirstOrDefaultAsync(); if(tmp == null) diff --git a/WebApi/EntityManagers/ChapterEntityManager.cs b/WebApi/EntityManagers/ChapterEntityManager.cs index 508ca87..25626a2 100644 --- a/WebApi/EntityManagers/ChapterEntityManager.cs +++ b/WebApi/EntityManagers/ChapterEntityManager.cs @@ -18,7 +18,7 @@ namespace EntityManagers public async Task addChapter(ChapterEntity chapter) { - var tmp = await dbContext.Chapters.Where(c => c.Equals(chapter)).FirstOrDefaultAsync(); + var tmp = await dbContext.Chapters.Where(c => c.Name == chapter.Name).FirstOrDefaultAsync(); if (tmp != null) // <=> he already exist { return tmp!; @@ -28,14 +28,19 @@ namespace EntityManagers return await dbContext.Chapters.Where(c => c.Equals(chapter)).FirstAsync(); } - public async Task getChapter(uint id) + public async Task getChapter(int id) { return await dbContext.Chapters.Where(c => c.Id == id).FirstOrDefaultAsync(); } + public async Task getChapter(string name) + { + return await dbContext.Chapters.SingleOrDefaultAsync(c => c.Name == name); + } + public async Task<(int nbPages, IEnumerable? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById) { - int nbEl = getNbElements(); + int nbEl = getNbChapters(); if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable? chapters)>((nbEl / count, null)); var tmp = dbContext.Chapters; switch (orderCriteria) @@ -50,7 +55,7 @@ namespace EntityManagers return await Task.FromResult<(int nbPages, IEnumerable? chapters)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count))); } - public int getNbElements() + public int getNbChapters() { return dbContext.Chapters.CountAsync().Result; } @@ -64,7 +69,7 @@ namespace EntityManagers return await Task.FromResult(tmp); } - public async Task removeChapter(uint id) + public async Task removeChapter(int id) { var tmp = getChapter(id).Result; if (tmp == null) return await Task.FromResult(tmp); @@ -72,5 +77,13 @@ namespace EntityManagers await dbContext.SaveChangesAsync(); return await Task.FromResult(tmp); } + + public async Task updateChapter(int id, string newName) + { + var tmp = await getChapter(id); + if (tmp == null) return null; + tmp.Name = newName; + return tmp; + } } } diff --git a/WebApi/EntityManagers/LobbyEntityManager.cs b/WebApi/EntityManagers/LobbyEntityManager.cs index cfef77a..a991f39 100644 --- a/WebApi/EntityManagers/LobbyEntityManager.cs +++ b/WebApi/EntityManagers/LobbyEntityManager.cs @@ -30,7 +30,7 @@ namespace EntityManagers public async Task<(int nbPages, IEnumerable? lobbies)> getLobbies(int nb, int count, LobbyOrderCriteria orderCriteria = LobbyOrderCriteria.ById) { - int nbEl = getNbElements(); + int nbEl = getNbLobbies(); if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable? lobbies)>((nbEl / count, null)); var tmp = dbContext.Lobbies; switch (orderCriteria) @@ -48,12 +48,12 @@ namespace EntityManagers return await Task.FromResult<(int nbPages, IEnumerable? lobbies)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count))); } - public async Task getLobby(uint id) + public async Task getLobby(int id) { return await Task.FromResult(dbContext.Lobbies.Where(l => l.Id == id).FirstOrDefault()); } - public int getNbElements() + public int getNbLobbies() { return dbContext.Lobbies.CountAsync().Result; } @@ -67,7 +67,7 @@ namespace EntityManagers return await Task.FromResult(tmp); } - public async Task removeLobby(uint id) + public async Task removeLobby(int id) { var tmp = dbContext.Lobbies.Where(a => a.Id == id).FirstOrDefaultAsync().Result; if (tmp == null) return await Task.FromResult(tmp); diff --git a/WebApi/EntityManagers/PlayerEntityManager.cs b/WebApi/EntityManagers/PlayerEntityManager.cs index 1bd655a..a64db9d 100644 --- a/WebApi/EntityManagers/PlayerEntityManager.cs +++ b/WebApi/EntityManagers/PlayerEntityManager.cs @@ -28,25 +28,25 @@ namespace EntityManagers return await dbContext.Players.Where(p => p.Equals(player)).FirstAsync(); } - public async Task getMaxScorePlayer(uint id, uint idChapter) + public async Task getMaxScorePlayer(int id, int idChapter) { var tmp = await dbContext.Play.Where(p => p.IdPlayer == id && p.IdChapter == idChapter).FirstOrDefaultAsync(); return await Task.FromResult(tmp?.MaxScore); } - public async Task getMaxScorePlayer(uint id) + public async Task getMaxScorePlayer(int id) { var tmp = dbContext.Play.Where(p => p.IdPlayer == id).Select(p => p.MaxScore); - if (!tmp.AnyAsync().Result) return await Task.FromResult(null); - return await Task.FromResult(tmp?.MaxAsync().Result); + if (!tmp.AnyAsync().Result) return await Task.FromResult(null); + return await Task.FromResult(tmp?.MaxAsync().Result); } - public int getNbElements() + public int getNbPlayers() { return dbContext.Players.CountAsync().Result; } - public async Task getPlayer(uint id) + public async Task getPlayer(int id) { return await dbContext.Players.Where(p => p.Id == id).FirstOrDefaultAsync(); } @@ -58,7 +58,7 @@ namespace EntityManagers public async Task<(int nbPages, IEnumerable? players)> getPlayers(int nb, int count, PlayerOrderCriteria orderCriteria = PlayerOrderCriteria.ById) { - int nbEl = getNbElements(); + int nbEl = getNbPlayers(); if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable? players)>((nbEl / count, null)); var tmp = dbContext.Players; switch (orderCriteria) @@ -73,7 +73,7 @@ namespace EntityManagers return await Task.FromResult<(int nbPages, IEnumerable? players)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count))); } - public async Task?> getPlayersInALobby(uint idLobby) + public async Task?> getPlayersInALobby(int idLobby) { if (!await dbContext.Lobbies.Where(l => l.Id == idLobby).AnyAsync()) return await Task.FromResult?>(null); @@ -91,7 +91,7 @@ namespace EntityManagers return await Task.FromResult(tmp); } - public async Task removePlayer(uint id) + public async Task removePlayer(int id) { var tmp = getPlayer(id).Result; if (tmp == null) return await Task.FromResult(tmp); diff --git a/WebApi/EntityManagers/QuestionEntityManager.cs b/WebApi/EntityManagers/QuestionEntityManager.cs index ad0a73f..1ea7c39 100644 --- a/WebApi/EntityManagers/QuestionEntityManager.cs +++ b/WebApi/EntityManagers/QuestionEntityManager.cs @@ -56,19 +56,19 @@ namespace EntityManagers return await Task.FromResult>(tmp); } - public int getNbElements() + public int getNbQuestions() { return dbContext.Questions.CountAsync().Result; } - public async Task getQuestion(uint id) + public async Task getQuestion(int id) { return await Task.FromResult(dbContext.Questions.Where(q => q.Id == id).FirstOrDefault()); } public async Task<(int nbPages, IEnumerable? questions)> getQuestions(int nb, int count, QuestionOrderCriteria orderCriteria = QuestionOrderCriteria.ById) { - int nbEl = getNbElements(); + int nbEl = getNbQuestions(); if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable? questions)>((nbEl / count, null)); var tmp = trier(dbContext.Questions, orderCriteria); return await Task.FromResult<(int nbPages, IEnumerable? questions)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count))); @@ -78,7 +78,7 @@ namespace EntityManagers { if (nb < 0 || count < 0 || difficulty < 1 || difficulty > 3 || !dbContext.Chapters.Where(c => c.Id == idChapter).AnyAsync().Result) return await Task.FromResult<(int nbPages, IEnumerable? questions)?>(null); - int nbEl = getNbElements(); + int nbEl = getNbQuestions(); if (nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable? questions)?>((nbEl / count, null)); var tmp = trier(dbContext.Questions, orderCriteria); return await Task.FromResult<(int nbPages, IEnumerable? questions)?>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count))); @@ -93,7 +93,7 @@ namespace EntityManagers return tmp; } - public Task removeQuestion(uint id) + public Task removeQuestion(int id) { var tmp = getQuestion(id); if (tmp.Result == null) return tmp; @@ -102,7 +102,7 @@ namespace EntityManagers return tmp; } - public async Task updateQuestion(uint id, QuestionEntity question) + public async Task updateQuestion(int id, QuestionEntity question) { var tmp = getQuestion(id); if (tmp.Result == null) return await tmp; @@ -115,12 +115,12 @@ namespace EntityManagers return await tmp; } - public async Task updateQuestionNbFalls(uint id) + public async Task updateQuestionNbFalls(int id) { var tmp = getQuestion(id); if (tmp.Result == null) return await tmp; tmp.Result.NbFalls++; - uint nbFalls = tmp.Result.NbFalls; + int nbFalls = tmp.Result.NbFalls; if (nbFalls == 50) tmp.Result.Difficulty = 2; if (nbFalls == 150) tmp.Result.Difficulty = 3; await dbContext.SaveChangesAsync(); diff --git a/WebApi/ManagerInterfaces/IAdministratorManager.cs b/WebApi/ManagerInterfaces/IAdministratorManager.cs index 2a6118e..f5b8992 100644 --- a/WebApi/ManagerInterfaces/IAdministratorManager.cs +++ b/WebApi/ManagerInterfaces/IAdministratorManager.cs @@ -16,28 +16,28 @@ namespace ManagerInterfaces public interface IAdministratorManager { /// - /// get the number of T element + /// get the number of administrators /// - /// the number of T element - public int getNbElements(); + /// the number of administrators + public int getNbAdmins(); /// - /// add a T element + /// add an administrator /// /// the administrator to add /// - /// the T element that corresponde to + /// the element that correspond to /// the administrator added or the administrator equal to this /// administrator if this administrator was already added /// public Task addAdmin(T admin); /// - /// remove a T element + /// remove an administrators /// /// the administrator to remove /// the administrator removed or null if there isn't any public Task removeAdmin(T admin); /// - /// remove a T element + /// remove an administrator /// /// the id of the administrator to remove /// the administrator removed or null if there isn't any @@ -46,11 +46,11 @@ namespace ManagerInterfaces /// get a part of all administrators /// /// the actual page - /// number of T element in a page + /// number of administrators in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all administrators in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) diff --git a/WebApi/ManagerInterfaces/IAnswerManager.cs b/WebApi/ManagerInterfaces/IAnswerManager.cs index 97111d4..96cd5fe 100644 --- a/WebApi/ManagerInterfaces/IAnswerManager.cs +++ b/WebApi/ManagerInterfaces/IAnswerManager.cs @@ -11,19 +11,19 @@ namespace ManagerInterfaces public interface IAnswerManager { /// - /// get the number of T element + /// get the number of answers /// - /// the number of T element - public int getNbElements(); + /// the number of answers + public int getNbAnswers(); /// /// get a part of all answers /// /// the actual page - /// number of T element in a page + /// number of answers in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all answers in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) @@ -34,52 +34,61 @@ namespace ManagerInterfaces /// /// the id of the question /// - /// a set of all T answers that answer to this question + /// a set of all answers that answer to this question /// - public Task?> getAnswersByIdQuestion(uint id); + public Task?> getAnswersByIdQuestion(int id); /// - /// modified a T element with an id + /// modified an answer with an id /// - /// the id of the T element + /// the id of the answer /// an answer that contains all modified properties /// - /// the T element (modified) that corresponde + /// the answer (modified) that corresponde /// to the id or null if there isn't any /// - public Task updateAnswer(uint id, T answer); + public Task updateAnswer(int id, T answer); /// - /// delete a T element with an id + /// delete an answer with an id /// - /// the id of the T element + /// the id of the answer /// - /// the T element deleted that corresponde + /// the answer deleted that corresponde /// to the id or null if there isn't any /// - public Task removeAnswer(uint id); + public Task removeAnswer(int id); /// - /// delete a T element + /// delete an answer /// - /// the T element to delete + /// the answer to delete /// the answer removed or null if there wasn't any public Task removeAnswer(T answer); /// - /// add a T element + /// add an answer /// /// the answer to add /// - /// the T element that corresponde to + /// the element that corresponde to /// the answer added or the answer equal to this /// answer if this answer was already added /// public Task addAnswer(T answer); /// - /// get a T element with an id + /// get an answer with an id /// - /// the id of the T element + /// the id of the answer /// - /// the T element that corresponde + /// the answer that corresponde /// to the id or null if there isn't any /// - public Task getAnswer(uint id); + public Task getAnswer(int id); + /// + /// get answers + /// + /// the content of the answer + /// + /// the answer that corresponde + /// to the content or null if there isn't any + /// + public Task?> getAnswers(string content); } } \ No newline at end of file diff --git a/WebApi/ManagerInterfaces/IChapterManager.cs b/WebApi/ManagerInterfaces/IChapterManager.cs index 0301eec..9517655 100644 --- a/WebApi/ManagerInterfaces/IChapterManager.cs +++ b/WebApi/ManagerInterfaces/IChapterManager.cs @@ -16,10 +16,10 @@ namespace ManagerInterfaces public interface IChapterManager { /// - /// get the number of T element + /// get the number of chapters /// - /// the number of T element - public int getNbElements(); + /// the number of chapters + public int getNbChapters(); /// /// add a chapter /// @@ -46,30 +46,51 @@ namespace ManagerInterfaces /// the chapter removed or null if /// the chapter does not exist /// - Task removeChapter(uint id); + Task removeChapter(int id); /// /// get a chapter /// - /// the identifier of the chapter to remove + /// the identifier of the chapter /// /// the chapter that correspond /// to the id or null if the /// chapter does not exist /// - Task getChapter(uint id); + Task getChapter(int id); + /// + /// get a chapter + /// + /// the name of the chapter + /// + /// the chapter that correspond + /// to the name or null if the + /// chapter does not exist + /// + Task getChapter(string name); /// /// get a part of all chapters /// /// the actual page - /// number of T element in a page + /// number of chapters in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all chapters in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) /// Task<(int nbPages, IEnumerable? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById); + + /// + /// update a chapter + /// + /// the id of the chapter to update + /// the new name of the chapter + /// + /// the chapter modified or null if + /// the id does not refer a chapter + /// + Task updateChapter(int id, string newName); } } diff --git a/WebApi/ManagerInterfaces/ILobbyManager.cs b/WebApi/ManagerInterfaces/ILobbyManager.cs index d1291d7..8662bbb 100644 --- a/WebApi/ManagerInterfaces/ILobbyManager.cs +++ b/WebApi/ManagerInterfaces/ILobbyManager.cs @@ -16,10 +16,10 @@ namespace ManagerInterfaces public interface ILobbyManager { /// - /// get the number of T element + /// get the number of lobbies /// - /// the number of T element - public int getNbElements(); + /// the number of lobbies + public int getNbLobbies(); /// /// add a lobby /// @@ -27,45 +27,45 @@ namespace ManagerInterfaces /// the lobby added public Task addLobby(T lobby); /// - /// delete a T element + /// delete a lobby /// /// the lobby to remove /// - /// the T element deleted or + /// the lobby deleted or /// null if there isn't any /// public Task removeLobby(T lobby); /// - /// delete a T element with an id + /// delete a lobby with an id /// - /// the id of the T element + /// the id of the lobby /// - /// the T element deleted that corresponde + /// the lobby deleted that corresponde /// to the id or null if there isn't any /// - public Task removeLobby(uint id); + public Task removeLobby(int id); /// /// get a part of all lobbies /// /// the actual page - /// number of T element in a page + /// number of lobbies in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all lobbies in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) /// public Task<(int nbPages, IEnumerable? lobbies)> getLobbies(int nb, int count, LobbyOrderCriteria orderCriteria = LobbyOrderCriteria.ById); /// - /// get a T element with an id + /// get a lobby with an id /// - /// the id of the T element + /// the id of the lobby /// - /// the T element that corresponde + /// the lobby that corresponde /// to the id or null if there isn't any /// - public Task getLobby(uint id); + public Task getLobby(int id); } } \ No newline at end of file diff --git a/WebApi/ManagerInterfaces/IPlayerManager.cs b/WebApi/ManagerInterfaces/IPlayerManager.cs index aa3578a..6fd5530 100644 --- a/WebApi/ManagerInterfaces/IPlayerManager.cs +++ b/WebApi/ManagerInterfaces/IPlayerManager.cs @@ -17,16 +17,16 @@ namespace ManagerInterfaces public interface IPlayerManager { /// - /// get the number of T element + /// get the number of players /// - /// the number of T element - public int getNbElements(); + /// the number of players + public int getNbPlayers(); /// /// add a player /// /// the player to add /// - /// the T element that corresponde to + /// the player that corresponde to /// the player added or the player equal to this /// player if this player was already added /// @@ -48,16 +48,16 @@ namespace ManagerInterfaces /// the player removed or null if /// the player does not exist /// - Task removePlayer(uint id); + Task removePlayer(int id); /// /// get a part of all players /// /// the actual page - /// number of T element in a page + /// number of players in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all players in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) @@ -72,7 +72,7 @@ namespace ManagerInterfaces /// or null if no player match /// with this id /// - public Task getPlayer(uint id); + public Task getPlayer(int id); /// /// get a player /// @@ -94,7 +94,7 @@ namespace ManagerInterfaces /// delete the lobby) if it is used by /// no player /// - public Task?> getPlayersInALobby(uint idLobby); + public Task?> getPlayersInALobby(int idLobby); /// /// get the max score of a player in a chapter /// @@ -105,7 +105,7 @@ namespace ManagerInterfaces /// or null if the player or /// the chapter does not exist /// - public Task getMaxScorePlayer(uint id, uint idChapter); + public Task getMaxScorePlayer(int id, int idChapter); /// /// get the global max score of a player /// @@ -114,6 +114,6 @@ namespace ManagerInterfaces /// the max score of the player /// or null if the player does not exist /// - public Task getMaxScorePlayer(uint id); + public Task getMaxScorePlayer(int id); } } diff --git a/WebApi/ManagerInterfaces/IQuestionManager.cs b/WebApi/ManagerInterfaces/IQuestionManager.cs index 8a3e3d3..4bbe62c 100644 --- a/WebApi/ManagerInterfaces/IQuestionManager.cs +++ b/WebApi/ManagerInterfaces/IQuestionManager.cs @@ -17,10 +17,10 @@ namespace ManagerInterfaces public interface IQuestionManager { /// - /// get the number of T element + /// get the number of questions /// - /// the number of T element - public int getNbElements(); + /// the number of questions + public int getNbQuestions(); /// /// add a question /// @@ -28,66 +28,66 @@ namespace ManagerInterfaces /// the question added public Task addQuestion(T question); /// - /// delete a T element + /// delete a question /// /// the question to remove /// - /// the T element deleted or + /// the question deleted or /// null if there isn't any /// public Task removeQuestion(T question); /// - /// delete a T element with an id + /// delete a question with an id /// - /// the id of the T element + /// the id of the question /// - /// the T element deleted that corresponde + /// the question deleted that corresponde /// to the id or null if there isn't any /// - public Task removeQuestion(uint id); + public Task removeQuestion(int id); /// /// get a part of all questions /// /// the actual page - /// number of T element in a page + /// number of question in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all questions in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) /// public Task<(int nbPages, IEnumerable? questions)> getQuestions(int nb, int count, QuestionOrderCriteria orderCriteria = QuestionOrderCriteria.ById); /// - /// get a T element with an id + /// get a question with an id /// - /// the id of the T element + /// the id of the question /// - /// the T element that corresponde + /// the question that corresponde /// to the id or null if there isn't any /// - public Task getQuestion(uint id); + public Task getQuestion(int id); /// - /// modified a T element with an id + /// modified a question with an id /// - /// the id of the T element + /// the id of the question /// an question that contains all modified properties /// - /// the T element (modified) that corresponde + /// the question modified that corresponde /// to the id or null if there isn't any /// - public Task updateQuestion(uint id, T question); + public Task updateQuestion(int id, T question); /// /// increase nbFalls of a question by 1 /// (and change the difficulty of the question) /// /// the id of the question /// - /// the T element (modified) that corresponde + /// the question modified that corresponde /// to the id or null if there isn't any /// - public Task updateQuestionNbFalls(uint id); + public Task updateQuestionNbFalls(int id); /// /// add some questions /// @@ -100,11 +100,11 @@ namespace ManagerInterfaces /// the id of the chapter /// the difficulty /// the actual page - /// number of T element in a page + /// number of question in a page /// the order criteria /// /// a set of the number of page and - /// all T element in the database for + /// all questions in the database for /// the page nb (or null if the page /// does not exist (<=> (nb-1)*count outside /// boundaries (0, getNbElement()-1))) diff --git a/WebApi/ServiceManagers/AdministratorServiceManager.cs b/WebApi/ServiceManagers/AdministratorServiceManager.cs index 7ab5c96..8b7d820 100644 --- a/WebApi/ServiceManagers/AdministratorServiceManager.cs +++ b/WebApi/ServiceManagers/AdministratorServiceManager.cs @@ -48,9 +48,9 @@ namespace ServiceManagers return await Task.FromResult<(int nbPages, IEnumerable? administrators)>((res.nbPages, tmp)); } - public int getNbElements() + public int getNbAdmins() { - return manager.getNbElements(); + return manager.getNbAdmins(); } public async Task removeAdmin(AdministratorDto admin) diff --git a/WebApi/ServiceManagers/AnswerServiceManager.cs b/WebApi/ServiceManagers/AnswerServiceManager.cs index c96f842..ed9812f 100644 --- a/WebApi/ServiceManagers/AnswerServiceManager.cs +++ b/WebApi/ServiceManagers/AnswerServiceManager.cs @@ -23,9 +23,9 @@ namespace ServiceManagers return await Task.FromResult((await manager.addAnswer(answerdto.ToModel())).ToDto()); } - public async Task getAnswer(uint id) + public async Task getAnswer(int id) { - return await Task.FromResult((await manager.getAnswer(id))?.ToDto()); + return (await manager.getAnswer(id))?.ToDto(); } public async Task<(int nbPages, IEnumerable? answers)> getAnswers(int nb, int count, AnswerOrderCriteria orderCriteria = AnswerOrderCriteria.ById) @@ -40,10 +40,10 @@ namespace ServiceManagers tmp.Add(item.ToDto()); } } - return await Task.FromResult<(int nbPages, IEnumerable? answers)>((res.nbPages, tmp)); + return (res.nbPages, tmp); } - public async Task?> getAnswersByIdQuestion(uint id) + public async Task?> getAnswersByIdQuestion(int id) { var tmp = await manager.getAnswersByIdQuestion(id); List? answerdto = new List(); @@ -55,15 +55,15 @@ namespace ServiceManagers answerdto.Add(item.ToDto()); } } - return await Task.FromResult?>(answerdto); + return answerdto; } - public int getNbElements() + public int getNbAnswers() { - return manager.getNbElements(); + return manager.getNbAnswers(); } - public async Task removeAnswer(uint id) + public async Task removeAnswer(int id) { return (await manager.removeAnswer(id))?.ToDto(); } @@ -73,9 +73,14 @@ namespace ServiceManagers return (await manager.removeAnswer(answerdto.ToModel()))?.ToDto(); } - public async Task updateAnswer(uint id, AnswerDto answerdto) + public async Task updateAnswer(int id, AnswerDto answerdto) { return (await manager.updateAnswer(id, answerdto.ToModel()))?.ToDto(); } + + public async Task?> getAnswers(string content) + { + return (await manager.getAnswers(content))?.Select(a => a.ToDto()); + } } } diff --git a/WebApi/ServiceManagers/ChapterServiceManager.cs b/WebApi/ServiceManagers/ChapterServiceManager.cs index 5cbf6a9..abc52f6 100644 --- a/WebApi/ServiceManagers/ChapterServiceManager.cs +++ b/WebApi/ServiceManagers/ChapterServiceManager.cs @@ -22,11 +22,16 @@ namespace ServiceManagers return await Task.FromResult((await manager.addChapter(chapterdto.ToModel())).ToDto()); } - public async Task getChapter(uint id) + public async Task getChapter(int id) { return await Task.FromResult((await manager.getChapter(id))?.ToDto()); } + public async Task getChapter(string name) + { + return (await manager.getChapter(name))?.ToDto(); + } + public async Task<(int nbPages, IEnumerable? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById) { List? tmp = new List(); @@ -42,9 +47,9 @@ namespace ServiceManagers return await Task.FromResult<(int nbPages, IEnumerable? chapters)>((res.nbPages, tmp)); } - public int getNbElements() + public int getNbChapters() { - return manager.getNbElements(); + return manager.getNbChapters(); } public async Task removeChapter(ChapterDto chapterdto) @@ -52,9 +57,14 @@ namespace ServiceManagers return (await manager.removeChapter(chapterdto.ToModel()))?.ToDto(); } - public async Task removeChapter(uint id) + public async Task removeChapter(int id) { return (await manager.removeChapter(id))?.ToDto(); } + + public async Task updateChapter(int id, string newName) + { + return (await manager.updateChapter(id, newName))?.ToDto(); + } } } diff --git a/WebApi/ServiceManagers/LobbyServiceManager.cs b/WebApi/ServiceManagers/LobbyServiceManager.cs index 39ade52..614e501 100644 --- a/WebApi/ServiceManagers/LobbyServiceManager.cs +++ b/WebApi/ServiceManagers/LobbyServiceManager.cs @@ -37,14 +37,14 @@ namespace ServiceManagers return await Task.FromResult<(int nbPages, IEnumerable? lobbies)>((res.nbPages, tmp)); } - public async Task getLobby(uint id) + public async Task getLobby(int id) { return await Task.FromResult((await manager.getLobby(id))?.ToDto()); } - public int getNbElements() + public int getNbLobbies() { - return manager.getNbElements(); + return manager.getNbLobbies(); } public async Task removeLobby(LobbyDto lobbydto) @@ -52,7 +52,7 @@ namespace ServiceManagers return (await manager.removeLobby(lobbydto.ToModel()))?.ToDto(); } - public async Task removeLobby(uint id) + public async Task removeLobby(int id) { return (await manager.removeLobby(id))?.ToDto(); } diff --git a/WebApi/ServiceManagers/PlayerServiceManager.cs b/WebApi/ServiceManagers/PlayerServiceManager.cs index c45ecfd..a67da73 100644 --- a/WebApi/ServiceManagers/PlayerServiceManager.cs +++ b/WebApi/ServiceManagers/PlayerServiceManager.cs @@ -22,22 +22,22 @@ namespace ServiceManagers return await Task.FromResult((await manager.addPlayer(playerdto.ToModel())).ToDto()); } - public async Task getMaxScorePlayer(uint id, uint idChapter) + public async Task getMaxScorePlayer(int id, int idChapter) { return await manager.getMaxScorePlayer(id, idChapter); } - public async Task getMaxScorePlayer(uint id) + public async Task getMaxScorePlayer(int id) { return await manager.getMaxScorePlayer(id); } - public int getNbElements() + public int getNbPlayers() { - return manager.getNbElements(); + return manager.getNbPlayers(); } - public async Task getPlayer(uint id) + public async Task getPlayer(int id) { return await Task.FromResult((await manager.getPlayer(id))?.ToDto()); } @@ -62,7 +62,7 @@ namespace ServiceManagers return await Task.FromResult<(int nbPages, IEnumerable? players)>((res.nbPages, tmp)); } - public async Task?> getPlayersInALobby(uint idLobby) + public async Task?> getPlayersInALobby(int idLobby) { List? tmp = new List(); var res = await manager.getPlayersInALobby(idLobby); @@ -82,7 +82,7 @@ namespace ServiceManagers return (await manager.removePlayer(playerdto.ToModel()))?.ToDto(); } - public async Task removePlayer(uint id) + public async Task removePlayer(int id) { return (await manager.removePlayer(id))?.ToDto(); } diff --git a/WebApi/ServiceManagers/QuestionServiceManager.cs b/WebApi/ServiceManagers/QuestionServiceManager.cs index a76af1e..5112b60 100644 --- a/WebApi/ServiceManagers/QuestionServiceManager.cs +++ b/WebApi/ServiceManagers/QuestionServiceManager.cs @@ -41,12 +41,12 @@ namespace ServiceManagers return tmp2; } - public int getNbElements() + public int getNbQuestions() { - return manager.getNbElements(); + return manager.getNbQuestions(); } - public async Task getQuestion(uint id) + public async Task getQuestion(int id) { return await Task.FromResult((await manager.getQuestion(id))?.ToDto()); } @@ -87,17 +87,17 @@ namespace ServiceManagers return (await manager.removeQuestion(question.ToModel()))?.ToDto(); } - public async Task removeQuestion(uint id) + public async Task removeQuestion(int id) { return (await manager.removeQuestion(id))?.ToDto(); } - public async Task updateQuestion(uint id, QuestionDto question) + public async Task updateQuestion(int id, QuestionDto question) { return (await manager.updateQuestion(id, question.ToModel()))?.ToDto(); } - public async Task updateQuestionNbFalls(uint id) + public async Task updateQuestionNbFalls(int id) { return (await manager.updateQuestionNbFalls(id))?.ToDto(); }