|
@@ -2,7 +2,6 @@ import { createBrowseHistory, createBrowseRecord } from '@/core/libs/requests'
|
|
|
import { useUserStore } from '@/store'
|
|
|
import { storeToRefs } from 'pinia'
|
|
|
import dayjs from 'dayjs'
|
|
|
-
|
|
|
export enum AnalysisEventType {
|
|
|
LaunchApp = 4,
|
|
|
/**
|
|
@@ -12,13 +11,14 @@ export enum AnalysisEventType {
|
|
|
/**
|
|
|
* 浏览页面
|
|
|
*/
|
|
|
- ViewPage = 3,
|
|
|
+ ViewPage = 6,
|
|
|
}
|
|
|
export const useAnalysis = (automatic: boolean, isApp = false) => {
|
|
|
const userStore = useUserStore()
|
|
|
const { userInfo, isLogined } = storeToRefs(userStore)
|
|
|
const viewDuration = ref(0)
|
|
|
- const viewStartAt = ref<Date>()
|
|
|
+ const viewStartAt = ref<Date | null>(null);
|
|
|
+ const totalUsageTime = ref(0);
|
|
|
const option = ref<Record<string, any>>({})
|
|
|
|
|
|
const report = async (type) => {
|
|
@@ -39,13 +39,11 @@ export const useAnalysis = (automatic: boolean, isApp = false) => {
|
|
|
}
|
|
|
|
|
|
onLaunch(async () => {
|
|
|
- // if (automatic && isLogined) {
|
|
|
- // await createBrowseRecord({
|
|
|
- // stylistId: userInfo.value.userId,
|
|
|
- // bizType: AnalysisEventType.LaunchApp,
|
|
|
- // duration: 1,
|
|
|
- // })
|
|
|
- // }
|
|
|
+ if (automatic) {
|
|
|
+ if (isApp) {
|
|
|
+ await report(AnalysisEventType.LaunchApp)
|
|
|
+ }
|
|
|
+ }
|
|
|
})
|
|
|
onLoad(() => {
|
|
|
console.log('analysis')
|
|
@@ -60,16 +58,19 @@ export const useAnalysis = (automatic: boolean, isApp = false) => {
|
|
|
}
|
|
|
})
|
|
|
onHide(async () => {
|
|
|
- if (automatic) {
|
|
|
- if (isApp) {
|
|
|
- await report(AnalysisEventType.LaunchApp)
|
|
|
- }
|
|
|
+ if (automatic && viewStartAt.value) {
|
|
|
+ const usageTime = dayjs().diff(viewStartAt.value, 'second'); // 本次使用时长(秒)
|
|
|
+ totalUsageTime.value += usageTime; // 累计到总时长
|
|
|
+ console.log(`本次使用时长:${usageTime} 秒`);
|
|
|
+ console.log(`累计使用时长:${totalUsageTime.value} 秒`);
|
|
|
+
|
|
|
+ await report(AnalysisEventType.ViewPage); // 上报页面浏览记录
|
|
|
}
|
|
|
})
|
|
|
onUnload(async () => {
|
|
|
- if (automatic) {
|
|
|
- await report(AnalysisEventType.ViewPage)
|
|
|
- }
|
|
|
+ // if (automatic) {
|
|
|
+ // await report(AnalysisEventType.ViewPage)
|
|
|
+ // }
|
|
|
})
|
|
|
return { option, report }
|
|
|
}
|