findNearestLocation method

AttendanceLocation? findNearestLocation()

Implementation

AttendanceLocation? findNearestLocation() {
  final current = currentPosition.value;
  if (current == null) return null;

  double minDistance = double.infinity;
  AttendanceLocation? nearest;

  for (final loc in locations) {
    final distance = Geolocator.distanceBetween(
      current.latitude,
      current.longitude,
      loc.lat,
      loc.long,
    );

    if (distance < minDistance && distance <= 200) {
      minDistance = distance;
      nearest = loc;
    }
  }

  return nearest;
}