import 'dart:convert'; import 'package:app_business/generated/base.pb.dart' as pb; import 'package:app_business/service/api.dart'; import 'package:get/get.dart'; import 'package:track_common/view.dart'; class LoginControllerImp extends LoginController { final _api = Get.find(); @override Future authSendCodeToPhone(String phone) async { return _api.authSendCodeToPhone(phone, SmsType.Login); } @override Future getCodeLifeTime(String phone) { return _api.getSmsSendLeftTime(phone); } @override Future signIn(String phone, String code) async { return _api.signIn(phone, code, ''); } @override Future<(String, String)> getQrCode() async { final r = await _api.stub.toGetSignInQrCode(DefaultRequest()); final json = const JsonEncoder() .convert({'KeyType': 'BusinessLogin', 'code': r.qrCode}); return (json, r.qrCode); } @override Future isQrCodeOk(String codeValue) async { final r = await _api.stub.toQrCodeSignIn(pb.QrCodeInfo()..qrCode = qrCodeValue); _api.token = r.token; return true; } }