import 'dart:convert'; import 'package:get/get.dart'; import 'package:starwork_flutter/api/model/team/request/role_list_request.dart'; import 'package:starwork_flutter/api/model/team/response/role_list_response.dart'; import 'package:starwork_flutter/api/model/user/response/user_info_response.dart'; import 'package:starwork_flutter/api/service/team_api_service.dart'; import 'package:starwork_flutter/base/app_logger.dart'; import 'package:starwork_flutter/base/base_controller.dart'; import 'package:starwork_flutter/common/constant/cache_keys.dart'; import 'package:starwork_flutter/common/utils/shared_preferences_utils.dart'; class RoleManageController extends BaseController { final teamApi = Get.find(); var roleList = [].obs; var cacheUserInfo = UserInfoResponse().obs; // 缓存的登录用户信息 @override void onReady() async { super.onReady(); requestRoleList(); String? cachedJson = await SharedPreferencesUtils.getString(CacheKeys.userAccountInfo); if (cachedJson != null) { try { Map jsonMap = jsonDecode(cachedJson); UserInfoResponse userInfoResponse = UserInfoResponse.fromJson(jsonMap); cacheUserInfo.value = userInfoResponse; cacheUserInfo.refresh(); } catch (e) { AppLogger.error('JSON 解析错误: $e'); } } } void requestRoleList() async { var response = await teamApi.requestTeamRoleList(); if (response.isSuccess) { roleList.value = response.data ?? []; roleList.refresh(); } } }