From 91a5157b4ba3fbc7493786be2c189a5daf46ea56 Mon Sep 17 00:00:00 2001 From: Noan07 <84435602+Noan07@users.noreply.github.com> Date: Fri, 24 Feb 2023 11:12:44 +0100 Subject: [PATCH] chat controller --- .../ApiLeapHit/Controllers/ChatController.cs | 85 ++++++------------ .../ApiLeapHit/Controllers/GameController.cs | 15 +--- .../DataManager/DbDataManager.Chat.cs | 8 +- code/server/DataBase/PongDB.db-shm | Bin 32768 -> 32768 bytes code/server/DataBase/PongDB.db-wal | Bin 28872 -> 57712 bytes 5 files changed, 35 insertions(+), 73 deletions(-) diff --git a/code/server/ApiLeapHit/Controllers/ChatController.cs b/code/server/ApiLeapHit/Controllers/ChatController.cs index bf424fd..0856c37 100644 --- a/code/server/ApiLeapHit/Controllers/ChatController.cs +++ b/code/server/ApiLeapHit/Controllers/ChatController.cs @@ -1,83 +1,50 @@ -using Microsoft.AspNetCore.Http; +using DataBase.DataManager; +using DataBase.Entity; +using DTO; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace ApiLeapHit.Controllers { + [Route("api/[controller]")] + [ApiController] public class ChatController : Controller { - // GET: ChatController - public ActionResult Index() - { - return View(); - } - // GET: ChatController/Details/5 - public ActionResult Details(int id) - { - return View(); - } + private readonly DbDataManager _dataManager; - // GET: ChatController/Create - public ActionResult Create() - { - return View(); - } - // POST: ChatController/Create - [HttpPost] - [ValidateAntiForgeryToken] - public ActionResult Create(IFormCollection collection) + public ChatController(DbDataManager dataManager) { - try - { - return RedirectToAction(nameof(Index)); - } - catch - { - return View(); - } + _dataManager = dataManager; } - // GET: ChatController/Edit/5 - public ActionResult Edit(int id) - { - return View(); - } - - // POST: ChatController/Edit/5 [HttpPost] - [ValidateAntiForgeryToken] - public ActionResult Edit(int id, IFormCollection collection) + public async Task AddChat([FromBody] DTOChat dtoChat) { - try - { - return RedirectToAction(nameof(Index)); - } - catch + var player1 = await _dataManager.GetPlayer(dtoChat.PlayerId2.playerId); + var player2 = await _dataManager.GetPlayer(dtoChat.PlayerId2.playerId); + + var chat = new Chat { - return View(); - } - } + chatId = dtoChat.chatId, + player1 = player1.playerId, + player2 = player2.playerId + }; - // GET: ChatController/Delete/5 - public ActionResult Delete(int id) - { - return View(); + await _dataManager.AddChat(chat); + return Ok(); } - // POST: ChatController/Delete/5 - [HttpPost] - [ValidateAntiForgeryToken] - public ActionResult Delete(int id, IFormCollection collection) + [HttpDelete("{id}")] + public async Task RemoveChat(int id) { - try - { - return RedirectToAction(nameof(Index)); - } - catch + var result = await _dataManager.RemoveChat(id); + if (result) { - return View(); + return Ok(result); } + return NotFound(result); } } } diff --git a/code/server/ApiLeapHit/Controllers/GameController.cs b/code/server/ApiLeapHit/Controllers/GameController.cs index bb2b291..1796034 100644 --- a/code/server/ApiLeapHit/Controllers/GameController.cs +++ b/code/server/ApiLeapHit/Controllers/GameController.cs @@ -71,19 +71,12 @@ namespace ApiLeapHit.Controllers [HttpDelete("{id}")] public async Task RemoveGame(int id) { - try + var result = await _dataManager.RemoveGame(id); + if (result) { - var result = await _dataManager.RemoveGame(id); - if (result) - { - return Ok(); - } - return NotFound(); - } - catch (Exception ex) - { - return StatusCode((int)HttpStatusCode.InternalServerError, FactoryMessage.MessageCreate("Une erreur est survenue lors de la récupération des champions")); + return Ok(result); } + return NotFound(result); } } } diff --git a/code/server/DataBase/DataManager/DbDataManager.Chat.cs b/code/server/DataBase/DataManager/DbDataManager.Chat.cs index 955e082..683019d 100644 --- a/code/server/DataBase/DataManager/DbDataManager.Chat.cs +++ b/code/server/DataBase/DataManager/DbDataManager.Chat.cs @@ -15,10 +15,11 @@ namespace DataBase.DataManager using (var context = new PongDbContext()) { await context.Chats.AddAsync(chat); + await context.SaveChangesAsync(); } } - public Task RemoveChat(int id) + public async Task RemoveChat(int id) { using (var context = new PongDbContext()) { @@ -26,9 +27,10 @@ namespace DataBase.DataManager if (chat != null) { var result = context.Chats.Remove(chat); - return Task.FromResult(result != null); + await context.SaveChangesAsync(); + return result != null; } - return Task.FromResult(false); + return false; } } } diff --git a/code/server/DataBase/PongDB.db-shm b/code/server/DataBase/PongDB.db-shm index 91d571d912a41ccda4c37861365f33d3939d4bfd..d561b7d0046254a9cd36b187d1392c8b1896ae81 100644 GIT binary patch delta 210 zcmZo@U}|V!s+V}A%K!pQK+MR%AixKtLD=_9)Z&R37o{I%obUM{#^C#=V*a|rzZkBN zsvc+*7;pp0|40BT%*4Pxu~Au)706`+Voo6DLS}DVXz9ny$iT62;cq5J&W-c`GHw18 Y@`sg~i-8v;#LUgW2ckE>N)VF=08yJf^Z)<= delta 167 zcmZo@U}|V!s+V}A%K!q55G=qBr1^k2w#S!$dTQq3qm1)CAH*1ZU(vpM<~DC2z32QdcUpB+hmH%t2AVP5|G3@rS|82CT)zu-T{ ze{pl7z&8HL|M+E`I62)Db5l8)n8g{LGZIURnYkI6r5OWq5-U@SikW~$u_2qch1uWO zgiZT3FHn$)|04tcPyUaaCmKBEH)dmIVPIrrVq#@vVc=v0Y2-xK82nX8Hd;f}h6}9m z8w39z{%@NP20Z6i1q!e-19dVpGjoEpfK>3o+`q2Tr~Kwc!;PCW6n^n*F|#l;a$>mY z