@conecli/cone-render 0.9.1-shop2.15 → 0.9.1-shop2.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/api/index.ts +1 -1
  2. package/dist/common/const.ts +1 -1
  3. package/dist/common/environmentType.ts +1 -1
  4. package/dist/common/index.h5.ts +1 -1
  5. package/dist/common/index.jd.ts +1 -1
  6. package/dist/common/index.ts +1 -1
  7. package/dist/common/index.weapp.ts +1 -1
  8. package/dist/components/base/LazyLoadImage/index.h5.module.scss +3 -0
  9. package/dist/components/base/LazyLoadImage/index.h5.tsx +1 -1
  10. package/dist/components/decorate/DecorateFloorModule/index.module.scss +11 -0
  11. package/dist/components/decorate/DecorateFloorModule/index.tsx +1 -1
  12. package/dist/components/decorate/EmptyFloorModule/index.tsx +1 -1
  13. package/dist/components/decorate/PlaceHolder/index.tsx +1 -1
  14. package/dist/components/floorItem.tsx +1 -1
  15. package/dist/interface/common.ts +1 -1
  16. package/dist/interface/component.ts +1 -1
  17. package/dist/interface/jumpEventReport.ts +1 -1
  18. package/dist/interface/service.ts +1 -1
  19. package/dist/jumpEventReport/base.ts +1 -1
  20. package/dist/jumpEventReport/const.ts +1 -1
  21. package/dist/jumpEventReport/index.jd.ts +1 -1
  22. package/dist/jumpEventReport/index.weapp.ts +1 -1
  23. package/dist/jumpEventReport/jdJumpJdApp.ts +1 -1
  24. package/dist/jumpEventReport/jumpUrlConfig/base.ts +1 -1
  25. package/dist/jumpEventReport/logEventConfig.ts +1 -1
  26. package/dist/jumpEventReport/web.base.ts +1 -1
  27. package/dist/jumpEventReport/web.jd.ts +1 -1
  28. package/dist/jumpEventReport/web.tjm.ts +1 -1
  29. package/dist/modules/ContainerFloorList/index.h5.module.scss +1 -1
  30. package/dist/modules/ContainerFloorList/index.h5.tsx +1 -1
  31. package/dist/open/api/device.ts +1 -1
  32. package/dist/sass/base.scss +45 -0
  33. package/dist/service/requestServer.ts +1 -1
  34. package/dist/utils/connectNativeJsBridge.ts +1 -1
  35. package/dist/utils/h5Utils.ts +1 -1
  36. package/dist/utils/index.h5.ts +1 -1
  37. package/dist/utils/index.ts +1 -1
  38. package/dist/utils/index.weapp.ts +1 -1
  39. package/dist/utils/utils.ts +1 -1
  40. package/package.json +1 -1
@@ -1 +1 @@
1
- import global from '../common'
2
1
  BUSINESS_TYPE,
3
2
  objectToUrlEncode,
4
3
  parseQueryUrlString,
5
4
  isTjScence,
6
5
  isTjM,
7
6
  isTjJxM,
8
7
  isH5AdnJxMini,
9
8
  tjChannel,
10
9
  public logPageId: string
11
10
  public jumpConfig: JumpEventReportInterFace.JumpH5ReportConfig
12
11
  constructor(opt) {
13
12
  super(opt)
14
13
  this.getConfig(opt)
15
14
  console.log('加载特价/京喜m的跳转js文件....')
16
15
  }
17
16
 
18
17
  getTjShopParam () {
19
18
  const { tjshop } = global.info.queryInfo
20
19
  const tjshopParam = tjshop ? `&tjshop=${tjshop}` : ''
21
20
  const tjChannelStr = tjChannel ? `&tjChannel=${tjChannel}` : ''
22
21
  return `${tjshopParam}${tjChannelStr}`
23
22
  }
24
23
 
