/
home
/
maktab
/
server
/
app
/
Http
/
Controllers
/
Site
/
File Upload :
llllll
Current File: /home/maktab/server/app/Http/Controllers/Site/SiteController.php
<?php namespace App\Http\Controllers\Site; use App\Http\Controllers\Controller; use App\Models\Attendance; use App\Models\ReportStudentAttendance; use App\Models\Sms; use App\Models\Student; use App\Models\StudentAttendance; use App\Models\User; use Carbon\Carbon; use Hekmatinasser\Verta\Verta; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Symfony\Component\HttpKernel\Exception\UnprocessableEntityHttpException; class SiteController extends Controller { public function sendDate(){ $year = Verta::now()->format('Y'); $month = Verta::now()->format('%B'); $day = Verta::now()->format('d'); return response()->json(['year'=>$year,'month'=>$month,'day'=>$day]); } public function createTeacherAttendanceReport(Request $request){ $data = $request->all(); $report = Attendance::with('employee')->where('maktab_id',$data['maktab_id']) ->whereDate('date_at','>=',Carbon::parse($data['start_at'])) ->whereDate('date_at','<=',Carbon::parse($data['end_at'])) ->whereHas('employee',function ($q){ return $q->where('type',4); })->select(['id','employee_id','present','name','date_at',Attendance::$SELECT_DAJ]) ->orderby('date_at')->get(); $report_attendance = ReportStudentAttendance::where('maktab_id',$data['maktab_id']) ->whereDate('date_at','>=',Carbon::parse($data['start_at'])) ->whereDate('date_at','<=',Carbon::parse($data['end_at'])) ->whereNull('type') ->select(DB::raw('Date(date_at) as date'),'teacher_id') ->groupBy('date','teacher_id') ->get(); $send = []; foreach ($report as $i){ $list = []; $list['present'] = $i['present']; $list['employee_id'] = $i['employee_id']; $list['name'] = $i['employee']['name']; if(in_array($i['date_at'],array_keys($send))){ $send[$i['date_at']][] = $list; }else{ $send[$i['date_at']]['date_at'] =$i['date_at']; $send[$i['date_at']]['daj'] =$i['daj']; $send[$i['date_at']][] =$list; } } return response()->json(array_values($send)); } public function countTeacherAttendanceReport(Request $request){ $data = $request->all(); $report = Attendance::with('employee')->where('maktab_id',$data['maktab_id']) ->whereDate('date_at','>=',Carbon::parse($data['start_at'])) ->whereDate('date_at','<=',Carbon::parse($data['end_at'])) ->whereHas('employee',function ($q){ return $q->where('type',4); })->select(['employee_id',DB::raw('count(*) as count'),DB::raw('sum(present) as count_present')]) ->groupBy('employee_id')->get()->toArray(); for ($i=0;$i<count($report);$i++){ $report[$i]['name'] = $report[$i]['employee']['name']; } return response()->json($report); } // ----------------------------student report public function createStudentAttendanceReport(Request $request){ $data = $request->all(); $report = StudentAttendance::with('student')->where('maktab_id',$data['maktab_id']) ->where('employee_id',$data['employee_id']) ->whereDate('date_at','>=',Carbon::parse($data['start_at'])) ->whereDate('date_at','<=',Carbon::parse($data['end_at'])) ->select(['*',StudentAttendance::$SELECT_DAJ]) ->orderby('date_at')->get()->toArray(); $send = []; foreach ($report as $i){ $list = []; $list['present'] = $i['present']; $list['student_id'] = $i['student_id']; $list['name'] = $i['student']['name']; if(in_array($i['date_at'],array_keys($send))){ $send[$i['date_at']][] = $list; }else{ $send[$i['date_at']]['date_at'] =$i['date_at']; $send[$i['date_at']]['daj'] =$i['daj']; $send[$i['date_at']][] =$list; } } return response()->json(array_values($send)); } public function countStudentAttendanceReport(Request $request){ $data = $request->all(); $report = StudentAttendance::with('student')->where('maktab_id',$data['maktab_id']) ->where('employee_id',$data['employee_id']) ->whereDate('date_at','>=',Carbon::parse($data['start_at'])) ->whereDate('date_at','<=',Carbon::parse($data['end_at'])) ->select(['student_id',DB::raw('count(*) as count'),DB::raw('sum(present) as count_present')]) ->groupBy('student_id')->get(); for ($i=0;$i<count($report);$i++){ $report[$i]['name'] = $report[$i]['student']['name']; } return response()->json($report); } }
Copyright ©2k19 -
Hexid
|
Tex7ure