import 'package:rasadyar_inspection/data/data_source/remote/inspection/inspection_remote.dart';
import 'package:rasadyar_inspection/data/model/response/hatching_details/hatching_details.dart';
import 'package:rasadyar_inspection/data/model/response/poultry_location/poultry_location_model.dart';
import 'package:rasadyar_inspection/data/repositories/inspection/inspection_repository.dart';

class InspectionRepositoryImp implements InspectionRepository {
  final InspectionRemoteDataSource remoteDataSource;

  InspectionRepositoryImp({required this.remoteDataSource});

  @override
  Future<Map<String, dynamic>> fetchInspectionData(String inspectionId) {
    // TODO: implement fetchInspectionData
    throw UnimplementedError();
  }

  @override
  Future<List<Map<String, dynamic>>> fetchInspections(String userId) {
    // TODO: implement fetchInspections
    throw UnimplementedError();
  }

  @override
  Future<List<PoultryLocationModel>?> getNearbyLocation({
    double? centerLat,
    double? centerLng,
    double? radius,
    String? value,
  }) async {
    return remoteDataSource.getNearbyLocation(
      centerLat: centerLat,
      centerLng: centerLng,
      radius: radius,
      value: value,
    );
  }

  @override
  Future<List<HatchingDetails>?> getHatchingDetails({String? code, bool? active}) async {
    return await remoteDataSource.getHatchingDetails(code: code, active: active ?? false);
  }
}
