2025-09-24 21:28:48 +08:00

83 lines
2.6 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { wxInfo, mpInfo, miniProgramVersion } from './getUserInfo'
import { apiBehaviorLog } from '../api/md/index'
export const OPERATION_TYPES = {
'点击': 0,
'曝光': 9
}
export const PAGE_IDS = {
'首页': 'mp_home',
'微信一键登录': 'mp_wx_regLogin',
'其他手机号登录': 'mp_other_regLogin'
}
export const BUTTON_IDS = {
'首页-我要提额': 'wyte',
'首页-去借钱': 'borrow_apply',
'首页-注册登录': 'goLogin',
'首页-我要还款': 'repayment',
'首页-下载APP': 'download',
'首页-我的客服': 'kefu',
'微信一键登录-登录': 'submitLogin',
'其他手机号登录-登录': 'submitLogin'
}
const commonData = {
ENV_VERSION: '', // 小程序版本
VERSION: '', // 版本号
// DEV_ID: '', // 设备标识
DEVICE_OS: '', // 操作系统
USER_ID: '', // 用户ID
UNIQUE_CODE: '' // 用户uniqueCode
}
// 获取用户信息
const getMdUserInfo = () => {
try {
const user_info = wx.getStorageSync('user_info')
const unique_code = wx.getStorageSync('unique_code')
commonData.USER_ID = user_info.userId || ''
commonData.UNIQUE_CODE = user_info.uniqueCode || unique_code || ''
} catch (e) {
console.log('埋点获取用户信息catch', e)
}
}
// 获取微信&小程序信息
try {
commonData.ENV_VERSION = mpInfo.miniProgram.envVersion
commonData.VERSION = miniProgramVersion
commonData.DEVICE_OS = wxInfo.platform
} catch (e) {
console.log('获取微信&小程序信息catch', e)
}
// 获取埋点pageId、buttonId、operateType
export const getParams = (type: any) => {
getMdUserInfo()
const [page, operate, button] = type.split('-')
const buttonType = `${page}-${button}`
const PAGE_ID = (PAGE_IDS as any)[page]
const OPERATION_TYPE = (OPERATION_TYPES as any)[operate]
const BUTTON_ID = (OPERATION_TYPE === 9 || button === '占位符') ? '' : (BUTTON_IDS as any)[buttonType]
if (!PAGE_ID || BUTTON_ID === undefined || OPERATION_TYPE === undefined) {
console.warn(PAGE_ID, `'${page}'在PAGE_IDS配置中没有找到请配置`)
console.warn(OPERATION_TYPE !== undefined, `'${operate}'在OPERATE_TYPES配置中没有找到请配置`)
console.warn(BUTTON_ID !== undefined, `'${buttonType}'在BUTTON_IDS配置中没有找到请配置`)
return false
}
const reqParam = { testName: `${page}-${operate}-${button || ''}`, PAGE_ID, BUTTON_ID, OPERATION_TYPE }
apiBehaviorLog({
data: JSON.stringify(Object.assign(reqParam, commonData)),
package: 'CJTG_XCX_LZ',
platform: 'yijie'
})
return
}
// 埋点直连大数据
export const onMaiDian = (type: string) => {
getParams(type)
}