# 埋点文档 ## 命名规范 | 类别 | 前缀 | 格式 | 示例 | |------|------|------|------| | 页面浏览(患者端) | `PG_` | `PG_Patient{功能名}` | `PG_PatientHome` | | 页面浏览(医生端) | `PG_` | `PG_Doctor{功能名}` | `PG_DoctorHome` | | 点击事件(患者端) | `BTN_` | `BTN_Patient{功能名}{操作}` | `BTN_PatientHomeNextVisit` | | 点击事件(医生端) | `BTN_` | `BTN_Doctor{功能名}{操作}` | `BTN_DoctorHomeInvite` | ## 埋点示例 ### 患者端页面访问埋点 ```ts // 页面级 PV app.waitLogin().then(() => { app.mpBehavior({ PageName: 'PG_PatientHome' }) }) // 详情页带 detailId app.waitLogin().then(() => { app.mpBehavior({ PageName: 'PG_PatientDoctorDetail', detailId: options.id }) }) ``` ### 医生端页面访问埋点 ```ts app.waitLogin().then(() => { app.mpBehavior({ doctor: true, PageName: 'PG_DoctorHome' }) }) ``` ### 患者端点击埋点 ```ts handleNextVisit() { app.mpBehavior({ PageName: 'BTN_PatientHomeNextVisit' }) // ... 业务逻辑 } ``` ### 医生端点击埋点 ```ts handleInvite() { app.mpBehavior({ doctor: true, PageName: 'BTN_DoctorHomeInvite' }) // ... 业务逻辑 } ``` ### 全局访问埋点 ```ts // app.ts onShow 中,记录小程序整体打开事件 app.mpBehavior({ PageName: 'MINI_PROGRAM_VISIT' }) ``` ## 页面级埋点(PG_) ### 患者端 | 页面路径 | 页面名称 | PageName | detailId | |---------|---------|----------|----------| | pages/index/index | 首页 | `PG_PatientHome` | - | | gift/pages/recordList/index | 就诊记录列表页 | `PG_PatientRecordList` | - | | gift/pages/record/index | 就诊记录新增页 | `PG_PatientRecordAdd` | - | | gift/pages/recordDetail/index | 就诊记录详情页 | `PG_PatientRecordDetail` | `options.id` | | pages/interactivePatient/index | 医患互动页 | `PG_PatientInteractive` | - | | pages/doctorDetail/index | 医生详情页 | `PG_PatientDoctorDetail` | `options.id` | | pages/repository/index | 知识库 | `PG_PatientRepository` | - | | pages/repositoryDetail/index | 知识库详情页 | `PG_PatientRepositoryDetail` | `id` | | pages/my/index | 我的 | `PG_PatientMy` | - | | pages/qaFormDetail/index | 健康档案页 | `PG_PatientQaFormDetail` | - | | pages/qaForm/index | 健康档案编辑页 | `PG_PatientQaForm` | - | | pages/caseReport/index | 病例报告页 | `PG_PatientCaseReport` | - | | pages/personalInformation/index | 个人信息页 | `PG_PatientPersonalInfo` | - | | pages/cancellation/index | 注销账号页 | `PG_PatientCancellation` | - | | pages/mySave/index | 我的收藏页 | `PG_PatientMySave` | - | | pages/feedback/index | 问题反馈页 | `PG_PatientFeedback` | - | ### 医生端 | 页面路径 | 页面名称 | PageName | detailId | |---------|---------|----------|----------| | doctor/pages/d_home/index | 首页 | `PG_DoctorHome` | - | | doctor/pages/d_invite/index | 邀约患者页 | `PG_DoctorInvite` | - | | doctor/pages/d_patient/index | 患者列表页 | `PG_DoctorPatient` | - | | doctor/pages/d_patientDetail/index | 患者详情页 | `PG_DoctorPatientDetail` | `this.data.id` | | doctor/pages/d_taskList/index | 群发列表页 | `PG_DoctorTaskList` | - | | doctor/pages/d_taskDetail/index | 群发详情页 | `PG_DoctorTaskDetail` | `this.data.id` | | doctor/pages/d_createTask/index | 群发新增页 | `PG_DoctorCreateTask` | - | | doctor/pages/d_interactive/index | 互动列表页 | `PG_DoctorInteractive` | - | | doctor/pages/d_interactiveDoctor/index | 互动页 | `PG_DoctorInteractiveDoctor` | `this.data.patientId` | | doctor/pages/d_my/index | 我的 | `PG_DoctorMy` | - | | doctor/pages/d_userInfo/index | 个人信息页 | `PG_DoctorUserInfo` | - | | doctor/pages/d_changeDoctor/index | 切换医生页 | `PG_DoctorChangeDoctor` | - | ## 点击级埋点(BTN_) ### 患者端 #### 首页(pages/index/index) | 方法 | PageName | 说明 | |------|----------|------| | `routerTo(e)` | `BTN_PatientHomeFunctionCard` | 功能卡片跳转 | | `handleNextVisit()` | `BTN_PatientHomeNextVisit` | 下次复诊入口 | | `handleArticleView(e)` | `BTN_PatientHomeArticle` | 文章点击 | | `handleArticleSave(e)` | `BTN_PatientHomeArticleSave` | 文章收藏 | | `handleToastOk()` | `BTN_PatientHomeBindDoctor` | 绑定医生弹窗确认 | | `handlePublic()` | `BTN_PatientHomeFollowPublic` | 关注公众号 | #### 我的(pages/my/index) | 方法 | PageName | 说明 | |------|----------|------| | `routerVipTo()` | `BTN_PatientMyVip` | VIP 认证入口 | | `handleMyHealthRecord(e)` | `BTN_PatientMyHealthRecord` | 健康档案 | | `handleQaForm()` | `BTN_PatientMyQaForm` | 健康问卷 | | `routerTo(e)` → mySave | `BTN_PatientMySave` | 我的收藏 | | `routerTo(e)` → personalInfo | `BTN_PatientMyPersonalInfo` | 个人信息 | | `handleMiniDoctor()` | `BTN_PatientMyMiniDoctor` | 迷你医生 | | `handleFeedback()` | `BTN_PatientMyFeedback` | 问题反馈 | #### 医患互动(pages/interactivePatient/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleHot(e)` | `BTN_PatientInteractiveHotQuestion` | 热门问题点击 | | `handleQuestion(e)` | `BTN_PatientInteractiveQuestion` | 快捷问题点击 | | `handleConfirm()` | `BTN_PatientInteractiveSend` | 发送消息 | | `handleAdl()` | `BTN_PatientInteractiveAdl` | ADL 评估入口 | | `handleQol()` | `BTN_PatientInteractiveQol` | QoL 入口 | | `handleDoctorDetail()` | `BTN_PatientInteractiveDoctorDetail` | 查看医生详情 | #### 知识库(pages/repository/index) | 方法 | PageName | 说明 | |------|----------|------| | `tabChange(e)` | `BTN_PatientRepositoryTab` | Tab 切换 | | `handleSearch()` | `BTN_PatientRepositorySearch` | 搜索 | | `handleCate(e)` | `BTN_PatientRepositoryCategory` | 分类筛选 | | `handleDetail(e)` | `BTN_PatientRepositoryArticle` | 文章详情 | | `handleStar(e)` | `BTN_PatientRepositoryStar` | 点赞 | | `handleToggleSave(e)` | `BTN_PatientRepositorySave` | 收藏 | #### 就诊记录列表(gift/pages/recordList/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleAdd()` | `BTN_PatientRecordListAdd` | 新增记录 | | `handleDetail(e)` | `BTN_PatientRecordListItem` | 记录列表项 | #### 就诊记录新增(gift/pages/record/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleSubmit()` | `BTN_PatientRecordAddSubmit` | 保存记录 | ### 医生端 #### 医生首页(doctor/pages/d_home/index) | 方法 | PageName | 说明 | |------|----------|------| | `handlePatient(e)` | `BTN_DoctorHomePatient` | 患者列表入口 | | `handleInvite()` | `BTN_DoctorHomeInvite` | 邀约按钮 | | `handleSelectYear1()` | `BTN_DoctorHomeSelectYear` | 年份筛选 | #### 邀约患者(doctor/pages/d_invite/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleDownload()` | `BTN_DoctorInviteSend` | 发送邀约(海报保存/分享) | #### 患者列表(doctor/pages/d_patient/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleSearch()` | `BTN_DoctorPatientSearch` | 搜索患者 | | `handleDetail(e)` | `BTN_DoctorPatientItem` | 患者列表项 | #### 互动列表(doctor/pages/d_interactive/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleSearch()` | `BTN_DoctorInteractiveSearch` | 搜索互动 | | `handleDetail(e)` | `BTN_DoctorInteractiveItem` | 互动列表项 | #### 互动页(doctor/pages/d_interactiveDoctor/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleConfirm()` | `BTN_DoctorInteractiveSend` | 发送消息 | #### 群发列表(doctor/pages/d_taskList/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleCreate()` | `BTN_DoctorTaskListAdd` | 新增群发 | | `handleDetail(e)` | `BTN_DoctorTaskListItem` | 群发列表项 | #### 群发新增(doctor/pages/d_createTask/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleSubmit()` | `BTN_DoctorCreateTaskSubmit` | 创建群发 | #### 切换医生(doctor/pages/d_changeDoctor/index) | 方法 | PageName | 说明 | |------|----------|------| | `handleSubmit()` | `BTN_DoctorChangeDoctorSelect` | 切换医生选择 |