更新微信登录
This commit is contained in:
@@ -222,7 +222,7 @@ class MHTLoginController extends GetControllerEx<LoginModel> {
|
||||
}
|
||||
|
||||
//微信登录
|
||||
Future<void> wxLoginSendAuth() async {
|
||||
Future<void> wxLoginSendAuth(BuildContext context) async {
|
||||
/*
|
||||
1、目前移动应用上微信登录只提供原生的登录方式,需要用户安装微信客户端才能配合使用。
|
||||
2、对于Android应用,建议总是显示微信登录按钮,当用户手机没有安装微信客户端时,请引导用户下载安装微信客户端。
|
||||
@@ -233,7 +233,9 @@ class MHTLoginController extends GetControllerEx<LoginModel> {
|
||||
bool isWeChatInstalled = await fluwx.isWeChatInstalled;
|
||||
debugPrint('is wechat installed: $isWeChatInstalled');
|
||||
if (!isWeChatInstalled) {
|
||||
showToast("请先安装微信APP,再使用微信登录".tr);
|
||||
TopSlideNotification.show(context,
|
||||
text: "请先安装微信APP,再使用微信登录".tr,
|
||||
textColor: themeController.currentColor.sc9);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -255,42 +257,48 @@ class MHTLoginController extends GetControllerEx<LoginModel> {
|
||||
}
|
||||
|
||||
Future<int> loginByWechatCode(String code) async {
|
||||
String serviceAddress = ServiceConstant.service_address;
|
||||
String serviceName = ServiceConstant.server_service;
|
||||
String serviceApi = ServiceConstant.login;
|
||||
String queryUrl = "${serviceAddress}${serviceName}${serviceApi}";
|
||||
String? language = "";
|
||||
var data = {
|
||||
"type": 2,
|
||||
"password": code,
|
||||
"khCode": "mht",
|
||||
};
|
||||
ApiResponse apiResponse = await requestWithLog(
|
||||
logTitle: "微信登录".tr,
|
||||
method: MyHttpMethod.post,
|
||||
queryUrl: queryUrl,
|
||||
data: data);
|
||||
if (apiResponse.code == HttpStatusCodes.ok) {
|
||||
UserInfoController userInfoController = Get.find();
|
||||
userInfoController.model.user = UserModel.fromJson(apiResponse.data);
|
||||
userInfoController.model.login = 1;
|
||||
String token = apiResponse.rawResponse.headers['token']!.first;
|
||||
EasyDartModule.dio.token = token;
|
||||
final box = GetStorage();
|
||||
box.write('token', token); // 存储 token
|
||||
box.write('user', userInfoController.model.user!.toJson()); // 存储用户信息
|
||||
if (userInfoController.model.user!.phone == null ||
|
||||
userInfoController.model.user!.phone!.isEmpty) {
|
||||
await Get.toNamed("/auth_bind_tel", arguments: {'code':'mht'});
|
||||
try {
|
||||
String serviceAddress = ServiceConstant.service_address;
|
||||
String serviceName = ServiceConstant.server_service;
|
||||
String serviceApi = ServiceConstant.login;
|
||||
String queryUrl = "${serviceAddress}${serviceName}${serviceApi}";
|
||||
String? language = "";
|
||||
var data = {
|
||||
"type": 2,
|
||||
"password": code,
|
||||
"khCode": "mht",
|
||||
};
|
||||
ApiResponse apiResponse = await requestWithLog(
|
||||
logTitle: "微信登录".tr,
|
||||
method: MyHttpMethod.post,
|
||||
queryUrl: queryUrl,
|
||||
data: data);
|
||||
if (apiResponse.code == HttpStatusCodes.ok) {
|
||||
ef.log("微信登录授权成功:${apiResponse}");
|
||||
UserInfoController userInfoController = Get.find();
|
||||
userInfoController.model.user = UserModel.fromJson(apiResponse.data);
|
||||
userInfoController.model.login = 1;
|
||||
String token = apiResponse.rawResponse.headers['token']!.first;
|
||||
EasyDartModule.dio.token = token;
|
||||
final box = GetStorage();
|
||||
box.write('token', token); // 存储 token
|
||||
box.write('user', userInfoController.model.user!.toJson()); // 存储用户信息
|
||||
if (userInfoController.model.user!.phone == null ||
|
||||
userInfoController.model.user!.phone!.isEmpty) {
|
||||
await Get.toNamed("/auth_bind_tel", arguments: {'code': 'mht'});
|
||||
}
|
||||
if (userInfoController.model.user!.phone == null ||
|
||||
userInfoController.model.user!.phone!.isEmpty) {
|
||||
userInfoController.model.login = 0;
|
||||
}
|
||||
} else {
|
||||
EasyDartModule.logger.error("[微信登录]:失败-》${apiResponse}");
|
||||
}
|
||||
if (userInfoController.model.user!.phone == null ||
|
||||
userInfoController.model.user!.phone!.isEmpty) {
|
||||
userInfoController.model.login = 0;
|
||||
}
|
||||
} else {
|
||||
EasyDartModule.logger.error("[微信登录]:失败-》${apiResponse}");
|
||||
return apiResponse.code!;
|
||||
} catch (e) {
|
||||
ef.log("微信登录:$e");
|
||||
}
|
||||
return apiResponse.code!;
|
||||
return 1;
|
||||
}
|
||||
|
||||
//注销账号
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:ef/ef.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutterflow_ui/flutterflow_ui.dart';
|
||||
import 'package:fluwx/fluwx.dart';
|
||||
import 'package:get_storage/get_storage.dart';
|
||||
@@ -17,7 +14,6 @@ import 'package:vbvs_app/component/tool/CustomCard.dart';
|
||||
import 'package:vbvs_app/component/tool/TopSlideNotification.dart';
|
||||
import 'package:vbvs_app/controller/time/countdown_controller.dart';
|
||||
import 'package:vbvs_app/controller/user_info_controller.dart';
|
||||
import 'package:vbvs_app/pages/common/selectDialog.dart';
|
||||
import 'package:vbvs_app/pages/mh_page/user/controller/mht_login_controller.dart';
|
||||
import 'package:vbvs_app/pages/mh_page/user/controller/mht_register_controller.dart';
|
||||
|
||||
@@ -68,9 +64,9 @@ class MHTLoginPage extends GetView<MHTLoginController> {
|
||||
debugPrint('is wechat installed: $isWeChatInstalled');
|
||||
if (!isWeChatInstalled) {
|
||||
// TODO ios未安装微信 隐藏微信一键登录按钮
|
||||
controller.model.isWeChatNotInstalled = false;
|
||||
} else {
|
||||
controller.model.isWeChatNotInstalled = true;
|
||||
} else {
|
||||
controller.model.isWeChatNotInstalled = false;
|
||||
}
|
||||
controller.updateAll();
|
||||
});
|
||||
@@ -1860,7 +1856,7 @@ class MHTLoginPage extends GetView<MHTLoginController> {
|
||||
final loginController =
|
||||
Get.find<MHTLoginController>();
|
||||
await loginController
|
||||
.wxLoginSendAuth();
|
||||
.wxLoginSendAuth(context);
|
||||
},
|
||||
child: Container(
|
||||
width: 90.rpx,
|
||||
|
||||
Reference in New Issue
Block a user