You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			37 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Dart
		
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Dart
		
	
import 'package:hmg_nurses/exceptions/api_exception.dart';
 | 
						|
import 'package:hmg_nurses/main.dart';
 | 
						|
import 'package:hmg_nurses/services/api_client.dart';
 | 
						|
import 'package:hmg_nurses/classes/consts.dart';
 | 
						|
import 'package:hmg_nurses/model/base/generic_response_model.dart';
 | 
						|
import 'package:hmg_nurses/model/login/imei_details.dart';
 | 
						|
import 'package:injector/injector.dart';
 | 
						|
 | 
						|
import '../services/firebase_service.dart';
 | 
						|
 | 
						|
abstract class ILoginApiRepo {
 | 
						|
  Future<List<GetIMEIDetailsModel>> getDeviceInfoByIMEI();
 | 
						|
}
 | 
						|
 | 
						|
class LoginApiRepo implements ILoginApiRepo {
 | 
						|
  final IFirebaseService _firebaseService = Injector.appInstance.get<IFirebaseService>();
 | 
						|
 | 
						|
  @override
 | 
						|
  Future<List<GetIMEIDetailsModel>> getDeviceInfoByIMEI() async {
 | 
						|
    String url = "${ApiConsts.baseUrlServices}DoctorApplication.svc/REST/DoctorApp_GetDeviceDetailsByIMEI";
 | 
						|
    String token = await _firebaseService.getFirebaseToke();
 | 
						|
    logger.d("firebase_token: " + token);
 | 
						|
 | 
						|
    Map<String, dynamic> postParams = {};
 | 
						|
    postParams.addAll(appState.postParamsJson);
 | 
						|
    postParams["stamp"] = DateTime.now().toIso8601String();
 | 
						|
    postParams["IMEI"] = token;
 | 
						|
    GenericResponseModel response;
 | 
						|
    try {
 | 
						|
      response = await Injector.appInstance.get<IApiClient>().postJsonForObject((json) => GenericResponseModel.fromJson(json), url, postParams);
 | 
						|
    } catch (e) {
 | 
						|
      rethrow;
 | 
						|
    }
 | 
						|
    return response.listDoctorDeviceDetails ?? [];
 | 
						|
  }
 | 
						|
}
 |