Browse Source

获取基本信息

ios
Jolie 4 months ago
parent
commit
a0fed6b8bc
7 changed files with 37 additions and 13 deletions
  1. 2
      lib/config/env_config.dart
  2. 2
      lib/main.dart
  3. 2
      lib/network/api_urls.dart
  4. 2
      lib/network/network_config.dart
  5. 7
      lib/network/user_api.dart
  6. 14
      lib/network/user_api.g.dart
  7. 21
      lib/pages/mine/login_controller.dart

2
lib/config/env_config.dart

@ -14,7 +14,7 @@ class EnvConfig {
//
static const Map<String, String> _releaseConfig = {
'mainBaseUrl': 'https://dating-agency-api-test.qniao.cn/',
'mainBaseUrl': 'https://dating-agency-api.quzhaoqin.com/',
'fileBaseUrl': 'https://dating-agency-api-test.qniao.cn/',
};

2
lib/main.dart

@ -72,6 +72,6 @@ class MyApp extends StatelessWidget {
final token = storage.read<String>('token');
// token为空
return token == null || token.isEmpty ? LoginPage() : MainPage();
return LoginPage();
}
}

2
lib/network/api_urls.dart

@ -6,7 +6,7 @@ class ApiUrls {
static const String getVerificationCode = 'dating-agency-uec/authorize/get/auth-captcha';
//
static const String getUserInfo = 'dating-agency-uec/user/get/base-info';
static const String getBaseUserInfo = 'dating-agency-uec/user/get/base-info';
// API端点
}

2
lib/network/network_config.dart

@ -67,7 +67,7 @@ class AuthInterceptor extends Interceptor {
// token等认证信息
final token = _getToken();
if (token != null && token.isNotEmpty) {
options.headers['Authorization'] = 'Bearer $token';
options.headers['Authorization'] = token;
}
//

7
lib/network/user_api.dart

@ -1,4 +1,5 @@
import 'package:dating_touchme_app/model/mine/login_data.dart';
import 'package:dating_touchme_app/model/mine/user_base_data.dart';
import 'package:dating_touchme_app/network/response_model.dart';
import 'package:dating_touchme_app/network/api_urls.dart';
import 'package:retrofit/retrofit.dart';
@ -15,8 +16,10 @@ abstract class UserApi {
@Body() Map<String, dynamic> data,
);
@GET(ApiUrls.getUserInfo)
Future<HttpResponse<BaseResponse<dynamic>>> getUserInfo();
@GET(ApiUrls.getBaseUserInfo)
Future<HttpResponse<BaseResponse<UserBaseData>>> getBaseUserInfo(
@Query('userId') String userId,
);
@POST(ApiUrls.getVerificationCode)
Future<HttpResponse<BaseResponse<dynamic>>> getVerificationCode(

14
lib/network/user_api.g.dart

@ -54,12 +54,14 @@ class _UserApi implements UserApi {
}
@override
Future<HttpResponse<BaseResponse<dynamic>>> getUserInfo() async {
Future<HttpResponse<BaseResponse<UserBaseData>>> getBaseUserInfo(
String userId,
) async {
final _extra = <String, dynamic>{};
final queryParameters = <String, dynamic>{};
final queryParameters = <String, dynamic>{r'userId': userId};
final _headers = <String, dynamic>{};
const Map<String, dynamic>? _data = null;
final _options = _setStreamType<HttpResponse<BaseResponse<dynamic>>>(
final _options = _setStreamType<HttpResponse<BaseResponse<UserBaseData>>>(
Options(method: 'GET', headers: _headers, extra: _extra)
.compose(
_dio.options,
@ -70,11 +72,11 @@ class _UserApi implements UserApi {
.copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)),
);
final _result = await _dio.fetch<Map<String, dynamic>>(_options);
late BaseResponse<dynamic> _value;
late BaseResponse<UserBaseData> _value;
try {
_value = BaseResponse<dynamic>.fromJson(
_value = BaseResponse<UserBaseData>.fromJson(
_result.data!,
(json) => json as dynamic,
(json) => UserBaseData.fromJson(json as Map<String, dynamic>),
);
} on Object catch (e, s) {
errorLogger?.logError(e, s, _options);

21
lib/pages/mine/login_controller.dart

@ -111,10 +111,13 @@ class LoginController extends GetxController {
// token和用户信息
if (response.data.data != null) {
final loginData = response.data.data!;
// await storage.write('token', loginData.token);
await storage.write('token', loginData.token);
// await storage.write('userId', loginData.userId);
// //
// await storage.write('userInfo', loginData.toJson());
//
await _getBaseUserInfo(loginData.userId);
}
} else {
SmartDialog.showToast(response.data.message);
@ -125,4 +128,20 @@ class LoginController extends GetxController {
isLoggingIn.value = false;
}
}
//
Future<void> _getBaseUserInfo(String userId) async {
try {
final response = await _userApi.getBaseUserInfo(userId);
if (response.data.isSuccess && response.data.data != null) {
// UI状态
} else {
SmartDialog.showToast(response.data.message);
}
} catch (e) {
//
// SmartDialog.showToast('获取用户信息失败');
}
}
}
Loading…
Cancel
Save