import { generateUUID } from "../../utils/helper" import { getSystemInfo } from "../../utils/wechat" import { getStorage } from "../storage" import GameConfigModel from "./gameConfig.model" import URLQueryModel from "./urlQuery.model" import UserInfoModel from "./user.model" export interface ParamsInterface { platform: 'ios' | 'android' | 'ohos' | 'ohos_pc' | 'windows' | 'mac' | 'devtools' os: number imei: string model: string brand: string app_version: string query: string track_id: string openid: string sdk_version: string sdk_version_code: number agent_id: number site_id: number oaid: string game_id: number package_name: string | number appid: string } export const getCommonParams = () => { const userInfo = UserInfoModel.getInstance().get() const gameConfig = GameConfigModel.getInstance().get() const urlQuery = URLQueryModel.getInstance().get() // const appBaseInfo = getAppBaseInfo() // const gameConfig = getStorage<{ app_version: string, game_id: number, app_id: string }>("gameConfig") ?? { app_version: '', game_id: 0, app_id: '' } const uuid = getStorage("imei") || generateUUID() const platform = getSystemInfo('platform') const model = getSystemInfo('model') const brand = getSystemInfo('brand') const os = platform === 'ios' ? 4 : 3; // 3(and-小程序)或4(ios-小程序) const app_version = gameConfig.version const { agent_id, queryStr, site_id } = urlQuery let gameId = 0 let packageName: number | string = '' if (userInfo.game_id) { gameId = userInfo.game_id packageName = userInfo.game_id } else { gameId = gameConfig.game_id packageName = gameConfig.mini_program_id } const params: ParamsInterface = { platform, os, imei: uuid as string, model, brand, app_version, query: queryStr, track_id: "0", openid: userInfo.openid, sdk_version: import.meta.env.SDK_VERSION ?? '', sdk_version_code: import.meta.env.SDK_VERSION ? Number(import.meta.env.SDK_VERSION.split('.').join('')) : 0, agent_id: agent_id || (platform === 'ios' ? Number(import.meta.env.SDK_AGENT_ID_IOS) : Number(import.meta.env.SDK_AGENT_ID_ANDROID)), site_id: site_id || (platform === 'ios' ? Number(import.meta.env.SDK_SITE_ID_IOS) : Number(import.meta.env.SDK_SITE_ID_ANDROID)), oaid: "0", game_id: gameId, package_name: packageName, appid: gameConfig.mini_program_id, } return params }