HomeAccounting
74 строки · 1.9 Кб
1<template>
2<div>
3<div id="accumulateChart"></div>
4<v-btn icon color="primary" @click="getData()">
5<v-icon>refresh</v-icon>
6</v-btn>
7</div>
8
9</template>
10
11<script>
12import Chart from 'c3';
13
14export default {
15name: "dynamic-accumulate-chart-component",
16data: () => ({
17months: {},
18sum: {},
19}),
20methods: {
21getData() {
22this.$store.commit('setPreloader', true);
23
24axios.get('/analitycs/dynamic-accumulate')
25.then(response=> {
26this.months = response.data[0];
27this.sum = response.data[1];
28
29this.$store.commit('setPreloader', false);
30
31})
32.catch(error => {
33this.$store.commit('AlertError', error.message);
34this.$store.commit('setPreloader', false);
35});
36},
37chartGenerate() {
38Chart.generate({
39bindto: '#accumulateChart',
40data: {
41columns: [
42this.sum
43]
44},
45axis: {
46x: {
47label: "Месяцы",
48type: 'category',
49categories: this.months,
50},
51y: {
52label: 'Сумма',
53}
54}
55});
56}
57},
58mounted() {
59this.getData();
60},
61computed: {
62
63},
64watch: {
65months() {
66this.chartGenerate();
67}
68}
69}
70</script>
71
72<style scoped>
73
74</style>