From 787c215c0f1b429b0ff9d4a2247f8647f6ca89c0 Mon Sep 17 00:00:00 2001 From: tanlongsheng <252620078@qq.com> Date: Sat, 10 Jan 2026 19:25:13 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E4=BC=9A=E8=AE=AE=E5=8A=A9?= =?UTF-8?q?=E6=89=8B=EF=BC=8C=E4=BD=BF=E7=94=A8=E6=9C=8D=E5=8A=A1=E7=AB=AF?= =?UTF-8?q?=E8=BD=AC=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/data/services/network/api.dart | 16 ++++++++++++++++ .../controllers/meeting_details_controller.dart | 4 ++++ .../controllers/meeting_home_controller.dart | 1 + .../bottomSheet/speaker_all_bottom_sheet.dart | 8 ++++++++ .../views/bottomSheet/speaker_bottom_sheet.dart | 12 ++++++++++++ lib/modules/meeting/views/tabs/summary_tab.dart | 11 +++++++++++ 6 files changed, 52 insertions(+) diff --git a/lib/data/services/network/api.dart b/lib/data/services/network/api.dart index 07a26ad71..9920fdf89 100644 --- a/lib/data/services/network/api.dart +++ b/lib/data/services/network/api.dart @@ -348,4 +348,20 @@ class Api { params: params, ); } + + static modifyRecordEchomeet([params]) { + Map data = { + 'title': 'NULL', + 'address': 'NULL', + 'personnel': 'NULL', + 'translate': 'NULL', + 'summary': 'NULL', + }; + data.addAll(params); + return DioManager().request( + NWMethod.post, + '/api/home/echomeet_modifyrecords', + params: data, + ); + } } diff --git a/lib/modules/meeting/controllers/meeting_details_controller.dart b/lib/modules/meeting/controllers/meeting_details_controller.dart index 5557e3038..aa2e1f4a3 100644 --- a/lib/modules/meeting/controllers/meeting_details_controller.dart +++ b/lib/modules/meeting/controllers/meeting_details_controller.dart @@ -238,6 +238,10 @@ class MeetingDetailsController extends GetxController textList[index] = dataMap; } } + await Api.modifyRecordEchomeet({ + 'id': id, + 'translate': jsonEncode(textList), + }); isSpeakerText.value = false; editSpeakerTextId.value = 0; editSpeakerTextList = []; diff --git a/lib/modules/meeting/controllers/meeting_home_controller.dart b/lib/modules/meeting/controllers/meeting_home_controller.dart index d1abd4066..1e0cf5b4d 100644 --- a/lib/modules/meeting/controllers/meeting_home_controller.dart +++ b/lib/modules/meeting/controllers/meeting_home_controller.dart @@ -585,6 +585,7 @@ class MeetingHomeController extends GetxController { void editMeetingTitle(int id) async { if (titleController.text.isNotEmpty) { String title = titleController.text + titleCSuffix; + Api.modifyRecordEchomeet({'id': id, 'title': title}); SqfliteApi.editMeetingTitle(id, {'title': title}); int originalIndex = originalDataList.indexWhere((item) => item['id'] == id); diff --git a/lib/modules/meeting/views/bottomSheet/speaker_all_bottom_sheet.dart b/lib/modules/meeting/views/bottomSheet/speaker_all_bottom_sheet.dart index 2accd0bf3..057b42ae2 100644 --- a/lib/modules/meeting/views/bottomSheet/speaker_all_bottom_sheet.dart +++ b/lib/modules/meeting/views/bottomSheet/speaker_all_bottom_sheet.dart @@ -9,6 +9,7 @@ import 'package:get_storage/get_storage.dart'; import 'package:lottie/lottie.dart'; import '../../../../data/services/db/sqflite_api.dart'; +import '../../../../data/services/network/api.dart'; import '../../controllers/meeting_details_controller.dart'; class SpeakerAllBottomSheet extends StatefulWidget { @@ -559,6 +560,11 @@ class _SpeakerAllBottomSheetState extends State { bool isEditSummary = false; String summaryText = _controller.meetingDetails.value.summary; _controller.textList.value = newTextList; + Map modifyData = { + 'id': _controller.meetingData.value.id, + 'translate': jsonEncode(_controller.textList), + 'personnel': personnel, + }; for (var element in personnelList) { if (summaryText.contains('[${element['original']}]')) { summaryText = summaryText.replaceAll( @@ -571,11 +577,13 @@ class _SpeakerAllBottomSheetState extends State { 'summary': summaryText, 'personnel': personnel, }); + modifyData.addAll({'summary': summaryText}); _controller.meetingDetails.value.summary = summaryText; _controller.summaryNumberModifications.value++; } else { SqfliteApi.editMeeting(_controller.id, {'personnel': personnel}); } + await Api.modifyRecordEchomeet(modifyData); _controller.meetingDetails.value.personnel = personnel; _controller.personnelNumberModifications.value++; _controller.meetingDetails.refresh(); diff --git a/lib/modules/meeting/views/bottomSheet/speaker_bottom_sheet.dart b/lib/modules/meeting/views/bottomSheet/speaker_bottom_sheet.dart index 429cdb1ff..a9483f856 100644 --- a/lib/modules/meeting/views/bottomSheet/speaker_bottom_sheet.dart +++ b/lib/modules/meeting/views/bottomSheet/speaker_bottom_sheet.dart @@ -7,6 +7,7 @@ import 'package:get/get.dart'; import 'package:get_storage/get_storage.dart'; import '../../../../data/services/db/sqflite_api.dart'; +import '../../../../data/services/network/api.dart'; import '../../controllers/meeting_details_controller.dart'; class SpeakerBottomSheet extends StatefulWidget { @@ -336,6 +337,10 @@ class _SpeakerBottomSheetState extends State { dataMap['speaker'] = _speakerController.text; _controller.textList[index] = dataMap; } + await Api.modifyRecordEchomeet({ + 'id': _controller.meetingData.value.id, + 'translate': jsonEncode(_controller.textList), + }); _addHistorySpeaker(); Get.back(); } @@ -366,6 +371,11 @@ class _SpeakerBottomSheetState extends State { var result = await SqfliteApi.editMeetingSpeaker(editSpeakerList); if (result != null) { _controller.textList.value = newTextList; + Map modifyData = { + 'id': _controller.meetingData.value.id, + 'translate': jsonEncode(_controller.textList), + 'personnel': personnel, + }; if (_controller.meetingDetails.value.summary .contains('[${widget.speakerName}]')) { String summaryText = _controller.meetingDetails.value.summary @@ -375,11 +385,13 @@ class _SpeakerBottomSheetState extends State { 'summary': summaryText, 'personnel': personnel, }); + modifyData.addAll({'summary': summaryText}); _controller.meetingDetails.value.summary = summaryText; _controller.summaryNumberModifications.value++; } else { SqfliteApi.editMeeting(_controller.id, {'personnel': personnel}); } + await Api.modifyRecordEchomeet(modifyData); _controller.meetingDetails.value.personnel = personnel; _addHistorySpeaker(); Get.back(); diff --git a/lib/modules/meeting/views/tabs/summary_tab.dart b/lib/modules/meeting/views/tabs/summary_tab.dart index 5863fe14b..995e18d42 100644 --- a/lib/modules/meeting/views/tabs/summary_tab.dart +++ b/lib/modules/meeting/views/tabs/summary_tab.dart @@ -6,6 +6,7 @@ import 'package:get/get.dart'; import 'package:parchment/codecs.dart'; import '../../../../data/services/db/sqflite_api.dart'; +import '../../../../data/services/network/api.dart'; import '../../controllers/meeting_details_controller.dart'; import '../bottomSheet/ai_bottom_sheet.dart'; import '../bottomSheet/generate_bottom_sheet.dart'; @@ -133,6 +134,10 @@ class _SummaryTabState extends State { final markdown = const ParchmentMarkdownCodec().encode(_fleatherController!.document); if (markdown != _controller.meetingDetails.value.summary) { + Api.modifyRecordEchomeet({ + 'id': _controller.id, + 'summary': markdown, + }); SqfliteApi.editMeeting( _controller.id, {'summary': markdown}, @@ -272,6 +277,12 @@ class _SummaryTabState extends State { isEdit = true; } if (isEdit) { + Api.modifyRecordEchomeet({ + 'id': _controller.id, + 'address': _controller.meetingDetails.value.address, + 'personnel': + _controller.meetingDetails.value.personnel, + }); SqfliteApi.editMeeting( _controller.id, {