This commit is contained in:
linfso 2024-11-25 09:25:50 +08:00
parent 22d46ffe97
commit 82797643cb
4 changed files with 191 additions and 46 deletions

View File

@ -425,17 +425,20 @@
}
.quick-link-wrapper {
padding: 12px;
padding: 3px;
display: block;
text-align: center;
text-decoration: none;
color: inherit;
// text-decoration: none;
// color: inherit;
text-decoration: underline;
// color: #b12e29;
color: #00213c;
}
.quick-link-wrapper .quick-link-title {
font-size: 14px;
font-weight: 500;
font-weight: 400;
}
.quick-link-box .icon {

View File

@ -71,58 +71,133 @@
<el-row :gutter="10" >
<el-col :xs="24" :sm="24" :md="16" :lg="16" :xl="16">
<CardWithHeader header="待办事项" height="146px" >
<CardWithHeader header="快捷方式" height="136px" >
<template v-slot:body>
<div style="display: flex;justify-content: space-between;flex-flow:row wrap ">
<el-button size="medium" plain ><span>待揽收</span></el-button>
<el-button size="medium" plain ><span>异常</span></el-button>
<el-button size="medium" plain ><span>新客户</span></el-button>
<el-button size="medium" plain ><span>清关</span></el-button>
<el-button size="medium" plain ><span>财务结算</span></el-button>
<el-button size="medium" plain ><span>网点管理</span></el-button>
<el-button size="medium" plain ><span>网点异常</span></el-button>
<div style="display: flex;justify-content: flex-start;flex-flow:row wrap ">
<router-link class="quick-link-wrapper" v-for="(quickItem,index) in quickActionList" :key="index" :to="quickItem.path">
<div class="quick-link-title">{{ quickItem.title }}</div>
</router-link>
<!-- <el-button size="medium" type="text" style="color: #b12e29;font-weight: 500;text-decoration: underline;" plain v-for="(quickItem,index) in quickActionList" :key="index" @click="change(quickItem)"><span>{{ quickItem.title }}</span></el-button> -->
</div>
</template>
</CardWithHeader>
<CardWithHeader header="快捷入口" height="146px">
<!-- <CardWithHeader header="待办提醒" height="146px">
<template v-slot:body>
<QuickLink ></QuickLink>
</template>
</CardWithHeader>
</CardWithHeader> -->
<CardWithHeader header="概览" height="146px" >
<CardWithHeader header="今日开单统计" height="146px" >
<template v-slot:body>
<div class="h-overview">
<el-row>
<el-col :span="5">
<div class="count">
<span @click="goRouter('/')" style="color: blue;">
{{queryStatInfoMap?queryStatInfoMap.totalNum:0}}
<span style="color: gray;font-size: 14px;">票</span>
</span>
<!-- <span @click="goRouter('/')">
{{queryStatInfoMap?queryStatInfoMap.totalNum:0}} <span>当月</span>
</span> -->
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">当日票数</div>
</el-col>
<el-col :span="6">
<div class="count" style="color: red;">
<span @click="goRouter('/websites')"><span style="color: gray;font-size: 14px;">¥</span>{{queryStatInfoMap?queryStatInfoMap.totalFreight:0}}
</span>
</div>
<div class="title">总运费</div>
</el-col>
<el-col :span="4">
<div class="count">
<span @click="goRouter('/')">{{queryStatInfoMap?queryStatInfoMap.totalBillWeight:0}}
<span style="color: gray;font-size: 14px;">kg</span>
</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">实际重量</div>
</el-col>
<el-col :span="4">
<div class="count">
<span @click="goRouter('/')">{{queryStatInfoMap?queryStatInfoMap.totalVolume:0}}
<span style="color: gray;font-size: 14px;">m³</span>
</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">体积</div>
</el-col>
<el-col :span="4">
<div class="count">
<span @click="goRouter('/websites')">{{queryStatInfoMap?queryStatInfoMap.totalSettlementWeight:0}}</span>
<span style="color: gray;font-size: 14px;">kg</span>
</div>
<div class="title">结算重量</div>
</el-col>
<!-- <el-col :span="6">
<LineChart :chart-data="lineChartData" />
</el-col> -->
</el-row>
</div>
</template>
</CardWithHeader>
<CardWithHeader header="回款预警统计" height="146px" >
<template v-slot:body>
<div class="h-overview">
<el-row>
<el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">{{queryStatInfoMap?queryStatInfoMap.totalSettlementWeight:0}}</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">结算重量(kg)</div>
</el-col>
<el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">{{queryStatInfoMap?queryStatInfoMap.totalFreight:0}}</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">应收总运费(kg)</div>
</el-col>
<!-- <el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">{{queryStatInfoMap?queryStatInfoMap.totalNum:0}}</span>
</div>
<div class="title">当月计提</div>
</el-col> -->
<el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">0</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">待收货</div>
</el-col>
<el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">188</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">待上架</div>
<div class="title">已收款/总应收款</div>
</el-col>
<el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">0</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">待拣货</div>
<div class="title">已开票/待开票</div>
</el-col>
<el-col :span="6">
<!-- <el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">0</span>
</div>
<div class="title">当月订单/总订单</div>
</el-col> -->
<!-- <el-col :span="6">
<div class="count">
<span @click="goRouter('/websites')">0</span>
</div>
<!-- <i class="icon iconfont icon-RectangleCopy141" style="color:#2296f3;font-size: 25px;"></i> -->
<div class="title">拣货中</div>
</el-col>
</el-col> -->
</el-row>
</div>
</template>
@ -130,23 +205,23 @@
</CardWithHeader>
<CardWithHeader header="应收/应付" height="400px">
<!-- <CardWithHeader header="日单量趋势(最近15天)" height="400px">
<template v-slot:body>
<line-chart :chart-data="lineChartData" />
<LineChart :chart-data="lineChartData" />
</template>
</CardWithHeader>
</CardWithHeader> -->
<CardWithHeader header="营业收入" style="margin-top: 20px; margin-bottom: 20px">
<!-- <CardWithHeader header="营业收入" style="margin-top: 20px; margin-bottom: 20px">
<template v-slot:body>
<!-- <v-charts
<v-charts
height="383px"
id="networkChart"
type="line"
:option="chartsOption['networkChart']"
:dataZoom="true"
/> -->
/>
</template>
</CardWithHeader>
</CardWithHeader> -->
</el-col>
<el-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
@ -157,25 +232,25 @@
</div> -->
<!-- <div style="flex: 1;padding-left: 12px;box-sizing: border-box;"> -->
<div style="flex: 1;padding-left: 0px;box-sizing: border-box;">
<div class="head-title" >Hi,{{nickName}},欢迎使用!</div>
<div class="head-title" >Hi,{{ownerSiteName}} {{nickName}},欢迎您!</div>
<!-- <div class="head-sub-title">有问题可直接联系客服。</div> -->
</div>
</div>
<div style="display:inline-flex;width:100%;margin-top:10px" >
<!-- <div style="display:inline-flex;width:100%;margin-top:10px" >
<div style="width: 50%;">
<span style="font-size: 14px;">账户余额(元)</span>
<span style="font-size: 14px;">预估提成(元)</span>
<div style="margin-top: 10px;font-size: 13px;font-weight: 500;">
<span @click="goRouter('/websites')">¥5000.00</span>
</div>
</div>
<div style="width: 50%;">
<span style="font-size: 14px;">信用额度(元)</span>
<span style="font-size: 14px;">待回款(元)</span>
<div style="margin-top: 10px;font-size: 13px;font-weight: 500;">
<span @click="goRouter('/websites')">¥100000.00</span>
</div>
</div>
</div>
<div style="margin-top: 10px;" >
</div> -->
<!-- <div style="margin-top: 10px;" >
<el-button
:loading="loading"
size="medium"
@ -184,7 +259,7 @@
>
<span>立即充值</span>
</el-button>
</div>
</div> -->
</el-card>
@ -197,7 +272,7 @@
<CardWithHeader header="最新消息">
<template v-slot:body>
<div class="chart-wrapper">
<raddar-chart />
<!-- <raddar-chart /> -->
</div>
</template>
</CardWithHeader>
@ -229,6 +304,9 @@ const lineChartData = {
}
}
import { GridLayout, GridItem } from 'vue-grid-layout'
import { listSimpleAction } from "@/api/system/sysActionStats";
import { getQueryStatInfoMap } from "@/api/emis/emisWaybill";
import {timeDiffTime,timeFormat} from '@/utils/dateUtils'
import CardWithHeader from '@/components/CardWithHeader/index.vue';
import RaddarChart from './common/RaddarChart.vue';
@ -249,6 +327,9 @@ export default {
return {
loading: false,
lineChartData: lineChartData.newVisitis,
quickActionList:[],
queryStatInfoMap:null,
dateRange:[],
layout: [
{ x: 0, y: 0, w: 3, h: 2, i: '1', static: false },
{ x: 6, y: 0, w: 3, h: 2, i: '2', static: false },
@ -257,12 +338,69 @@ export default {
}
},
computed: {
...mapGetters(['avatar', 'nickName']),
...mapGetters(['avatar', 'nickName','ownerSiteName']),
},
created() {
this.initQuickActionList();
this.initOrderStatData();
},
methods: {
initQuickActionList() {
let queryParams={
pageNum: 1,
pageSize: 12,
};
listSimpleAction(queryParams).then(response => {
this.quickActionList = response.rows;
});
},
initOrderStatData(){
// 查询统计
let qParam={
sendSiteCode:null,
params:{
sendSiteCode:null
}
}
if(this.$store.getters.ownerSiteCode!='88888'){
qParam.sendSiteCode=this.$store.getters.ownerSiteCode;
}
const end = new Date()
const start = new Date()
start.setHours(0,0,0,0)
end.setHours(23,59,59,0)
this.dateRange=[timeFormat(start), timeFormat(end)]
let extQParam={...qParam};
// let extQParam=this.addDateRange(qParam, this.dateRange,"sendDate");
getQueryStatInfoMap(extQParam).then(response => {
this.queryStatInfoMap = response.data;
});
},
ishttp(url) {
return url.indexOf('http://') !== -1 || url.indexOf('https://') !== -1
},
change(val) {
const path = val.path;
if(this.ishttp(val.path)) {
// http(s):// 路径新窗口打开
const pindex = path.indexOf("http");
window.open(path.substr(pindex, path.length), "_blank");
} else {
this.$router.push(val.path)
}
this.search = ''
this.options = []
this.$nextTick(() => {
this.show = false
})
this.initQuickActionList();
},
layoutUpdatedEvent(newLayout) {
this.layout = newLayout;
},

View File

@ -352,6 +352,10 @@
<span v-else>{{scope.row.waybillDetail.freight}}</span>
</template>
</el-table-column>
<el-table-column :label="$t('已收款金额')" align="center" prop="recedMoney" width="120" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('已开票金额')" align="center" prop="invoicedMoney" width="120" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('收款状态')" align="center" prop="paymentStatus" width="100" >
<template slot-scope="scope">
<el-tag v-if="scope.row.paymentStatus=='0'" type="error">未收款</el-tag>

View File

@ -59,7 +59,7 @@
</el-col>
<el-col :span="8" >
<el-form-item :label="$t('运输号')" prop="carNo">
<el-input v-model="coData.carNo" clearable="" placeholder="车牌号/航班号/船次号/提单号"></el-input>
<el-input v-model="coData.carNo" clearable="" placeholder="车牌号/船次号/提单号"></el-input>
</el-form-item>
</el-col>
<el-col :span="8" >