Fix on invoices, add delivery reference, wip on dashboard concurrency requests designed on template

This commit is contained in:
Ludovic CANDELLIER
2023-02-17 00:05:03 +01:00
parent 878ec7a8f2
commit 8e571de523
26 changed files with 555 additions and 130 deletions

View File

@@ -1,27 +1,82 @@
<div class="row">
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="{!! route('Admin.Shop.Orders.index') !!}">
@include('Admin.Shop.Dashboard.components.infobox', ['count' => $orders_count ?? 0, 'class' => 'bg-aqua', 'icon' => 'ion ion-bag', 'text' => 'Commandes'])
</a>
<x-card title="Aperçu de l'activité">
<div class="counter">
<span class="index">Visiteurs en ligne</span>
<div class="value float-right">40</div>
</div>
<div>
<span class="text-muted">dans les 30 dernières minutes</span>
</div>
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="{!! route('Admin.Shop.Invoices.index') !!}">
@include('Admin.Shop.Dashboard.components.infobox', ['count' => $invoices_count ?? 0, 'class' => 'bg-red', 'icon' => 'fa-clock-o', 'text' => 'Factures'])
</a>
<div class="counter">
<span class="index">Paniers Actifs</span>
<div class="value float-right">40</div>
</div>
<div>
<span class="text-muted">dans les 30 dernières minutes</span>
</div>
<div class="clearfix visible-sm-block"></div>
<x-card title="Etat des commandes" class="dashtable" classBody="p-1 bg-light">
<table class="table table-stripped counter w-100">
<tr>
<td class="index">Commandes</td>
<td class="value text-right">{{ $orders_count }}</td>
</tr>
<tr>
<td class="index">En préparation depuis moins de 24h</td>
<td class="value float-right">{{ $preparationLess24H ?? 0 }}</td>
</tr>
<tr>
<td class="index">En préparation depuis moins de 48h</td>
<td class="value float-right">{{ $preparationLess48H ?? 0 }}</td>
</tr>
<tr>
<td class="index">En préparation depuis plus de 48h</td>
<td class="value float-right">{{ $preparationMore48H ?? 0 }}</td>
</tr>
<tr>
<td class="index">Echec de paiement</td>
<td class="value float-right">{{ $paymentsFailed ?? 0 }}</td>
</tr>
<tr>
<td class="index">
A rembourser<br>
<span class="text-muted">Payés sans stock disponible</span>
</td>
<td class="value float-right">{{ $refunds ?? 0 }}</td>
</tr>
<tr>
<td class="index">
En attente de confirmation<br>
<span class="text-muted">Pour les ventes pro</span>
</td>
<td class="value float-right">{{ $ordersNotConfirmed ?? 0 }}</td>
</tr>
</table>
</x-card>
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="{!!route('Admin.Shop.Orders.index') !!}">
@include('Admin.Shop.Dashboard.components.infobox', ['count' => $orders_sum ?? 0, 'class' => 'bg-yellow', 'icon' => 'ion ion-stats-bars', 'text' => 'CA du mois'])
</a>
</div>
<x-card title="Suivi des stocks" class="dashtable" classBody="p-1 bg-light">
<table class="table table-stripped counter w-100">
<tr>
<td class="index">Stock critique</td>
<td class="value float-right">{{ $stocksWarning ?? 0 }}</td>
</tr>
<tr>
<td class="index">Paramétrage du niveau critique</td>
<td class="value float-right"></td>
</tr>
</table>
</x-card>
<div class="col-md-3 col-sm-6 col-xs-12">
<a href="{!! route('Admin.Shop.Orders.index') !!}">
@include('Admin.Shop.Dashboard.components.infobox', ['count' => $orders_avg ?? 0, 'class' => 'bg-green', 'icon' => 'fa-check-square-o', 'text' => 'Panier moyen'])
</a>
</div>
</div>
<x-card title="Clients et suivi client" class="dashtable" classBody="p-1 bg-light">
<table class="table table-stripped counter w-100">
<tr>
<td class="index">Nouveaux clients</td>
<td class="value float-right">{{ $newClients ?? 0 }}</td>
</tr>
<tr>
<td class="index">Exporter le fichier clients</td>
<td class="value float-right"></td>
</tr>
</table>
</x-card>
</x-card>

