commit 08-2025
This commit is contained in:
parent
9ae662f63e
commit
480fdc65ed
404 changed files with 65310 additions and 2600431 deletions
189
resources/views/admin/business_optimized/structure.blade.php
Normal file
189
resources/views/admin/business_optimized/structure.blade.php
Normal file
|
|
@ -0,0 +1,189 @@
|
|||
@extends('layouts.layout-2')
|
||||
|
||||
@section('content')
|
||||
<div class="card">
|
||||
<h5 class="card-header">
|
||||
{{__('team.business')}} {{__('team.structure')}}
|
||||
<span class="badge badge-success ml-2">OPTIMIERT</span>
|
||||
</h5>
|
||||
|
||||
<div class="card-body">
|
||||
{!! Form::open(['action' => route('admin_business_optimized_structure'), 'class' => 'form-horizontal', 'id'=>'form_filter_business_user']) !!}
|
||||
|
||||
<div class="form-row align-items-center px-0 pb-2 pt-0">
|
||||
<div class="col-6 col-sm-4 col-md-4 col-lg-4 mb-1">
|
||||
<select class="custom-select on_change_select_filter" name="business_user_filter_month">
|
||||
@foreach($filter_months as $key=>$value)
|
||||
<option value="{{$key}}" @if(session('business_user_filter_month') == $key) selected @endif>{{$value}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-6 col-sm-4 col-md-4 col-lg-4 mb-1">
|
||||
<select class="custom-select on_change_select_filter" name="business_user_filter_year">
|
||||
@foreach($filter_years as $key=>$value)
|
||||
<option value="{{$value}}" @if(session('business_user_filter_year') == $value) selected @endif>{{$value}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
{!! Form::close() !!}
|
||||
|
||||
<!-- Performance Metrics Display -->
|
||||
@if(isset($performance))
|
||||
<div class="alert alert-success">
|
||||
<div class="row">
|
||||
<div class="col-md-3">
|
||||
<i class="fa fa-clock mr-1"></i>
|
||||
<strong>Ladezeit:</strong> {{ $performance['execution_time'] }}ms
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<i class="fa fa-memory mr-1"></i>
|
||||
<strong>Memory:</strong> {{ $performance['memory_used'] }}
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<i class="fa fa-users mr-1"></i>
|
||||
<strong>Users:</strong> {{ $performance['user_count'] }}
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<i class="fa fa-user-times mr-1"></i>
|
||||
<strong>Ohne Sponsor:</strong> {{ $performance['parentless_count'] }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<hr class="container-m-nx border-light mt-0">
|
||||
<div>
|
||||
<div id="nestable-menu" class="mb-4">
|
||||
<button type="button" class="btn btn-default btn-sm" data-action="expand-all">{{ __('team.expand_all') }}</button>
|
||||
<button type="button" class="btn btn-default btn-sm" data-action="collapse-all">{{ __('team.collapse_all') }}</button>
|
||||
|
||||
<!-- Zusätzliche Optimierungs-Controls -->
|
||||
<div class="btn-group ml-3" role="group">
|
||||
<button type="button" class="btn btn-info btn-sm" onclick="showPerformanceDetails()">
|
||||
<i class="fa fa-chart-line"></i> Performance Details
|
||||
</button>
|
||||
<a href="{{ route('admin_business_structure') }}" class="btn btn-outline-secondary btn-sm">
|
||||
<i class="fa fa-arrow-left"></i> Original Version
|
||||
</a>
|
||||
@if(isset($forceLiveCalculation) && $forceLiveCalculation === true)
|
||||
<a href="{{ route('admin_business_optimized_structure') }}" class="btn btn-outline-warning btn-sm" title="Live-Berechnung aus">
|
||||
<i class="fa fa-refresh"></i> Live berechnen aus
|
||||
</a>
|
||||
@else
|
||||
<a href="{{ route('admin_business_optimized_structure') }}?force_live_calculation=1" class="btn btn-outline-success btn-sm" title="Live-Berechnung erzwingen">
|
||||
<i class="fa fa-refresh"></i> Live berechnen
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="dd" id="nestable2">
|
||||
{!! $TreeCalcBot->makeHtmlTree() !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if($TreeCalcBot->isParentless())
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<hr>
|
||||
<h6 class="">
|
||||
Berater ohne Sponsor
|
||||
<span class="badge badge-warning">{{ count($TreeCalcBot->__get('parentless')) }}</span>
|
||||
</h6>
|
||||
<div class="dd" id="">
|
||||
{!! $TreeCalcBot->makeParentlessHtml() !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Performance Details Modal -->
|
||||
<div class="modal fade" id="performanceModal" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title">Performance Metrics</h5>
|
||||
<button type="button" class="close" data-dismiss="modal">
|
||||
<span>×</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
@if(isset($performance))
|
||||
<table class="table table-sm">
|
||||
<tr>
|
||||
<td><strong>Ausführungszeit:</strong></td>
|
||||
<td>{{ $performance['execution_time'] }}ms</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Memory-Verbrauch:</strong></td>
|
||||
<td>{{ $performance['memory_used'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Anzahl Users:</strong></td>
|
||||
<td>{{ $performance['user_count'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Parentlose Users:</strong></td>
|
||||
<td>{{ $performance['parentless_count'] }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>Optimierungen:</strong></td>
|
||||
<td>
|
||||
<span class="badge badge-success">Repository Pattern</span>
|
||||
<span class="badge badge-success">Eager Loading</span>
|
||||
<span class="badge badge-success">Memory Monitoring</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@endif
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Schließen</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<link rel="stylesheet" href="/vendor/libs/nestable/nestable.css">
|
||||
<script src="/vendor/libs/nestable/jquery-nestable.js?v=1"></script>
|
||||
<script>
|
||||
$( document ).ready(function() {
|
||||
function updateOutput(e) {
|
||||
//var list = e.length ? e : $(e.target);
|
||||
//var output = list.data('output');
|
||||
};
|
||||
|
||||
$('#nestable2').nestable().on('change', updateOutput);
|
||||
// output initial serialised data
|
||||
//updateOutput($('#nestable2').data('output', $('#nestable2-output')));
|
||||
|
||||
$('#nestable-menu').on('click', function(e) {
|
||||
var target = $(e.target);
|
||||
var action = target.data('action');
|
||||
|
||||
if (action === 'expand-all') {
|
||||
$('.dd').nestable('expandAll');
|
||||
}
|
||||
if (action === 'collapse-all') {
|
||||
$('.dd').nestable('collapseAll');
|
||||
}
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$('.on_change_select_filter').on('change', function(){
|
||||
$('#form_filter_business_user').submit();
|
||||
});
|
||||
|
||||
function showPerformanceDetails() {
|
||||
$('#performanceModal').modal('show');
|
||||
}
|
||||
</script>
|
||||
@endsection
|
||||
Loading…
Add table
Add a link
Reference in a new issue