IMMREX7

aku nok ndi : /home/spdtg/www/schoolmis/app/Http/Controllers/School/
File Up :
aku nok ndi : /home/spdtg/www/schoolmis/app/Http/Controllers/School/PeriodController.php

<?php

namespace App\Http\Controllers\School;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;
use DB;
use Session;

class PeriodController extends SchoolController {

    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index(Request $request) {
        $periods = \App\Period::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
                ->orderBy('idPeriod', 'desc');
        if($request->has('idFinancialYear')){
            $periods = $periods->where('idFinancialYear', '=', $request->idFinancialYear)->get();
        }else{
            $periods = $periods->where('idFinancialYear', '=', Session::get('idFinancialYear'))->get();
        }
        $classes = ['' => '--Select--'] + \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
                        ->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
        return view('schools.periods.index', compact('classes', 'periods'));
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create() {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request) {
//        dd($request->all());
        $rules = [
            'idClass' => 'required',
            'periodName' => 'required',
            'fromTime' => 'required',
            'toTime' => 'required'
        ];
        if (count($request->sections) == 0) {
            $rules += ['idSection' => 'required'];
        }
        $messages = [
            'idClass.required' => 'Class must be selected.',
            'idSection.required' => 'Section must be selected.'
        ];
        $this->validate($request, $rules, $messages);
        if (count($request->sections) > 0) {
            foreach ($request->sections as $key => $value) {
                $period = new \App\Period();
                $period->fill($request->all());
                $period->idSection = $value;
                $period->isLunchBreak = $request->has('isLunchBreak') ? 'Y' : 'N';
                $period->idSchool = Auth::guard('school')->user()->idSchool;
                $period->idFinancialYear = Session::get('idFinancialYear');
                $period->save();
            }
        }
        if ($request->ajax()) {
            return response()->json(['success' => "SUCCESS"], 200, ['app-status' => 'success']);
        }
        return redirect('school/periods');
    }

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id) {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function edit($id) {
        $periods = \App\Period::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
                        ->orderBy('idPeriod', 'desc')->get();
        $classes = ['' => '--Select--'] + \App\ClassM::where('idSchool', '=', Auth::guard('school')->user()->idSchool)
                        ->orderBy('idClass')->get()->pluck('className', 'idClass')->toArray();
        $period = \App\Period::findOrfail($id);
        $section = \App\Section::where('idSection', '=', $period->idSection)->get()->pluck('sectionName', 'idSection')->toArray();
        return view('schools.periods.index', compact('classes', 'periods', 'period', 'section'));
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id) {
        $rules = [
            'idClass' => 'required',
            'periodName' => 'required',
            'fromTime' => 'required',
            'toTime' => 'required'
        ];
//        if (count($request->sections) == 0) {
//            $rules += ['idSection' => 'required'];
//        }
        $messages = [
            'idClass.required' => 'Class must be selected.',
            'idSection.required' => 'Section must be selected.'
        ];
        $this->validate($request, $rules, $messages);
        $period = \App\Period::findOrfail($id);
        $period->fill($request->all());
        $period->update();
        return redirect('school/periods');
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id) {
        $period = \App\Period::findOrfail($id);
        $period->delete();
        return response()->json(['success' => "SUCCESS"], 200, ['app-status' => 'success']);
    }

}

Copyright © 2021 - 2025 IMMREX7