This commit is contained in:
linfso 2025-05-15 06:05:11 +08:00
parent 07b5185641
commit 5f2d3e116d
6 changed files with 132 additions and 91 deletions

View File

@ -60,6 +60,11 @@ export default {
initChart() {
this.chart = echarts.init(this.$el, 'macarons')
this.setOptions(this.chartData)
let that=this;
this.chart.on('click', function (params) {
that.$emit("onChangeTime",params);
});
},
setOptions({ xAxisData,orderStateData } = {}) {
this.chart.setOption({
@ -93,7 +98,7 @@ export default {
data: ['expected', 'actual']
},
series: [{
name: '订单统计', itemStyle: {
name: '统计', itemStyle: {
normal: {
color: '#FF005A',
lineStyle: {

View File

@ -3,22 +3,20 @@
<el-row :gutter="10" >
<el-col :span="12">
<CardWithHeader header="运单趋势(最近1个月)" height="400px">
<template v-slot:body>
<LineOrderChart :chart-data="orderStateData" />
</template>
</CardWithHeader>
</el-col>
<el-col :span="12">
<el-col :span="24">
<CardWithHeader header="收款趋势(最近3月)" height="400px">
<template v-slot:body>
<LineOrderChart :chart-data="recdStateData" />
<BarChart :chart-data="recdStateData" @onChangeTime="onChangeTime" />
</template>
</CardWithHeader>
</el-col>
<el-col :span="24">
<CardWithHeader header="收款明细" height="600px">
<template v-slot:body>
<PayDayRecordList key="1" :tradeDay="tradeDay" > </PayDayRecordList>
</template>
</CardWithHeader>
</el-col>
</el-row>
</div>
@ -32,19 +30,25 @@ import {timeDiffTime,timeFormat} from '@/utils/dateUtils'
import { calculateRecedMoney } from "@/api/emis/emisSettleBill";
import CardWithHeader from '@/components/CardWithHeader/index.vue';
import BarChart from '@/views/emis/common/BarChart.vue';
import LineOrderChart from '@/views/emis/common/LineOrderChart.vue';
import PayDayRecordList from '@/views/emis/emisSettleBill/PayBackStat/PayDayRecordList.vue';
import { mapGetters } from 'vuex'
import { beginText } from "pdf-lib";
export default {
name: 'Index',
components: {
CardWithHeader,
LineOrderChart
BarChart,
LineOrderChart,
PayDayRecordList
},
data() {
return {
loading: false,
tradeDay:null,
noticeList:[],
orderStateData:{
xAxisData:[],
@ -69,11 +73,12 @@ export default {
...mapGetters(['avatar', 'nickName','ownerSiteName']),
},
created() {
this.initOrderStatData();
// this.initOrderStatData();
this.initRecdStatData();
},
methods: {
initOrderStatData(){
// 查询统计
@ -155,6 +160,10 @@ export default {
});
},
onChangeTime(data){
console.log("===onChangeTime=>data===>",data);
this.tradeDay=data.name;
},
goRouterPath(clickPath) {
// 跳转预警详情页面
this.$router.push({

View File

@ -145,6 +145,9 @@ export default {
},
queryType:{
type:Number
},
tradeDay:{
type:String
}
},
@ -189,14 +192,7 @@ export default {
id:null,
titleView:"",
openView: false,
// 更新站点时间范围
daterangeSettleStartDate: [],
// 更新站点时间范围
daterangeSettleEndDate: [],
// 更新站点时间范围
daterangeCreateTime: [],
// 更新站点时间范围
daterangeUpdateTime: [],
// 查询参数
queryParams: {
pageNum: 1,
@ -211,17 +207,25 @@ export default {
watch: {
"queryInfo": {
handler (newValue, oldValue) {
console.log("====>queryInfo====>",this.queryInfo);
this.queryParams.settleBillNo=this.queryInfo.settleBillNo;
this.queryParams.settleBillNo=this.$route.query.settleBillNo;
this.queryParams.params.queryDataType=this.$route.query.queryDataType;
this.getList();
},
deep: true
},
"tradeDay": {
handler (newValue, oldValue) {
console.log("====>tradeDay====>",this.tradeDay);
this.dateTimeRange=[this.tradeDay+' 00:00:00',this.tradeDay+' 23:59:59'];
this.getList();
},
deep: true
},
$route () {
if(this.$route.query.action=='queryBIData'){
this.queryParams.settleBillNo=this.$route.query.settleBillNo;
this.queryParams.params.queryDataType=this.$route.query.queryDataType;
this.getList();
}
@ -229,23 +233,19 @@ export default {
},
created() {
console.log("====>queryInfo====>",this.queryInfo);
// if(this.queryInfo!=null){
// this.queryParams.settleBillNo=this.queryInfo.settleBillNo;
// }
if(this.$route.query.action=='queryBIData'){
this.queryParams.settleBillNo=this.$route.query.settleBillNo;
this.queryParams.params.queryDataType=this.$route.query.queryDataType;
this.queryParams.settleBillNo=this.$route.query.settleBillNo;
this.queryParams.params.queryDataType=this.$route.query.queryDataType;
this.getList();
}
// this.getList();
},
methods: {
/** 查询结算总账单列表 */
getList() {
this.loading = true;
let qParams = this.addDateRange(this.queryParams, this.dateTimeRange,"tradeDate");
this.emisSettleBillList=[];
queryPayBackRecordList(this.queryParams).then(response => {
queryPayBackRecordList(qParams).then(response => {
this.emisSettleBillList = response.rows;
this.total = response.total;
this.loading = false;
@ -490,8 +490,6 @@ export default {
return ++index
}
if (j === 'waybillDetail.parcelQty') {
return v['waybillDetail']['parcelQty'];
}

View File

@ -78,6 +78,14 @@
>
<div slot="toolbar">
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
size="mini"
@click="handleShowCanlender"
>收款日历</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
@ -115,11 +123,6 @@
</el-table-column>
<el-table-column :label="$t('账单金额')" align="center" prop="recMoney" width="150" />
<el-table-column :label="$t('总票数')" align="center" prop="sendPieceSum" width="80" />
<el-table-column :label="$t('收款汇总')" align="center" prop="recdMoneyIn" width="180" >
<template slot-scope="scope">
<div class="link-type" @click="handleShowPayList(scope.row,1)">{{ scope.row.recdMoneyIn }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('账期内收款金额(100%)')" align="center" prop="recdMoneyIn" width="180" >
<template slot-scope="scope">
<div class="link-type" @click="handleShowBillList(scope.row,1)">{{ scope.row.recdMoneyIn }}</div>
@ -296,6 +299,17 @@ export default {
return thisQueryParams;
},
handleShowCanlender(){
this.$router.push(
{
path: '/BIStatData/PayDay',
query: {
action: "queryPayData",
'_t':(new Date()).getTime()
}
}
);
},
handleShowBillList(row,queryDataType){
let item0=row;
this.$router.push(

View File

@ -49,11 +49,11 @@
</template>
</CardWithHeader>
<CardWithHeader header="收款趋势" height="400px" >
<!-- <CardWithHeader header="收款趋势" height="400px" >
<template v-slot:body>
<LineOrderChart :chart-data="recdStateData" :key="resetRefreshId+'2'" />
<BarChart :chart-data="recdStateData" :key="resetRefreshId+'2'" />
</template>
</CardWithHeader>
</CardWithHeader> -->
<!--
<CardWithHeader header="未回款统计" height="400px">
@ -71,12 +71,13 @@
import dayjs from 'dayjs'
import CardWithHeader from '@/components/CardWithHeader/index.vue';
import LineOrderChart from '@/views/emis/common/LineOrderChart.vue';
import BarChart from '@/views/emis/common/BarChart.vue';
import {timeFormat} from '@/utils/dateUtils'
import moment from "moment";
export default {
components: {
CardWithHeader,LineOrderChart
CardWithHeader,LineOrderChart,BarChart
},
data() {
return {
@ -114,25 +115,6 @@
let end = moment(newVal).endOf("month");
this.dateRange=[timeFormat(start), timeFormat(end)]
this.initRecdStatData();
// if (
// val &&
// moment(val).format("YYYY-MM-DD") == moment().format("YYYY-MM-DD")
// ) {
// console.log("点击了‘今天’按钮");
// } else if (
// val &&
// moment(val).toDate() < moment(oldVal).startOf("month").toDate()
// ) {
// console.log("点击了‘上个月’按钮");
// } else if (
// val &&
// moment(val).toDate() > moment(oldVal).endOf("month").toDate()
// ) {
// console.log("点击了‘下个月’按钮");
// } else {
// console.log("点击了" + moment(val).format("YYYY-MM") + "的按钮");
// }
},
},
computed: {},

View File

@ -25,8 +25,8 @@
<el-form-item label="登记时间" prop="createTime" label-width="100px" >
<div slot="label" style="text-align: left;">
<el-radio-group class="query-label" v-model="queryDateType">
<el-radio :key="1" label="1">登记时间</el-radio>
<el-radio :key="2" label="2">交易时间</el-radio>
<el-radio :key="1" label="1">登记时间</el-radio>
</el-radio-group>
</div>
@ -83,7 +83,9 @@
border
size="mini"
storageName="emisSettlePayRecordList_main_s01"
ref="refTable"
storageName="emisSettlePayRecordList_main_s02"
:data="emisSettlePayRecordList"
:showSearch.sync="showSearch"
@ -100,16 +102,14 @@
<div slot="toolbar">
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['emis:emisSettlePayRecord:add']"
>新增</el-button>
</el-col> -->
@click="handleShowCanlender"
>收款日历</el-button>
</el-col>
<!--
<el-col :span="1.5">
<el-button
@ -157,8 +157,8 @@
<el-table-column :label="$t('流水号')" align="center" prop="payId" width="170" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('收款来源')" align="center" prop="settleType" width="80" >
<template slot-scope="scope">
<el-tag type="success" v-if="scope.row.settleType == '1'">月结收款</el-tag>
<el-tag type="success" v-if="scope.row.settleType == '2'">现金收款</el-tag>
<el-tag type="success" v-if="scope.row.settleType == '1'">现金收款</el-tag>
<el-tag type="success" v-if="scope.row.settleType == '2'">月结收款</el-tag>
</template>
</el-table-column>
<el-table-column :label="$t('缴款客户')" align="center" prop="payMan" width="150" :show-overflow-tooltip="true" />
@ -221,6 +221,7 @@ import { listEmisSettlePayRecord, getEmisSettlePayRecord, delEmisSettlePayRecord
import emisSettlePayRecordForm from '@/views/emis/emisSettlePayRecord/emisSettlePayRecordForm';
import SalemanPicker from '@/views/emis/EmisBaseTools/SalemanPicker.vue';
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker';
import {timeDiffTime,timeFormat} from '@/utils/dateUtils'
export default {
name: "EmisSettlePayRecord",
@ -313,33 +314,44 @@ export default {
};
},
watch: {
$route () {
if(this.$route.query.action=='queryPayData'){
let tradeDay=this.$route.query.tradeDay;
this.queryDateType="2";
'$route': {
handler(to, from) {
console.log("====>$route====>",this.$route);
if(this.$route.query.action=='queryPayData'){
let tradeDay=this.$route.query.tradeDay;
this.queryDateType="2";
this.dateTimeRange[0]=tradeDay+' 00:00:00';
this.dateTimeRange[1]=tradeDay+' 23:59:59';
this.dateTimeRange=[tradeDay+' 00:00:00',tradeDay+' 23:59:59'];
this.getList();
}
}
this.getList();
}
},
deep: true,
immediate: true
}
},
created() {
},
mounted(){
this.queryOrderType="1";
this.queryDateType="2";
if(this.$route.query.action=='queryPayData'){
let tradeDay=this.$route.query.tradeDay;
this.queryDateType="2";
this.dateTimeRange[0]=tradeDay+' 00:00:00';
this.dateTimeRange[1]=tradeDay+' 23:59:59';
this.dateTimeRange=[tradeDay+' 00:00:00',tradeDay+' 23:59:59'];
this.getList();
}else{
const end = new Date()
const start = new Date()
start.setHours(0,0,0,0)
end.setHours(23,59,59,0)
this.dateTimeRange=[timeFormat(start), timeFormat(end)]
this.getList();
}
},
methods: {
@ -362,11 +374,19 @@ export default {
thisQueryParams = this.addDateRange(this.queryParams, this.dateTimeRange,"tradeDate");
}
return thisQueryParams;
return thisQueryParams;
},
handleShowCanlender(){
this.$router.push(
{
path: '/BIStatData/PayDay',
query: {
action: "queryPayData",
'_t':(new Date()).getTime()
}
}
);
},
/** 查询账单收退款记录列表 */
getList() {
@ -544,7 +564,7 @@ export default {
let qExportParam={...this.queryParams};
qExportParam.pageNum=1;
qExportParam.pageSize=20000;
queryPayBackRecordList(qExportParam).then(response => {
listEmisSettlePayRecord(qExportParam).then(response => {
if (response.code === 200) {
this.exportData(response.rows,loadingInstance);
}
@ -733,6 +753,19 @@ export default {
return '';
}
}
if (j === 'settleType') {
if(v['settleType'] == 1){
return '现金收款';
}
else if(v['settleType'] == 2){
return '月结收款';
}else{
return '-';
}
}
if (j === 'settleSubBill.openBillStatus') {
let openBillStatus=v['settleSubBill']['openBillStatus'];
if(openBillStatus== 0){