chat controller
continuous-integration/drone/push Build is passing Details

pull/1/head
Noan07 2 years ago
parent 089b169e32
commit 91a5157b4b

@ -1,83 +1,50 @@
using Microsoft.AspNetCore.Http; using DataBase.DataManager;
using DataBase.Entity;
using DTO;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace ApiLeapHit.Controllers namespace ApiLeapHit.Controllers
{ {
[Route("api/[controller]")]
[ApiController]
public class ChatController : Controller public class ChatController : Controller
{ {
// GET: ChatController
public ActionResult Index()
{
return View();
}
// GET: ChatController/Details/5 private readonly DbDataManager _dataManager;
public ActionResult Details(int id)
{
return View();
}
// GET: ChatController/Create
public ActionResult Create()
{
return View();
}
// POST: ChatController/Create public ChatController(DbDataManager dataManager)
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(IFormCollection collection)
{ {
try _dataManager = dataManager;
{
return RedirectToAction(nameof(Index));
}
catch
{
return View();
}
} }
// GET: ChatController/Edit/5
public ActionResult Edit(int id)
{
return View();
}
// POST: ChatController/Edit/5
[HttpPost] [HttpPost]
[ValidateAntiForgeryToken] public async Task<ActionResult> AddChat([FromBody] DTOChat dtoChat)
public ActionResult Edit(int id, IFormCollection collection)
{ {
try var player1 = await _dataManager.GetPlayer(dtoChat.PlayerId2.playerId);
{ var player2 = await _dataManager.GetPlayer(dtoChat.PlayerId2.playerId);
return RedirectToAction(nameof(Index));
} var chat = new Chat
catch
{ {
return View(); chatId = dtoChat.chatId,
} player1 = player1.playerId,
} player2 = player2.playerId
};
// GET: ChatController/Delete/5 await _dataManager.AddChat(chat);
public ActionResult Delete(int id) return Ok();
{
return View();
} }
// POST: ChatController/Delete/5 [HttpDelete("{id}")]
[HttpPost] public async Task<ActionResult> RemoveChat(int id)
[ValidateAntiForgeryToken]
public ActionResult Delete(int id, IFormCollection collection)
{ {
try var result = await _dataManager.RemoveChat(id);
{ if (result)
return RedirectToAction(nameof(Index));
}
catch
{ {
return View(); return Ok(result);
} }
return NotFound(result);
} }
} }
} }

@ -71,19 +71,12 @@ namespace ApiLeapHit.Controllers
[HttpDelete("{id}")] [HttpDelete("{id}")]
public async Task<ActionResult> RemoveGame(int id) public async Task<ActionResult> RemoveGame(int id)
{ {
try var result = await _dataManager.RemoveGame(id);
if (result)
{ {
var result = await _dataManager.RemoveGame(id); return Ok(result);
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 NotFound(result);
} }
} }
} }

@ -15,10 +15,11 @@ namespace DataBase.DataManager
using (var context = new PongDbContext()) using (var context = new PongDbContext())
{ {
await context.Chats.AddAsync(chat); await context.Chats.AddAsync(chat);
await context.SaveChangesAsync();
} }
} }
public Task<bool> RemoveChat(int id) public async Task<bool> RemoveChat(int id)
{ {
using (var context = new PongDbContext()) using (var context = new PongDbContext())
{ {
@ -26,9 +27,10 @@ namespace DataBase.DataManager
if (chat != null) if (chat != null)
{ {
var result = context.Chats.Remove(chat); var result = context.Chats.Remove(chat);
return Task.FromResult(result != null); await context.SaveChangesAsync();
return result != null;
} }
return Task.FromResult(false); return false;
} }
} }
} }

Loading…
Cancel
Save