params.model.ts 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. import { generateUUID } from "../../utils/helper"
  2. import { getAppBaseInfo, getDeviceInfo } from "../../utils/wechat"
  3. import { getStorage } from "../storage"
  4. import GameConfigModel from "./gameConfig.model"
  5. import URLQueryModel from "./urlQuery.model"
  6. import UserInfoModel from "./user.model"
  7. export interface ParamsInterface {
  8. platform: 'ios' | 'android' | 'ohos' | 'ohos_pc' | 'windows' | 'mac' | 'devtools'
  9. os: number
  10. imei: string
  11. model: string
  12. brand: string
  13. app_version: string
  14. query: string
  15. track_id: number
  16. openid: string
  17. sdk_version: string
  18. sdk_version_code: number
  19. agent_id: number
  20. site_id: number
  21. oaid: number
  22. game_id: number
  23. package_name: string | number
  24. system_lang: string
  25. system_version: string
  26. appid: string
  27. }
  28. export const getCommonParams = () => {
  29. const userInfo = UserInfoModel.getInstance().get()
  30. const gameConfig = GameConfigModel.getInstance().get()
  31. const urlQuery = URLQueryModel.getInstance().get()
  32. const appBaseInfo = getAppBaseInfo()
  33. // const gameConfig = getStorage<{ app_version: string, game_id: number, app_id: string }>("gameConfig") ?? { app_version: '', game_id: 0, app_id: '' }
  34. const uuid = getStorage("imei") || generateUUID()
  35. const platform = getDeviceInfo('platform')
  36. const os = platform === 'ios' ? 4 : 3; // 3(and-小程序)或4(ios-小程序)
  37. const app_version = gameConfig.version
  38. const { agent_id, queryStr, site_id } = urlQuery
  39. console.log("{ agent_id, queryStr, site_id }", { agent_id, queryStr, site_id })
  40. const { model, brand } = getDeviceInfo()
  41. let gameId = 0
  42. let packageName: number | string = ''
  43. if (userInfo.game_id) {
  44. gameId = userInfo.game_id
  45. packageName = userInfo.game_id
  46. } else {
  47. gameId = gameConfig.game_id
  48. packageName = gameConfig.mini_program_id
  49. }
  50. const params: ParamsInterface = {
  51. platform,
  52. os,
  53. imei: uuid as string,
  54. model,
  55. brand,
  56. app_version,
  57. query: queryStr,
  58. track_id: 0,
  59. openid: userInfo.openid,
  60. sdk_version: import.meta.env.SDK_VERSION ?? '',
  61. sdk_version_code: import.meta.env.SDK_VERSION ? Number(import.meta.env.SDK_VERSION.split('.').join('')) : 0,
  62. agent_id: agent_id || (platform === 'ios' ? Number(import.meta.env.SDK_AGENT_ID_IOS) : Number(import.meta.env.SDK_AGENT_ID_ANDROID)),
  63. site_id: site_id || (platform === 'ios' ? Number(import.meta.env.SDK_SITE_ID_IOS) : Number(import.meta.env.SDK_SITE_ID_ANDROID)),
  64. oaid: 0,
  65. game_id: gameId,
  66. package_name: packageName,
  67. system_lang: appBaseInfo.language,
  68. system_version: appBaseInfo.version,
  69. appid: gameConfig.mini_program_id,
  70. }
  71. return params
  72. }