zk 1 rok pred
rodič
commit
47fe87135f

+ 7 - 4
lib/data/consts/event_report_id.dart

@@ -1,9 +1,9 @@
 abstract class EventId {
   static const String id = 'id';
-  static const String id_001 = 'id_001';
-  static const String id_002 = 'id_002';
-  static const String id_003 = 'id_003';
-  static const String id_004 = 'id_004';
+  static const String id_001 = '001';
+  static const String id_002 = '002';
+  static const String id_003 = '003';
+  static const String id_004 = '004';
 
   static const String event_100001 =
       '100001'; //点击“示例谈话”(内部操作不归纳进正常的埋点范围)	100001
@@ -11,6 +11,8 @@ abstract class EventId {
   static const String event_100010 =
       '100010'; //录制页	进入录制页	100010	带ID 首页点击录音进入-------001 快捷图标进入-------002
   static const String event_100011 = '100011'; //点击录制完成
+  static const String event_100100 = '100100'; //谈话记录曝光
+  static const String event_100101 = '100101'; //我的待办曝光
   static const String event_100030 = '100030'; //点击导入音频
 
   //谈话详情页
@@ -40,6 +42,7 @@ abstract class EventId {
   //谈话原文
   static const String event_101300 = '101300'; //生成后,谈话原文曝光	101300
   static const String event_101301 = '101301'; //原文获取失败	101301
+  static const String event_101302 = '101302'; //点击查找
 
   //AI对话
 // (102001~103000)

+ 4 - 0
lib/module/home/agenda/controller.dart

@@ -6,9 +6,11 @@ import 'package:get/get_rx/src/rx_types/rx_types.dart';
 import 'package:pull_to_refresh/pull_to_refresh.dart';
 import '../../../data/api/response/example_info_response.dart';
 import '../../../data/bean/agenda.dart';
+import '../../../data/consts/event_report_id.dart';
 import '../../../data/repositories/account_repository.dart';
 import '../../../data/repositories/agenda_repository.dart';
 import '../../../data/repositories/config_repository.dart';
+import '../../../handler/event_handler.dart';
 import '../../../resource/string.gen.dart';
 import '../../../router/app_pages.dart';
 import '../../../utils/event_bus.dart';
@@ -31,6 +33,8 @@ class HomeAgendaController extends BaseController {
       requestHomeAgendaData();
     });
     requestHomeAgendaData();
+
+    EventHandler.report(EventId.event_100101);
   }
 
   @override

+ 2 - 1
lib/module/home/controller.dart

@@ -6,6 +6,7 @@ import 'package:electronic_assistant/handler/event_handler.dart';
 import 'package:electronic_assistant/module/home/talk/view.dart';
 import 'package:electronic_assistant/module/login/view.dart';
 import 'package:electronic_assistant/module/main/controller.dart';
+import 'package:electronic_assistant/module/record/view.dart';
 import 'package:electronic_assistant/resource/string.gen.dart';
 import 'package:electronic_assistant/router/app_pages.dart';
 import 'package:electronic_assistant/utils/file_upload_check_helper.dart';
@@ -95,7 +96,7 @@ class HomePageController extends BaseController {
   }
 
   void onRecordClick() {
-    Get.toNamed(RoutePath.record);
+    RecordPage.start(fromType: RecordFromType.home);
   }
 
   void onLoginClick() {

+ 1 - 0
lib/module/home/talk/controller.dart

@@ -37,6 +37,7 @@ class HomeTalkController extends BaseController {
       requestHomeTalkData();
     });
     requestHomeTalkData();
+    EventHandler.report(EventId.event_100100);
   }
 
   @override

+ 2 - 1
lib/module/main/controller.dart

@@ -19,6 +19,7 @@ import '../../router/app_pages.dart';
 import '../../utils/desktop_shortcut_utils.dart';
 import '../../utils/mmkv_util.dart';
 import '../login/view.dart';
+import '../record/view.dart';
 
 class MainController extends BaseController {
   final GlobalKey<ScaffoldState> scaffoldKey = GlobalKey<ScaffoldState>();
@@ -105,7 +106,7 @@ class MainController extends BaseController {
     }
     String? action = parameters?[LaunchAction.key];
     if (action == LaunchAction.recordAudioAction) {
-      Get.toNamed(RoutePath.record);
+      RecordPage.start(fromType: RecordFromType.shortcutIcon);
     }
   }
 

+ 19 - 3
lib/module/record/controller.dart

@@ -5,6 +5,7 @@ import 'package:electronic_assistant/data/repositories/account_repository.dart';
 import 'package:electronic_assistant/handler/event_handler.dart';
 import 'package:electronic_assistant/module/record/constants.dart';
 import 'package:electronic_assistant/module/record/record_handler.dart';
