更新扩展连接协议字段并且新增邀请码展示
This commit is contained in:
@@ -30,6 +30,15 @@ class KRAppRunData {
|
||||
/// 用户ID(使用响应式变量以便 UI 能监听变化)
|
||||
final Rx<int?> kr_userId = Rx<int?>(null);
|
||||
|
||||
/// 用户邀请码(从用户信息接口获取)
|
||||
final RxString kr_referCode = ''.obs;
|
||||
|
||||
/// 用户余额
|
||||
final RxInt kr_balance = 0.obs;
|
||||
|
||||
/// 佣金
|
||||
final RxInt kr_commission = 0.obs;
|
||||
|
||||
/// 登录类型
|
||||
KRLoginType? kr_loginType;
|
||||
|
||||
@@ -146,9 +155,17 @@ class KRAppRunData {
|
||||
// 只有在保存成功后才设置登录状态
|
||||
kr_isLogin.value = true;
|
||||
|
||||
// 设备登录模式不再调用用户信息接口
|
||||
// Socket 连接将在需要时建立
|
||||
KRLogUtil.kr_i('用户信息已保存,跳过用户信息接口调用', tag: 'AppRunData');
|
||||
// 🔧 非游客模式下,调用用户信息接口获取 refer_code 等信息
|
||||
KRLogUtil.kr_i('🔍 [AppRunData] 检查登录模式: account=$account', tag: 'AppRunData');
|
||||
final isDevice = isDeviceLogin();
|
||||
KRLogUtil.kr_i('🔍 [AppRunData] isDeviceLogin: $isDevice', tag: 'AppRunData');
|
||||
|
||||
if (!isDevice) {
|
||||
KRLogUtil.kr_i('✅ [AppRunData] 正常登录模式,开始获取用户详细信息', tag: 'AppRunData');
|
||||
await _fetchUserInfo();
|
||||
} else {
|
||||
KRLogUtil.kr_i('⏭️ [AppRunData] 设备登录模式,跳过用户信息接口调用', tag: 'AppRunData');
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
KRLogUtil.kr_e('保存用户信息失败: $e', tag: 'AppRunData');
|
||||
@@ -298,4 +315,41 @@ class KRAppRunData {
|
||||
Future<void> _kr_disconnectSocket() async {
|
||||
await KrSocketService.instance.disconnect();
|
||||
}
|
||||
|
||||
/// 获取用户详细信息(登录后调用)
|
||||
Future<void> _fetchUserInfo() async {
|
||||
try {
|
||||
KRLogUtil.kr_i('📞 [AppRunData] 开始调用用户信息接口 /v1/public/user/info ...', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i('🔐 [AppRunData] 当前 Token: ${kr_token ?? "null"}', tag: 'AppRunData');
|
||||
|
||||
final result = await KRUserApi.kr_getUserInfo();
|
||||
|
||||
result.fold(
|
||||
(error) {
|
||||
KRLogUtil.kr_e('❌ [AppRunData] 获取用户信息失败: ${error.msg} (code: ${error.code})', tag: 'AppRunData');
|
||||
},
|
||||
(userInfo) {
|
||||
KRLogUtil.kr_i('✅ [AppRunData] 获取用户信息成功', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i('📋 [AppRunData] refer_code: "${userInfo.referCode}"', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i('💰 [AppRunData] balance: ${userInfo.balance}', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i('💵 [AppRunData] commission: ${userInfo.commission}', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i('📧 [AppRunData] email: ${userInfo.email}', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i('🆔 [AppRunData] id: ${userInfo.id}', tag: 'AppRunData');
|
||||
|
||||
// 保存到全局状态
|
||||
kr_referCode.value = userInfo.referCode;
|
||||
kr_balance.value = userInfo.balance;
|
||||
kr_commission.value = userInfo.commission;
|
||||
|
||||
KRLogUtil.kr_i('💾 [AppRunData] 用户信息已保存到全局状态:', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i(' - kr_referCode: "${kr_referCode.value}"', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i(' - kr_balance: ${kr_balance.value}', tag: 'AppRunData');
|
||||
KRLogUtil.kr_i(' - kr_commission: ${kr_commission.value}', tag: 'AppRunData');
|
||||
},
|
||||
);
|
||||
} catch (e, stackTrace) {
|
||||
KRLogUtil.kr_e('💥 [AppRunData] 获取用户信息异常: $e', tag: 'AppRunData');
|
||||
KRLogUtil.kr_e('📚 [AppRunData] 错误堆栈: $stackTrace', tag: 'AppRunData');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user