25
24
  jdJumpToProduct(skuIds, logEventInfo) {
26
25
  skuIds = skuIds.toString().trim()
27
26
  const getSkuId = skuIds.indexOf(',') !== -1 ? skuIds.split(',')[0] : skuIds
28
27
  const { jingxiSdx, ...otherLogInfo } = logEventInfo
29
28
  let url = `${this.jumpWebUrl.detail}${getSkuId}.html`
30
29
  if (isTjScence) {
31
30
  if (isTjM) {
32
31
  url = `${this.jumpWebUrl.tjDetail}?wareId=${getSkuId}`
33
32
  } else if (isTjJxM) {
34
33
  const { _fd } = global.info.queryInfo
35
34
  const fd = _fd ? `&_fd=${_fd}` : ''
36
35
  url = `${this.jumpWebUrl.jxDetail}?sku=${getSkuId}${fd}`
37
36
  }
38
37
  }
39
38
  if(jingxiSdx){
40
39
  this.jdNavigateToNative(
41
40
  `${url}?sdx=${jingxiSdx}`,
42
41
  otherLogInfo,
43
42
  )
44
43
  }else {
45
44
  this.jdNavigateToNative(
46
45
  url,
47
46
  logEventInfo,
48
47
  )
49
48
  }
50
49
  }
51
50
 
52
51
  jdJumpToShopHome(shopInfo: JumpEventReportInterFace.ShopIdsInfo = {}) {
53
52
  const getInfo = Object.assign(
54
53
  {},
55
54
  {
56
55
  shopId: global.info.queryInfo.shopId,
57
56
  venderId: global.info.queryInfo.venderId,
58
57
  },
59
58
  shopInfo,
60
59
  )
61
60
  this.jdNavigateToNative(
62
61
  `${this.jumpWebUrl.mshop}?${objectToUrlEncode(
63
62
  this.getShopIdOrVenderIdParams(getInfo),
64
63
  )}${this.getTjShopParam()}`,
65
64
  {
66
65
  ...getInfo,
67
66
  },
68
67
  )
69
68
  }
70
69
 
71
70
  jdJumpToWeb(
72
71
  url,
73
72
  logEventInfo,
74
73
  successBack?: Function | undefined,
75
74
  failBack?: Function | undefined,
76
75
  ) {
77
76
  console.log('web.tjm.ts - jdJumpToWeb')
78
77
  if(url.indexOf('tjshop') == -1) {
79
78
  url = url + this.getTjShopParam()
80
79
  }
81
80
  this.jdNavigateToNative(
82
81
  url,
83
82
  {
84
83
  ...logEventInfo,
85
84
  },
86
85
  successBack,
87
86
  failBack,
88
87
  )
89
88
  }
90
89
 
91
90
  jdJumpConfigUrl(detail, logEventInfo = {}) {
92
91
  const { configDataType, configDataValue } = detail
93
92
  console.log(
94
93
  'jdJumpConfigUrl web.tj.base configDataType:',
95
94
  configDataType,
96
95
  configDataValue,
97
96
  )
98
97
  switch (configDataType) {
99
98
  case LinkConfigType.CONFIG_TYPE_SKU_LIST:
100
99
  if(logEventInfo?.jsonParam?.logBaseInfo?.mInfo){
101
100
  logEventInfo.jsonParam.logBaseInfo.mInfo.skuid = configDataValue.skuIds
102
101
  }
103
102
  this.jdJumpToProduct(configDataValue.skuIds, logEventInfo)
104
103
  break
105
104
  case LinkConfigType.CONFIG_TYPE_COUPON_LIST:
106
105
  this.jdJumpToWeb(
107
106
  `${this.jumpWebUrl.shopCoupon}?couponType=1&shopId=${global.info.queryInfo.shopId}&venderId=${global.info.queryInfo.venderId}`,
108
107
  {},
109
108
  )
110
109
  break
111
110
  case LinkConfigType.CONFIG_TYPE_CATEGORY:
112
111
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
113
112
  const getShopSearchParams = this.jdOpenAppParams(
114
113
  configDataValue.clickUrl,
115
114
  )
116
115
  getShopSearchParams &&
117
116
  this.jdJumpToShopSearch(
118
117
  Object.assign({}, getShopSearchParams, {
119
118
  logEventInfo,
120
119
  }),
121
120
  )
122
121
  } else {
123
122
  this.jdJumpToShopSearch(
124
123
  configDataValue['cid']
125
124
  ? Object.assign(
126
125
  {},
127
126
  {
128
127
  shopId: global.info.queryInfo.shopId,
129
128
  categoryId: configDataValue.cid,
130
129
  ...configDataValue,
131
130
  logEventInfo,
132
131
  },
133
132
  )
134
133
  : {
135
134
  shopId: global.info.queryInfo.shopId,
136
135
  logEventInfo,
137
136
  },
138
137
  )
139
138
  }
140
139
  break
141
140
  case LinkConfigType.CONFIG_TYPE_CATEGORY_PAGE:
142
141
  this.jdJumpToShopCategory({
143
142
  ...configDataValue,
144
143
  logEventInfo,
145
144
  })
146
145
  break
147
146
  case LinkConfigType.CONFIG_TYPE_MEMBER:
148
147
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
149
148
  const getShopMemberParams = this.jdOpenAppParams(
150
149
  configDataValue.clickUrl,
151
150
  )
152
151
  getShopMemberParams &&
153
152
  this.jdJumpToShopMember(
154
153
  Object.assign({}, getShopMemberParams, {
155
154
  logEventInfo,
156
155
  }),
157
156
  )
158
157
  } else {
159
158
  this.jdJumpToShopMember({
160
159
  shopId: global.info.queryInfo.shopId,
161
160
  venderId: configDataValue.shopDetail,
162
161
  logEventInfo,
163
162
  })
164
163
  }
