37970-vm/api/v1/Models/Assessment.php
2026-01-30 16:28:00 +00:00

33 lines
1.0 KiB
PHP

<?php
namespace Api\Models;
use Api\Core\Model;
class Assessment extends Model {
protected static $table = 'assessments';
public static function getBySchool($school_id) {
return static::where('school_id', $school_id);
}
public static function saveMarks($assessment_id, $marks) {
$db = db();
$db->beginTransaction();
try {
$stmt = $db->prepare("INSERT INTO marks (assessment_id, learner_id, marks_obtained) VALUES (:assessment_id, :learner_id, :marks_obtained) ON DUPLICATE KEY UPDATE marks_obtained = VALUES(marks_obtained)");
foreach ($marks as $mark) {
$stmt->execute([
'assessment_id' => $assessment_id,
'learner_id' => $mark['learner_id'],
'marks_obtained' => $mark['marks_obtained']
]);
}
$db->commit();
return true;
} catch (\Exception $e) {
$db->rollBack();
return false;
}
}
}