_login.dart 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import 'package:chicken_farm/core/api/api_service.dart';
  2. import 'package:chicken_farm/modes/auth/auth_model.dart';
  3. import 'package:chicken_farm/modes/auth/login_model.dart';
  4. import 'package:chicken_farm/modes/user/user_info_model.dart';
  5. import 'package:dio/dio.dart';
  6. class LoginApi {
  7. static final LoginApi _instance = LoginApi._internal();
  8. factory LoginApi() => _instance;
  9. LoginApi._internal();
  10. Future<AuthResultModel> login(LoginModel data) async {
  11. final response = await ApiService().post('/auth/login', data: data);
  12. return AuthResultModel.fromJson(response);
  13. }
  14. Future<AuthResultModel> refreshToken(String refreshToken) async {
  15. final response = await ApiService().post(
  16. '/auth/refreshToken',
  17. data: {"refreshToken": refreshToken},
  18. );
  19. return AuthResultModel.fromJson(response);
  20. }
  21. Future<UserInfoModel> getInfo() async {
  22. final response = await ApiService().get('/system/user/getInfo');
  23. return UserInfoModel.fromJson(response);
  24. }
  25. Future<void> logout() async {
  26. return ApiService().post('/auth/logout');
  27. }
  28. Future<dynamic> getRouters() async {
  29. return await ApiService().get('/system/menu/getRouters');
  30. }
  31. }