Repo rebuild

This commit is contained in:
Mark Gregory
2026-09-15 12:33:28 +01:00
commit be28c4feec
5629 changed files with 317074 additions and 0 deletions
View File
@@ -0,0 +1,25 @@
<?php
namespace Modules\Analytics\Providers;
use Illuminate\Support\ServiceProvider;
class AnalyticsServiceProvider extends ServiceProvider
{
/**
* Bootstrap the module services.
*/
public function boot(): void
{
$this->loadRoutesFrom(__DIR__ . '/../Routes/web.php');
$this->loadViewsFrom(__DIR__ . '/../Resources/views', 'analytics');
}
/**
* Register the module services.
*/
public function register(): void
{
// Placeholder only.
}
}
+5
View File
@@ -0,0 +1,5 @@
# Analytics
Display KPIs, warehouse performance trends, executive summaries, and OTTC analysis.
Contains actual sample Blade views and placeholder service provider/routes only.
@@ -0,0 +1,120 @@
<x-layouts::app :title="__('Analytics')">
<div class="container-fluid py-4 module-page module-analytics">
<div class="row g-4">
<div class="col-12">
<x-wms.page-hero eyebrow="Operations" title="Analytics"
description="Display KPIs, warehouse performance trends, executive summaries, and OTTC analysis."
icon="fa-solid fa-chart-line" />
</div>
<div class="col-md-6 col-xl-3">
<div class="card h-100 border-0 shadow-sm module-metric-card">
<div class="card-body">
<div class="small text-uppercase text-muted fw-semibold mb-2">01</div>
<h3 class="h6 mb-2">KPI1 Bar</h3>
<p class="small text-muted mb-0">Placeholder area for kpi1 bar.</p>
</div>
</div>
</div>
<div class="col-md-6 col-xl-3">
<div class="card h-100 border-0 shadow-sm module-metric-card">
<div class="card-body">
<div class="small text-uppercase text-muted fw-semibold mb-2">02</div>
<h3 class="h6 mb-2">KPI1 Line</h3>
<p class="small text-muted mb-0">Placeholder area for kpi1 line.</p>
</div>
</div>
</div>
<div class="col-md-6 col-xl-3">
<div class="card h-100 border-0 shadow-sm module-metric-card">
<div class="card-body">
<div class="small text-uppercase text-muted fw-semibold mb-2">03</div>
<h3 class="h6 mb-2">OTTC</h3>
<p class="small text-muted mb-0">Placeholder area for ottc.</p>
</div>
</div>
</div>
<div class="col-md-6 col-xl-3">
<div class="card h-100 border-0 shadow-sm module-metric-card">
<div class="card-body">
<div class="small text-uppercase text-muted fw-semibold mb-2">04</div>
<h3 class="h6 mb-2">Warehouse Performance</h3>
<p class="small text-muted mb-0">Placeholder area for warehouse performance.</p>
</div>
</div>
</div>
<div class="col-12">
<section class="card border-0 shadow-sm">
<div class="card-header bg-white border-bottom">
<div class="d-flex flex-column flex-md-row justify-content-between gap-2">
<div>
<h2 class="h5 mb-1">Analytics workbench</h2>
<p class="small text-muted mb-0">Sample table layout ready to wire into controllers,
queries, DataTables, or Livewire.</p>
</div>
<div class="d-flex gap-2">
<button type="button" class="btn btn-outline-secondary btn-sm">Export</button>
<button type="button" class="btn btn-primary btn-sm">Create</button>
</div>
</div>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-hover align-middle mb-0">
<thead class="table-light">
<tr>
<th>Metric</th>
<th>Today</th>
<th>Week</th>
<th class="text-end">Action</th>
</tr>
</thead>
<tbody>
<tr>
<td>KPI1 Bar</td>
<td>Sample 1</td>
<td><span
class="badge bg-success-subtle text-success border border-success-subtle">Active</span>
</td>
<td class="text-end"><a href="#"
class="btn btn-sm btn-outline-primary">Open</a></td>
</tr>
<tr>
<td>KPI1 Line</td>
<td>Sample 2</td>
<td><span
class="badge bg-success-subtle text-success border border-success-subtle">Active</span>
</td>
<td class="text-end"><a href="#"
class="btn btn-sm btn-outline-primary">Open</a></td>
</tr>
<tr>
<td>OTTC</td>
<td>Sample 3</td>
<td><span
class="badge bg-success-subtle text-success border border-success-subtle">Active</span>
</td>
<td class="text-end"><a href="#"
class="btn btn-sm btn-outline-primary">Open</a></td>
</tr>
<tr>
<td>Warehouse Performance</td>
<td>Sample 4</td>
<td><span
class="badge bg-success-subtle text-success border border-success-subtle">Active</span>
</td>
<td class="text-end"><a href="#"
class="btn btn-sm btn-outline-primary">Open</a></td>
</tr>
</tbody>
</table>
</div>
</div>
</section>
</div>
</div>
</div>
</x-layouts::app>
@@ -0,0 +1,4 @@
<a href="{{ route('analytics.index') }}" class="nav-link d-flex align-items-center gap-2">
<i class="bi bi-graph-up-arrow"></i>
<span>Analytics</span>
</a>
+3
View File
@@ -0,0 +1,3 @@
<?php
// API routes can be added here when the module is implemented.
+10
View File
@@ -0,0 +1,10 @@
<?php
use Illuminate\Support\Facades\Route;
Route::middleware(['web', 'auth'])
->prefix('analytics')
->name('analytics.')
->group(function (): void {
Route::view('/', 'analytics::index')->name('index');
});
+11
View File
@@ -0,0 +1,11 @@
{
"name": "Analytics",
"alias": "analytics",
"description": "Display KPIs, warehouse performance trends, executive summaries, and OTTC analysis.",
"keywords": [],
"priority": 0,
"providers": [
"Modules\\Analytics\\Providers\\AnalyticsServiceProvider"
],
"files": []
}