修改成本汇总bug
This commit is contained in:
parent
554fc231c8
commit
0abff1e576
@ -17,7 +17,7 @@
|
|||||||
"cropperjs": "1.5.13",
|
"cropperjs": "1.5.13",
|
||||||
"crypto-js": "4.1.1",
|
"crypto-js": "4.1.1",
|
||||||
"echarts": "5.4.1",
|
"echarts": "5.4.1",
|
||||||
"element-plus": "2.2.32",
|
"element-plus": "^2.8.2",
|
||||||
"nprogress": "0.2.0",
|
"nprogress": "0.2.0",
|
||||||
"qrcodejs2": "0.0.2",
|
"qrcodejs2": "0.0.2",
|
||||||
"sortablejs": "1.15.0",
|
"sortablejs": "1.15.0",
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
import sysConfig from "@/config"
|
import sysConfig from "@/config"
|
||||||
import tool from '@/utils/tool'
|
import tool from '@/utils/tool'
|
||||||
import { createI18n } from 'vue-i18n'
|
import { createI18n } from 'vue-i18n'
|
||||||
import el_zh_cn from 'element-plus/lib/locale/lang/zh-cn'
|
import el_zh_cn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||||
import el_en from 'element-plus/lib/locale/lang/en'
|
import el_en from 'element-plus/dist/locale/en.mjs'
|
||||||
|
|
||||||
import zh_cn from './lang/zh-cn.js'
|
import zh_cn from './lang/zh-cn.js'
|
||||||
import en from './lang/en.js'
|
import en from './lang/en.js'
|
||||||
|
|||||||
@ -57,6 +57,12 @@
|
|||||||
.el-pagination{
|
.el-pagination{
|
||||||
--el-pagination-button-width-small:28px;
|
--el-pagination-button-width-small:28px;
|
||||||
--el-pagination-button-height-small:28px;
|
--el-pagination-button-height-small:28px;
|
||||||
|
.el-select--small{
|
||||||
|
height: 28px;
|
||||||
|
.el-select__wrapper{
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.el-tabs.role_tabs{
|
.el-tabs.role_tabs{
|
||||||
--el-tabs-header-height:42px;
|
--el-tabs-header-height:42px;
|
||||||
@ -108,7 +114,8 @@
|
|||||||
.el-main.nopadding .searchMainNoTop{margin-top: 0;}
|
.el-main.nopadding .searchMainNoTop{margin-top: 0;}
|
||||||
.el-main.nopadding .searchMain .searchItem{display: flex;flex-direction: column;align-items: flex-start;margin-right: 20px;margin-bottom: 10px;}
|
.el-main.nopadding .searchMain .searchItem{display: flex;flex-direction: column;align-items: flex-start;margin-right: 20px;margin-bottom: 10px;}
|
||||||
.el-main.nopadding .searchMain .searchItem .name{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color: #303133;padding-bottom: 5px;text-align: right;}
|
.el-main.nopadding .searchMain .searchItem .name{white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color: #303133;padding-bottom: 5px;text-align: right;}
|
||||||
.el-main.nopadding .searchMain .searchItem .input{width: 230px;}
|
.el-main.nopadding .searchMain .searchItem .input{width: 230px;height: 28px;}
|
||||||
|
.el-main.nopadding .searchMain .searchItem .el-select--small .el-select__wrapper{height: 100%;}
|
||||||
.el-main.nopadding .searchMain .searchItem.searchBtn{display: flex;flex-direction: row;}
|
.el-main.nopadding .searchMain .searchItem.searchBtn{display: flex;flex-direction: row;}
|
||||||
|
|
||||||
.el-drawer__body {overflow: auto;padding:0;}
|
.el-drawer__body {overflow: auto;padding:0;}
|
||||||
@ -161,8 +168,10 @@
|
|||||||
.el-tag {transition: all 0s !important;}
|
.el-tag {transition: all 0s !important;}
|
||||||
|
|
||||||
/** 弹款的头部配置 */
|
/** 弹款的头部配置 */
|
||||||
.el-dialog .el-dialog__header{margin-right: 0;padding-bottom: 20px;box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.06);}
|
.el-dialog{padding: 0;}
|
||||||
.el-dialog .el-dialog__footer{padding-top: 20px;box-shadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.06);}
|
.el-dialog .el-dialog__header{margin-right: 0;padding: 20px;box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.06);}
|
||||||
|
.el-dialog .el-dialog__body{padding: 30px 20px;}
|
||||||
|
.el-dialog .el-dialog__footer{padding: 20px;box-shadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.06);}
|
||||||
|
|
||||||
/* 覆盖tinymce样式 */
|
/* 覆盖tinymce样式 */
|
||||||
.sceditor .tox-tinymce {border: 1px solid #DCDFE6;border-radius: 0;}
|
.sceditor .tox-tinymce {border: 1px solid #DCDFE6;border-radius: 0;}
|
||||||
|
|||||||
@ -12,7 +12,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="searchItem">
|
<div class="searchItem">
|
||||||
<label class="name">时间范围</label>
|
<label class="name">时间范围</label>
|
||||||
<el-date-picker :size="size" class="input" type="daterange" v-model="reqParams.dateSelect" value-format="YYYY-MM-DD" start-placeholder="开始时间" end-placeholder="结束时间"></el-date-picker>
|
<el-date-picker :size="size" class="input" :type="reqParams.date_type=='day'?'daterange':reqParams.date_type=='month'?'monthrange':reqParams.date_type=='year'?'yearrange':'datetimerange'" v-model="reqParams.dateSelect" value-format="YYYY-MM-DD"
|
||||||
|
start-placeholder="开始时间"
|
||||||
|
end-placeholder="结束时间">
|
||||||
|
</el-date-picker>
|
||||||
</div>
|
</div>
|
||||||
</scSearch>
|
</scSearch>
|
||||||
<div class="searchItem searchBtn">
|
<div class="searchItem searchBtn">
|
||||||
@ -23,7 +26,7 @@
|
|||||||
</scExport>
|
</scExport>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mainMiddle">
|
<div class="mainMiddle" v-loading="loading" element-loading-text="努力加载中...">
|
||||||
<div class="echartsView">
|
<div class="echartsView">
|
||||||
<scEcharts ref="c1" height="300px" :option="option"></scEcharts>
|
<scEcharts ref="c1" height="300px" :option="option"></scEcharts>
|
||||||
</div>
|
</div>
|
||||||
@ -47,6 +50,7 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
size:'small',
|
size:'small',
|
||||||
|
loading:false,
|
||||||
dialog: {
|
dialog: {
|
||||||
save: false,
|
save: false,
|
||||||
show: false,
|
show: false,
|
||||||
@ -131,7 +135,9 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
async getData() {
|
async getData() {
|
||||||
|
this.loading = true;
|
||||||
const res = await this.$API.finance.cost.summary.post(this.reqParams);
|
const res = await this.$API.finance.cost.summary.post(this.reqParams);
|
||||||
|
this.loading = false;
|
||||||
if(res.code == 200){
|
if(res.code == 200){
|
||||||
res.data.tableList.data = this.setTableList(res.data.tableList.data);
|
res.data.tableList.data = this.setTableList(res.data.tableList.data);
|
||||||
this.feesData = res.data;
|
this.feesData = res.data;
|
||||||
@ -143,11 +149,16 @@ export default {
|
|||||||
},
|
},
|
||||||
formatter: function (params) {
|
formatter: function (params) {
|
||||||
const filteredParams = params.filter(param => param.value !== 0);
|
const filteredParams = params.filter(param => param.value !== 0);
|
||||||
|
let totalData = 0;
|
||||||
|
filteredParams.map(em=> {
|
||||||
|
totalData += em.value
|
||||||
|
})
|
||||||
const formattedParams = filteredParams.map(param => {
|
const formattedParams = filteredParams.map(param => {
|
||||||
|
const percentage = (param.value/totalData*100).toFixed(2);
|
||||||
const seriesColor = param.color;
|
const seriesColor = param.color;
|
||||||
return `<span style="display: flex;justify-content: space-between"><span><span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${seriesColor};"></span> ${param.seriesName} </span><span style="font-weight: 500;margin-left: 10px">${param.value}</span></span>`;
|
return `<span style="display: flex;justify-content: space-between"><span><span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${seriesColor};"></span>${param.seriesName} </span><div style="display: flex;justify-content: space-between;margin-left: 15px"><span style="font-weight: 500;display: inline-block;text-align: right;">¥ ${param.value}</span><span style="display: inline-block;margin-left: 10px; width: 50px;text-align: left;font-weight: 500;">${percentage}%</span></div></span>`;
|
||||||
}).join('');
|
}).join('');
|
||||||
return params[0].name + '<br/>' + formattedParams;
|
return params[0].name + '<br/>总金额:¥ '+ totalData.toFixed(2) + '<br/>' + formattedParams;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
toolbox:{
|
toolbox:{
|
||||||
@ -171,7 +182,14 @@ export default {
|
|||||||
},
|
},
|
||||||
yAxis: [{
|
yAxis: [{
|
||||||
type: 'value',
|
type: 'value',
|
||||||
|
show:true,
|
||||||
|
axisLabel:{
|
||||||
|
margin:this.feesData.dateRange.length<13? 56:20
|
||||||
|
},
|
||||||
name: '',
|
name: '',
|
||||||
|
axisTick:{
|
||||||
|
show:false
|
||||||
|
},
|
||||||
splitLine: {
|
splitLine: {
|
||||||
show: false
|
show: false
|
||||||
}
|
}
|
||||||
|
|||||||
17
yarn.lock
17
yarn.lock
@ -1012,7 +1012,12 @@
|
|||||||
"resolved" "https://registry.npmmirror.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz"
|
"resolved" "https://registry.npmmirror.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz"
|
||||||
"version" "0.5.7"
|
"version" "0.5.7"
|
||||||
|
|
||||||
"@element-plus/icons-vue@^2.0.6", "@element-plus/icons-vue@2.0.10":
|
"@element-plus/icons-vue@^2.3.1":
|
||||||
|
"integrity" "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg=="
|
||||||
|
"resolved" "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz"
|
||||||
|
"version" "2.3.1"
|
||||||
|
|
||||||
|
"@element-plus/icons-vue@2.0.10":
|
||||||
"integrity" "sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ=="
|
"integrity" "sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ=="
|
||||||
"resolved" "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz"
|
"resolved" "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz"
|
||||||
"version" "2.0.10"
|
"version" "2.0.10"
|
||||||
@ -3150,13 +3155,13 @@
|
|||||||
"resolved" "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.528.tgz"
|
"resolved" "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.528.tgz"
|
||||||
"version" "1.4.528"
|
"version" "1.4.528"
|
||||||
|
|
||||||
"element-plus@2.2.32":
|
"element-plus@^2.8.2":
|
||||||
"integrity" "sha512-DTJMhYOy6MApbmh6z/95hPTK5WrBiNHGzV4IN+uEkup1WoimQ+Qyt8RxKdTe/X1LWEJ8YgWv/Cl8P4ocrt5z5g=="
|
"integrity" "sha512-pqoQlaUmzUFCjjTHyxGO7Cd0CizsQpIaad1ozV9PCaYjh2T4MIMnjfifqiYs2lWoZ/8GVwrRG1WTCfnZEjwfcg=="
|
||||||
"resolved" "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.32.tgz"
|
"resolved" "https://registry.npmmirror.com/element-plus/-/element-plus-2.8.2.tgz"
|
||||||
"version" "2.2.32"
|
"version" "2.8.2"
|
||||||
dependencies:
|
dependencies:
|
||||||
"@ctrl/tinycolor" "^3.4.1"
|
"@ctrl/tinycolor" "^3.4.1"
|
||||||
"@element-plus/icons-vue" "^2.0.6"
|
"@element-plus/icons-vue" "^2.3.1"
|
||||||
"@floating-ui/dom" "^1.0.1"
|
"@floating-ui/dom" "^1.0.1"
|
||||||
"@popperjs/core" "npm:@sxzz/popperjs-es@^2.11.7"
|
"@popperjs/core" "npm:@sxzz/popperjs-es@^2.11.7"
|
||||||
"@types/lodash" "^4.14.182"
|
"@types/lodash" "^4.14.182"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user