165
164
  break
166
165
  case LinkConfigType.CONFIG_TYPE_SHOP_ACTIVITY:
167
166
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
168
167
  const getShopActivityParams = this.jdOpenAppParams(
169
168
  configDataValue.clickUrl,
170
169
  )
171
170
  if (
172
171
  getShopActivityParams &&
173
172
  getShopActivityParams['des'] == 'jshopActivity'
174
173
  ) {
175
174
  this.jdJumpToShopActivity({
176
175
  projectId: configDataValue['projectId'],
177
176
  configDataValue,
178
177
  logEventInfo,
179
178
  })
180
179
  }
181
180
  } else if (configDataValue['projectId']) {
182
181
  this.jdJumpToShopActivity({
183
182
  projectId: configDataValue['projectId'],
184
183
  configDataValue,
185
184
  logEventInfo,
186
185
  })
187
186
  }
188
187
  break
189
188
  case LinkConfigType.CONFIG_TYPE_CUSTOM_LINK:
190
189
  case LinkConfigType.CONFIG_TYPE_FINANCE_COUPON:
191
190
  let _url = configDataValue.linkUrl
192
191
  const isProductM = /item\.m\.jd\.com/.test(_url)
193
192
  const isProductPC = /item\.jd\.com/.test(_url)
194
193
  if (isTjScence) {
195
194
  const { appCode } = global.info.queryInfo
196
195
 
197
196
  if (/(pro|prodev)\.jd\.com(\/mall\/)/.test(_url)) {
198
197
  if (isH5AdnJxMini) {
199
198
  _url = _url.replace(
200
199
  /([prodev]|[pro])(\.jd\.com)(\/mall)/,
201
200
  "$1.m$2/mini"
202
201
  ) + `appCode=${appCode}&wxAppName=jx`
203
202
  } else {
204
203
  _url = _url.replace(
205
204
  /([prodev]|[pro])(\.jd\.com)(\/mall)/,
206
205
  "$1.m$2/jdlite"
207
206
  )
208
207
  }
209
208
  } else if (/(pro|prodev)\.(m\.jd|jd)\.com(\/mall\/)/.test(_url)) {
210
209
  if (isH5AdnJxMini) {
211
210
  _url = _url.replace(
212
211
  /([prodev]|[pro])(\.m\.jd\.com)(\/mall)/,
213
212
  "$1$2/mini"
214
213
  ) + `appCode=${appCode}&wxAppName=jx`
215
214
  } else {
216
215
  _url = _url.replace(
217
216
  /([prodev]|[pro])(\.m\.jd\.com)(\/mall)/,
218
217
  "$1$2/jdlite"
219
218
  )
220
219
  }
221
220
  }
222
221
  }
