import 'package:chicken_farm/core/api/api_service.dart'; import 'package:chicken_farm/modes/auth/auth_model.dart'; import 'package:chicken_farm/modes/auth/login_model.dart'; import 'package:chicken_farm/modes/user/user_info_model.dart'; class LoginApi { static final LoginApi _instance = LoginApi._internal(); factory LoginApi() => _instance; LoginApi._internal(); Future login(LoginModel data) async { final result = await ApiService().post('/auth/login', data: data); if (result.success && result.data != null) { return AuthResultModel.fromJson(result.data); } else { throw result.message; } } Future refreshToken(String refreshToken) async { final result = await ApiService().post( '/auth/refreshToken', data: {"refreshToken": refreshToken}, ); if (result.success && result.data != null) { return AuthResultModel.fromJson(result.data); } else { throw result.message; } } Future getInfo() async { final result = await ApiService().get('/system/user/getInfo'); if (result.success && result.data != null) { return UserInfoModel.fromJson(result.data); } else { return null; } } Future logout() async { ApiService().post('/auth/logout'); } }