1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- import 'package:get/get.dart';
- import 'package:plugin_platform/dio_export.dart';
- import 'package:plugin_platform/http/http_provider.dart';
- import 'package:plugin_platform/http/http_result.dart';
- import '../constants/api_constants.dart';
- import '../entity/response/user_login_entity.dart';
- import '../entity/response/user_profile.dart';
- /// 用户相关
- class AuthRepository extends GetxService {
- HttpProvider httpProvider;
- AuthRepository({required this.httpProvider});
- /// 用户登录
- Future<HttpResult<UserLoginEntity>> userLogin(
- String? code,
- String? password, {
- String? registerId,
- CancelToken? cancelToken,
- }) async {
- //Post请求
- Map<String, String> params = {};
- params['code'] = code ?? "";
- params['password'] = password ?? "";
- if (registerId != null && registerId.isNotEmpty) {
- params['register_id'] = registerId;
- }
- final result = await httpProvider.requestNetResult(
- method: HttpMethod.POST,
- ApiConstants.apiUserLogin,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- final json = result.getDataJson();
- var data = UserLoginEntity.fromJson(json!);
- //重新赋值data
- return result.convert<UserLoginEntity>(data: data);
- }
- return result.convert<UserLoginEntity>();
- }
- /// 退出登录
- Future<HttpResult> userLogout(
- String? token, {
- CancelToken? cancelToken,
- }) async {
- Map<String, String> params = {};
- params['token'] = token ?? "";
- //POST请求
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiUserLogout,
- method: HttpMethod.POST,
- params: params,
- networkDebounce: true,
- isShowLoadingDialog: true,
- cancelToken: cancelToken,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- return result.convert();
- }
- return result.convert();
- }
- /// 获取用户详情数据
- Future<HttpResult<UserProfile>> fetchUserProfile() async {
- //POST请求
- final result = await httpProvider.requestNetResult(
- ApiConstants.apiUserProfile,
- );
- //根据返回的结果,封装原始数据为Bean/Entity对象
- if (result.isSuccess) {
- //重新赋值data或list
- final json = result.getDataJson();
- var data = UserProfile.fromJson(json!);
- //重新赋值data或list
- return result.convert<UserProfile>(data: data);
- }
- return result.convert();
- }
- }
|