223
222
  if (
224
223
  _url.indexOf('to=') === -1 &&
225
224
  _url.indexOf(`${domain.mshop.replace(/https?:/, '')}/?shopId=`) !== -1
226
225
  ) {
227
226
  const _shopId = _url.match(/\d+/g)[0]
228
227
  this.jdJumpToShopHome({
229
228
  shopId: `${_shopId}`,
230
229
  logEventInfo,
231
230
  })
232
231
  } else if (this.isOpenJdAppUrl(_url)) {
233
232
  const getOpenAppParams: any = this.jdOpenAppParams(_url)
234
233
  if (getOpenAppParams) {
235
234
  if (getOpenAppParams.jumpTab == 'allProduct') {
236
235
  this.jdJumpToTabAllProduct(
237
236
  global.info.queryInfo.shopId,
238
237
  global.info.queryInfo.venderId,
239
238
  )
240
239
  } else if (
241
240
  getOpenAppParams.des == 'productList' &&
242
241
  getOpenAppParams.from == 'couponBatch'
243
242
  ) {
244
243
  this.jdJumpToCouponSearchProductList(getOpenAppParams?.couponId)
245
244
  } else if (getOpenAppParams.des == 'vapp') {
246
245
  this.jdJumpToWeb(
247
246
  `https:
248
247
  getOpenAppParams.category
249
248
  }&des=${getOpenAppParams.des}&vapptype=${
250
249
  getOpenAppParams.vapptype
251
250
  }&appId=${getOpenAppParams.appId}&path=${
252
251
  getOpenAppParams.path
253
252
  }&param=${encodeURI(JSON.stringify(getOpenAppParams.param))}`,
254
253
  logEventInfo,
255
254
  )
256
255
  } else {
257
256
  this.jdNavigateToNative(
258
257
  '',
259
258
  Object.assign({}, getOpenAppParams, {
260
259
  logEventInfo,
261
260
  }),
262
261
  )
263
262
  }
264
263
  }
265
264
  } else if (isProductM || isProductPC) {
266
265
  const skuid = _url.match(/\d+/g)[0]
267
266
  if (skuid) {
268
267
  this.jdJumpToProduct(skuid, logEventInfo)
269
268
  }
270
269
  } else {
271
270
  this.jdJumpToWeb(_url, logEventInfo)
272
271
  }
273
272
  break
274
273
  case LinkConfigType.CONFIG_TYPE_JSHOP_DETAIL:
275
274
  this.jdJumpToShopDetail({
276
275
  venderId: global.info.queryInfo.venderId,
277
276
  shopId: global.info.queryInfo.shopId,
278
277
  logEventInfo,
279
278
  })
280
279
  break
281
280
  case LinkConfigType.CONFIG_TYPE_SHOP_HOME:
282
281
  this.jdJumpToShopHome({
283
282
  ...configDataValue,
284
283
  logEventInfo,
285
284
  })
286
285
  break
287
286
  case LinkConfigType.CONFIG_TYPE_ANCHOR_POINT:
288
287
  break
289
288
  case LinkConfigType.CONFIG_TYPE_SHOPPING_GUIDE:
290
289
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
291
290
  const getShoppingGuideParams = this.jdOpenAppParams(
292
291
  configDataValue.clickUrl,
293
292
  )
294
293
  getShoppingGuideParams &&
295
294
  this.jdJumpToShopActivity(
296
295
  Object.assign({}, getShoppingGuideParams, {
297
296
  logEventInfo,
298
297
  }),
299
298
  )
300
299
  }
301
300
  break
302
301
  case LinkConfigType.CONFIG_TYPE_MINI_PROGRAM: {
303
302
  const linkUrl = decodeURIComponent(configDataValue?.linkUrl || '')
304
303
  const search = linkUrl.match(/\?.+/)
305
304
  if (search) {
306
305
  const miniQueryData: JumpEventReportInterFace.LinkMiniParams =
307
306
  parseQueryUrlString(linkUrl)
308
307
  try {
309
308
  miniQueryData.param = JSON.parse(<string>miniQueryData?.param)
310
309
  } catch (e) {
311
310
  console.warn('解析小程序 param 错误:', miniQueryData.param)
312
311
  }
313
312
  this.jdJumpToMiniProgram(miniQueryData)
314
313
  } else {
315
314
  console.warn('小程序地址错误:', linkUrl)
316
315
  }
317
316
  break
318
317
  }
319
318
  default:
320
319
  }
321
320
  }
322
321
 
