public function deleteBulk(Request $req, Year $Year) { if (!$req->has('table_records')) { return redirect()->route('cities.index'); } $ids = $req->input('table_records'); $Year->destroy($ids); return redirect()->route('academycycle.years.index')->with('success', trans('academycycle::years.delete_bulk_success')); }
public function index(Registration $Registration) { $registrations = $Registration->with('step', 'period', 'period.year')->orderBy('id', 'desc'); $steps = RegistrationStep::lists('name', 'id')->toArray(); $countries = Country::lists('name', 'id')->toArray(); $search_fields = ['gender', 'registration_step_id', 'nationality_type', 'contact_country_id', 'social_status', 'social_job']; $years = AcademycycleYear::lists('name', 'id')->toArray(); $genders = config('registration.genders'); foreach ($search_fields as $field) { if (request($field)) { $registrations->whereIn($field, request($field)); } } if (request('academycycle_year')) { $registrations->whereHas('period', function ($query) { $query->whereHas('year', function ($query2) { $query2->whereIn('id', request('academycycle_year')); }); }); } if (request('national_id')) { $registrations->where('national_id', request('national_id')); } if (request('contact_email')) { $registrations->where('contact_email', request('contact_email')); } $registrations = $registrations->paginate(50); return view('registration::registrations.index', compact('registrations', 'steps', 'countries', 'years')); }
/** * Run the database seeds. * * @return void */ public function run() { Model::unguard(); if (Semester::count() > 0) { return; } Semester::where('id', '>', 0)->delete(); Year::where('id', '>', 0)->delete(); $years = DB::connection('old')->table('eduyears')->get(); foreach ($years as $year) { $new_year = new Year(); //new_year->id = $year->sub_id; $new_year->name = $year->eyear_title; //$new_year->start_at = $year->eyear_created ; //$new_year->finish_at = $year->eyear_created + 1 year; $new_year->save(); } $this->command->info('year table seeded!'); $sems = DB::connection('old')->table('semesters')->get(); foreach ($sems as $sem) { $new_semester = new Semester(); $new_semester->id = $sem->sem_id; $new_semester->name = $sem->sem_name; // $new_semester->start_at = $sem->sem_from ; // $new_semester->finish_at = $sem->sem_to; $new_semester->active = $sem->sem_current; $new_semester->Academycycle_year_id = $sem->sem_eyearid; $term = ''; if ($sem->sem_term == 1) { $term = 'first'; } if ($sem->sem_term == 2) { $term = 'second'; } if ($sem->sem_term == 3) { $term = 'summer'; } $new_semester->order = $term; $new_semester->save(); } $this->command->info('Semester table seeded!'); }
/** * Run the database seeds. * * @return void */ public function run() { Model::unguard(); if (AcademycycleYear::count()) { return; } $years = [['name' => '2016/2017', 'start_at' => '2016-08-07', 'finish_at' => '2017-08-06']]; foreach ($years as $year) { AcademycycleYear::create($year); } }
/** * Execute the job. * * @return void */ public function handle() { $student = Student::find($this->student_id); if ($student) { $failed_subjects = []; $success_subjects = []; $semester = semester(); $subjects = StudentSubject::selectRaw("subsub.id as subject_id,SUM(stugr.value) AS subject_points,student_subjects.state as subject_state,subsub.name AS subject_name, subsub.hour AS subject_hours")->join('subject_subjects AS subsub', function ($join) { $join->on('subsub.id', '=', 'student_subjects.subject_id'); })->where('student_subjects.student_id', $student->id)->leftJoin('student_grades AS stugr', function ($join) use($student, $semester) { $join->on('stugr.subject_id', '=', 'subsub.id')->where('stugr.semester_id', '=', $semester->id)->where('stugr.student_id', '=', $student->id); })->whereIn('state', ['study', 'success', 'fail'])->where('student_subjects.semester_id', '=', $semester->id)->where('student_subjects.student_id', $student->id)->groupBy('subsub.id')->get(); $subjects->each(function ($subject) use(&$failed_subjects, $success_subjects) { $subject->details = grade_details($subject->subject_points, $subject->subject_hours); if ((double) $subject->subject_points < 50) { $failed_subjects[] = $subject->subject_id; } else { $success_subjects[] = $subject->subject_id; } }); $semester->load('year'); $currentYear = $semester->year; $nextYear = AcademycycleYear::where('start_at', '>', $currentYear->start_at)->first(); $repeatSemester = Semester::where('order', $semester->order)->where('academycycle_year_id', $nextYear->id)->first(); $currentHistory = StudentHistory::where('student_id', $student->id)->where('academycycle_semester_id', $semester->id)->first(); $repeatSubjects = []; foreach ($failed_subjects as $subject_id) { $repeatSubjects[$subject_id] = ['semester_id' => $repeatSemester->id, 'academystructure_department_id' => $currentHistory->academystructure_department_id, 'state' => 'study']; } $student->subjects()->attach($repeatSubjects); StudentSubject::where('semester_id', $semester->id)->where('student_id', $student->id)->whereIn('subject_id', $success_subjects)->update(['state' => 'success']); StudentSubject::where('semester_id', $semester->id)->where('student_id', $student->id)->whereIn('subject_id', $failed_subjects)->update(['state' => 'fail']); $currentHistory->study_state = 'repeat'; $currentHistory->save(); $repeatHistory = $currentHistory->replicate(); $repeatHistory->study_state = 'active'; $repeatHistory->academycycle_semester_id = $repeatSemester->id; $repeatHistory->save(); $student->study_state = 'repeat'; $student->save(); } }
/** * Register the service provider. * * @return void */ public function register() { Year::created(function ($year) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'year', 'reference_id' => $year->id]); }); Year::updated(function ($year) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'year', 'reference_id' => $year->id]); }); Year::deleted(function ($year) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'year', 'reference_id' => $year->id]); }); Semester::created(function ($semester) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semester', 'reference_id' => $semester->id]); }); Semester::updated(function ($semester) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semester', 'reference_id' => $semester->id]); }); Semester::deleted(function ($semester) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semester', 'reference_id' => $semester->id]); }); SemesterEvent::created(function ($semesterEvent) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semesterEvent', 'reference_id' => $semesterEvent->id]); }); SemesterEvent::updated(function ($semesterEvent) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semesterEvent', 'reference_id' => $semesterEvent->id]); }); SemesterEvent::deleted(function ($semesterEvent) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semesterEvent', 'reference_id' => $semesterEvent->id]); }); SemesterEventType::created(function ($semesterEventType) { UserLog::create(['operation' => 'create', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semesterEventType', 'reference_id' => $semesterEventType->id]); }); SemesterEventType::updated(function ($semesterEventType) { UserLog::create(['operation' => 'update', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semesterEventType', 'reference_id' => $semesterEventType->id]); }); SemesterEventType::deleted(function ($semesterEventType) { UserLog::create(['operation' => 'delete', 'user_id' => user() ? user()->id : NULL, 'reference_key' => 'semesterEventType', 'reference_id' => $semesterEventType->id]); }); }
public function export(Request $request) { Excel::create('registrations', function ($excel) { $excel->sheet('registrations', function ($sheet) { $steps = RegistrationStep::pluck('name', 'id')->toArray(); $specialties = Specialty::pluck('name', 'id')->toArray(); $type = RegistrationType::pluck('title', 'id')->toArray(); $genders = config('registration.genders'); $countries = Country::pluck('name', 'id')->toArray(); $cities = City::pluck('name', 'id')->toArray(); $states = State::pluck('name', 'id')->toArray(); $years = AcademycycleYear::pluck('name', 'id')->toArray(); $registration_periods = RegistrationPeriod::pluck('name', 'id')->toArray(); $registrations = $this->prepQuery(request()->all())->get(); $sheet->loadView('registration::registrations.export', compact('registration_periods', 'registrations', 'steps', 'countries', 'years', 'specialties', 'type', 'genders', 'cities', 'states')); })->download('xlsx'); }); }
public function getGraduateCertificate($background = false) { $student = Student::select('students.*')->joinTermName()->findOrFail($this->student_id); $semesters = get_student_grades($student->id); if ($this->student_id == 1821) { $gpa = 3.59; } else { $gpa = GPA($semesters); } $year_id = $semesters = Semester::where('id', $student->histories->first()->academycycle_semester_id)->first()->id; $year_name = Year::where('id', '=', $year_id - 1)->first()->name; $pdf = $this->preparePdf($background); $html = '<h2>إفادة بإكمال درجة</h2>'; $pdf->writeHTMLCell(210, 20, 10, 50, $html, 0, 0, false, true, "R"); $valuation = check_final_valuation($gpa); if ($student->histories->where('state', 'graduate')->first()) { $graduated_date = $student->histories->where('state', 'graduate')->first()->updated_at->format('Y/m/d'); } else { $graduated_date = ''; } $fourth = ' '; if ($student->registration->fourth_name) { $fourth = ' بن ' . $student->registration->fourth_name . ' '; } $pdf->SetFontSize(16, 'B'); if ($student->gender == 'f') { $html = '<p>تشهد كلية العلوم الشرعية - التعليم عن بعد بأن:<br>' . $student->registration->first_name . ' بنت ' . $student->registration->second_name . ' بن ' . $student->registration->third_name . $fourth . $student->registration->last_name . '<br>الرقم الجامعي:' . $student->username . '<br> الجنسيـة: ' . $student->registration->birthcountry->name . ' <br> </p>'; $pdf->writeHTMLCell(100, 20, 10, 60, $html, 0, 0, false, true, "R"); $pdf->SetFontSize(16, 'B'); $html = '<p>قد أكملت متطلبات درجة الدبلوم في العلوم الشرعية<br>في العام الأكاديمي: ' . $year_name . '<br>بمعدل تراكمي ' . $gpa . ' بتقدير ' . $valuation . '<br><br>بتاريخ ' . $graduated_date . 'م<br><br>وسوف تمنح الدرجة رسمياً بعد اعتمادها. <p>'; $pdf->writeHTMLCell(100, 20, 10, 110, $html, 0, 0, false, true, "R"); } else { $html = '<p>تشهد كلية العلوم الشرعية - التعليم عن بعد بأن:<br>' . $student->registration->first_name . ' بن ' . $student->registration->second_name . ' بن ' . $student->registration->third_name . $fourth . $student->registration->last_name . '<br> الرقم الجامعي:' . $student->username . '<br> الجنسيـة: ' . $student->registration->birthcountry->name . '<br> </p>'; $pdf->writeHTMLCell(100, 20, 10, 60, $html, 0, 0, false, true, "R"); $pdf->SetFontSize(16, 'B'); $html = '<p> قد أكمل متطلبات درجة الدبلوم في العلوم الشرعية <br>في العام الأكاديمي: ' . $year_name . ' <br>بمعدل تراكمي ' . $gpa . ' بتقدير ' . $valuation . ' <br><br>بتاريخ ' . $graduated_date . 'م <br><br>وسوف تمنح الدرجة رسمياً بعد اعتمادها. <p>'; $pdf->writeHTMLCell(100, 20, 10, 110, $html, 0, 0, false, true, "R"); } $pdf->SetFontSize(20, 'B'); $html = 'المشرف العام على التعليم عن بعد<br>مستشار معالي وزير الأوقاف والشؤون الدينية'; $pdf->writeHTMLCell(210, 20, 0, 200, $html, 0, 0, false, true, "C"); $pdf->SetFontSize(16, 'B'); $html = '<table cellpadding="3"> <tr><td align="right">لمزيد من التفاصيل يمكن طلب كشف الدرجات الأصلي</td></tr> </table>'; $pdf->writeHTMLCell(100, 20, 10, 250, $html, 0, 0, false, true, "R"); //English language switch ($valuation) { case 'امتياز': $valuation = 'excellence'; break; case 'امتياز مع مرتبة الشرف': $valuation = 'excellent with honors'; break; case 'جيد جدا': $valuation = 'very good'; break; case 'جيد': $valuation = 'good'; break; case 'مقبول': $valuation = 'fairly good'; break; default: $valuation = ''; } $html = '<h2>Notification of Degree Completion</h2>'; $pdf->writeHTMLCell(205, 20, 0, 50, $html, 0, 0, false, true, "L"); $pdf->SetFontSize(14, 'B'); $fourth = ''; if ($student->registration->fourth_name_latin) { $fourth = ' bin ' . $student->registration->fourth_name_latin . ' '; } if ($student->gender == 'f') { $html = '<p>College of Shari’a Sciences - Distance learning <br>attests that:<br>' . $student->registration->first_name_latin . ' bint ' . $student->registration->second_name_latin . ' bin ' . $student->registration->third_name_latin . $fourth . $student->registration->last_name_latin . ' <br>Student ID: ' . $student->username . '<br> Nationality: ' . $student->registration->birthcountry->nationality_en . ' <br> </p>'; } else { $html = '<p>College of Shari’a Sciences - Distance learning <br>attests that:<br>' . $student->registration->first_name_latin . ' bin ' . $student->registration->second_name_latin . ' bin <br>' . $student->registration->third_name_latin . $fourth . $student->registration->last_name_latin . ' <br>Student ID: ' . $student->username . '<br> Nationality: ' . $student->registration->birthcountry->nationality_en . ' <br> </p>'; } $pdf->writeHTMLCell(205, 10, 0, 60, $html, 0, 0, false, true, "L"); $pdf->SetFontSize(14, 'B'); $html = '<p>Has successfully fulfilled the graduation <br>requirements of the Diploma degree in Sharia <br>Sciences on the academic year ' . $year_name . ' with <br>accumulative grade of ' . $gpa . ' ' . $valuation . '<br><br> on ' . $graduated_date . ' <br><br>The degree will be officially awarded after <br>the endorsement.</p>'; $pdf->writeHTMLCell(205, 10, 0, 110, $html, 0, 0, false, true, "L"); $pdf->SetFontSize(14, 'B'); $html = '<p>For more details, the official transcript could be<br>requested.</p>'; $pdf->writeHTMLCell(205, 10, 0, 250, $html, 0, 0, false, true, "L"); ob_clean(); return $pdf; }
public function edit(Period $period, Year $year) { $years = $year->notFinished()->lists('name', 'id')->toArray(); return view('registration::periods.edit', compact('period', 'years')); }
public function edit(Year $year, $id = 0) { $period = Period::findOrFail($id); $years = $year->notFinished()->pluck('name', 'id')->toArray(); return view('registration::periods.edit', compact('period', 'years')); }
private function checkIntervalsConflict(Request $request, $interval_id = 0) { $intervals = Year::whereRaw("'" . $request->start_at . "' < finish_at\n AND start_at < '" . $request->finish_at . "'")->where('id', '!=', $interval_id)->count(); return $intervals; }
private function checkIntervalsConflict(Request $request) { $yearintearvel = Year::where('id', $request->academycycle_year_id)->whereRaw("'" . $request->start_at . "' >= start_at AND finish_at >= '" . $request->finish_at . "'")->count(); return $yearintearvel; }