From 2d9ca7a95c029ca9146ab8a7a065714ce03bb876 Mon Sep 17 00:00:00 2001 From: aslan Date: Fri, 12 Jul 2024 12:47:16 +0300 Subject: [PATCH] add timetable to User dashboard --- app/Helpers/GetDay.php | 20 ++++ app/Services/GetInfoOfStudent.php | 21 +++++ app/Services/TestConnect.php | 26 ++++++ resources/views/dashboard.blade.php | 140 +++++++++++++++++++++++----- routes/web.php | 7 +- 5 files changed, 186 insertions(+), 28 deletions(-) create mode 100644 app/Helpers/GetDay.php create mode 100644 app/Services/GetInfoOfStudent.php create mode 100644 app/Services/TestConnect.php diff --git a/app/Helpers/GetDay.php b/app/Helpers/GetDay.php new file mode 100644 index 0000000..51eface --- /dev/null +++ b/app/Helpers/GetDay.php @@ -0,0 +1,20 @@ + 'Понедельник', + 2 => 'Вторник', + 3 => 'Среда', + 4 => 'Четверг', + 5 => 'Пятница', + 6 => 'Суббота', + 7 => 'Воскресение', + ]; + return array_key_exists($day, $daysMap) ? $daysMap[$day] : 'День недели не определен!'; + } +} diff --git a/app/Services/GetInfoOfStudent.php b/app/Services/GetInfoOfStudent.php new file mode 100644 index 0000000..aeaaeb1 --- /dev/null +++ b/app/Services/GetInfoOfStudent.php @@ -0,0 +1,21 @@ +connect = $connection; + } + + public function getInfo($user): array + { + return $this->connect->getInfo($user); + } +} diff --git a/app/Services/TestConnect.php b/app/Services/TestConnect.php new file mode 100644 index 0000000..ea87a74 --- /dev/null +++ b/app/Services/TestConnect.php @@ -0,0 +1,26 @@ + '3897263a-208f-11ee-93a9-f8cc6e370457', + 'guid_faculty' => '4cbc06bd-5f3d-11ec-80b4-a0369f032517', + 'guid_group' => '662e64d7-b4ad-11ec-937c-f8cc6e370458', + 'name' => 'Абдулазиева Мадина Ибрагимовна', + 'first_name' => 'Мадина1', + 'last_name' => 'Абдулазиева', + 'middle_name' => 'Ибрагимовна', + 'number_record_book' => '23009202', + 'email' => 'test@example.com', + 'faculty' => 'Лечебный факультет', + 'course' => 'Первый', + 'group' => 'ЛД-103', + 'code' => '31.05.01', + 'form_education' => 'Очная', + ]; + } +} diff --git a/resources/views/dashboard.blade.php b/resources/views/dashboard.blade.php index 61e132f..bdf978e 100644 --- a/resources/views/dashboard.blade.php +++ b/resources/views/dashboard.blade.php @@ -1,47 +1,141 @@ +@php + use App\Helpers\GetDay; + use Carbon\Carbon; + $dayNumber = 1; +@endphp

- {{ __('Dashboard') }} + Текущая неделя: + @if($currentWeek['err'] !== 0) + Что то сломалось: {{ $currentWeek['msg'] }} + @elseif($currentWeek['week_cur'] == 1) + нечетная + @else + четная + @endif

-
-
-
-
- {{ __("You're logged in!") }} + @if($timetable['err'] !== 0) +
+
+
+
+ {{ $timetable['msg'] }} +
-
+ @else +
+
+
+
+ @foreach($timetable[$currentWeek['week_cur']] as $day => $subjects) +
+

+ +

+
+
+ @foreach($subjects as $subject) + №{{ $subject['time1'] }} ({{ $subject['time_name'][0] }} - {{ $subject['time_name'][1] }}) / {{ $subject['predmet'] }} ({{ $subject['vid_name'] }})
+ Аудитория: {{ $subject['aname'] }}
+ Преподаватель: {{ $subject['fio'] }}
+
+ @endforeach +
+
+
+ @php $dayNumber++ @endphp + @endforeach +
+
+
+
+
Следующая неделя
+ @foreach($timetable[($currentWeek['week_cur'] === 1) ? 2 : 1] as $day => $subjects) +
+

+ +

+
+
+ @foreach($subjects as $subject) + №{{ $subject['time1'] }} ({{ $subject['time_name'][0] }} - {{ $subject['time_name'][1] }}) / {{ $subject['predmet'] }} ({{ $subject['vid_name'] }})
+ Аудитория: {{ $subject['aname'] }}
+ Преподаватель: {{ $subject['fio'] }}
+
+ @endforeach +
+
+
+ @php $dayNumber++ @endphp + @endforeach +
+
+
+
+ @endif -
+
- - - - + - - - - + + - - - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + +
#FirstLastHandleПрофиль
1MarkOtto@mdoПолное имя{{ $user->name }}
2JacobThornton@fatEmail{{ $user->email }}
3Larry the Bird@twitterИмя{{ $user->first_name }}
Фамилия{{ $user->last_name }}
Отчество{{ $user->middle_name }}
Зачетная книжка{{ $user->number_record_book }}
Факультет{{ $user->faculty }}
Курс{{ $user->course }}
Группа{{ $user->group }}
diff --git a/routes/web.php b/routes/web.php index 9e255fd..16646ac 100644 --- a/routes/web.php +++ b/routes/web.php @@ -7,11 +7,8 @@ Route::get('/', function () { return view('welcome'); }); -Route::get('/dashboard', function () { - return view('dashboard'); -})->middleware(['auth', 'verified'])->name('dashboard'); - -Route::middleware('auth')->group(function () { +Route::middleware(['auth', 'verified'])->group(function () { + Route::get('/dashboard', [ProfileController::class, 'show'])->name('dashboard'); Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit'); Route::patch('/profile', [ProfileController::class, 'update'])->name('profile.update'); Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy');