fix tests
This commit is contained in:
@@ -8,19 +8,23 @@ use Illuminate\Support\Facades\Log;
|
||||
class FeeStudentFeeService
|
||||
{
|
||||
public const CATEGORY_FIRST_REGULAR = 'first_regular';
|
||||
|
||||
public const CATEGORY_ADDITIONAL_REGULAR = 'additional_regular';
|
||||
|
||||
public const CATEGORY_YOUTH = 'youth';
|
||||
|
||||
public const CATEGORY_NOT_BILLABLE = 'not_billable';
|
||||
|
||||
private const BILLABLE_ENROLLMENT_STATUSES = ['enrolled', 'payment pending'];
|
||||
|
||||
private const WITHDRAWN_ENROLLMENT_STATUSES = ['withdrawn', 'refund pending', 'withdraw under review'];
|
||||
|
||||
private const ACCEPTED_ADMISSION_STATUS = 'accepted';
|
||||
|
||||
public function __construct(
|
||||
private FeeGradeService $grades,
|
||||
private FeeConfigService $config
|
||||
) {
|
||||
}
|
||||
) {}
|
||||
|
||||
/**
|
||||
* Normalize grades, sort by grade level, and assign a tuition fee to each
|
||||
@@ -130,6 +134,7 @@ class FeeStudentFeeService
|
||||
$nonBillable = array_map(function (array $student): array {
|
||||
$student['fee_category'] = self::CATEGORY_NOT_BILLABLE;
|
||||
$student['tuition_fee'] = 0.0;
|
||||
|
||||
return $student;
|
||||
}, $nonBillable);
|
||||
|
||||
@@ -148,7 +153,7 @@ class FeeStudentFeeService
|
||||
|
||||
$studentRows[] = [
|
||||
'student_id' => $student['student_id'] ?? null,
|
||||
'student_name' => trim(($student['firstname'] ?? '') . ' ' . ($student['lastname'] ?? '')),
|
||||
'student_name' => trim(($student['firstname'] ?? '').' '.($student['lastname'] ?? '')),
|
||||
'grade' => $student['grade'] ?? null,
|
||||
'grade_level' => $student['grade_level'] ?? null,
|
||||
'enrollment_status' => $student['enrollment_status'] ?? null,
|
||||
@@ -192,6 +197,7 @@ class FeeStudentFeeService
|
||||
public function isWithdrawn(array $student): bool
|
||||
{
|
||||
$status = strtolower((string) ($student['enrollment_status'] ?? ''));
|
||||
|
||||
return in_array($status, self::WITHDRAWN_ENROLLMENT_STATUSES, true);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user