شعار وزارة التعليم

الخطة المدرسية

{{ $settings->title }}

للعام الدراسي {{ $plan->year->school_year }}

شعار رؤية المملكة

مدير المدرسة

{{ \App\Models\User::where('school_id', Auth::user()->school_id)->first()->name ?? 'اسم غير موجود' }}

بسم الله الرحمن الرحيم

الحمد لله الذي علم بالقلم، علم الإنسان ما لم يعلم، وهداه إلى الخير والصواب، وجعل التعليم نورًا يهتدي به الإنسان في ظلمات الجهل والضلال، والصلاة والسلام على من أرسله الله معلمًا للبشرية ونورًا ورحمة للعالمين، نبينا محمد وعلى آله وصحبه أجمعين.

اللهم إننا نبدأ خطتنا هذه مستعينين بك، سائلين عونك وتوفيقك، ومتوكلين عليك، فوفقنا اللهم وسدد خطانا، واجعل عملنا هذا خالصًا لوجهك الكريم، ومحققًا لما فيه خير لأبنائنا وبناتنا، واجعل من هذه الخطة سبيلاً لبناء جيل واعٍ ومتعلم، متسلح بالعلم والأخلاق، قادر على مواجهة تحديات العصر.

اللهم اجعل مدرستنا منارة للعلم والمعرفة، ووفق معلمينا ومعلماتنا وأولياء الأمور، وانفع بهم وبارك في جهودهم، وارزقنا الإخلاص في القول والعمل، واغمرنا بواسع فضلك وكرمك.

ربنا تقبل منا وأعنّا على تحقيق أهدافنا، واجعلنا ممن يستمعون القول فيتبعون أحسنه، إنك على كل شيء قدير، وبالإجابة جدير.

كلمة مدير المدرسة

{!! $plan_setting->speech !!}

 

مدير المدرسة

{{ \App\Models\User::where('school_id', Auth::user()->school_id)->first()->name ?? 'اسم غير موجود' }}

مقدمة

{!! $plan_setting->introduction !!}

 
 

البيانات الإحصائية

@php use App\Models\Setting; use App\Models\SchoolInformation; use Illuminate\Support\Facades\Auth; // الحصول على معرف المدرسة من المستخدم الحالي $schoolId = Auth::user()->school_id; // جلب إعدادات الموقع للمدرسة الحالية $setting = Setting::where('school_id', $schoolId)->latest()->first(); // جلب معلومات المرحلتين الرئيسيتين للمدرسة الحالية $stages = SchoolInformation::where('school_id', $schoolId)->limit(2)->get(); // التحقق من وجود مرحلتين $stage1 = $stages->first(); $stage2 = $stages->skip(1)->first(); @endphp @if ($stage1 || $stage2) {{-- مرحلة 1 --}} @if ($stage1) {{-- دمج خلية اسم المدرسة عبر صفين إذا كانت هناك مرحلة ثانية --}} @if ($stage2) @else @endif {{-- إعدادات المدرسة --}} @endif {{-- مرحلة 2 --}} @if ($stage2) @endif @else {{-- في حالة عدم وجود مراحل --}} @endif
اسم المدرسة معلومات المراحل هاتف المدرسة موقع المدرسة نوع المبنى صلاحيته
المرحلة الرقم الإحصائي تاريخ التأسيس عدد الفصول
{{ $setting->title ?? 'غير متوفر' }}{{ $setting->title ?? 'غير متوفر' }}{{ $stage1->department ?? 'غير متوفر' }} {{ $stage1->statistical_number ?? 'غير متوفر' }} @if (isset($stage1->founding_date)) {{ $stage1->founding_date }} @else غير متوفر @endif {{ $stage1->class_num ?? 'غير متوفر' }}{{ $setting->phone ?? 'غير متوفر' }} {{ $setting->location ?? 'غير متوفر' }} حكومي صالح
{{ $stage2->department ?? 'غير متوفر' }} {{ $stage2->statistical_number ?? 'غير متوفر' }} @if (isset($stage2->founding_date)) {{ $stage2->founding_date }} @else غير متوفر @endif {{ $stage2->class_num ?? 'غير متوفر' }}
لا توجد بيانات للمدرسة.

مرافق المبنى المدرسي

