45 lines
1.1 KiB
C#
45 lines
1.1 KiB
C#
using GameAuthApi.Services;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System.Threading.Tasks;
|
|
using GameAuthApi.Models;
|
|
|
|
namespace GameAuthApi.Controllers;
|
|
|
|
[ApiController]
|
|
[Route("api/[controller]")]
|
|
public class AdminController : ControllerBase
|
|
{
|
|
private readonly AdminService _adminService;
|
|
|
|
public AdminController(AdminService adminService)
|
|
{
|
|
_adminService = adminService;
|
|
}
|
|
|
|
[HttpGet("status")]
|
|
[Authorize(Roles = "SUPER")]
|
|
public async Task<IActionResult> GetStatus()
|
|
{
|
|
var status = await _adminService.GetStatusAsync();
|
|
return Ok(status);
|
|
}
|
|
|
|
[HttpPost("reset-locations")]
|
|
[Authorize(Roles = "SUPER")]
|
|
public async Task<IActionResult> ResetLocations()
|
|
{
|
|
var origin = await _adminService.ResetLocationsAsync();
|
|
return Ok(origin);
|
|
}
|
|
|
|
[HttpPost("clear-items")]
|
|
[Authorize(Roles = "SUPER")]
|
|
public async Task<IActionResult> ClearItems()
|
|
{
|
|
await _adminService.ClearItemsAsync();
|
|
return Ok("All items cleared.");
|
|
}
|
|
}
|
|
|