许静 5 年前
父节点
当前提交
710550ccb8

+ 1
- 1
src/components/charts/XLine.vue 查看文件

9
   props: {
9
   props: {
10
     value: {
10
     value: {
11
       type: Object,
11
       type: Object,
12
-      default: () => {},
12
+      default: () => ({}),
13
     },
13
     },
14
   },
14
   },
15
   data() {
15
   data() {

+ 4
- 0
src/config/api.js 查看文件

345
           method:'get',
345
           method:'get',
346
           url: `${commPrefix}/selectNewsUserCount`
346
           url: `${commPrefix}/selectNewsUserCount`
347
       },
347
       },
348
+      userBehavior: {
349
+          method:'get',
350
+          url: `${commPrefix}/selectUserBehavior`
351
+      },
348
   },
352
   },
349
 }
353
 }
350
 export default apis
354
 export default apis

+ 14
- 30
src/store/modules/indexEcharts.js 查看文件

35
         })
35
         })
36
       })
36
       })
37
     },
37
     },
38
-    getNewsUserCount ({ commit }, payload) {
39
-      return new Promise((resolve, reject) => {
38
+    getNewsUserCount ({ commit }, payload) { // 新增用户 详情页
39
+      return new Promise((resolve, reject) => { 
40
         request({
40
         request({
41
           ...apis.indexEcharts.newsUserCount,
41
           ...apis.indexEcharts.newsUserCount,
42
           params: payload,
42
           params: payload,
51
         })
51
         })
52
       })
52
       })
53
     },
53
     },
54
-    // changeExchangeStatus (_, payload) {
55
-    //   return new Promise((resolve, reject) => {
56
-    //     request({
57
-    //       ...apis.exchange.change,
58
-    //       data: payload,
59
-    //     }).then((data) => {
60
-    //       resolve(data)
61
-    //     }).catch((err) => {
62
-    //       const message = err.message || err.msg
63
-
64
-    //       if (typeof message === 'string') {
65
-    //         reject(message)
66
-    //       }
67
-    //     })
68
-    //   })
69
-    // },
70
-    // verifyById (_, payload) {
71
-    //   return new Promise((resolve, reject) => {
72
-    //     request({
73
-    //       ...apis.exchange.update,
74
-    //       urlData: payload,
75
-    //     }).then((data) => {
76
-    //       resolve(data)
77
-    //     }).catch((err) => {
78
-    //       reject(err)
79
-    //     })
80
-    //   })
81
-    // }
82
     getUserResource({ commit }, payload) { // 用户来源 详情页
54
     getUserResource({ commit }, payload) { // 用户来源 详情页
83
       return new Promise((resolve, reject) => {
55
       return new Promise((resolve, reject) => {
84
         request({
56
         request({
90
           reject(err)
62
           reject(err)
91
         })
63
         })
92
       })
64
       })
65
+    },
66
+    getUserBehavior({ commit }, payload) { // 用户来源 详情页
67
+      return new Promise((resolve, reject) => {
68
+        request({
69
+          ...apis.indexEcharts.userBehavior,
70
+          params: payload
71
+        }).then((data) => {
72
+          resolve(data)
73
+        }).catch((err) => {
74
+          reject(err)
75
+        })
76
+      })
93
     }
77
     }
94
   }
78
   }
95
 }
79
 }

+ 17
- 27
src/views/indexEcharts/behaviorAnalysis.vue 查看文件

50
 import apis from "../../config/api";
50
 import apis from "../../config/api";
51
 import { mapState } from "vuex";
51
 import { mapState } from "vuex";
52
 import Echarts from "echarts";
52
 import Echarts from "echarts";
53
+const {
54
+  mapState: mapIndexEchartsState,
55
+  mapActions: mapIndexEchartsActions
56
+} = createNamespacedHelpers("indexEcharts");
53
 
57
 
54
 export default {
58
 export default {
55
   components: {},
59
   components: {},
73
         }
77
         }
74
       ],
78
       ],
75
       value: "",
79
       value: "",
