Updated the reports page to use the new API endpoints

This commit is contained in:
2025-06-25 17:24:31 -04:00
parent 1b4fd8dec9
commit 6e67d58a8b
5 changed files with 13 additions and 49 deletions

View File

@ -22,7 +22,8 @@ class ApiController extends Controller {
}
public function getBenchmarkTests(Request $request, Response $response, array $args): Response {
$benchmark = Benchmark::where('id', $args['benchmark_id'])->first();
$urlParams = $request->getQueryParams();
$benchmark = Benchmark::where('id', $urlParams['benchmark_id'])->first();
$payload = json_encode($benchmark->tests);

View File

@ -1,37 +0,0 @@
<?php
namespace BitGoblin\Colossus\Controllers;
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
use Slim\Routing\RouteContext;
use Slim\Views\Twig;
use BitGoblin\Colossus\Models\Result;
use BitGoblin\Colossus\Models\Test;
class ResultController extends Controller {
public function postAdd(Request $request, Response $response): Response {
$params = (array)$request->getParsedBody();
$result = new Result;
$result->test_id = $params['result_test'];
$result->component_id = $params['result_component'];
$result->benchmark_id = $params['result_benchmark'];
$result->average = $params['result_avg'];
$result->minimum = $params['result_min'] ?? null;
$result->maximum = $params['result_max'] ?? null;
$result->save();
// redirect the user back to the home page
$routeContext = RouteContext::fromRequest($request);
$routeParser = $routeContext->getRouteParser();
return $response
->withHeader('Location', $routeParser->urlFor('test.view', [
'test_id' => $result->test_id
]))
->withStatus(302);
}
}

View File

@ -27,10 +27,6 @@ $app->group('/test', function(RouteCollectorProxy $group) {
$group->get('/{test_id}', '\\BitGoblin\\Colossus\\Controllers\\TestController:getView')->setName('test.view');
});
$app->group('/result', function(RouteCollectorProxy $group) {
$group->post('/add', '\\BitGoblin\\Colossus\\Controllers\\ResultController:postAdd')->setName('result.add');
});
$app->group('/reports', function(RouteCollectorProxy $group) {
$group->get('/generate', '\\BitGoblin\\Colossus\Controllers\ReportController:getGenerate')->setName('reports.generate');
});