323
322
  jdJumpToCouponSearchProductList(couponId, logEventInfo = {}) {
324
323
  if(isTjM) return
325
324
  let batchParam = isTjScence ? `coupon_batch=${couponId}` : `couponbatch=${couponId}`
326
325
  this.jdJumpToWeb(
327
326
  `${this.jumpWebUrl.jxCouponSearch}?${batchParam}`,
328
327
  logEventInfo,
329
328
  )
330
329
  }
331
330
 
332
331
  jdNavigateToNative(
333
332
  url: string,
334
333
  params: {
335
334
  logEventInfo?: object
336
335
  } = {},
337
336
  successBack?: Function | undefined,
338
337
  failBack?: Function | undefined,
339
338
  ) {
340
339
  const { logEventInfo } = params
341
340
  const getEparam = logEventInfo || params
342
341
  if(url.indexOf('tjshop') == -1) {
343
342
  url = url + this.getTjShopParam()
344
343
  }
345
344
  console.log(`url:::::::${url}`)
346
345
  global.info.pageInfo.dataType === BUSINESS_TYPE.ONLINE &&
347
346
  this.clickEventLog(getEparam)
348
347
  .then(() => {
349
348
  typeof successBack == 'function'
350
349
  ? successBack(url)
351
350
  : (window.location.href = url)
352
351
  })
353
352
  .catch(() => {
354
353
  typeof failBack == 'function' && failBack(url)
355
354
  })
356
355
  }
356
+ import global from '../common'
357
357
  BUSINESS_TYPE,
358
358
  objectToUrlEncode,
359
359
  parseQueryUrlString,
360
360
  isTjScence,
361
361
  isTjM,
362
362
  isTjJxM,
363
363
  isH5AdnJxMini,
364
364
  tjChannel,
365
365
  public logPageId: string
366
366
  public jumpConfig: JumpEventReportInterFace.JumpH5ReportConfig
367
367
  constructor(opt) {
368
368
  super(opt)
369
369
  this.getConfig(opt)
370
370
  console.log('加载特价/京喜m的跳转js文件....')
371
371
  }
372
372
 
373
373
  getTjShopParam () {
374
374
  const { tjshop } = global.info.queryInfo
375
375
  const tjshopParam = tjshop ? `&tjshop=${tjshop}` : ''
376
376
  const tjChannelStr = tjChannel ? `&tjChannel=${tjChannel}` : ''
377
377
  return `${tjshopParam}${tjChannelStr}`
378
378
  }
379
379
 
380
380
  jdJumpToProduct(skuIds, logEventInfo) {
381
381
  skuIds = skuIds.toString().trim()
382
382
  const getSkuId = skuIds.indexOf(',') !== -1 ? skuIds.split(',')[0] : skuIds
383
383
  const { jingxiSdx, ...otherLogInfo } = logEventInfo
384
384
  let url = `${this.jumpWebUrl.detail}${getSkuId}.html`
385
385
  if (isTjScence) {
386
386
  if (isTjM) {
387
387
  url = `${this.jumpWebUrl.tjDetail}?wareId=${getSkuId}`
388
388
  } else if (isTjJxM) {
389
389
  const { _fd } = global.info.queryInfo
390
390
  const fd = _fd ? `&_fd=${_fd}` : ''
391
391
  url = `${this.jumpWebUrl.jxDetail}?sku=${getSkuId}${fd}`
392
392
  }
393
393
  }
394
394
  if(jingxiSdx){
395
395
  this.jdNavigateToNative(
396
396
  `${url}?sdx=${jingxiSdx}`,
397
397
  otherLogInfo,
398
398
  )
399
399
  }else {
400
400
  this.jdNavigateToNative(
401
401
  url,
402
402
  logEventInfo,
403
403
  )
404
404
  }
405
405
  }
406
406
 
407
407
  jdJumpToShopHome(shopInfo: JumpEventReportInterFace.ShopIdsInfo = {}) {
408
408
  const getInfo = Object.assign(
409
409
  {},
410
410
  {
411
411
  shopId: global.info.queryInfo.shopId,
412
412
  venderId: global.info.queryInfo.venderId,
413
413
  },
414
414
  shopInfo,
415
415
  )
416
416
  this.jdNavigateToNative(
417
417
  `${this.jumpWebUrl.mshop}?${objectToUrlEncode(
418
418
  this.getShopIdOrVenderIdParams(getInfo),
419
419
  )}${this.getTjShopParam()}`,
420
420
  {
421
421
  ...getInfo,
422
422
  },
423
423
  )
424
424
  }
