From df5290b41f089e285bad01439e43d214a5807772 Mon Sep 17 00:00:00 2001 From: tanlongsheng <252620078@qq.com> Date: Sat, 12 Jul 2025 16:36:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BC=9A=E8=AE=AE=E6=80=BB?= =?UTF-8?q?=E7=BB=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../meeting/meeting_task_service.dart | 10 +++--- .../meeting_details_controller.dart | 31 ++++++++++++++----- .../bottomSheet/generate_bottom_sheet.dart | 7 ++--- 3 files changed, 31 insertions(+), 17 deletions(-) diff --git a/lib/data/services/meeting/meeting_task_service.dart b/lib/data/services/meeting/meeting_task_service.dart index 225ad28cd..e4603a4ad 100644 --- a/lib/data/services/meeting/meeting_task_service.dart +++ b/lib/data/services/meeting/meeting_task_service.dart @@ -33,7 +33,6 @@ class MeetingTaskService extends GetxService { int meetingId = 0; RxInt tasktype = 1.obs; List textList = []; - String allText = ''; String summary = ''; String overview = ''; @@ -268,11 +267,10 @@ class MeetingTaskService extends GetxService { _storage.write("meeting_task_list", _taskList); _storage.write("meeting_task_finish_list", taskFinishList); } - allText = text; - _aiServiceMessage(id); + aiServiceMessage(id, text); } - void _aiServiceMessage(int id) { + void aiServiceMessage(int id, String text) { int awaitQuantity = 0; String summaryText = ''; String overviewText = ''; @@ -283,7 +281,7 @@ class MeetingTaskService extends GetxService { 'content': '您将扮演一名会议总结专家,拥有超强的信息归纳与细分能力。不仅能高效处理各类通用场景会议,精准提炼会议核心内容,为后续思维导图生成奠定坚实基础。若涉及人员,人员名称保留[]。并根据内容只输出对应语言。', }, - {'role': 'user', 'content': allText}, + {'role': 'user', 'content': text}, ], ).then((value) { awaitQuantity++; @@ -298,7 +296,7 @@ class MeetingTaskService extends GetxService { 'role': 'system', 'content': '您将扮演一名会议事件归纳专家,能准确抓住会议中事件的关键点,并每个事件只需一句话精简总结。', }, - {'role': 'user', 'content': allText}, + {'role': 'user', 'content': text}, ], ).then((value) { awaitQuantity++; diff --git a/lib/modules/meeting/controllers/meeting_details_controller.dart b/lib/modules/meeting/controllers/meeting_details_controller.dart index 3f2140f99..ae56f94f9 100644 --- a/lib/modules/meeting/controllers/meeting_details_controller.dart +++ b/lib/modules/meeting/controllers/meeting_details_controller.dart @@ -49,12 +49,13 @@ class MeetingDetailsController extends GetxController Rx meetingData = MeetingModel().obs; Rx meetingDetails = MeetingDetailsModel().obs; RxList textList = [].obs; - String allText = ''; RxBool isSpeakerText = false.obs; List editSpeakerTextList = []; RxInt editSpeakerTextId = 0.obs; String editSpeakerTextChange = ''; + int _everType = 99; + String markmapLibJs = ''; String d3Js = ''; String markmapViewJs = ''; @@ -83,13 +84,14 @@ class MeetingDetailsController extends GetxController _loadJS(); ever(_meetingTaskService.tasktype, (value) { meetingDetails.value.tasktype = value; - if (value == 2) { - textList.value = _meetingTaskService.textList; - } else if (value == 3) { - meetingDetails.value.summary = _meetingTaskService.summary; - meetingDetails.value.overview = _meetingTaskService.overview; + if (_everType <= value) { + if (value == 2) { + textList.value = _meetingTaskService.textList; + } else if (value == 3) { + meetingDetails.value.summary = _meetingTaskService.summary; + meetingDetails.value.overview = _meetingTaskService.overview; + } } - meetingDetails.refresh(); }); } @@ -239,6 +241,7 @@ class MeetingDetailsController extends GetxController void summaryCreate() async { EasyLoading.show(); + _everType = 2; String audiourl = meetingData.value.audiourl; String taskId = meetingDetails.value.taskid; await _meetingTaskService.addTask(id, audiourl, taskId); @@ -246,4 +249,18 @@ class MeetingDetailsController extends GetxController meetingDetails.refresh(); EasyLoading.dismiss(); } + + void refreshSummary() async { + String text = ''; + for (var element in textList) { + if (element['speaker'].isNotEmpty) { + text += '[${element['speaker']}]: '; + } + text += '${element['content']}\n'; + } + _everType = 3; + await SqfliteApi.editMeeting(id, {'tasktype': 2}); + _meetingTaskService.tasktype.value = 2; + _meetingTaskService.aiServiceMessage(id, text); + } } diff --git a/lib/modules/meeting/views/bottomSheet/generate_bottom_sheet.dart b/lib/modules/meeting/views/bottomSheet/generate_bottom_sheet.dart index 436cfe930..e458af848 100644 --- a/lib/modules/meeting/views/bottomSheet/generate_bottom_sheet.dart +++ b/lib/modules/meeting/views/bottomSheet/generate_bottom_sheet.dart @@ -283,11 +283,10 @@ class _GenerateBottomSheetState extends State { _storage.write("meeting_template_list", _templateList); Get.back(); if (widget.isSummarizeAgain) { - _controller.meetingDetails.value.tasktype = 2; - _controller.meetingDetails.value.summary = ''; - _controller.meetingDetails.refresh(); + _controller.refreshSummary(); + } else { + _controller.summaryCreate(); } - _controller.summaryCreate(); }, child: Container( height: 48.w,