hooliAnalysis.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. import Vue from 'vue'
  2. import { PAGE_CODE, EXTENDS_ID_TYPE, PARAMS_USER_SOURCE } from '~/common/c.js'
  3. import { php_api_common_analytize } from '~/common/apis.js'
  4. import { MyCookie, getPageCode } from '~/common/utils.js'
  5. export default ({ app, store, params, route }, inject) => {
  6. inject(
  7. 'hooliAnalysis',
  8. new Vue({
  9. methods: {
  10. userSourceParams() {
  11. const userSourceObj = PARAMS_USER_SOURCE
  12. const twoSc = MyCookie.getCookie('twoSc')
  13. if (twoSc) {
  14. userSourceObj.twoSc = twoSc
  15. }
  16. const { analytizeQuery } = store.state
  17. if (analytizeQuery.sourceCode) {
  18. if (
  19. analytizeQuery.sourceCode === 'bdpc' ||
  20. analytizeQuery.sourceCode === 'bdm'
  21. ) {
  22. userSourceObj.oneSc = 'adv'
  23. userSourceObj.twoSc = 'adv_baidu'
  24. userSourceObj.threeSc = 'adv_baidu_key'
  25. userSourceObj.scContent = analytizeQuery.utm_content || ''
  26. } else if (analytizeQuery.sourceCode === 'bdxxl') {
  27. userSourceObj.oneSc = 'adv'
  28. userSourceObj.twoSc = 'adv_baidu'
  29. userSourceObj.threeSc = 'adv_baidu_feeds'
  30. userSourceObj.scContent = analytizeQuery.utm_content || ''
  31. }
  32. } else {
  33. if (
  34. analytizeQuery.utm_source &&
  35. analytizeQuery.utm_source.indexOf('baidu') !== -1
  36. ) {
  37. userSourceObj.oneSc = 'adv'
  38. userSourceObj.twoSc = 'adv_baidu'
  39. userSourceObj.threeSc = 'adv_baidu_key'
  40. userSourceObj.scContent = analytizeQuery.utm_content || ''
  41. }
  42. }
  43. const shareCrmUid = MyCookie.getCookie('shareCrmUid')
  44. if (shareCrmUid) {
  45. userSourceObj.shareCrmUid = shareCrmUid
  46. }
  47. const shareUid = MyCookie.getCookie('shareUid')
  48. if (shareUid) {
  49. userSourceObj.shareUid = shareUid
  50. }
  51. return userSourceObj
  52. },
  53. upload(option, isStop = false) {
  54. store.commit('SET_ANALYZE_OBJ', option)
  55. if (isStop) {
  56. return false
  57. }
  58. let {
  59. loginUserInfo,
  60. citySelectObj,
  61. analytizeQuery,
  62. analyzeObj
  63. } = store.state
  64. analyzeObj = JSON.parse(JSON.stringify(analyzeObj))
  65. if (loginUserInfo && loginUserInfo.id) {
  66. analyzeObj.ui = loginUserInfo.id
  67. }
  68. if (citySelectObj && citySelectObj.id) {
  69. analyzeObj.ci = citySelectObj.id
  70. }
  71. if (
  72. analytizeQuery.utm_source &&
  73. analytizeQuery.utm_source.indexOf('baidu') !== -1
  74. ) {
  75. analyzeObj.sc = 'adv_baiduKey'
  76. }
  77. if (analytizeQuery.utm_content) {
  78. analyzeObj.ak = analytizeQuery.utm_content
  79. } else if (analytizeQuery.sourceCode) {
  80. analyzeObj.ak = analytizeQuery.sourceCode
  81. }
  82. analyzeObj.cu = encodeURIComponent(window.location.href)
  83. if (!analyzeObj.cc) {
  84. analyzeObj.cc = getPageCode(window.location.href)
  85. }
  86. analyzeObj.ou = MyCookie.getCookie('originUrl')
  87. analyzeObj.oc = MyCookie.getCookie('originUrlCode')
  88. if (analyzeObj.cc === PAGE_CODE.article) {
  89. analyzeObj.ct = EXTENDS_ID_TYPE.article
  90. analyzeObj.cv = params.articleId
  91. }
  92. {
  93. const params = {}
  94. for (let key in analyzeObj) {
  95. if (analyzeObj[key]) {
  96. params[key] = analyzeObj[key]
  97. }
  98. }
  99. const arr = []
  100. for (let key in params) {
  101. arr.push(`${key}=${params[key]}`)
  102. }
  103. app.$axios.$get(`${php_api_common_analytize}?${arr.join('&')}`)
  104. }
  105. }
  106. }
  107. })
  108. )
  109. }