@php use App\Models\BuildingFacility; // الحصول على معرف المدرسة من المستخدم الحالي $schoolId = Auth::user()->school_id; // جلب المرافق المرتبطة بالمدرسة الحالية $facilities = BuildingFacility::where('school_id', $schoolId)->get(); // تقسيم البيانات إلى جدولين $group1 = $facilities->slice(0, ceil($facilities->count() / 2)); $group2 = $facilities->slice(ceil($facilities->count() / 2)); @endphp {{-- الجدول الأول --}} @foreach ($group1 as $facility) @endforeach @foreach ($group1 as $facility) @endforeach
{{ $facility->facility_name }}
{{ $facility->count > 0 ? $facility->count : '-' }}
{{-- الجدول الثاني --}} @foreach ($group2 as $facility) @endforeach @foreach ($group2 as $facility) @endforeach
{{ $facility->facility_name }}
{{ $facility->count > 0 ? $facility->count : '-' }}

بيانات مدير المدرسة ووكيلها

@php use App\Models\User; use App\Models\JobTitle; // الحصول على معرف المدرسة من المستخدم الحالي $schoolId = Auth::user()->school_id; // جلب معرفات المسميات الوظيفية للمدير والوكيل $jobTitleManager = JobTitle::where('name', 'المدير')->first(); $jobTitleAssistant = JobTitle::where('name', 'الوكيل')->first(); // جلب بيانات المدير والوكيل من المدرسة الحالية $manager = User::where('school_id', $schoolId) ->where('job_title_id', $jobTitleManager->id ?? null) ->first(); $assistant = User::where('school_id', $schoolId) ->where('job_title_id', $jobTitleAssistant->id ?? null) ->first(); @endphp @if ($manager) @endif @if ($assistant) @endif @if (!$manager && !$assistant) @endif
طبيعة العمل الاسم آخر مؤهل وتاريخه رقم الجوال تاريخ المباشرة بالمدرسة سنوات الخدمة
المدير {{ $manager->name ?? 'غير متوفر' }} {{ $manager->last_qualification ?? 'غير متوفر' }} ، {{ $manager->date_qualification ?? 'غير متوفر' }} {{ $manager->phone ?? 'غير متوفر' }} {{ $manager->direct_date ?? 'غير متوفر' }} {{ $manager->years_of_service ?? 'غير متوفر' }}
الوكيل {{ $assistant->name ?? 'غير متوفر' }} {{ $assistant->last_qualification ?? 'غير متوفر' }}، {{ $assistant->date_qualification ?? 'غير متوفر' }} {{ $assistant->phone ?? 'غير متوفر' }} {{ $manager->direct_date ?? 'غير متوفر' }} {{ $assistant->years_of_service ?? 'غير متوفر' }}
لا توجد بيانات للمدير أو الوكيل في هذه المدرسة.

بيانات بأعداد معلمي المدرسة حسب التخصص

@php // جلب جميع المواد الدراسية من قاعدة البيانات $subjects = App\Models\Subject::all(); @endphp @foreach ($subjects as $subject) @endforeach @php $total = 0; @endphp @foreach ($subjects as $subject) @php // الحصول على عدد المستخدمين (المعلمين) لكل مادة $count = $subject->users()->count(); $total += $count; @endphp @endforeach
{{ $subject->name }}المجموع
{{ $count }}{{ $total }}

بيانات بأعداد شاغلي الوظائف الفنية والإدارية

@php // الحصول على معرف المدرسة من المستخدم الحالي $schoolId = Auth::user()->school_id; // جلب جميع المسميات الوظيفية $jobTitles = JobTitle::all(); // حساب عدد المستخدمين لكل مسمى وظيفي في المدرسة الحالية $jobTitleCounts = $jobTitles->mapWithKeys(function ($jobTitle) use ($schoolId) { $count = User::where('school_id', $schoolId) ->where('job_title_id', $jobTitle->id) ->count(); return [$jobTitle->name => $count]; }); @endphp @foreach ($jobTitleCounts as $jobTitle => $count) @endforeach @foreach ($jobTitleCounts as $count) @endforeach
{{ $jobTitle }}
{{ $count > 0 ? $count : '-' }}

بيانات الفصول وعدد الطلاب

@php use App\Models\Stage; use App\Models\Classa; use App\Models\Student; $schoolId = Auth::user()->school_id; $stages = Stage::with([ 'classas' => function ($query) use ($schoolId) { $query->where('school_id', $schoolId); }, ])->get(); @endphp @foreach ($stages as $stage) {{-- --}} @foreach ($stage->classas as $class) @endforeach @php $totalStudents = 0; @endphp @foreach ($stage->classas as $class) @php $studentCount = Student::where('class_id', $class->id)->count(); $totalStudents += $studentCount; @endphp @endforeach
المرحلة {{ $stage->name }} المجموع
الصفوف الدراسية{{ $class->name }}المجموع
عدد الطلاب{{ $studentCount > 0 ? $studentCount : '-' }}{{ $totalStudents }}
@endforeach @php $grandTotalStudents = Student::where('school_id', $schoolId)->count(); @endphp
العدد الإجمالي لطلاب المدرسة
{{ $grandTotalStudents }}