425
425
 
426
426
  jdJumpToWeb(
427
427
  url,
428
428
  logEventInfo,
429
429
  successBack?: Function | undefined,
430
430
  failBack?: Function | undefined,
431
431
  ) {
432
432
  console.log('web.tjm.ts - jdJumpToWeb')
433
433
  if(url.indexOf('tjshop') == -1) {
434
434
  url = url + this.getTjShopParam()
435
435
  }
436
436
  this.jdNavigateToNative(
437
437
  url,
438
438
  {
439
439
  ...logEventInfo,
440
440
  },
441
441
  successBack,
442
442
  failBack,
443
443
  )
444
444
  }
445
445
 
446
446
  jdJumpConfigUrl(detail, logEventInfo = {}) {
447
447
  const { configDataType, configDataValue } = detail
448
448
  console.log(
449
449
  'jdJumpConfigUrl web.tj.base configDataType:',
450
450
  configDataType,
451
451
  configDataValue,
452
452
  )
453
453
  switch (configDataType) {
454
454
  case LinkConfigType.CONFIG_TYPE_SKU_LIST:
455
455
  if(logEventInfo?.jsonParam?.logBaseInfo?.mInfo){
456
456
  logEventInfo.jsonParam.logBaseInfo.mInfo.skuid = configDataValue.skuIds
457
457
  }
458
458
  this.jdJumpToProduct(configDataValue.skuIds, logEventInfo)
459
459
  break
460
460
  case LinkConfigType.CONFIG_TYPE_COUPON_LIST:
461
461
  this.jdJumpToWeb(
462
462
  `${this.jumpWebUrl.shopCoupon}?couponType=1&shopId=${global.info.queryInfo.shopId}&venderId=${global.info.queryInfo.venderId}`,
463
463
  {},
464
464
  )
465
465
  break
466
466
  case LinkConfigType.CONFIG_TYPE_CATEGORY:
467
467
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
468
468
  const getShopSearchParams = this.jdOpenAppParams(
469
469
  configDataValue.clickUrl,
470
470
  )
471
471
  getShopSearchParams &&
472
472
  this.jdJumpToShopSearch(
473
473
  Object.assign({}, getShopSearchParams, {
474
474
  logEventInfo,
475
475
  }),
476
476
  )
477
477
  } else {
478
478
  this.jdJumpToShopSearch(
479
479
  configDataValue['cid']
480
480
  ? Object.assign(
481
481
  {},
482
482
  {
483
483
  shopId: global.info.queryInfo.shopId,
484
484
  categoryId: configDataValue.cid,
485
485
  ...configDataValue,
486
486
  logEventInfo,
487
487
  },
488
488
  )
489
489
  : {
490
490
  shopId: global.info.queryInfo.shopId,
491
491
  logEventInfo,
492
492
  },
493
493
  )
494
494
  }
495
495
  break
496
496
  case LinkConfigType.CONFIG_TYPE_CATEGORY_PAGE:
497
497
  this.jdJumpToShopCategory({
498
498
  ...configDataValue,
499
499
  logEventInfo,
500
500
  })
501
501
  break
502
502
  case LinkConfigType.CONFIG_TYPE_MEMBER:
503
503
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
504
504
  const getShopMemberParams = this.jdOpenAppParams(
505
505
  configDataValue.clickUrl,
506
506
  )
507
507
  getShopMemberParams &&
508
508
  this.jdJumpToShopMember(
509
509
  Object.assign({}, getShopMemberParams, {
510
510
  logEventInfo,
511
511
  }),
512
512
  )
513
513
  } else {
514
514
  this.jdJumpToShopMember({
515
515
  shopId: global.info.queryInfo.shopId,
516
516
  venderId: configDataValue.shopDetail,
517
517
  logEventInfo,
518
518
  })
519
519
  }
520
520
  break
521
521
  case LinkConfigType.CONFIG_TYPE_SHOP_ACTIVITY:
522
522
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
523
523
  const getShopActivityParams = this.jdOpenAppParams(
524
524
  configDataValue.clickUrl,
525
525
  )
