<?php

namespace App\Services;

use Illuminate\Support\Collection;

class EmployeeService
{
    public function calculatePointBySalaryGrade($salaryGrade, Collection $rules)
    {
        if ($salaryGrade === null || $salaryGrade === '' || $rules->isEmpty()) {
            return 0;
        }

        foreach ($rules as $rule) {
            $from = $rule->salary_grade_from ?? null;
            $to = $rule->salary_grade_to ?? null;

            if ($from === null && $to === null) {
                return $rule->point_value ?? 0;
            }

            if ($from !== null && $salaryGrade < $from) {
                continue;
            }

            if ($to !== null && $salaryGrade > $to) {
                continue;
            }

            return $rule->point_value ?? 0;
        }

        return 0;
    }
}