76
-      tableData2: [
77
-        {
78
-          num: "98",
79
-          name: "王晓红",
80
-          phone: "15742389456",
81
-          building: "香颂.蔚澜半岛"
82
-        },
83
-        {
84
-          num: "99",
85
-          name: "王晓红2",
86
-          phone: "15742389456",
87
-          building: "香颂.蔚澜半岛"
88
-        },
89
-        {
90
-          num: "88",
91
-          name: "王晓红3",
92
-          phone: "15742389456",
93
-          building: "香颂.蔚澜半岛"
94
-        },
95
-        {
96
-          num: "94",
97
-          name: "王晓红4",
98
-          phone: "15742389456",
99
-          building: "香颂.蔚澜半岛"
100
-        }
101
-      ]
80
+      tableData2: []
102
     };
81
     };
103
   },
82
   },
104
   computed: {},
83
   computed: {},
105
   methods: {
84
   methods: {
85
+    ...mapIndexEchartsActions(["getUserBehavior"]),
106
     search() {},
86
     search() {},
107
     drawLine() {
87
     drawLine() {
108
       // 折线图
88
       // 折线图
112
         title: {
92
         title: {
113
           text: "访问人数"
93
           text: "访问人数"
114
         },
94
         },
115
-        color: ["#000", "green", "#5793f3", "#d14a61", "#241bba", "orange"],
95
+        color: [
96
+          "#ed3a3d",
97
+          "#e613d2",
98
+          "#2ed9f7",
99
+          "#0ab662",
100
+          "#165cf8",
101
+          "#8854b9"
102
+        ],
116
         tooltip: {
103
         tooltip: {
117
           trigger: "axis"
104
           trigger: "axis"
118
         },
105
         },
177
   },
164
   },
178
   mounted() {
165
   mounted() {
179
     this.drawLine();
166
     this.drawLine();
167
+    this.getUserBehavior().then(x=>{
168
+      this.selectUserBehavior = x
169
+    });
180
   }
170
   }
181
 };
171
 };
182
 </script>
172
 </script>

+ 5
- 1
src/views/indexEcharts/index.vue 查看文件

74
 import apis from "../../config/api";
74
 import apis from "../../config/api";
75
 import { mapState } from "vuex";
75
 import { mapState } from "vuex";
76
 import Echarts from "echarts";
76
 import Echarts from "echarts";
77
+import dayjs from 'dayjs';
78
+
77
 const {
79
 const {
78
   mapState: mapIndexEchartsState,
80
   mapState: mapIndexEchartsState,
79
   mapActions: mapIndexEchartsActions
81
   mapActions: mapIndexEchartsActions
111
     initPage() {
113
     initPage() {
112
       this.setDetailNull();
114
       this.setDetailNull();
113
       this.getIndexEcharts().then(x => {
115
       this.getIndexEcharts().then(x => {
114
-        this.lineSeting.dataset.source = this.echartsInfo.selectUserBehavior
116
+        this.lineSeting.dataset.source = (this.echartsInfo.selectUserBehavior || []).map(x => ({ ...x, date: dayjs(x.date).format('YYYY-MM-DD') }))
117
+        // this.lineSeting.series = (this.echartsInfo.selectUserBehavior || []).map(x => ({ ...x, date: dayjs(x.date).format('YYYY-MM-DD') }))
118
+        this.lineSeting.title.text = '访问人数'
115
         const data = this.echartsInfo.selectNewsUserCount
119
         const data = this.echartsInfo.selectNewsUserCount
116
         this.tableData = (data || []).reduce((acc, item, index) => {
120
         this.tableData = (data || []).reduce((acc, item, index) => {
117
           const { date, userCount, authorizationCount } = item
121
           const { date, userCount, authorizationCount } = item

+ 0
- 1
src/views/indexEcharts/newUsers.vue 查看文件

21
 import { createNamespacedHelpers } from "vuex";
21
 import { createNamespacedHelpers } from "vuex";
22
 import apis from "../../config/api";
22
 import apis from "../../config/api";
23
 import { mapState } from "vuex";
23
 import { mapState } from "vuex";
24
-
25
 const {
24
 const {
26
   mapState: mapIndexEchartsState,
25
   mapState: mapIndexEchartsState,
27
   mapActions: mapIndexEchartsActions
26
   mapActions: mapIndexEchartsActions