account_repository.dart 919 B

1234567891011121314151617181920212223242526272829303132333435
  1. import 'dart:async';
  2. import 'package:electronic_assistant/data/api/atmob_api.dart';
  3. import 'package:flutter/cupertino.dart';
  4. import '../../utils/http_handler.dart';
  5. import '../api/request/login_request.dart';
  6. import '../api/request/verification_code_request.dart';
  7. import '../api/response/login_response.dart';
  8. class AccountRepository {
  9. AccountRepository._() {
  10. debugPrint('AccountRepository init');
  11. }
  12. String? token;
  13. Future<void> getVerificationCode(String phone) {
  14. return atmobApi
  15. .getVerificationCode(VerificationCodeRequest(phone))
  16. .then(HttpHandler.handle(false));
  17. }
  18. Future<LoginResponse> login(String phone, String code) {
  19. return atmobApi
  20. .login(LoginRequest(phone, code))
  21. .then(HttpHandler.handle(true))
  22. .then((response) {
  23. token = response.authToken;
  24. return response;
  25. });
  26. }
  27. }
  28. final accountRepository = AccountRepository._();