View File

@@ -2,7 +2,7 @@
<div class="col-sm-3 col-xs-6">
<div class="description-block border-right">
<span class="description-percentage text-green"><i class="fa fa-caret-up"></i> 17%</span>
<h5 class="description-header">35 210.43 </h5>
<h5 class="description-header">{{ $orders_sum ?? 0 }} </h5>
<span class="description-text">TOTAL VENTE</span>
</div>
<!-- /.description-block -->
@@ -11,7 +11,7 @@
<div class="col-sm-3 col-xs-6">
<div class="description-block border-right">
<span class="description-percentage text-yellow"><i class="fa fa-caret-left"></i> 0%</span>
<h5 class="description-header">10 390.90 </h5>
<h5 class="description-header">{{ $orders_avg ?? 0 }} </h5>
<span class="description-text">PANIER MOYEN</span>
</div>
<!-- /.description-block -->
@@ -20,7 +20,7 @@
<div class="col-sm-3 col-xs-6">
<div class="description-block border-right">
<span class="description-percentage text-green"><i class="fa fa-caret-up"></i> 20%</span>
<h5 class="description-header">248</h5>
<h5 class="description-header">{{ $clients_count ?? 0 }}</h5>
<span class="description-text">NB CLIENTS</span>
</div>
<!-- /.description-block -->
@@ -29,8 +29,8 @@
<div class="col-sm-3 col-xs-6">
<div class="description-block">
<span class="description-percentage text-red"><i class="fa fa-caret-down"></i> 18%</span>
<h5 class="description-header">1200</h5>
<span class="description-text">NB PRODUITS</span>
<h5 class="description-header">{{ $offers_count ?? 0 }}</h5>
<span class="description-text">NB OFFRES</span>
</div>
<!-- /.description-block -->
</div>

View File

@@ -1,23 +1,11 @@
<div class="row">
<div class="col-md-8">
<div class="col-lg-12">
@include('Admin.Shop.Dashboard._partials.salesByPeriod')
</div>
<div class="col-md-4">
@include('Admin.Shop.Dashboard._partials.stock')
</div>
</div>
<div class="row">
<div class="col-md-8">
<div class="col-lg-12">
@include('Admin.Shop.Dashboard._partials.latestOrders')
</div>
<div class="col-md-4">
@include('Admin.Shop.Dashboard._partials.ordersByTypes')
</div>
</div>

View File

@@ -1,17 +1,38 @@
@extends('layout.index', [
'title' => __('dashboard.title'),
'subtitle' => __('boilerplate::users.list.title'),
'breadcrumb' => [
__('boilerplate::dashboard.title') => 'boilerplate.users.index'
]
'title' => __('Core.dashboard'),
])
@include('boilerplate::logs.style')
@section('content')
@include('Admin.Shop.Dashboard._partials.counter')
@include('Admin.Shop.Dashboard._partials.report')
<div class="btn-group mb-3" role="group" aria-label="Basic example">
<button type="button" class="btn btn-sm btn-secondary text-nowrap" data-id="day">jour</button>
<button type="button" class="btn btn-sm btn-secondary text-nowrap" data-id="month">mois</button>
<button type="button" class="btn btn-sm btn-secondary text-nowrap" data-id="year">année</button>
<button type="button" class="btn btn-sm btn-secondary text-nowrap" data-id="yesterday">jour-1</button>
<button type="button" class="btn btn-sm btn-secondary text-nowrap" data-id="lastmonth">mois-1</button>
<button type="button" class="btn btn-sm btn-secondary text-nowrap" data-id="lastyear">année-1</button>
@include('components.form.daterangepicker', [
'name' => 'period',
])
</div>
<div class="row dashboard">
<div class="col-lg-3 col-sm-6 col-xs-12">
@include('Admin.Shop.Dashboard._partials.counter')
</div>
<div class="col-lg-9">
@include('Admin.Shop.Dashboard._partials.report')
</div>
</div>
@endsection
@include('load.form.daterangepicker')
@push('js')
<script>
initDaterangepicker();
</script>
@endpush