fieldsMap.js 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. /**
  2. * 页面上的数据都来自数据库,且多处 ui 消费,页面直接使用字段会造成耦合和冗余,固在此抽出来统一配置(clientdb 查询方法、概念文字提示等)和处理(对值再计算、格式化等)
  3. * title 显示所使用名称
  4. * field 数据库字段名
  5. * computed 计算表达式配置,只支持除法计算(需要 mapfield 函数支持,也可自行扩展)
  6. * tooltip 对字段解释的提示文字
  7. * formatter 数字格式化的配置,省缺为 ','
  8. * '' 空字符串 则表示不格式化
  9. * ',' 数字格式,例:1000 格式为 1,000
  10. * '%' 百分比格式 例:0.1 格式为 10%
  11. * ':' 时分秒格式 例:90 格式为 00:01:30
  12. * '-' 日期格式 例:1655196831390(值需为时间戳) 格式为 2022-06-14
  13. * stat 对字段做 groupField 时需使用的数据库计算方法,省缺为 'sum'
  14. * 'sum' 表示对字段做求和运算
  15. * 'avg' 表示对字段做平均运算
  16. * '-1' 表示不对字段做运算
  17. * fix 数字保留几位小数,>1 默认不保留小数,<1 默认保留两位小数
  18. * value 默认值 (仅用于 uni-stat-panel 组件) todo: 可移除
  19. * contrast 对比值 (仅用于 uni-stat-panel 组件) todo: 可移除
  20. */
  21. export default [{
  22. title: '受访页',
  23. field: 'path',
  24. tooltip: '设备进入应用访问的所有页面,例如设备从页面1进入应用,跳转到页面2,1,2均为受访页',
  25. stat: -1
  26. }, {
  27. title: '页面名称',
  28. field: 'title',
  29. stat: -1
  30. },
  31. {
  32. title: '访问次数',
  33. field: 'visit_times',
  34. tooltip: '访问过应用内任意页面总次数,多个页面之间跳转、同一页面的重复访问计为多次访问;',
  35. value: 0
  36. }, {
  37. title: '退出页次数',
  38. field: 'exit_times',
  39. tooltip: '作为访问会话最后一个访问页面(即离开页)的次数',
  40. value: 0
  41. }, {
  42. title: '退出率',
  43. field: 'exitRate',
  44. computed: 'exit_times/visit_times',
  45. formatter: '%',
  46. tooltip: '在此页面,选择离开应用占此页面访问次数的比例',
  47. // value: 0,
  48. stat: -1
  49. }, {
  50. title: '访问总时长',
  51. field: 'duration',
  52. disabled: true,
  53. }, {
  54. title: '次均停留时长',
  55. field: 'avg_device_session_time',
  56. computed: 'duration/visit_times',
  57. formatter: ':',
  58. tooltip: '平均每次打开应用停留在应用内的总时长,即应用停留总时长/启动次数',
  59. value: 0
  60. }, {
  61. title: '设备平均停留时长',
  62. field: 'avg_user_time',
  63. computed: 'duration/visit_devices',
  64. formatter: ':',
  65. tooltip: '平均每个设备停留在应用内的总时长,即应用停留总时长/访问设备数',
  66. value: 0
  67. }, {
  68. title: '分享次数',
  69. field: 'share_count',
  70. tooltip: '页面被分享成功的次数',
  71. value: 0
  72. }]