feat(backend): add reporting and variance calculation services
Implement core reporting infrastructure: - ReconciliationCalculator: plan vs estimate reconciliation - VarianceCalculator: project and member variance calculations - ReportController: GET /api/reports/allocations endpoint - Support did/is/will view type inference based on date ranges - Distinguish blank plans from explicit zero values Part of enhanced-allocation change.
This commit is contained in:
@@ -7,6 +7,8 @@ use App\Http\Controllers\Api\HolidayController;
|
||||
use App\Http\Controllers\Api\ProjectController;
|
||||
use App\Http\Controllers\Api\ProjectMonthPlanController;
|
||||
use App\Http\Controllers\Api\PtoController;
|
||||
use App\Http\Controllers\Api\ReportController;
|
||||
use App\Http\Controllers\Api\RolesController;
|
||||
use App\Http\Controllers\Api\TeamMemberController;
|
||||
use App\Http\Middleware\JwtAuth;
|
||||
use App\Http\Resources\UserResource;
|
||||
@@ -35,6 +37,9 @@ Route::middleware(JwtAuth::class)->group(function () {
|
||||
// Team Members
|
||||
Route::apiResource('team-members', TeamMemberController::class);
|
||||
|
||||
// Roles
|
||||
Route::get('/roles', [RolesController::class, 'index']);
|
||||
|
||||
// Projects
|
||||
Route::get('projects/types', [ProjectController::class, 'types']);
|
||||
Route::get('projects/statuses', [ProjectController::class, 'statuses']);
|
||||
@@ -68,4 +73,7 @@ Route::middleware(JwtAuth::class)->group(function () {
|
||||
// Allocations
|
||||
Route::apiResource('allocations', AllocationController::class);
|
||||
Route::post('/allocations/bulk', [AllocationController::class, 'bulkStore']);
|
||||
|
||||
// Reports
|
||||
Route::get('/reports/allocations', [ReportController::class, 'allocations']);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user