526
526
  if (
527
527
  getShopActivityParams &&
528
528
  getShopActivityParams['des'] == 'jshopActivity'
529
529
  ) {
530
530
  this.jdJumpToShopActivity({
531
531
  projectId: configDataValue['projectId'],
532
532
  configDataValue,
533
533
  logEventInfo,
534
534
  })
535
535
  }
536
536
  } else if (configDataValue['projectId']) {
537
537
  this.jdJumpToShopActivity({
538
538
  projectId: configDataValue['projectId'],
539
539
  configDataValue,
540
540
  logEventInfo,
541
541
  })
542
542
  }
543
543
  break
544
544
  case LinkConfigType.CONFIG_TYPE_CUSTOM_LINK:
545
545
  case LinkConfigType.CONFIG_TYPE_FINANCE_COUPON:
546
546
  let _url = configDataValue.linkUrl
547
547
  const isProductM = /item\.m\.jd\.com/.test(_url)
548
548
  const isProductPC = /item\.jd\.com/.test(_url)
549
549
  if (isTjScence) {
550
550
  const { appCode } = global.info.queryInfo
551
551
 
552
552
  if (/(pro|prodev)\.jd\.com(\/mall\/)/.test(_url)) {
553
553
  if (isH5AdnJxMini) {
554
554
  _url = _url.replace(
555
555
  /([prodev]|[pro])(\.jd\.com)(\/mall)/,
556
556
  "$1.m$2/mini"
557
557
  ) + `appCode=${appCode}&wxAppName=jx`
558
558
  } else {
559
559
  _url = _url.replace(
560
560
  /([prodev]|[pro])(\.jd\.com)(\/mall)/,
561
561
  "$1.m$2/jdlite"
562
562
  )
563
563
  }
564
564
  } else if (/(pro|prodev)\.(m\.jd|jd)\.com(\/mall\/)/.test(_url)) {
565
565
  if (isH5AdnJxMini) {
566
566
  _url = _url.replace(
567
567
  /([prodev]|[pro])(\.m\.jd\.com)(\/mall)/,
568
568
  "$1$2/mini"
569
569
  ) + `appCode=${appCode}&wxAppName=jx`
570
570
  } else {
571
571
  _url = _url.replace(
572
572
  /([prodev]|[pro])(\.m\.jd\.com)(\/mall)/,
573
573
  "$1$2/jdlite"
574
574
  )
575
575
  }
576
576
  }
577
577
  }
578
578
  if (
579
579
  _url.indexOf('to=') === -1 &&
580
580
  _url.indexOf(`${domain.mshop.replace(/https?:/, '')}/?shopId=`) !== -1
581
581
  ) {
582
582
  const _shopId = _url.match(/\d+/g)[0]
583
583
  this.jdJumpToShopHome({
584
584
  shopId: `${_shopId}`,
585
585
  logEventInfo,
586
586
  })
587
587
  } else if (this.isOpenJdAppUrl(_url)) {
588
588
  const getOpenAppParams: any = this.jdOpenAppParams(_url)
589
589
  if (getOpenAppParams) {
590
590
  if (getOpenAppParams.jumpTab == 'allProduct') {
591
591
  this.jdJumpToTabAllProduct(
592
592
  global.info.queryInfo.shopId,
593
593
  global.info.queryInfo.venderId,
594
594
  )
595
595
  } else if (
596
596
  getOpenAppParams.des == 'productList' &&
597
597
  getOpenAppParams.from == 'couponBatch'
598
598
  ) {
599
599
  this.jdJumpToCouponSearchProductList(getOpenAppParams?.couponId)
600
600
  } else if (getOpenAppParams.des == 'vapp') {
601
601
  this.jdJumpToWeb(
602
602
  `https://conecli.com/apps/mpshare/index.html?category=${
603
603
  getOpenAppParams.category
604
604
  }&des=${getOpenAppParams.des}&vapptype=${
605
605
  getOpenAppParams.vapptype
606
606
  }&appId=${getOpenAppParams.appId}&path=${
607
607
  getOpenAppParams.path
608
608
  }&param=${encodeURI(JSON.stringify(getOpenAppParams.param))}`,
609
609
  logEventInfo,
610
610
  )
611
611
  } else {
612
612
  this.jdNavigateToNative(
613
613
  '',
614
614
  Object.assign({}, getOpenAppParams, {
615
615
  logEventInfo,
616
616
  }),
617
617
  )
618
618
  }
619
619
  }
620
620
  } else if (isProductM || isProductPC) {
621
621
  const skuid = _url.match(/\d+/g)[0]
622
622
  if (skuid) {
623
623
  this.jdJumpToProduct(skuid, logEventInfo)
624
624
  }
625
625
  } else {
626
626
  this.jdJumpToWeb(_url, logEventInfo)
627
627
  }
