97 lines
3.9 KiB
C#
97 lines
3.9 KiB
C#
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using CandyHouseContracts.AdapterContracts;
|
|
|
|
namespace CandyHouseWebApi.Controllers;
|
|
|
|
[Authorize]
|
|
[Route("api/[controller]/[action]")]
|
|
[ApiController]
|
|
public class ReportController(IReportAdapter adapter) : ControllerBase
|
|
{
|
|
private readonly IReportAdapter _adapter = adapter;
|
|
|
|
[HttpGet]
|
|
[Consumes("application/json")]
|
|
public async Task<IActionResult> GetIngredients(CancellationToken ct)
|
|
{
|
|
return (await _adapter.GetDataIngredientsWithHistoryAsync(ct)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/json")]
|
|
public async Task<IActionResult> GetSales(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.GetDataSaleByPeriodAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/json")]
|
|
public async Task<IActionResult> GetSalary(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.GetDataSalaryByPeriodAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/json")]
|
|
public async Task<IActionResult> GetSupply(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.GetDataSupplyAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/json")]
|
|
public async Task<IActionResult> GetIngredientMovement(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.GetDataIngredientMovementAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/json")]
|
|
public async Task<IActionResult> GetStorageStock(string storageId, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.GetDataStorageStockAsync(storageId, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/octet-stream")]
|
|
public async Task<IActionResult> LoadIngredients(CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.CreateDocumentIngredientsWithHistoryAsync(cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/octet-stream")]
|
|
public async Task<IActionResult> LoadSales(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.CreateDocumentSalesByPeriodAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/octet-stream")]
|
|
public async Task<IActionResult> LoadSalary(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.CreateDocumentSalaryByPeriodAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/octet-stream")]
|
|
public async Task<IActionResult> LoadSupply(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.CreateDocumentSupplyAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/octet-stream")]
|
|
public async Task<IActionResult> LoadIngredientMovement(DateTime fromDate, DateTime toDate, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.CreateDocumentIngredientMovementAsync(fromDate, toDate, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
|
|
[HttpGet]
|
|
[Consumes("application/octet-stream")]
|
|
public async Task<IActionResult> LoadStorageStock(string storageId, CancellationToken cancellationToken)
|
|
{
|
|
return (await _adapter.CreateDocumentStorageStockAsync(storageId, cancellationToken)).GetResponse(Request, Response);
|
|
}
|
|
} |