10.April 2026
This commit is contained in:
parent
a00c42e770
commit
f58c709945
208 changed files with 19280 additions and 2914 deletions
132
resources/views/user/team/customer_abos.blade.php
Normal file
132
resources/views/user/team/customer_abos.blade.php
Normal file
|
|
@ -0,0 +1,132 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<h4 class="font-weight-bold py-2 mb-2 d-flex justify-content-between align-items-center w-100">
|
||||
<div>
|
||||
{{ __('abo.team_customer_abos') }} / {{ __('navigation.overview') }}
|
||||
</div>
|
||||
</h4>
|
||||
|
||||
@if(isset($chartData))
|
||||
@include('user.abo._abo_chart')
|
||||
@endif
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
|
||||
@if($groupedByMember->isEmpty())
|
||||
<div class="card mb-4">
|
||||
<div class="card-body">
|
||||
<p class="text-muted mb-0">{{ __('tables.no_data_available') }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
@php $memberIndex = 0; @endphp
|
||||
@foreach($groupedByMember as $memberId => $memberAbos)
|
||||
@php
|
||||
$member = $memberAbos->first()->member;
|
||||
$memberName = $member && $member->account
|
||||
? $member->account->first_name . ' ' . $member->account->last_name
|
||||
: '#' . $memberId;
|
||||
$totalPoints = $memberAbos->sum(fn($abo) => $abo->getTotalPoints());
|
||||
$aboCount = $memberAbos->count();
|
||||
$collapseId = 'member-abos-' . $memberId;
|
||||
$memberIndex++;
|
||||
@endphp
|
||||
|
||||
<div class="card mb-3">
|
||||
<div class="card-body pb-2">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-sm-6">
|
||||
<h5 class="mb-0">
|
||||
<a href="#" class="text-black" data-toggle="modal"
|
||||
data-target="#modals-load-content"
|
||||
data-id="{{ $memberId }}"
|
||||
data-action="business-user-show"
|
||||
data-back=""
|
||||
data-modal="modal-md"
|
||||
data-init_from="member"
|
||||
data-route="{{ route('modal_load') }}">
|
||||
<span class="mr-1 ion ion-ios-contact"></span>
|
||||
{{ $memberName }}
|
||||
</a>
|
||||
</h5>
|
||||
</div>
|
||||
<div class="col-sm-6 text-right">
|
||||
<button class="btn btn-sm btn-outline-secondary" type="button"
|
||||
data-toggle="collapse" data-target="#{{ $collapseId }}"
|
||||
aria-expanded="{{ $memberIndex === 1 ? 'true' : 'false' }}">
|
||||
<span class="ion ion-ios-list mr-1"></span>
|
||||
{{ $aboCount }} {{ __('abo.abo') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<hr class="m-0">
|
||||
<div class="card-body py-2">
|
||||
<div class="row">
|
||||
<div class="col-md-4 mb-1">
|
||||
<span class="text-muted small">{{ __('abo.abo_count') }}:</span>
|
||||
<strong class="ml-1">{{ $aboCount }}</strong>
|
||||
</div>
|
||||
<div class="col-md-4 mb-1">
|
||||
<span class="text-muted small">{{ __('navigation.points') }}:</span>
|
||||
<strong class="ml-1 text-primary">{{ \App\Services\Util::formatNumber($totalPoints) }} Pkt.</strong>
|
||||
</div>
|
||||
<div class="col-md-4 mb-1">
|
||||
<span class="text-muted small">{{ __('tables.active') }}:</span>
|
||||
<strong class="ml-1">{{ $memberAbos->where('active', true)->count() }} / {{ $aboCount }}</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="collapse {{ $memberIndex === 1 ? 'show' : '' }}" id="{{ $collapseId }}">
|
||||
<hr class="m-0">
|
||||
<div class="card-body pt-2 pb-1">
|
||||
<p class="text-muted small mb-2">
|
||||
<span class="ion ion-ios-lock mr-1"></span>
|
||||
{{ __('abo.customer_privacy_info') }}
|
||||
</p>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-sm table-borderless mb-0">
|
||||
<thead>
|
||||
<tr class="text-muted small">
|
||||
<th>{{ __('tables.customer') }}</th>
|
||||
<th>{{ __('navigation.points') }}</th>
|
||||
<th>{{ __('tables.status') }}</th>
|
||||
<th>{{ __('tables.next_date') }}</th>
|
||||
<th>{{ __('tables.abo_delivery') }}</th>
|
||||
<th>{{ __('tables.active') }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach($memberAbos as $index => $abo)
|
||||
<tr>
|
||||
<td>
|
||||
<span class="badge badge-outline-secondary">
|
||||
{{ __('tables.customer') }} #{{ $index + 1 }}
|
||||
</span>
|
||||
</td>
|
||||
<td>
|
||||
<strong class="text-primary">
|
||||
{{ $abo->getFormattedTotalPoints() }} Pkt.
|
||||
</strong>
|
||||
</td>
|
||||
<td>{!! $abo->getStatusFormated() !!}</td>
|
||||
<td>{{ $abo->next_date }}</td>
|
||||
<td>{{ $abo->getCountOrders() }}</td>
|
||||
<td>{!! get_active_badge($abo->active) !!}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@endif
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
Loading…
Add table
Add a link
Reference in a new issue