628
628
  break
629
629
  case LinkConfigType.CONFIG_TYPE_JSHOP_DETAIL:
630
630
  this.jdJumpToShopDetail({
631
631
  venderId: global.info.queryInfo.venderId,
632
632
  shopId: global.info.queryInfo.shopId,
633
633
  logEventInfo,
634
634
  })
635
635
  break
636
636
  case LinkConfigType.CONFIG_TYPE_SHOP_HOME:
637
637
  this.jdJumpToShopHome({
638
638
  ...configDataValue,
639
639
  logEventInfo,
640
640
  })
641
641
  break
642
642
  case LinkConfigType.CONFIG_TYPE_ANCHOR_POINT:
643
643
  break
644
644
  case LinkConfigType.CONFIG_TYPE_SHOPPING_GUIDE:
645
645
  if (this.isOpenJdAppUrl(configDataValue.clickUrl)) {
646
646
  const getShoppingGuideParams = this.jdOpenAppParams(
647
647
  configDataValue.clickUrl,
648
648
  )
649
649
  getShoppingGuideParams &&
650
650
  this.jdJumpToShopActivity(
651
651
  Object.assign({}, getShoppingGuideParams, {
652
652
  logEventInfo,
653
653
  }),
654
654
  )
655
655
  }
656
656
  break
657
657
  case LinkConfigType.CONFIG_TYPE_MINI_PROGRAM: {
658
658
  const linkUrl = decodeURIComponent(configDataValue?.linkUrl || '')
659
659
  const search = linkUrl.match(/\?.+/)
660
660
  if (search) {
661
661
  const miniQueryData: JumpEventReportInterFace.LinkMiniParams =
662
662
  parseQueryUrlString(linkUrl)
663
663
  try {
664
664
  miniQueryData.param = JSON.parse(<string>miniQueryData?.param)
665
665
  } catch (e) {
666
666
  console.warn('解析小程序 param 错误:', miniQueryData.param)
667
667
  }
668
668
  this.jdJumpToMiniProgram(miniQueryData)
669
669
  } else {
670
670
  console.warn('小程序地址错误:', linkUrl)
671
671
  }
672
672
  break
673
673
  }
674
674
  default:
675
675
  }
676
676
  }
677
677
 
678
678
  jdJumpToCouponSearchProductList(couponId, logEventInfo = {}) {
679
679
  if(isTjM) return
680
680
  let batchParam = isTjScence ? `coupon_batch=${couponId}` : `couponbatch=${couponId}`
681
681
  this.jdJumpToWeb(
682
682
  `${this.jumpWebUrl.jxCouponSearch}?${batchParam}`,
683
683
  logEventInfo,
684
684
  )
685
685
  }
686
686
 
687
687
  jdNavigateToNative(
688
688
  url: string,
689
689
  params: {
690
690
  logEventInfo?: object
691
691
  } = {},
692
692
  successBack?: Function | undefined,
693
693
  failBack?: Function | undefined,
694
694
  ) {
695
695
  const { logEventInfo } = params
696
696
  const getEparam = logEventInfo || params
697
697
  if(url.indexOf('tjshop') == -1) {
698
698
  url = url + this.getTjShopParam()
699
699
  }
700
700
  console.log(`url:::::::${url}`)
701
701
  global.info.pageInfo.dataType === BUSINESS_TYPE.ONLINE &&
702
702
  this.clickEventLog(getEparam)
703
703
  .then(() => {
704
704
  typeof successBack == 'function'
705
705
  ? successBack(url)
706
706
  : (window.location.href = url)
707
707
  })
708
708
  .catch(() => {
709
709
  typeof failBack == 'function' && failBack(url)
710
710
  })
711
711
  }