New layouts

This commit is contained in:
Mark Gregory
2026-06-11 11:24:12 +01:00
parent af25555ca4
commit eced2487d4
116 changed files with 7569 additions and 475 deletions
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-analytics">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Analytics</h1>
<p class="mb-0 opacity-75">Display KPIs, warehouse performance trends, executive summaries, and OTTC analysis.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-graph-up-arrow"></i>
</div>
</div>
</div>
</section>
<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">
+6 -15
View File
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-audit">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Audit</h1>
<p class="mb-0 opacity-75">Review activity logs, data changes, interface events, and administrative actions.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-clipboard-check"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Audit"
description="Review activity logs, data changes, interface events, and administrative actions."
icon="fa-solid fa-clipboard-check"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-carrier-management">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Carrier Management</h1>
<p class="mb-0 opacity-75">Maintain carriers, services, and shipment routing master data.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-person-vcard"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Carrier Management"
description="Maintain carriers, services, and shipment routing master data."
icon="fa-solid fa-id-card"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-configuration">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Configuration</h1>
<p class="mb-0 opacity-75">Centralise system settings, warehouse defaults, interface flags, and feature switches.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-gear"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Configuration"
description="Centralise system settings, warehouse defaults, interface flags, and feature switches."
icon="fa-solid fa-sliders"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-document-archive">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Document Archive</h1>
<p class="mb-0 opacity-75">Search cached Sentinel documents, shipment PDFs, labels, and BOL records.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-file-earmark-text"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Document Archive"
description="Search cached Sentinel documents, shipment PDFs, labels, and BOL records."
icon="fa-solid fa-file-lines"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-inventory-management">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Inventory Management</h1>
<p class="mb-0 opacity-75">Track inventory movement, stock visibility, pallet quantities, and product availability.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-boxes"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Inventory Management"
description="Track inventory movement, stock visibility, pallet quantities, and product availability."
icon="fa-solid fa-boxes-stacked"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-m3-integration">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">M3 Integration</h1>
<p class="mb-0 opacity-75">Observe M3 transactions, delivery methods, close shipment calls, and API exchanges.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-server"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="M3 Integration"
description="Observe M3 transactions, delivery methods, close shipment calls, and API exchanges."
icon="fa-solid fa-server"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -1,7 +1,13 @@
<x-layouts::app :title="__('Companies')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Platform Administration"
title="Companies"
description="Manage tenant companies and keep every company’s users, warehouses and records isolated."
icon="fa-solid fa-building"
/>
<div class="rounded-3xl bg-white p-6 shadow-sm ring-1 ring-zinc-200 dark:bg-zinc-900 dark:ring-zinc-800">
<h1 class="text-2xl font-bold">Companies</h1>
<h2 class="text-lg font-bold text-zinc-900 dark:text-white">Create company</h2>
<form method="POST" action="{{ route('platform.companies.store') }}" class="mt-5 grid gap-4 md:grid-cols-4">
@csrf
<input name="name" placeholder="Company name" class="rounded-xl border-zinc-300 dark:border-zinc-700 dark:bg-zinc-950" required>
@@ -1,5 +1,15 @@
<x-layouts::app :title="__('Platform')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Platform"
title="Platform Dashboard"
description="System-level tenant, licensing, warehouse and pricing overview for MPBA administrators."
:stats="[
['label' => 'Companies', 'value' => $companiesCount, 'icon' => 'fa-solid fa-building'],
['label' => 'Active', 'value' => $activeCompaniesCount, 'icon' => 'fa-solid fa-circle-check'],
['label' => 'Prices', 'value' => $pricesCount, 'icon' => 'fa-solid fa-tags'],
]"
/>
<section class="grid gap-4 sm:grid-cols-2 xl:grid-cols-5">
@foreach ([['Companies', $companiesCount], ['Active', $activeCompaniesCount], ['Warehouses', $warehousesCount], ['Prices', $pricesCount], ['Licences', $licensesCount]] as [$label, $value])
<article class="rounded-2xl border border-zinc-200 bg-white p-5 shadow-sm dark:border-zinc-800 dark:bg-zinc-900">
@@ -1,8 +1,14 @@
<x-layouts::app :title="__('Licence Keys')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Platform Administration"
title="Licence Keys"
description="Issue and monitor company licence keys, limits and platform access plans."
icon="fa-solid fa-key"
/>
@if($plainKey)<div class="rounded-2xl bg-emerald-50 p-4 text-emerald-900 ring-1 ring-emerald-200">New key: <code class="font-bold">{{ $plainKey }}</code></div>@endif
<div class="rounded-3xl bg-white p-6 shadow-sm ring-1 ring-zinc-200 dark:bg-zinc-900 dark:ring-zinc-800">
<h1 class="text-2xl font-bold">Licence keys</h1>
<h2 class="text-lg font-bold text-zinc-900 dark:text-white">Issue licence key</h2>
<form method="POST" action="{{ route('platform.licenses.store') }}" class="mt-5 grid gap-4 md:grid-cols-5">
@csrf
<select name="company_id" class="rounded-xl border-zinc-300 dark:border-zinc-700 dark:bg-zinc-950">@foreach($companies as $company)<option value="{{ $company->id }}">{{ $company->name }}</option>@endforeach</select>
@@ -1,7 +1,13 @@
<x-layouts::app :title="__('Payments')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Platform Administration"
title="Payments and Overrides"
description="Record platform payments, manual overrides and billing status by company."
icon="fa-solid fa-credit-card"
/>
<div class="rounded-3xl bg-white p-6 shadow-sm ring-1 ring-zinc-200 dark:bg-zinc-900 dark:ring-zinc-800">
<h1 class="text-2xl font-bold">Payments and overrides</h1>
<h2 class="text-lg font-bold text-zinc-900 dark:text-white">Add payment or override</h2>
<form method="POST" action="{{ route('platform.payments.store') }}" class="mt-5 grid gap-4 md:grid-cols-6">
@csrf
<select name="company_id" class="rounded-xl border-zinc-300 dark:border-zinc-700 dark:bg-zinc-950">@foreach($companies as $company)<option value="{{ $company->id }}">{{ $company->name }}</option>@endforeach</select>
@@ -1,21 +1,15 @@
<x-layouts::app :title="__('Create Price')">
<div class="space-y-6">
<section class="overflow-hidden rounded-3xl bg-gradient-to-br from-slate-950 via-slate-900 to-cyan-950 p-6 text-white shadow-xl sm:p-8">
<div class="flex flex-col gap-6 lg:flex-row lg:items-center lg:justify-between">
<div>
<p class="text-sm font-semibold uppercase tracking-[0.3em] text-cyan-300">MPBA WMS</p>
<h1 class="mt-3 text-3xl font-bold tracking-tight sm:text-4xl">Create price</h1>
<p class="mt-3 max-w-3xl text-base leading-7 text-slate-300">
Add a professional pricing card with billing values, feature bullets and visibility controls.
</p>
</div>
<a href="{{ route('platform.prices.index') }}" wire:navigate class="w-fit rounded-xl bg-white/10 px-4 py-2 text-sm font-semibold text-white ring-1 ring-white/15 hover:bg-white/15">
Back to prices
</a>
</div>
</section>
<x-wms.page-hero
eyebrow="Administration"
title="Create Price"
description="Add a professional pricing card with billing values, feature bullets and visibility controls."
icon="fa-solid fa-circle-plus"
>
<a href="{{ route('platform.prices.index') }}" wire:navigate class="rounded-xl bg-white px-4 py-3 text-sm font-bold text-slate-950 shadow-lg hover:bg-cyan-50">
Back to prices
</a>
</x-wms.page-hero>
<section class="rounded-3xl border border-zinc-200 bg-white p-6 shadow-sm dark:border-zinc-800 dark:bg-zinc-900">
<form method="POST" action="{{ route('platform.prices.store') }}" class="space-y-6">
@csrf
@@ -1,21 +1,15 @@
<x-layouts::app :title="__('Edit Price')">
<div class="space-y-6">
<section class="overflow-hidden rounded-3xl bg-gradient-to-br from-slate-950 via-slate-900 to-cyan-950 p-6 text-white shadow-xl sm:p-8">
<div class="flex flex-col gap-6 lg:flex-row lg:items-center lg:justify-between">
<div>
<p class="text-sm font-semibold uppercase tracking-[0.3em] text-cyan-300">MPBA WMS</p>
<h1 class="mt-3 text-3xl font-bold tracking-tight sm:text-4xl">Edit {{ $price->name }}</h1>
<p class="mt-3 max-w-3xl text-base leading-7 text-slate-300">
Update pricing, feature text and card visibility while keeping the platform pricing display consistent.
</p>
</div>
<a href="{{ route('platform.prices.index') }}" wire:navigate class="w-fit rounded-xl bg-white/10 px-4 py-2 text-sm font-semibold text-white ring-1 ring-white/15 hover:bg-white/15">
Back to prices
</a>
</div>
</section>
<x-wms.page-hero
eyebrow="Administration"
:title="'Edit ' . $price->name"
description="Update pricing, feature text and card visibility while keeping the platform pricing display consistent."
icon="fa-solid fa-pen-to-square"
>
<a href="{{ route('platform.prices.index') }}" wire:navigate class="rounded-xl bg-white px-4 py-3 text-sm font-bold text-slate-950 shadow-lg hover:bg-cyan-50">
Back to prices
</a>
</x-wms.page-hero>
<section class="rounded-3xl border border-zinc-200 bg-white p-6 shadow-sm dark:border-zinc-800 dark:bg-zinc-900">
<form method="POST" action="{{ route('platform.prices.update', $price) }}" class="space-y-6">
@csrf
@@ -1,22 +1,15 @@
<x-layouts::app :title="__('Platform Prices')">
<div class="space-y-6">
<div class="flex flex-wrap items-center justify-between gap-3">
<div>
<p class="text-sm font-semibold text-zinc-500 dark:text-zinc-400">
Customer-facing plan cards managed from Platform.
</p>
</div>
<div class="flex flex-wrap gap-3">
<a href="{{ route('platform.dashboard') }}" wire:navigate class="rounded-xl border border-zinc-200 bg-white px-4 py-2 text-sm font-semibold text-zinc-700 shadow-sm hover:border-cyan-400 hover:text-cyan-700 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-200">
Platform dashboard
</a>
<a href="{{ route('platform.prices.create') }}" wire:navigate class="rounded-xl bg-cyan-500 px-4 py-2 text-sm font-bold text-slate-950 shadow-lg shadow-cyan-950/20 hover:bg-cyan-400">
Add price
</a>
</div>
</div>
<x-wms.page-hero
eyebrow="Administration"
title="Pricing Administration"
description="Create, edit and publish the platform pricing cards shown under Platform."
icon="fa-solid fa-tags"
>
<a href="{{ route('platform.prices.create') }}" wire:navigate class="rounded-xl bg-white px-4 py-3 text-sm font-bold text-slate-950 shadow-lg hover:bg-cyan-50">
Add price
</a>
</x-wms.page-hero>
@if (session('status'))
<div class="rounded-2xl border border-emerald-200 bg-emerald-50 px-5 py-4 text-sm font-semibold text-emerald-800 dark:border-emerald-900/60 dark:bg-emerald-950/40 dark:text-emerald-200">
{{ session('status') }}
@@ -1,5 +1,11 @@
<x-layouts::app :title="__('Pricing')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Platform"
title="Pricing"
description="Clear platform pricing for Basic, Advanced and Pro access."
icon="fa-solid fa-tags"
/>
<section class="grid gap-5 lg:grid-cols-3">
@forelse ($prices as $price)
@php
@@ -1,9 +1,17 @@
@extends('pricing::layouts.master')
<x-layouts::app :title="__('Pricing')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="MPBA WMS"
title="Pricing"
description="Platform pricing workspace for plan visibility and commercial administration."
:stats="[
['label' => 'Status', 'value' => 'Ready', 'icon' => 'fa-solid fa-circle-check'],
]"
/>
@section('content')
<h1>Hello World</h1>
<p>
This view is loaded from module: {!! config('pricing.name') !!}
</p>
@endsection
<section class="rounded-3xl border border-zinc-200 bg-white p-6 shadow-sm dark:border-zinc-800 dark:bg-zinc-900">
<h2 class="text-lg font-bold text-zinc-900 dark:text-white">Pricing workspace</h2>
<p class="mt-2 text-sm text-zinc-500 dark:text-zinc-400">Use the Platform pricing pages to maintain Basic, Advanced and Pro plan cards.</p>
</section>
</div>
</x-layouts::app>
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-replenishment">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Replenishment</h1>
<p class="mb-0 opacity-75">Configure replenishment thresholds, review stock gaps, and monitor refill activity.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-arrow-repeat"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Replenishment"
description="Configure replenishment thresholds, review stock gaps, and monitor refill activity."
icon="fa-solid fa-arrows-rotate"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-reporting">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Reporting</h1>
<p class="mb-0 opacity-75">Provide operational reports for closed orders, user efficiency, and transaction history.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-bar-chart"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Reporting"
description="Provide operational reports for closed orders, user efficiency, and transaction history."
icon="fa-solid fa-chart-column"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-security">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Security</h1>
<p class="mb-0 opacity-75">Control roles, permissions, audit visibility, and protected administration actions.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-shield-check"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Security"
description="Control roles, permissions, audit visibility, and protected administration actions."
icon="fa-solid fa-shield-halved"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-sentinel-integration">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Sentinel Integration</h1>
<p class="mb-0 opacity-75">Track Sentinel API activity, inbound receiver events, and interface status.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-broadcast"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Sentinel Integration"
description="Track Sentinel API activity, inbound receiver events, and interface status."
icon="fa-solid fa-satellite-dish"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-shipping">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Shipping</h1>
<p class="mb-0 opacity-75">Monitor shipment activity, closed orders, pending loads, and dispatch status.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-truck"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Shipping"
description="Monitor shipment activity, closed orders, pending loads, and dispatch status."
icon="fa-solid fa-truck-fast"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -2,21 +2,12 @@
<div class="container-fluid py-4 module-page module-transportation">
<div class="row g-4">
<div class="col-12">
<section class="card border-0 shadow-sm overflow-hidden">
<div class="card-header border-0 text-white module-hero">
<div class="d-flex flex-column flex-lg-row align-items-lg-center justify-content-between gap-3">
<div>
<div class="small text-uppercase opacity-75 fw-semibold mb-2">Replacement module</div>
<h1 class="h2 fw-bold mb-2">Transportation</h1>
<p class="mb-0 opacity-75">Manage truck closure, freight terms, trailers, and transport operations.</p>
</div>
<div class="module-hero-icon" aria-hidden="true">
<i class="bi bi-map"></i>
</div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="Operations"
title="Transportation"
description="Manage truck closure, freight terms, trailers, and transport operations."
icon="fa-solid fa-route"
/>
</div>
<div class="col-md-6 col-xl-3">
@@ -1,7 +1,13 @@
<x-layouts::app :title="__('Validation Rules')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Administration"
title="Validation Rules"
description="Configure warehouse validation controls, severity levels and operational rule keys."
icon="fa-solid fa-shield-halved"
/>
<div class="rounded-3xl bg-white p-6 shadow-sm ring-1 ring-zinc-200 dark:bg-zinc-900 dark:ring-zinc-800">
<h1 class="text-2xl font-bold">Warehouse validation rules</h1>
<h2 class="text-lg font-bold text-zinc-900 dark:text-white">Add validation rule</h2>
<form method="POST" action="{{ route('warehouse-rules.store') }}" class="mt-5 grid gap-4 md:grid-cols-6">
@csrf
<select name="warehouse_id" class="rounded-xl border-zinc-300 dark:border-zinc-700 dark:bg-zinc-950">@foreach($warehouses as $warehouse)<option value="{{ $warehouse->id }}">{{ $warehouse->name }}</option>@endforeach</select>
@@ -1,18 +1,15 @@
<x-layouts::app :title="__('WMS Dashboard')">
<div class="space-y-6">
<section class="overflow-hidden rounded-3xl bg-gradient-to-br from-slate-950 via-slate-900 to-cyan-950 p-6 text-white shadow-xl sm:p-8">
<div class="flex flex-col gap-6 lg:flex-row lg:items-center lg:justify-between">
<div>
<p class="text-sm font-semibold uppercase tracking-[0.3em] text-cyan-300">Warehouse management</p>
<h1 class="mt-3 text-3xl font-bold tracking-tight sm:text-5xl">{{ auth()->user()->company->name }}</h1>
<p class="mt-3 max-w-2xl text-slate-300">High-performance tenant-isolated warehouse operations with per-warehouse validation and licence-aware access.</p>
</div>
<div class="grid grid-cols-2 gap-3 sm:min-w-80">
<div class="rounded-2xl bg-white/10 p-4 backdrop-blur"><p class="text-sm text-slate-300">Warehouses</p><p class="mt-2 text-3xl font-bold">{{ $warehousesCount }}</p></div>
<div class="rounded-2xl bg-white/10 p-4 backdrop-blur"><p class="text-sm text-slate-300">Rules</p><p class="mt-2 text-3xl font-bold">{{ $rulesCount }}</p></div>
</div>
</div>
</section>
<x-wms.page-hero
eyebrow="MPBA WMS"
:title="auth()->user()->company->name"
description="Tenant warehouse dashboard for operational status, warehouse coverage and validation readiness."
:stats="[
['label' => 'Warehouses', 'value' => $warehouses->count(), 'icon' => 'fa-solid fa-warehouse'],
['label' => 'Status', 'value' => 'Live', 'icon' => 'fa-solid fa-circle-check'],
]"
/>
<section class="grid gap-4 md:grid-cols-2 xl:grid-cols-3">
@forelse($warehouses as $warehouse)
<article class="rounded-2xl border border-zinc-200 bg-white p-5 shadow-sm dark:border-zinc-800 dark:bg-zinc-900">
@@ -1,7 +1,13 @@
<x-layouts::app :title="__('Warehouses')">
<div class="space-y-6">
<x-wms.page-hero
eyebrow="Administration"
title="Warehouses"
description="Create and manage warehouse records, tenant ownership and operational locations."
icon="fa-solid fa-warehouse"
/>
<div class="rounded-3xl bg-white p-6 shadow-sm ring-1 ring-zinc-200 dark:bg-zinc-900 dark:ring-zinc-800">
<h1 class="text-2xl font-bold">Warehouses</h1>
<h2 class="text-lg font-bold text-zinc-900 dark:text-white">Create warehouse</h2>
<form method="POST" action="{{ route('warehouses.store') }}" class="mt-5 grid gap-4 md:grid-cols-4">
@csrf
<input name="code" placeholder="Code" class="rounded-xl border-zinc-300 dark:border-zinc-700 dark:bg-zinc-950" required>