مجموعات التخصص

@php // جلب جميع المواد الدراسية مع المعلمين المرتبطين بها $subjects = App\Models\Subject::with('users') ->whereHas('users') // فقط المواد التي لديها مستخدمين ->get(); // تجميع المواد الدراسية والمعلمين @endphp @foreach ($subjects as $subject) @php $teachers = $subject->users; $count = $teachers->count(); $counter = 1; @endphp @foreach ($teachers as $teacher) @if ($counter == 1) @endif @php $counter++; @endphp @endforeach @endforeach
التخصص م اسم المعلم التوقيع
{{ $subject->name }}{{ $counter }} {{ $teacher->name }}
{{-- الخريطة الخاصة بالمدرسة --}}

موقع المدرسة بواسطة Google Maps

@if (isset($qrCodeBase64))
رمز الاستجابة السريع للموقع:
QR Code

قم بمسح رمز QR لعرض موقع المدرسة على الخريطة.

@endif

{{ $settings->title ?? 'اسم المدرسة' }}

{{ $settings->description ?? 'يعتبر التعليم وطلب العلم من أهم الأشياء التي يحرص المرء على اكتسابها، ولكي يحصل على العلم لا بدّ من أن يذهب إلى الأماكن التي تقدم التعليم مثل المدارس، والجامعات، والكليات، والمعاهد، ومجالس العلم وغيرها، لكن تعتبر المدرسة أهم مكان يذهب إليه المرء ليطلب العلم؛ فهي المكان الأول الذي يذهب إليه الطّلاب منذ صغر سنهم، وهي بيئة أخرى ومكان مختلف جداً عن منزل الأسرة، ففي المدرسة الكثير من الطلاب في مراحل مختلفة ممن يواصلون دراستهم وتعليمهم حتى يحصلوا في نهاية العام الدراسي على شهادة دراسيّة تؤهلهم لمراحل أخرى متقدمة.[١] إقرأ المزيد على موضوع.كوم: ' }}

{{-- الخريطة الخاصة بالمدرسة --}} {{-- الجدول الخاص بأعضاء لجنة التميز --}}

{{ __('أعضاء لجنة التميز') }}

@php // جلب بيانات أعضاء لجنة التميز من قاعدة البيانات $committeeMembers = App\Models\CommitteeUser::with('user')->get(); @endphp @forelse ($committeeMembers as $index => $member) @empty @endforelse
{{ __('م') }} {{ __('الاسم') }} {{ __('الوظيفة') }} {{ __('العمل المكلف به') }}
{{ $index + 1 }} {{ $member->user->name }} {{ $member->user->jobTitle->name ?? __('غير محدد') }} @switch($member->role) @case('leader') {{ __('رئيساً') }} @break @case('member') {{ __('عضو') }} @break @case('secretary') {{ __('مقرر اللجنة') }} @break @default {{ __('دور غير محدد') }} @endswitch
{{ __('لا توجد بيانات لعرضها.') }}
{{-- الجدول الخاص بأعضاء لجنة التميز --}}

{{-- قيمنا الحاكمة --}}

قيمنا الحاكمة

{!! $plan_setting->our_values !!}

{{-- قيمنا الحاكمة --}} {{-- مصادر بناء الخطة --}}

مصادر بناء الخطة

@php // جلب المصادر من قاعدة البيانات $humanSources = App\Models\PlanSource::where('source_type', 'بشري')->get(); $materialSources = App\Models\PlanSource::where('source_type', 'مادي')->get(); // تحديد العدد الأكبر من المصادر لعدد الصفوف $maxRows = max($humanSources->count(), $materialSources->count()); @endphp @for ($i = 0; $i < $maxRows; $i++) @if (isset($humanSources[$i])) @else @endif @if (isset($materialSources[$i])) @else @endif @endfor
م المصادر البشرية م المصادر المادية
{{ $i + 1 }} {{ $humanSources[$i]->source_name }} {{ $i + 1 }} {{ $materialSources[$i]->source_name }}
 
 
{{-- مصادر بناء الخطة --}} {{-- الرؤية والرسالة والشعار --}}

