import 'package:electronic_assistant/data/api/atmob_api.dart'; import 'package:electronic_assistant/data/api/request/talk_create_request.dart'; import 'package:electronic_assistant/data/api/request/talk_delete_request.dart'; import '../../utils/http_handler.dart'; import '../api/request/talk_generate_request.dart'; import '../api/request/talk_rename_request.dart'; import '../api/request/talk_request.dart'; import '../api/response/talk_check_electric_response.dart'; import '../api/response/talk_info_response.dart'; import '../bean/talk_original.dart'; import '../bean/talks.dart'; class TalkRepository { TalkRepository._(); Future> talkOriginal(String? talkId) { return atmobApi .talkOriginal(TalkRequest(talkId)) .then(HttpHandler.handle(false)) .then((data) { if (data.list != null) { return data.list!; } else { return []; } }); } // duration 音频时长,单位为秒 Future checkElectric(double duration) { return atmobApi .checkElectric(TalkGenerateRequest(duration)) .then(HttpHandler.handle(false)); } Future talkInfo(String id) { return atmobApi.talkInfo(TalkRequest(id)).then(HttpHandler.handle(true)); } Future talkRename(String? id, String? title) { return atmobApi .talkRename(TalkRenameRequest(id, title)) .then(HttpHandler.handle(true)); } Future talkDelete(String? id) { return atmobApi .talkDelete(TalkDeleteRequest(id)) .then(HttpHandler.handle(true)); } Future talkCreate(String requestId, int duration) { return atmobApi .talkCreate(TalkCreateRequest(duration, requestId)) .then(HttpHandler.handle(true)); } } final talkRepository = TalkRepository._();