login_dao.dart 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import 'package:dio/dio.dart';
  2. import 'package:flutter_tracker/dio/api.dart';
  3. import 'package:flutter_tracker/model/login_entity.dart';
  4. import 'package:flutter_tracker/model/message_model.dart';
  5. import 'package:flutter_tracker/model/user_model.dart';
  6. /// Description:
  7. /// Time : 2021年12月03日 Friday
  8. /// Author : liuyuqi.gov@msncn
  9. class LoginDao {
  10. static Map<String, dynamic> params = <String, dynamic>{};
  11. static Future<LoginEntity> login(String username, String password) async {
  12. params.addAll({"username": username, "password": password});
  13. try {
  14. Response response = await Dio().post(Api.loginUrl, data: params);
  15. return LoginEntity.fromJson(response.data);
  16. } catch (e) {
  17. return null;
  18. }
  19. }
  20. static Future<MessageModel> logout(String token) async {
  21. params.addAll({"token": token});
  22. try {
  23. Response response = await Dio().post(Api.logoutUrl, data: params);
  24. return MessageModel.fromJson(response.data);
  25. } catch (e) {
  26. return null;
  27. }
  28. }
  29. static Future<MessageModel> register(String username, String password) async {
  30. params.addAll({"username": username, "password": password});
  31. try {
  32. Response response = await Dio().post(Api.registerUrl, data: params);
  33. if (response.data["success"] == true) {}
  34. return MessageModel.fromJson(response.data);
  35. } catch (e) {
  36. return null;
  37. }
  38. }
  39. static Future<UserModel> getUserInfo(String token) async {
  40. params.addAll({"token": token});
  41. Response response = await Dio().post(Api.getUserInfoUrl, data: params);
  42. return UserModel.fromJson(response.data);
  43. }
  44. }