83 lines
2.6 KiB
TypeScript
83 lines
2.6 KiB
TypeScript
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)
|
||
}
|