{{ __('الرؤية والرسالة') }}

{{ __('الرؤية') }}

{!! $plan_setting->vision !!}

{{ __('الرسالة') }}

{!! $plan_setting->message !!}

{{ __('شعارنا') }}

{!! $plan_setting->logo !!}

{{-- الرؤية والرسالة والشعار --}} {{-- نقاط الضعف ونقاط القوة --}}

بطاقة تشخيص واقع المدرسة

من خلال تحليل SWOT

@php use App\Models\PlanSetting; // جلب بيانات SWOT من قاعدة البيانات بناءً على school_id للمستخدم الحالي $schoolId = Auth::user()->school_id; $about = PlanSetting::where('school_id', $schoolId)->latest()->first(); // التأكد من وجود بيانات if ($about) { // تحويل النصوص إلى مصفوفات باستخدام فاصل الأسطر (\n, \r\n, \r) وإزالة   $strengths = array_filter( array_map(function ($item) { return trim(str_replace(' ', ' ', $item)); }, preg_split('/\r\n|\r|\n/', strip_tags($about->strengths))), ); $weaknesses = array_filter( array_map(function ($item) { return trim(str_replace(' ', ' ', $item)); }, preg_split('/\r\n|\r|\n/', strip_tags($about->weaknesses))), ); $opportunities = array_filter( array_map(function ($item) { return trim(str_replace(' ', ' ', $item)); }, preg_split('/\r\n|\r|\n/', strip_tags($about->opportunities))), ); $threats = array_filter( array_map(function ($item) { return trim(str_replace(' ', ' ', $item)); }, preg_split('/\r\n|\r|\n/', strip_tags($about->threats))), ); } else { // تعريف مصفوفات فارغة إذا لم توجد بيانات $strengths = $weaknesses = $opportunities = $threats = []; } // دالة لتقسيم المصفوفة إلى نصفين function splitArray($array) { $half = ceil(count($array) / 2); return [ 'first_half' => array_slice($array, 0, $half), 'second_half' => array_slice($array, $half), ]; } // تقسيم كل عنصر من SWOT إلى نصفين $strengths_split = splitArray($strengths); $weaknesses_split = splitArray($weaknesses); $opportunities_split = splitArray($opportunities); $threats_split = splitArray($threats); @endphp @for ($i = 0; $i < max(count($strengths_split['first_half']), count($strengths_split['second_half'])); $i++) @endfor
نقاط القوة (S)
{{ isset($strengths_split['first_half'][$i]) ? '• ' . e($strengths_split['first_half'][$i]) : '' }} {{ isset($strengths_split['second_half'][$i]) ? '• ' . e($strengths_split['second_half'][$i]) : '' }}
@for ($i = 0; $i < max(count($weaknesses_split['first_half']), count($weaknesses_split['second_half'])); $i++) @endfor
نقاط الضعف (W)
{{ isset($weaknesses_split['first_half'][$i]) ? '• ' . e($weaknesses_split['first_half'][$i]) : '' }} {{ isset($weaknesses_split['second_half'][$i]) ? '• ' . e($weaknesses_split['second_half'][$i]) : '' }}
@for ($i = 0; $i < max(count($opportunities_split['first_half']), count($opportunities_split['second_half'])); $i++) @endfor
الفرص المتاحة (O)
{{ isset($opportunities_split['first_half'][$i]) ? '• ' . e($opportunities_split['first_half'][$i]) : '' }} {{ isset($opportunities_split['second_half'][$i]) ? '• ' . e($opportunities_split['second_half'][$i]) : '' }}
@for ($i = 0; $i < max(count($threats_split['first_half']), count($threats_split['second_half'])); $i++) @endfor
التهديدات المحتملة (T)
{{ isset($threats_split['first_half'][$i]) ? '• ' . e($threats_split['first_half'][$i]) : '' }} {{ isset($threats_split['second_half'][$i]) ? '• ' . e($threats_split['second_half'][$i]) : '' }}
{{-- نقاط الضعف ونقاط القوة --}} {{-- الفقرات التي تحتاج الى برامج وانشطة --}} {{--

الفقرات التي تحتاج إلى برامج وأنشطة

@php use App\Models\Paragraphs; $paragraphs = Paragraphs::orderBy('id')->get(); @endphp @forelse ($paragraphs as $index => $paragraph) @empty @endforelse
م الفقرة
{{ $index + 1 }} {{ str_replace(' ', ' ', $paragraph->name) }}
لا توجد فقرات لعرضها.
--}} {{-- الفقرات التي تحتاج الى برامج وانشطة --}} {{-- ترتيب الفقرات --}}

