|
@@ -5,6 +5,7 @@ import 'package:dsbridge_flutter/dsbridge_flutter.dart';
|
|
|
import 'package:electronic_assistant/base/base_controller.dart';
|
|
import 'package:electronic_assistant/base/base_controller.dart';
|
|
|
import 'package:electronic_assistant/data/consts/event_report_id.dart';
|
|
import 'package:electronic_assistant/data/consts/event_report_id.dart';
|
|
|
import 'package:electronic_assistant/data/repositories/account_repository.dart';
|
|
import 'package:electronic_assistant/data/repositories/account_repository.dart';
|
|
|
|
|
+import 'package:electronic_assistant/data/repositories/config_repository.dart';
|
|
|
import 'package:electronic_assistant/data/repositories/task_repository.dart';
|
|
import 'package:electronic_assistant/data/repositories/task_repository.dart';
|
|
|
import 'package:electronic_assistant/handler/event_handler.dart';
|
|
import 'package:electronic_assistant/handler/event_handler.dart';
|
|
|
import 'package:electronic_assistant/module/chat/view.dart';
|
|
import 'package:electronic_assistant/module/chat/view.dart';
|
|
@@ -38,6 +39,7 @@ import 'package:wakelock_plus/wakelock_plus.dart';
|
|
|
import '../../data/api/request/agenda_update_bean.dart';
|
|
import '../../data/api/request/agenda_update_bean.dart';
|
|
|
import '../../data/bean/agenda.dart';
|
|
import '../../data/bean/agenda.dart';
|
|
|
import '../../data/bean/agenda_list_all_bean.dart';
|
|
import '../../data/bean/agenda_list_all_bean.dart';
|
|
|
|
|
+import '../../data/bean/talk_tabs.dart';
|
|
|
import '../../data/bean/talks.dart';
|
|
import '../../data/bean/talks.dart';
|
|
|
import '../../data/bean/template_bean.dart';
|
|
import '../../data/bean/template_bean.dart';
|
|
|
import '../../data/repositories/agenda_repository.dart';
|
|
import '../../data/repositories/agenda_repository.dart';
|
|
@@ -92,8 +94,6 @@ class TalkController extends BaseController {
|
|
|
|
|
|
|
|
final isSearchModel = false.obs;
|
|
final isSearchModel = false.obs;
|
|
|
|
|
|
|
|
- final defaultIndex = 0;
|
|
|
|
|
-
|
|
|
|
|
final Rxn<TalkBarBean> checkTabBean = Rxn();
|
|
final Rxn<TalkBarBean> checkTabBean = Rxn();
|
|
|
|
|
|
|
|
final List<TalkBarBean> tabBeans = [];
|
|
final List<TalkBarBean> tabBeans = [];
|
|
@@ -168,6 +168,8 @@ class TalkController extends BaseController {
|
|
|
|
|
|
|
|
Rxn<Pair<TalkBarType?, SearchOperationType>> searchOperationCallback = Rxn();
|
|
Rxn<Pair<TalkBarType?, SearchOperationType>> searchOperationCallback = Rxn();
|
|
|
|
|
|
|
|
|
|
+ int defaultIndex = 0;
|
|
|
|
|
+
|
|
|
@override
|
|
@override
|
|
|
void onInit() {
|
|
void onInit() {
|
|
|
super.onInit();
|
|
super.onInit();
|
|
@@ -204,43 +206,16 @@ class TalkController extends BaseController {
|
|
|
void _setMindMap(bool isShow, {String? version}) {
|
|
void _setMindMap(bool isShow, {String? version}) {
|
|
|
isShowMindMap.value = isShow;
|
|
isShowMindMap.value = isShow;
|
|
|
String? talkId = talkBean.value != null ? talkBean.value!.id : paramId;
|
|
String? talkId = talkBean.value != null ? talkBean.value!.id : paramId;
|
|
|
|
|
+ _fitTabsBean(isShow, talkId);
|
|
|
if (isShow) {
|
|
if (isShow) {
|
|
|
- pages.assignAll([
|
|
|
|
|
- SummaryView(talkId),
|
|
|
|
|
- MindMapView(talkId),
|
|
|
|
|
- TodoView(talkId),
|
|
|
|
|
- OriginalView(talkId),
|
|
|
|
|
- ]);
|
|
|
|
|
- tabBeans.assignAll([
|
|
|
|
|
- TalkBarBean(TalkBarType.summary, StringName.talkTabSummary.tr,
|
|
|
|
|
- isShowEdit: true),
|
|
|
|
|
- TalkBarBean(TalkBarType.mindMap, StringName.talkMindMap.tr,
|
|
|
|
|
- isDisallowScroll: true),
|
|
|
|
|
- TalkBarBean(TalkBarType.myTask, StringName.talkTabMyTask.tr,
|
|
|
|
|
- isShowEdit: true),
|
|
|
|
|
- TalkBarBean(TalkBarType.original, StringName.talkTabOriginal.tr,
|
|
|
|
|
- isShowSearch: true)
|
|
|
|
|
- ]);
|
|
|
|
|
EventHandler.report(EventId.event_101401, params: {EventId.id: version});
|
|
EventHandler.report(EventId.event_101401, params: {EventId.id: version});
|
|
|
} else {
|
|
} else {
|
|
|
- pages.assignAll([
|
|
|
|
|
- SummaryView(talkId),
|
|
|
|
|
- TodoView(talkId),
|
|
|
|
|
- OriginalView(talkId),
|
|
|
|
|
- ]);
|
|
|
|
|
- tabBeans.assignAll([
|
|
|
|
|
- TalkBarBean(TalkBarType.summary, StringName.talkTabSummary.tr,
|
|
|
|
|
- isShowEdit: true),
|
|
|
|
|
- TalkBarBean(TalkBarType.myTask, StringName.talkTabMyTask.tr,
|
|
|
|
|
- isShowEdit: true),
|
|
|
|
|
- TalkBarBean(TalkBarType.original, StringName.talkTabOriginal.tr,
|
|
|
|
|
- isShowSearch: true)
|
|
|
|
|
- ]);
|
|
|
|
|
EventHandler.report(EventId.event_101402, params: {EventId.id: version});
|
|
EventHandler.report(EventId.event_101402, params: {EventId.id: version});
|
|
|
}
|
|
}
|
|
|
- checkTabBean.value = tabBeans[defaultIndex];
|
|
|
|
|
|
|
+ if (tabBeans.isNotEmpty) {
|
|
|
|
|
+ checkTabBean.value = tabBeans[defaultIndex];
|
|
|
|
|
+ }
|
|
|
isInitializedView.value = true;
|
|
isInitializedView.value = true;
|
|
|
-
|
|
|
|
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
|
WidgetsBinding.instance.addPostFrameCallback((_) {
|
|
|
bottomViewHeight.value = bottomGlobalKey.currentContext?.size?.height;
|
|
bottomViewHeight.value = bottomGlobalKey.currentContext?.size?.height;
|
|
|
headViewHeight.value = headGlobalKey.currentContext?.size?.height;
|
|
headViewHeight.value = headGlobalKey.currentContext?.size?.height;
|
|
@@ -255,6 +230,42 @@ class TalkController extends BaseController {
|
|
|
eventReport(EventId.event_101001, params: {EventId.id: eventTag});
|
|
eventReport(EventId.event_101001, params: {EventId.id: eventTag});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ void _fitTabsBean(bool isIncludeMind, String? talkId) {
|
|
|
|
|
+ final List<Widget> pageList = [];
|
|
|
|
|
+ final List<TalkBarBean> barList = [];
|
|
|
|
|
+ final List<TalkTabs> tabs = configRepository.getTalkTabs();
|
|
|
|
|
+ for (int i = 0; i < tabs.length; i++) {
|
|
|
|
|
+ TalkTabs tab = tabs[i];
|
|
|
|
|
+ if (isIncludeMind == false && tab.type == TalkBarType.mindMap) {
|
|
|
|
|
+ continue;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (tab.select == true) {
|
|
|
|
|
+ defaultIndex = i;
|
|
|
|
|
+ }
|
|
|
|
|
+ switch (tab.type) {
|
|
|
|
|
+ case TalkBarType.summary:
|
|
|
|
|
+ pageList.add(SummaryView(talkId));
|
|
|
|
|
+ barList.add(TalkBarBean(tab.type, tab.name, isShowEdit: true));
|
|
|
|
|
+ break;
|
|
|
|
|
+ case TalkBarType.mindMap:
|
|
|
|
|
+ pageList.add(MindMapView(talkId));
|
|
|
|
|
+ barList.add(TalkBarBean(tab.type, tab.name, isDisallowScroll: true));
|
|
|
|
|
+ break;
|
|
|
|
|
+ case TalkBarType.myTask:
|
|
|
|
|
+ pageList.add(TodoView(talkId));
|
|
|
|
|
+ barList.add(TalkBarBean(tab.type, tab.name, isShowEdit: true));
|
|
|
|
|
+ break;
|
|
|
|
|
+ case TalkBarType.original:
|
|
|
|
|
+ pageList.add(OriginalView(talkId));
|
|
|
|
|
+ barList.add(TalkBarBean(tab.type, tab.name, isShowSearch: true));
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ pages.assignAll(pageList);
|
|
|
|
|
+ tabBeans.assignAll(barList);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
double? getChangeHeadHeight() {
|
|
double? getChangeHeadHeight() {
|
|
|
if (_isEditModel.value == true || isSearchModel.value == true) {
|
|
if (_isEditModel.value == true || isSearchModel.value == true) {
|
|
|
return (headViewHeight.value ?? 0) - (tabBarHeight.value ?? 0);
|
|
return (headViewHeight.value ?? 0) - (tabBarHeight.value ?? 0);
|