Browse Source

feat(会议): 添加会议服务类型存储和逻辑处理

添加对会议服务类型的本地存储功能,并根据存储类型调整任务处理逻辑
newdev_shunjiawei
lxm 11 months ago
parent
commit
3f72508288
  1. 1
      lib/data/services/meeting/meeting_upload_service.dart
  2. 16
      lib/modules/meeting/controllers/meeting_details_controller.dart

1
lib/data/services/meeting/meeting_upload_service.dart

@ -50,6 +50,7 @@ class MeetingUploadService extends GetxService {
final int seconds = (details['seconds'] ?? 0) as int;
flash = seconds > 0 && seconds <= 7200;
} catch (_) {}
_storage.write("meeting_service_type_$id", flash ? 'fast' : 'standard');
uploadList.add({
'id': id,
'filepath': filePath,

16
lib/modules/meeting/controllers/meeting_details_controller.dart

@ -9,6 +9,7 @@ import 'package:flutter/services.dart' show rootBundle;
import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:get_storage/get_storage.dart';
import 'package:path_provider/path_provider.dart';
import '../../../core/utils/synchrodata.dart';
@ -93,10 +94,16 @@ class MeetingDetailsController extends GetxController
..duration = const Duration(seconds: 2);
final Map<String, dynamic> args = Get.arguments ?? {};
id = args['id'];
final storage = GetStorage();
final String svc =
(storage.read("meeting_service_type_$id") ?? '').toString();
final bool isFast = svc == 'fast';
_meetingTaskService.meetingId = id;
_meetingTaskService2.meetingId = id;
_getDataDetails();
_loadJS();
_tasktypeListener = ever(_meetingTaskService.tasktype, (value) {
if (isFast) return;
meetingDetails.value.tasktype = value;
if (_everType <= value) {
if (value == 2) {
@ -110,13 +117,14 @@ class MeetingDetailsController extends GetxController
meetingDetails.refresh();
});
_tasktypeListenerV2 = ever(_meetingTaskService2.tasktype, (value) {
if (!isFast) return;
meetingDetails.value.tasktype = value;
if (_everType <= value) {
if (value == 2) {
textList.value = _meetingTaskService2.textList;
} else if (value == 3) {
meetingDetails.value.summary = _meetingTaskService2.summary;
meetingDetails.value.overview = _meetingTaskService2.overview;
meetingDetails.value.summary = _summaryTaskService.summary;
meetingDetails.value.overview = _summaryTaskService.overview;
summaryNumberModifications.value++;
}
}
@ -141,6 +149,7 @@ class MeetingDetailsController extends GetxController
_meetingTaskService.removeTask(id);
_meetingTaskService2.removeTask(id);
_meetingTaskService.meetingId = 0;
_meetingTaskService2.meetingId = 0;
}
void _getDataDetails() async {
@ -277,6 +286,9 @@ class MeetingDetailsController extends GetxController
_everType = 2;
final String audiourl = meetingData.value.audiourl;
final int seconds = meetingData.value.seconds;
final storage = GetStorage();
storage.write("meeting_service_type_$id",
(seconds > 0 && seconds <= 7200) ? 'fast' : 'standard');
if (seconds > 0 && seconds <= 7200) {
await _meetingTaskService2.addTask(
id,

Loading…
Cancel
Save