Files
firefly-iii/frontend/src/components/dashboard/MainAccount.vue

67 lines
2.1 KiB
Vue
Raw Normal View History

2020-06-17 07:06:45 +02:00
<template>
<div class="card">
<div class="card-header">
<h3 class="card-title">{{ $t('firefly.yourAccounts') }}</h3>
</div>
<div class="card-body">
<div class="main-account-chart">
2020-06-20 19:09:37 +02:00
<main-account-chart v-if="loaded" :styles="myStyles" :options="chartOptions" :chart-data="chartData"></main-account-chart>
2020-06-17 07:06:45 +02:00
</div>
</div>
<div class="card-footer">
<a href="./accounts/asset" class="btn btn-default button-sm"><i class="far fa-money-bill-alt"></i> {{ $t('firefly.go_to_asset_accounts') }}</a>
</div>
</div>
</template>
<script>
import MainAccountChart from "./MainAccountChart";
2020-06-20 19:09:37 +02:00
import DataConverter from "../charts/DataConverter";
2020-06-21 18:29:23 +02:00
import DefaultLineOptions from "../charts/DefaultLineOptions";
2020-06-17 07:06:45 +02:00
export default {
components: {
MainAccountChart
},
data() {
return {
2020-06-20 19:09:37 +02:00
chartData: null,
loaded: false,
chartOptions: null,
2020-06-17 07:06:45 +02:00
}
},
mounted() {
2020-06-21 18:29:23 +02:00
this.chartOptions = DefaultLineOptions.methods.getDefaultOptions();
2020-06-20 19:09:37 +02:00
this.loaded = false;
axios.get('./api/v1/chart/account/overview?start=' + window.sessionStart + '&end=' + window.sessionEnd)
.then(response => {
this.chartData = DataConverter.methods.convertChart(response.data);
2020-06-21 18:29:23 +02:00
this.chartData = DataConverter.methods.colorizeData(this.chartData);
this.chartData = DataConverter.methods.convertLabelsToDate(this.chartData);
2020-06-20 19:09:37 +02:00
this.loaded = true
});
2020-06-17 07:06:45 +02:00
},
methods: {
2020-06-20 19:09:37 +02:00
2020-06-17 07:06:45 +02:00
},
computed: {
myStyles() {
return {
height: '400px',
'max-height': '400px',
position: 'relative',
display: 'block',
}
}
},
name: "MainAccount"
}
</script>
<style scoped>
.main-account-chart {
}
</style>