+import 'package:electronic_assistant/module/record/view.dart';
 import 'package:electronic_assistant/module/store/view.dart';
 import 'package:electronic_assistant/module/talk/view.dart';
 import 'package:electronic_assistant/utils/desktop_shortcut_utils.dart';
@@ -26,17 +27,32 @@ class RecordController extends BaseController {
 
   final RxBool isHideIntegrationInsufficient = RxBool(false);
 
+  RecordFromType? fromType;
+
   @override
   void onInit() {
     super.onInit();
     recordHandler.init();
+    _initArgs();
+  }
+
+  void _initArgs() {
+    fromType = Get.arguments?['fromType'];
+    if (fromType == RecordFromType.home) {
+      EventHandler.report(EventId.event_100010,
+          params: {EventId.id: EventId.id_001});
+    } else if (fromType == RecordFromType.shortcutIcon) {
+      EventHandler.report(EventId.event_100010,
+          params: {EventId.id: EventId.id_002});
+    } else if (fromType == RecordFromType.shortcutInstruction) {
+      EventHandler.report(EventId.event_100010,
+          params: {EventId.id: EventId.id_003});
+    }
   }
 
   @override
   void onReady() async {
     super.onReady();
-    EventHandler.report(EventId.event_100010,
-        params: {EventId.id: EventId.id_001});
     if (!await RecordHandler.hasUnUploadRecord()) {
       _startOrContinueRecord();
     }
@@ -131,7 +147,7 @@ class RecordController extends BaseController {
   }
 
   void onAvailableTimeClick() {
-    StorePage.start();
+    StorePage.start(fromType: StoreFromType.record);
   }
 
   void onCloseAvailableTimeClick() {

+ 7 - 0
lib/module/record/view.dart

@@ -12,10 +12,17 @@ import 'package:get/get.dart';
 import 'package:lottie/lottie.dart';
 
 import '../../resource/assets.gen.dart';
+import '../../router/app_pages.dart';
+
+enum RecordFromType { home, shortcutIcon, shortcutInstruction }
 
 class RecordPage extends BasePage<RecordController> {
   const RecordPage({super.key});
 
+  static start({RecordFromType? fromType}) {
+    Get.toNamed(RoutePath.record, arguments: {'fromType': fromType});
+  }
+
   @override
   bool immersive() {
     return true;

+ 4 - 0
lib/module/store/controller.dart

@@ -65,6 +65,8 @@ class StoreController extends BaseController implements PaymentStatusCallback {
       EventHandler.report(EventId.event_104001, params: {'id': '002'});
     } else if (fromType == StoreFromType.analyse) {
       EventHandler.report(EventId.event_104001, params: {'id': '003'});
+    } else if (fromType == StoreFromType.record) {
+      EventHandler.report(EventId.event_104001, params: {'id': '004'});
     }
   }
 
@@ -223,6 +225,8 @@ class StoreController extends BaseController implements PaymentStatusCallback {
       params['from_id'] = '012';
     } else if (fromType == StoreFromType.analyse) {
       params['from_id'] = '013';
+    } else if (fromType == StoreFromType.record) {
+      params['from_id'] = '014';
     }
     EventHandler.report(EventId.event_104002, params: params);
     Get.back();

+ 1 - 1
lib/module/store/view.dart

@@ -13,7 +13,7 @@ import '../../data/consts/Constants.dart';
 import '../../widget/shimmer_effect.dart';
 import 'controller.dart';
 
-enum StoreFromType { home, mine, analyse }
+enum StoreFromType { home, mine, analyse, record }
 
 class StorePage extends BasePage<StoreController> {
   const StorePage({super.key});

+ 1 - 0
lib/module/talk/controller.dart

@@ -621,6 +621,7 @@ class TalkController extends BaseController {
 
   void onSearchClick() {
     isSearchModel.value = true;
+    EventHandler.report(EventId.event_101302);
   }
 
   void updateTabIndex(int index) {

+ 2 - 1
lib/utils/desktop_shortcut_utils.dart

@@ -4,6 +4,7 @@ import 'dart:io';
 import 'package:app_links/app_links.dart';
 import 'package:electronic_assistant/base/base_controller.dart';
 import 'package:electronic_assistant/main.dart';
+import 'package:electronic_assistant/module/record/view.dart';
 import 'package:electronic_assistant/router/app_pages.dart';
 import 'package:electronic_assistant/utils/launcher_url_util.dart';
 import 'package:electronic_assistant/utils/mmkv_util.dart';
@@ -129,7 +130,7 @@ class DesktopShortcutUtils {
 
   static void setRouteAction(String recordAudioAction) {
     if (recordAudioAction == LaunchAction.recordAudioAction) {
-      Get.toNamed(RoutePath.record);
+      RecordPage.start(fromType: RecordFromType.shortcutIcon);
     }
   }
 }