fix: 统计功能,统一优化。

This commit is contained in:
tianyongbao
2024-10-24 19:14:15 +08:00
parent a79af70ca1
commit a3c3d7969a
14 changed files with 118 additions and 18 deletions

View File

@@ -4,7 +4,7 @@
<div class="title">查询条件</div>
<el-form :model="queryParams" ref="queryRef" :inline="true" :rules="rules" label-width="100px">
<el-form-item label="投资账户" style="width: 480px" prop="id">
<el-select v-model="queryParams.id" placeholder="请选择投资账户" clearable>
<el-select v-model="queryParams.id" placeholder="请选择投资账户" @change="handleChange" clearable>
<el-option v-for="account in accountsList" :key="account.id" :label="account.nameCodeAvailableLimit" :value="account.id" />
</el-select>
</el-form-item>
@@ -67,6 +67,28 @@
</div>
</div>
</div>
<div class="right-con">
<div class="img">
<img src="@/assets/images/average.png" alt="" />
</div>
<div class="item-wrap">
<div class="title">交易次数</div>
<div>
<span class="num">{{ account.count }}</span> <span class="unit"></span>
</div>
</div>
</div>
<div class="right-con">
<div class="img">
<img src="@/assets/images/average.png" alt="" />
</div>
<div class="item-wrap">
<div class="title">平均收益</div>
<div>
<span class="num">{{ account.average }}</span> <span class="unit"></span>
</div>
</div>
</div>
<div class="right-con">
<div class="img">
<img src="@/assets/images/average.png" alt="" />
@@ -94,13 +116,13 @@
<img src="@/assets/images/average.png" alt="" />
</div>
<div class="item-wrap">
<div class="title">盈利笔数</div>
<div class="title">交易笔数</div>
<div>
<span class="num">{{ account.incomeCount }}</span> <span class="unit"></span>
<span class="num">{{ account.incomeCount + account.expensesCount }}</span> <span class="unit"></span>
</div>
</div>
</div>
<div class="right-con">
<!-- <div class="right-con">
<div class="img">
<img src="@/assets/images/average.png" alt="" />
</div>
@@ -110,7 +132,7 @@
<span class="num">{{ account.expensesCount }}</span> <span class="unit"></span>
</div>
</div>
</div>
</div> -->
</div>
<div class="title-con" style="margin-top: 18px">
<div class="title">投资账户收益统计</div>
@@ -209,6 +231,11 @@ const data = reactive({
})
const { queryParams, queryAcccountsParams, rules } = toRefs(data)
const handleChange = (id) => {
queryParams.value.id = id
getList()
}
const today = new Date()
const end = today.getFullYear() + '-' + ('0' + (today.getMonth() + 1)).slice(-2) + '-' + ('0' + today.getDate()).slice(-2)
const start = today.getFullYear() + '-' + ('0' + (today.getMonth() + 1)).slice(-2) + '-01'
@@ -238,6 +265,14 @@ function formatMultiLineData(data) {
return data.replace(/<br\/>/g, '<br/>')
}
}
function average() {
if (account.tableAccountsList.length > 0) {
return parseFloat(account.amount / account.tableAccountsList.length).toFixed(2)
} else {
return 0
}
}
const disabledDateFun = (time) => {
const arr = [0, 30, 365, 365 * 5]
const days = arr[queryParams.value.type]
@@ -304,6 +339,12 @@ function getList() {
getAcccountsDealAnalysis(params).then((response) => {
loading.value = false
account.value = { ...response.data }
account.value.count = response.data.tableAccountsList.length
if (response.data.tableAccountsList.length > 0) {
account.value.average = parseFloat(account.value.amount / response.data.tableAccountsList.length).toFixed(2)
} else {
account.value.average = 0
}
account.value.acccountsList.map((item) => {
return {
name: item.time,