@extends('layouts.superadmin') @section('title', 'منظومة العلامات - توزيع العلامات') @section('page-title', 'منظومة العلامات - توزيع علامات الأعضاء') @section('content')
{{-- الهيدر --}}

توزيع علامات الأعضاء

هذه الصفحة تُظهر كيف تتوزع صافي نقاط الأعضاء (من جدول score_records) على شرائح مستويات مختلفة.

الفترة: من {{ $from }} إلى {{ $to }} (حسب recorded_date).

{{-- تبديل عرض جدول / كروت --}}
@php $isCards = ($view ?? 'table') === 'cards'; @endphp جدول كروت
{{-- كروت ملخّص --}}
عدد الأعضاء في التحليل
{{ (int)($summary['total_members'] ?? 0) }}
أعلى صافي نقاط في الفترة
{{ (int)($summary['max_net'] ?? 0) }}
عدد شرائح التوزيع
{{ count($buckets) }}
{{-- الفلاتر --}}
إعادة ضبط التوزيع يعتمد على صافي النقاط (إيجابي + سلبي) لكل عضو في الفترة المحددة.
{{-- ملخص التوزيع كجدول بكتات --}}

شرائح التوزيع (Histogram)

كل صف يمثل شريحة من الأعضاء حسب صافي علاماتهم، مع شريط يوضح النسبة من إجمالي الأعضاء.

@php $totalMembers = max(1, (int)($summary['total_members'] ?? 0)); @endphp
@foreach($buckets as $key => $bucket) @php $count = (int)$bucket['count']; $perc = $totalMembers > 0 ? round(($count / $totalMembers) * 100, 1) : 0; $barW = $perc; // 0..100 @endphp @endforeach
الشريحة عدد الأعضاء النسبة من كامل الأعضاء متوسط صافي النقاط متوسط الإيجابي متوسط السلبي شريط
{{ $bucket['label'] }} {{ $count }} {{ $perc }}% {{ $bucket['avg_net'] }} {{ $bucket['avg_pos'] }} {{ $bucket['avg_neg'] }}
{{-- جدول الأعضاء / كروت حسب الاختيار --}} @if($isCards)
@forelse($rows as $r) @php $net = (float)($r->net_points ?? 0); $pos = (float)($r->positive_points ?? 0); $neg = (float)($r->negative_points ?? 0); $hours = (float)($r->total_hours ?? 0); $maxNet = (float)($summary['max_net'] ?? 0); $ratio = $maxNet > 0 ? round(($net / $maxNet) * 100, 1) : 0; @endphp
{{ $r->name ?? ('#'.$r->id) }}
{{ $r->username ?? '' }} • {{ $r->membership_status }} @if($r->gender === 'male') • شاب @elseif($r->gender === 'female') • صبية @endif
صافي الفترة
{{ $net }}
{{-- شريط نسبة العضو من أعلى عضو --}}
0 {{ (int)($summary['max_net'] ?? 0) }}
إيجابي
{{ (int)$pos }}
سلبي
{{ (int)$neg }}
ساعات
{{ $hours }}
@empty
لا يوجد أعضاء ضمن الفلاتر الحالية.
@endforelse
{{ $rows->links() }}
@else

جدول الأعضاء (مع توزيع العلامات)

هذا الجدول يعرض الأعضاء مع صافي نقاطهم في الفترة، لتطابقها مع شرائح التوزيع أعلاه.

عدد الصفوف: {{ $rows->total() }}
@forelse($rows as $r) @empty @endforelse
العضو اليوزر الرتبة الجنس صافي النقاط إيجابي سلبي ساعات
{{ $r->name ?? ('#'.$r->id) }}
{{ $r->username ?? '—' }} {{ $r->membership_status }} @if($r->gender === 'male') شاب @elseif($r->gender === 'female') صبية @else غير محدد @endif {{ (float)$r->net_points }} {{ (float)$r->positive_points }} {{ (float)$r->negative_points }} {{ (float)$r->total_hours }}
لا يوجد أعضاء ضمن الفلاتر الحالية.
{{ $rows->links() }}
@endif
هذه المنظومة تساعدك تعرف: هل أغلب الأعضاء تحت الصفر؟ هل التوزيع صحي؟ وأين تتركّز القوة وضعف العلامات.
@endsection