69 lines
1.8 KiB
C#
69 lines
1.8 KiB
C#
using FichaBackend.Models.DTO;
|
|
using FichaBackend.Services;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace FichaBackend.Controllers;
|
|
|
|
[ApiController]
|
|
[Route("v1/admin")]
|
|
public class AdminController : ControllerBase
|
|
{
|
|
private readonly ILogger<MainController> _logger;
|
|
private readonly IPublicDataService _publicDataService;
|
|
private readonly IAdminService _adminService;
|
|
|
|
public AdminController(ILogger<MainController> logger, IPublicDataService publicDataService, IAdminService adminService)
|
|
{
|
|
_logger = logger;
|
|
_publicDataService = publicDataService;
|
|
_adminService = adminService;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Добавляет музей
|
|
/// </summary>
|
|
/// <param name="museumDto"></param>
|
|
/// <returns></returns>
|
|
[HttpPost("AddMuseum")]
|
|
public async Task<ActionResult> AddMuseum(MuseumDto museumDto)
|
|
{
|
|
await _adminService.AddMuseum(museumDto);
|
|
return Ok();
|
|
}
|
|
|
|
/// <summary>
|
|
/// Добавляет гида
|
|
/// </summary>
|
|
/// <param name="guideDto"></param>
|
|
/// <returns></returns>
|
|
[HttpPost("AddGuide")]
|
|
public async Task<ActionResult> AddGuide(GuideDto guideDto)
|
|
{
|
|
await _adminService.AddGuidePerson(guideDto);
|
|
return Ok();
|
|
}
|
|
|
|
// GET
|
|
|
|
/// <summary>
|
|
/// Получаем всех гидов
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("GetAllGuides")]
|
|
public async Task<ActionResult> GetAllGuides()
|
|
{
|
|
return Ok(await _publicDataService.GetAllGuides());
|
|
}
|
|
|
|
/// <summary>
|
|
/// Получаем все музеи
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
[HttpGet("GetAllMuseum")]
|
|
public async Task<ActionResult> GetAllMuseum()
|
|
{
|
|
return Ok(await _publicDataService.GetAllMuseum());
|
|
}
|
|
|
|
|
|
} |