93 lines
3.0 KiB
Dart
93 lines
3.0 KiB
Dart
import 'package:get/get.dart';
|
|
import 'package:starwork_flutter/api/api_path.dart';
|
|
import 'package:starwork_flutter/api/api_response.dart';
|
|
import 'package:starwork_flutter/api/base_api_service.dart';
|
|
import 'package:starwork_flutter/api/model/team/request/bind_team_star_cloud_account_request.dart';
|
|
import 'package:starwork_flutter/api/model/team/request/change_current_team_request.dart';
|
|
import 'package:starwork_flutter/api/model/team/request/create_team_request.dart';
|
|
import 'package:starwork_flutter/api/model/team/request/update_team_info_request.dart';
|
|
import 'package:starwork_flutter/api/model/team/response/all_team_list_response.dart';
|
|
import 'package:starwork_flutter/api/model/team/response/create_team_response.dart';
|
|
import 'package:starwork_flutter/api/model/team/response/scene_info_response.dart';
|
|
import 'package:starwork_flutter/api/model/user/request/validation_code_login.dart';
|
|
import 'package:starwork_flutter/api/model/user/response/token_response.dart';
|
|
import 'package:starwork_flutter/common/constant/http_constant.dart';
|
|
|
|
class TeamApiService {
|
|
final BaseApiService _api;
|
|
|
|
TeamApiService(this._api); // 通过构造函数注入
|
|
|
|
// 创建团队
|
|
Future<ApiResponse<CreateTeamResponse>> requestCreateTeam({
|
|
required CreateTeamRequest request,
|
|
}) {
|
|
return _api.makeRequest(
|
|
// 通过实例调用
|
|
path: ApiPath.createTeam,
|
|
method: HttpConstant.post,
|
|
data: request.toJson(),
|
|
fromJson: (data) => CreateTeamResponse.fromJson(data),
|
|
);
|
|
}
|
|
|
|
// 所有团队列表
|
|
Future<ApiResponse<AllTeamListResponse>> requestAllTeamInfoList() {
|
|
return _api.makeRequest(
|
|
// 通过实例调用
|
|
path: ApiPath.allTeamList,
|
|
method: HttpConstant.post,
|
|
fromJson: (data) => AllTeamListResponse.fromJson(data),
|
|
);
|
|
}
|
|
|
|
// 所有团队使用场景列表
|
|
Future<ApiResponse<SceneInfoResponseList>> requestAllSceneInfoList() {
|
|
return _api.makeRequest(
|
|
// 通过实例调用
|
|
path: ApiPath.sceneList,
|
|
method: HttpConstant.post,
|
|
fromJson: (data) => SceneInfoResponseList.fromJson(data),
|
|
);
|
|
}
|
|
|
|
// 切换当前团队
|
|
Future<ApiResponse<void>> requestChangeCurrentTeam({
|
|
required ChangeCurrentTeamRequest request,
|
|
}) {
|
|
return _api.makeRequest(
|
|
// 通过实例调用
|
|
path: ApiPath.changeTeam,
|
|
method: HttpConstant.post,
|
|
data: request.toJson(),
|
|
fromJson: (data) {},
|
|
);
|
|
}
|
|
|
|
// 团队绑定星云账号
|
|
Future<ApiResponse<void>> requestBindTeamStarCloudAccount({
|
|
required BindTeamStarCloudAccountRequest request,
|
|
}) {
|
|
return _api.makeRequest(
|
|
// 通过实例调用
|
|
path: ApiPath.bindTeamStarCloudAccount,
|
|
method: HttpConstant.post,
|
|
data: request.toJson(),
|
|
fromJson: (data){},
|
|
);
|
|
}
|
|
|
|
// 修改团队信息
|
|
Future<ApiResponse<void>> requestUpdateTeamInfo({
|
|
required UpdateTeamInfoRequest request,
|
|
}) {
|
|
return _api.makeRequest(
|
|
// 通过实例调用
|
|
path: ApiPath.updateTeamInfo,
|
|
method: HttpConstant.post,
|
|
data: request.toJson(),
|
|
fromJson: (data) {},
|
|
);
|
|
}
|
|
}
|