|
|
@ -0,0 +1,836 @@
|
|
|
|
|
|
|
|
<template>
|
|
|
|
|
|
|
|
<div class="dashboard-editor-container">
|
|
|
|
|
|
|
|
<el-row class="JNPF-common-search-box" :gutter="16">
|
|
|
|
|
|
|
|
<el-form @submit.native.prevent>
|
|
|
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
|
|
|
<el-form-item label="商户">
|
|
|
|
|
|
|
|
<JnpfSelect v-model="dataForm.beLongCompanyId" placeholder="请选择要查询的商户" clearable
|
|
|
|
|
|
|
|
:options="beLongCompanyIdOptions" :props="beLongCompanyIdProps">
|
|
|
|
|
|
|
|
</JnpfSelect>
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
|
|
<el-col :span="6">
|
|
|
|
|
|
|
|
<el-form-item>
|
|
|
|
|
|
|
|
<el-button type="primary" icon="el-icon-search" @click="search()">查询</el-button>
|
|
|
|
|
|
|
|
<el-button icon="el-icon-refresh-right" @click="reset()">重置</el-button>
|
|
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
</el-col>
|
|
|
|
|
|
|
|
</el-form>
|
|
|
|
|
|
|
|
</el-row>
|
|
|
|
|
|
|
|
<div class="sale">
|
|
|
|
|
|
|
|
<div class="sale_title">
|
|
|
|
|
|
|
|
<span>设备信息</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<ul class="sale_items">
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>设备数量</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="deviceNums" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>在线</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="onlineNums" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>离线</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="offlineNums" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>满溢报警</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="fullNums" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>烟雾报警</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="sogNums" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sale">
|
|
|
|
|
|
|
|
<div class="sale_title">
|
|
|
|
|
|
|
|
<span>投递订单信息(本月)</span>
|
|
|
|
|
|
|
|
<span>已审核</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<ul class="sale_items">
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>订单总数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="orders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>总金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ price.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>异常重量</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="errorOrders" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sale">
|
|
|
|
|
|
|
|
<div class="sale_title">
|
|
|
|
|
|
|
|
<span>清运订单信息(本月)</span>
|
|
|
|
|
|
|
|
<span>已审核</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<ul class="sale_items">
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>订单总数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="cleanOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>总重量</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="totalWeight" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>审核后总订单</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="auditedOrders" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>审核后总重量</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="auditedWeight" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>未审核总订单</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="unauditedOrders" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>未审核总重量</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="unauditedWeight" :duration="3600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sale">
|
|
|
|
|
|
|
|
<div class="sale_title">
|
|
|
|
|
|
|
|
<span>回收订单信息(本月)</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<ul class="sale_items">
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>上门回收订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="doorRecycleOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 上门回收金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ doorRecyclePrice.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>定时回收订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="regularRecycleOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 定时回收金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ regularRecyclePrice.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>定时回收订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="inboundRecycleOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 定时回收金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ inboundRecyclePrice.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sale">
|
|
|
|
|
|
|
|
<div class="sale_title">
|
|
|
|
|
|
|
|
<span>财务信息(本月)</span>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<ul class="sale_items">
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 账户余额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ fund.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>投递单订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="orders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 投递单总金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ price.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>上门回收订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="doorRecycleOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 上门回收金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ doorRecyclePrice.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>定时回收订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="regularRecycleOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 定时回收金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ regularRecyclePrice.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
<el-card class="box-card">
|
|
|
|
|
|
|
|
<div class="card-items">
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span>定时回收订单数</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
<count-to :start-val="0" :end-val="inboundRecycleOrders" :duration="2600" class="card-panel-num" />
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li class="card-item">
|
|
|
|
|
|
|
|
<span> 定时回收金额</span>
|
|
|
|
|
|
|
|
<p class="nums">
|
|
|
|
|
|
|
|
{{ inboundRecyclePrice.toFixed(2) }}元
|
|
|
|
|
|
|
|
</p>
|
|
|
|
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</el-card>
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<panel-group />
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
|
|
|
import request from '@/utils/request';
|
|
|
|
|
|
|
|
import { getCompanyList } from "@/api/device";
|
|
|
|
|
|
|
|
import CountTo from 'vue-count-to';
|
|
|
|
|
|
|
|
import { getDataInterfaceRes } from "@/api/systemData/dataInterface";
|
|
|
|
|
|
|
|
import { Card } from 'element-ui';
|
|
|
|
|
|
|
|
export default {
|
|
|
|
|
|
|
|
name: 'DashboardAdmin',
|
|
|
|
|
|
|
|
components: {
|
|
|
|
|
|
|
|
CountTo,
|
|
|
|
|
|
|
|
[Card.name]: Card
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
data() {
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
|
|
|
intervalId: null,
|
|
|
|
|
|
|
|
beLongCompanyIdOptions: [],
|
|
|
|
|
|
|
|
beLongCompanyIdProps: { label: "enterpriseName", value: "id" },
|
|
|
|
|
|
|
|
deviceNums: 0,
|
|
|
|
|
|
|
|
onlineNums: 0,
|
|
|
|
|
|
|
|
offlineNums: 0,
|
|
|
|
|
|
|
|
fullNums: 0,
|
|
|
|
|
|
|
|
sogNums: 0,
|
|
|
|
|
|
|
|
orders: 0,
|
|
|
|
|
|
|
|
price: 0,
|
|
|
|
|
|
|
|
errorOrders: 0,
|
|
|
|
|
|
|
|
fund: 0,
|
|
|
|
|
|
|
|
cleanOrders: 0,
|
|
|
|
|
|
|
|
totalWeight: 0,
|
|
|
|
|
|
|
|
auditedOrders: 0,
|
|
|
|
|
|
|
|
auditedWeight: 0,
|
|
|
|
|
|
|
|
unauditedOrders: 0,
|
|
|
|
|
|
|
|
unauditedWeight: 0,
|
|
|
|
|
|
|
|
doorRecycleOrders: 0,
|
|
|
|
|
|
|
|
doorRecyclePrice: 0,
|
|
|
|
|
|
|
|
regularRecycleOrders: 0,
|
|
|
|
|
|
|
|
regularRecyclePrice: 0,
|
|
|
|
|
|
|
|
inboundRecycleOrders: 0,
|
|
|
|
|
|
|
|
inboundRecyclePrice: 0,
|
|
|
|
|
|
|
|
dataForm: {
|
|
|
|
|
|
|
|
beLongCompanyId: undefined
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
query: {
|
|
|
|
|
|
|
|
beLongCompanyId: undefined
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
interfaceRes: {
|
|
|
|
|
|
|
|
beLongCompanyId: []
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
queryData: {},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
mounted() {
|
|
|
|
|
|
|
|
this.startNumberAnimation();
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
beforeDestroy() {
|
|
|
|
|
|
|
|
if (this.intervalId) {
|
|
|
|
|
|
|
|
clearInterval(this.intervalId);
|
|
|
|
|
|
|
|
this.intervalId = null;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
created() {
|
|
|
|
|
|
|
|
this.initDeviceData();
|
|
|
|
|
|
|
|
this.initDeliveryOrderData();
|
|
|
|
|
|
|
|
this.initCleanOrderData();
|
|
|
|
|
|
|
|
this.orderData();
|
|
|
|
|
|
|
|
this.getbeLongCompanyIdOptions();
|
|
|
|
|
|
|
|
this.queryData = JSON.parse(JSON.stringify(this.query));
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
computed: {
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
methods: {
|
|
|
|
|
|
|
|
initDeviceData() {
|
|
|
|
|
|
|
|
if (this.dataForm.beLongCompanyId == undefined) {
|
|
|
|
|
|
|
|
this.$message.error('请选择需要查询的商户');
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
request({
|
|
|
|
|
|
|
|
url: `/api/scm/RecycleDevice/deviceCount/` + this.dataForm.beLongCompanyId,
|
|
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
|
|
}).then(res => {
|
|
|
|
|
|
|
|
this.deviceNums = res.data.deviceNums;
|
|
|
|
|
|
|
|
this.onlineNums = res.data.onlineNums;
|
|
|
|
|
|
|
|
this.offlineNums = res.data.offlineNums;
|
|
|
|
|
|
|
|
this.fullNums = res.data.fullNums;
|
|
|
|
|
|
|
|
this.sogNums = res.data.sogNums;
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
initDeliveryOrderData() {
|
|
|
|
|
|
|
|
if (this.dataForm.beLongCompanyId == undefined) {
|
|
|
|
|
|
|
|
this.$message.error('请选择需要查询的商户');
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
request({
|
|
|
|
|
|
|
|
url: `/api/scm/RecycleDeliveryOrder/deliveryOrderCount/` + this.dataForm.beLongCompanyId,
|
|
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
|
|
}).then(res => {
|
|
|
|
|
|
|
|
this.orders = res.data.orders;
|
|
|
|
|
|
|
|
this.price = res.data.price;
|
|
|
|
|
|
|
|
this.errorOrders = res.data.errorOrders;
|
|
|
|
|
|
|
|
this.fund = res.data.fund;
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
initCleanOrderData() {
|
|
|
|
|
|
|
|
if (this.dataForm.beLongCompanyId == undefined) {
|
|
|
|
|
|
|
|
this.$message.error('请选择需要查询的商户');
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
request({
|
|
|
|
|
|
|
|
url: `/api/scm/RecycleCleanOrder/cleanOrderCount/` + this.dataForm.beLongCompanyId,
|
|
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
|
|
}).then(res => {
|
|
|
|
|
|
|
|
this.cleanOrders = res.data.orders;
|
|
|
|
|
|
|
|
this.totalWeight = res.data.totalWeight;
|
|
|
|
|
|
|
|
this.auditedOrders = res.data.auditedOrders;
|
|
|
|
|
|
|
|
this.auditedWeight = res.data.auditedWeight;
|
|
|
|
|
|
|
|
this.unauditedOrders = res.data.unauditedOrders;
|
|
|
|
|
|
|
|
this.unauditedWeight = res.data.unauditedWeight;
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
orderData() {
|
|
|
|
|
|
|
|
if (this.dataForm.beLongCompanyId == undefined) {
|
|
|
|
|
|
|
|
this.$message.error('请选择需要查询的商户');
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
request({
|
|
|
|
|
|
|
|
url: `/api/scm/RecycleOrder/orderCount/` + this.dataForm.beLongCompanyId,
|
|
|
|
|
|
|
|
method: 'get',
|
|
|
|
|
|
|
|
}).then(res => {
|
|
|
|
|
|
|
|
this.doorRecycleOrders = res.data.doorRecycleOrders;
|
|
|
|
|
|
|
|
this.doorRecyclePrice = res.data.doorRecyclePrice;
|
|
|
|
|
|
|
|
this.regularRecycleOrders = res.data.regularRecycleOrders;
|
|
|
|
|
|
|
|
this.regularRecyclePrice = res.data.regularRecyclePrice;
|
|
|
|
|
|
|
|
this.inboundRecycleOrders = res.data.inboundRecycleOrders;
|
|
|
|
|
|
|
|
this.inboundRecyclePrice = res.data.inboundRecyclePrice;
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
changeDataFormData(type, data, model, index, defaultValue) {
|
|
|
|
|
|
|
|
if (type == 2) {
|
|
|
|
|
|
|
|
for (let i = 0; i < this.dataForm[data].length; i++) {
|
|
|
|
|
|
|
|
if (index == -1) {
|
|
|
|
|
|
|
|
this.dataForm[data][i][model] = defaultValue;
|
|
|
|
|
|
|
|
} else if (index == i) {
|
|
|
|
|
|
|
|
this.dataForm[data][i][model] = defaultValue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
this.dataForm[data] = defaultValue;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
getbeLongCompanyIdOptions() {
|
|
|
|
|
|
|
|
// const index = this.childIndex;
|
|
|
|
|
|
|
|
// let templateJsonList = JSON.parse(
|
|
|
|
|
|
|
|
// JSON.stringify(this.dataForm.beLongCompanyId)
|
|
|
|
|
|
|
|
// );
|
|
|
|
|
|
|
|
// for (let i = 0; i < templateJsonList.length; i++) {
|
|
|
|
|
|
|
|
// let json = templateJsonList[i];
|
|
|
|
|
|
|
|
// if (json.relationField) {
|
|
|
|
|
|
|
|
// let relationFieldAll = json.relationField.split("-");
|
|
|
|
|
|
|
|
// let val = json.defaultValue;
|
|
|
|
|
|
|
|
// if (relationFieldAll.length > 1 && index > -1) {
|
|
|
|
|
|
|
|
// val =
|
|
|
|
|
|
|
|
// this.dataForm[relationFieldAll[0] + "List"] &&
|
|
|
|
|
|
|
|
// this.dataForm[relationFieldAll[0] + "List"].length
|
|
|
|
|
|
|
|
// ? this.dataForm[relationFieldAll[0] + "List"][index][
|
|
|
|
|
|
|
|
// relationFieldAll[1]
|
|
|
|
|
|
|
|
// ]
|
|
|
|
|
|
|
|
// : "";
|
|
|
|
|
|
|
|
// } else {
|
|
|
|
|
|
|
|
// val = this.dataForm[relationFieldAll];
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// json.defaultValue = val;
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// let template = {
|
|
|
|
|
|
|
|
// paramList: templateJsonList
|
|
|
|
|
|
|
|
// };
|
|
|
|
|
|
|
|
getCompanyList().then(res => {
|
|
|
|
|
|
|
|
let data = res.data;
|
|
|
|
|
|
|
|
this.beLongCompanyIdOptions = data;
|
|
|
|
|
|
|
|
this.changeDataFormData(
|
|
|
|
|
|
|
|
1,
|
|
|
|
|
|
|
|
"beLongCompanyId",
|
|
|
|
|
|
|
|
"beLongCompanyId",
|
|
|
|
|
|
|
|
index,
|
|
|
|
|
|
|
|
""
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
search() {
|
|
|
|
|
|
|
|
this.initDeviceData();
|
|
|
|
|
|
|
|
this.initDeliveryOrderData();
|
|
|
|
|
|
|
|
this.initCleanOrderData();
|
|
|
|
|
|
|
|
this.orderData();
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
reset() {
|
|
|
|
|
|
|
|
this.query = JSON.parse(JSON.stringify(this.queryData));
|
|
|
|
|
|
|
|
this.search();
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
startNumberAnimation() {
|
|
|
|
|
|
|
|
this.intervalId = setInterval(() => {
|
|
|
|
|
|
|
|
const step = (this.doorRecyclePrice - this.animatedNumber) / 100;
|
|
|
|
|
|
|
|
this.animatedNumber += step;
|
|
|
|
|
|
|
|
if (Math.abs(this.doorRecyclePrice - this.animatedNumber) < 0.01) {
|
|
|
|
|
|
|
|
this.animatedNumber = this.doorRecyclePrice;
|
|
|
|
|
|
|
|
clearInterval(this.intervalId);
|
|
|
|
|
|
|
|
this.intervalId = null;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}, 10);
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
|
|
|
|
.sale {
|
|
|
|
|
|
|
|
.box-card {
|
|
|
|
|
|
|
|
width: 300px;
|
|
|
|
|
|
|
|
margin: 20px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.nums {
|
|
|
|
|
|
|
|
font-size: 26px;
|
|
|
|
|
|
|
|
color: #1890ff;
|
|
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.card-items {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.card-item {
|
|
|
|
|
|
|
|
margin-right: 10px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.card-item:last-child {
|
|
|
|
|
|
|
|
margin-right: 0;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
|
|
margin-bottom: 10px;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.sale_title {
|
|
|
|
|
|
|
|
padding-top: 16px;
|
|
|
|
|
|
|
|
padding-left: 22px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
&:first-child {
|
|
|
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
|
|
|
color: #333333;
|
|
|
|
|
|
|
|
margin-right: 10px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:nth-child(2) {
|
|
|
|
|
|
|
|
color: #999;
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.sale_items {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
|
|
|
padding: 34px 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
li {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.nums {
|
|
|
|
|
|
|
|
font-size: 26px !important;
|
|
|
|
|
|
|
|
padding-top: 13px;
|
|
|
|
|
|
|
|
padding-bottom: 9px;
|
|
|
|
|
|
|
|
color: #1890ff;
|
|
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
font-size: 26px !important;
|
|
|
|
|
|
|
|
padding-top: 13px;
|
|
|
|
|
|
|
|
padding-bottom: 9px;
|
|
|
|
|
|
|
|
color: #1890ff !important;
|
|
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.lastnums {
|
|
|
|
|
|
|
|
font-size: 26px !important;
|
|
|
|
|
|
|
|
padding-top: 13px;
|
|
|
|
|
|
|
|
padding-bottom: 9px;
|
|
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
color: #333;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:first-child {
|
|
|
|
|
|
|
|
span:last-child {
|
|
|
|
|
|
|
|
color: #08b41f;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:nth-child(4) {
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
|
|
|
color: #08b41f;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:nth-child(2) {
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
|
|
|
color: #b40808;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:nth-child(3) {
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
|
|
|
color: #999;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
|
|
|
color: #000;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
&:nth-child(2) {
|
|
|
|
|
|
|
|
font-size: 26px !important;
|
|
|
|
|
|
|
|
padding-top: 13px;
|
|
|
|
|
|
|
|
padding-bottom: 9px;
|
|
|
|
|
|
|
|
color: #1890ff;
|
|
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
&:nth-child(3) {
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.notice {
|
|
|
|
|
|
|
|
padding-bottom: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.notice_title {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
height: 60px;
|
|
|
|
|
|
|
|
padding: 0 25px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.title_left {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
|
|
|
color: #333;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.title_right {
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
color: #999;
|
|
|
|
|
|
|
|
line-height: 30px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.notice_right {
|
|
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
|
|
height: 400px;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.no_right_massage {
|
|
|
|
|
|
|
|
li {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
|
|
border: 1;
|
|
|
|
|
|
|
|
height: 170px;
|
|
|
|
|
|
|
|
border-top: 1px solid #f2f2f5;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.right_item {
|
|
|
|
|
|
|
|
width: 50%;
|
|
|
|
|
|
|
|
padding: 16px 20px;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.right-top {
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
img {
|
|
|
|
|
|
|
|
margin-right: 10px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
p {
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
line-height: 22px;
|
|
|
|
|
|
|
|
padding: 20px 0;
|
|
|
|
|
|
|
|
color: #999;
|
|
|
|
|
|
|
|
display: -webkit-box;
|
|
|
|
|
|
|
|
line-clamp: 3;
|
|
|
|
|
|
|
|
-webkit-line-clamp: 3;
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
|
|
|
/*! autoprefixer: off */
|
|
|
|
|
|
|
|
-webkit-box-orient: vertical;
|
|
|
|
|
|
|
|
/* autoprefixer: on */
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.bt {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
|
|
|
color: #999;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.linet {
|
|
|
|
|
|
|
|
border-left: 1px solid #f2f2f5;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.notice_left {
|
|
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
|
|
height: 400px;
|
|
|
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.no_left_massage {
|
|
|
|
|
|
|
|
height: 340px;
|
|
|
|
|
|
|
|
padding: 10px 20px;
|
|
|
|
|
|
|
|
border-top: 1px solid #f2f2f5;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ul {
|
|
|
|
|
|
|
|
li {
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
color: #303133;
|
|
|
|
|
|
|
|
padding: 10px 0;
|
|
|
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
p {
|
|
|
|
|
|
|
|
width: calc(100% - 80px);
|
|
|
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.time {
|
|
|
|
|
|
|
|
width: 80px;
|
|
|
|
|
|
|
|
display: inline-block;
|
|
|
|
|
|
|
|
text-align: right;
|
|
|
|
|
|
|
|
color: #999999;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.componey {
|
|
|
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
|
|
color: #999;
|
|
|
|
|
|
|
|
padding-bottom: 10px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.dashboard-editor-container {
|
|
|
|
|
|
|
|
background-color: #ebeef5;
|
|
|
|
|
|
|
|
position: relative;
|
|
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.github-corner {
|
|
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
|
|
top: 0px;
|
|
|
|
|
|
|
|
border: 0;
|
|
|
|
|
|
|
|
right: 0;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.chart-wrapper {
|
|
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
|
|
padding: 16px 16px 0;
|
|
|
|
|
|
|
|
margin-bottom: 20px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.dateSelect {
|
|
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
|
|
right: 67px;
|
|
|
|
|
|
|
|
top: 38px;
|
|
|
|
|
|
|
|
z-index: 100;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.el-date-editor {
|
|
|
|
|
|
|
|
width: 160px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@media (max-width: 1024px) {
|
|
|
|
|
|
|
|
.chart-wrapper {
|
|
|
|
|
|
|
|
padding: 8px;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
</style>
|