EVOLUTION-NINJA
Edit File: StudentAttendance.php
<?php namespace App\Controllers; use CodeIgniter\Controller; use App\Models\Attendance; use App\Models\AttendanceList; use Config\Database; class StudentAttendance extends BaseController { public function index() { return view('student_attendence/attendance'); } public function view_attendance() { return view('student_attendence/view_attendance'); } public function store() { $attendanceModel = new Attendance(); $data = [ 'class' => $this->request->getPost('class_degree'), 'department' => $this->request->getPost('department'), 'section' => $this->request->getPost('Section'), 'academic_year' => $this->request->getPost('acadmic_year1'), 'date' => $this->request->getPost('datebirth'), 'time' => $this->request->getPost('time') ]; $attendanceModel->insert($data); return $this->response->setJSON(['success' => true, 'message' => 'Attendance marked successfully']); } public function fetchStudentList() { $id = session()->get('id'); // if ($id) { $db = \Config\Database::connect(); $builder = $db->table('student_list'); $builder->select('admission_no as roll_no, id as student_id, first_name as name'); $data = $builder->get()->getResultArray(); if ($data) { return $this->response->setJSON($data); } else { return $this->response->setJSON(['result' => 0, 'message' => 'Failed to load data']); } // } else { // return $this->response->setJSON(['result' => 0, 'message' => 'Please try again']); // } } public function saveAttendance() { $attendanceModel = new AttendanceList(); $input = $this->request->getPost('attendanceData'); $attendanceData = json_decode($input, true); if (!$attendanceData) { return $this->response->setStatusCode(400)->setJSON(['status' => 'error', 'message' => 'Invalid data']); } foreach ($attendanceData as $attendance) { $data = [ 'today_attendance' => $attendance['today_attendance'], 'roll_no' => $attendance['roll_no'], 'student_id' => $attendance['student_id'], 'name' => $attendance['name'], 'yesterday' => $attendance['yesterday'], 'day_before_yesterday' => $attendance['day_before_yesterday'], 'two_day_before' => $attendance['two_day_before'] ]; $attendanceModel->save($data); } return $this->response->setJSON(['status' => 'success']); } public function fetchAttendance() { $attendanceModel = new AttendanceList(); $data = $attendanceModel->select('roll_no, student_id, name, yesterday, day_before_yesterday, two_day_before')->findAll(); return $this->response->setJSON($data); } public function viewAttendanceList() { $id = session()->get('id'); if ($id) { $db = \Config\Database::connect(); $builder = $db->table('mark_attendance'); $builder->select('roll_no, student_id, name, today_attendance'); $data = $builder->get()->getResultArray(); if ($data) { return $this->response->setJSON(['success' => true, 'data' => $data]); } else { return $this->response->setJSON(['success' => false, 'message' => 'Failed to load data']); } } else { return $this->response->setJSON(['success' => false, 'message' => 'Please try again']); } } public function records() { $attendanceModel = new Attendance(); $data = [ 'class' => $this->request->getPost('class_degree'), 'department' => $this->request->getPost('department'), 'section' => $this->request->getPost('Section'), 'date' => $this->request->getPost('datebirth'), ]; $attendanceModel->insert($data); return $this->response->setJSON(['success' => true, 'message' => 'Attendance marked successfully']); } public function fetchLastDaysAttendance() { $model = new AttendanceList(); $date = date('Y-m-d', strtotime("-7 days")); $data['attendance'] = $model->where('date >=', $date)->findAll(); return $this->response->setJSON($data); } public function fetchOneMonthAttendance() { $model = new AttendanceList(); $date = date('Y-m-d', strtotime("-1 month")); $data['attendance'] = $model->where('date >=', $date)->findAll(); return $this->response->setJSON($data); } } ?>