ترتيب القضايا

م الفقرة المجال المجال الفرعي
1 توفير القدرة على التطوير الإدارة المدرسية التطوير المؤسسي
2 تنمية القيم الوطنية الإدارة المدرسية قيادة العملية التعليمية
3 تحفيز تصميم الدروس التعليم والتعلم بناء خبرات التعلم
4 رفع المستوى التحصيلي والتعليمي للطلاب نتائج التعلم التحصيل العلمي
5 برامج التوجيه والرعاية للمتعلمين نتائج التعلم التطور الشخصي والاجتماعي والصحي
6 تصميم أنشطة وبرامج داعمة لتعليم المتعلمين بمختلف فئاتهم الإدارة المدرسية قيادة العملية التعليمية
7 تنمية مستوى الوعي الصحي واللياقة لدى المتعلمين نتائج التعلم التطور الشخصي والاجتماعي والصحي
8 زيادة مشاركة الأسرة في أنشطة وفعاليات المدرسة الإدارة المدرسية المجتمع المدرسي
9 جاهزية مرافق المدرسة البيئة المدرسية المبنى المدرسي
{{-- ترتيب الفقرات --}}






@php $activities = \App\Models\Activity::where('school_id', $schoolId)->get(); @endphp {{-- الجدول الخاص بالبرامج والانشطة --}} @foreach ($activities as $activity)

فعاليات الخطة التشغيلية للمدرسة للعام الدراسي 1445هـ

{{ $activity->department->name ?? 'الإدارة المدرسية ' }} - {{ $activity->standard->standard_name ?? '-' }}
الأولوية (الفقرة) الهدف العام الهدف التفصيلي
{{ $activity->paragraph->name ?? 'غير محدد' }} {{ $activity->detailedTarget->generalObjective->name ?? 'غير محدد' }} {{ $activity->detailedTarget->name ?? 'غير محدد' }}
اسم البرنامج الإجراءات والأنشطة الفئة المستهدفة مسؤول التنفيذ تاريخ التنفيذ مؤشر الأداء
{{ $activity->name ?? 'غير محدد' }}
    @php // التحقق من وجود الحقل واحتوائه على نصوص $procedures = isset($activity->procedures) ? explode("\n", $activity->procedures) : []; @endphp @if (!empty($procedures)) @foreach ($procedures as $procedure) @php // تنظيف النصوص وإزالة المسافات البيضاء $procedure = trim($procedure); @endphp @if (!empty($procedure))
  • {{ htmlentities(strip_tags($procedure), ENT_QUOTES, 'UTF-8') }}
  • @endif @endforeach @else
  • لا توجد إجراءات متاحة
  • @endif
{{ $activity->targeted->name ?? 'غير محدد' }} {{ $activity->user->name ?? 'غير محدد' }} @if ($activity->status == 1) مستمر @else {{ $activity->classroom ?? 'غير محدد' }} ({{ $activity->week ?? 'غير محدد' }}) @endif {{ $activity->p_indicator ?? 'غير محدد' }}
مدير المدرسة مدير مكتب التعليم
{{ \App\Models\User::where('school_id', Auth::user()->school_id)->first()->name ?? 'اسم غير موجود' }}
التوقيع: _______________
{{ $settings->pdf_office_title }}
التوقيع: _______________
@endforeach {{-- الجدول الخاص بالبرامج والانشطة --}} {{-- الجدول الخاص بالبرنامج الزمني --}} @php $activities = \App\Models\Activity::with(['department', 'paragraph'])->get(); @endphp

البرنامج الزمني لفعاليات الخطة التشغيلية للمدرسة للعام الدراسي 1445هـ

@for ($i = 1; $i <= 13; $i++) @endfor @foreach ($activities->groupBy('department.name') as $department => $departmentActivities) @foreach ($departmentActivities->groupBy('paragraph.name') as $paragraph => $paragraphActivities) @foreach ($paragraphActivities as $activity) @if ($loop->first && $loop->parent->first) @endif @if ($loop->first) @endif @if ($activity->status == 1) @else @for ($i = 1; $i <= 13; $i++) @if ($activity->week == $i) @else @endif @endfor @endif @endforeach @endforeach @endforeach
المجال الفقرة البرنامج الأسابيع
{{ $i }}
{{ $department ?? 'غير محدد' }}{{ $paragraph ?? 'غير محدد' }} {{ $activity->name ?? 'غير محدد' }} مستمر {{ $activity->classroom }}