|
@@ -5,44 +5,13 @@
|
|
|
<view class="chart-t">
|
|
|
<viwe class="chart-t-l">
|
|
|
<text>设备总数:</text>
|
|
|
- <text>325</text>
|
|
|
- </viwe>
|
|
|
- <viwe class="chart-tab">
|
|
|
- <view class="chart-tab-li" :class="chartTabIndex==index?'tab-A':'tab-B'"
|
|
|
- v-for="(item,index) in chartTabList" :key="index" @click="chartTabClick(index)">{{item}}</view>
|
|
|
+ <text>{{deviceTotal}}</text>
|
|
|
</viwe>
|
|
|
</view>
|
|
|
<view class="chart-b">
|
|
|
<qiun-data-charts type="ring" :opts="opts" :echartsH5="true" :chartData="chartData" />
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="statistics">
|
|
|
- <view class="statistics-b">
|
|
|
- <view class="statistics-b-li">
|
|
|
- <view class="statistics-b-li-t">
|
|
|
- <text class="color-A">9999</text>
|
|
|
- <text class="color-A">小时</text>
|
|
|
- </view>
|
|
|
- <view class="statistics-b-li-b">使用机时</view>
|
|
|
- </view>
|
|
|
- <view class="line"></view>
|
|
|
- <view class="statistics-b-li">
|
|
|
- <view class="statistics-b-li-t">
|
|
|
- <text class="color-B">¥</text>
|
|
|
- <text class="color-B">56460.63</text>
|
|
|
- </view>
|
|
|
- <view class="statistics-b-li-b">预约费用</view>
|
|
|
- </view>
|
|
|
- <view class="line"></view>
|
|
|
- <view class="statistics-b-li">
|
|
|
- <view class="statistics-b-li-t">
|
|
|
- <text class="color-C">333</text>
|
|
|
- <text class="color-C">个</text>
|
|
|
- </view>
|
|
|
- <view class="statistics-b-li-b">预约费用</view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
<view class="small-title">
|
|
|
<view class="small-title-l">预约使用排行TOP10</view>
|
|
|
<viwe class="chart-tab-tow">
|
|
@@ -61,22 +30,23 @@
|
|
|
</view>
|
|
|
<!-- -->
|
|
|
<view class="small-title">
|
|
|
- <view class="small-title-l">一年内空闲率排行TOP10</view>
|
|
|
+ <view class="small-title-l">大仪预约排行</view>
|
|
|
</view>
|
|
|
<view class="table-tow">
|
|
|
<uni-card>
|
|
|
<view style="height: 200px">
|
|
|
- <zb-table :columns="column2" :stripe="false" :border="false" :data="dataList"></zb-table>
|
|
|
+ <zb-table :columns="column2" :stripe="false" :border="false" :data="dataList2"></zb-table>
|
|
|
</view>
|
|
|
</uni-card>
|
|
|
|
|
|
</view>
|
|
|
<view class="small-title">
|
|
|
- <view class="small-title-l">安全隐患统计</view>
|
|
|
- </view>
|
|
|
- <view class="small-title-tow">
|
|
|
- <view class="small-title-tow-l">安全检查校级巡查计划标题标题标题标题标题</view>
|
|
|
- <img class="small-title-tow-r" src="@/pages/images/dataBoard/icon_06.png">
|
|
|
+ <view class="small-title-l">隐患实验室统计</view>
|
|
|
+ <viwe class="chart-tab-tow">
|
|
|
+ <view class="chart-tab-li" :class="chartTabIndexThree==index?'tab-A':'tab-B'"
|
|
|
+ v-for="(item,index) in chartTabListThree" :key="index" @click="chartTabClickThree(index)">{{item}}
|
|
|
+ </view>
|
|
|
+ </viwe>
|
|
|
</view>
|
|
|
<view class="chart-tow">
|
|
|
<view class="chart-tow-b">
|
|
@@ -91,8 +61,10 @@
|
|
|
config
|
|
|
} from '@/api/request/config.js'
|
|
|
import {
|
|
|
-
|
|
|
- } from '@/pages_basics/api/index.js'
|
|
|
+ reportAppletReportBsEquipStatusList,
|
|
|
+ reportAppletReportApiEquipRankTopList,
|
|
|
+ reportAppletReportBsEquipAppointTopList,
|
|
|
+ } from '@/pages/api/index.js'
|
|
|
export default {
|
|
|
name: "daYiReservation",
|
|
|
components: {
|
|
@@ -163,6 +135,9 @@
|
|
|
chartTabIndex: 0,
|
|
|
chartTabListTow: ['按资费', '按机时', '按样品'],
|
|
|
chartTabIndexTow: 0,
|
|
|
+ chartTabListThree: ['年度', '季度', '月度'],
|
|
|
+ chartTabIndexThree: 0,
|
|
|
+
|
|
|
// 查询参数
|
|
|
queryParams: {
|
|
|
page: 1,
|
|
@@ -176,24 +151,24 @@
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data1',
|
|
|
+ name: 'deviceName',
|
|
|
label: '设备名称',
|
|
|
fixed: true,
|
|
|
width: 80,
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data2',
|
|
|
+ name: 'useTimeStr',
|
|
|
label: '使用机时',
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data3',
|
|
|
- label: '预约费用',
|
|
|
+ name: 'appointFee',
|
|
|
+ label: '使用费用',
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data4',
|
|
|
+ name: 'testSample',
|
|
|
label: '测试样品',
|
|
|
align: 'center',
|
|
|
},
|
|
@@ -206,96 +181,28 @@
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data1',
|
|
|
+ name: 'deviceName',
|
|
|
label: '设备名称',
|
|
|
fixed: true,
|
|
|
width: 80,
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data2',
|
|
|
+ name: 'orderDuration',
|
|
|
label: '预约时长',
|
|
|
align: 'center',
|
|
|
},
|
|
|
{
|
|
|
- name: 'data3',
|
|
|
- label: '空闲率',
|
|
|
+ name: 'orderNum',
|
|
|
+ label: '预约次数',
|
|
|
align: 'center',
|
|
|
},
|
|
|
],
|
|
|
- dataList: [{
|
|
|
- data1: '压力容器',
|
|
|
- data2: '468',
|
|
|
- data3: '47',
|
|
|
- data4: '220',
|
|
|
- data5: '137',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '浓缩设备',
|
|
|
- data2: '367',
|
|
|
- data3: '7',
|
|
|
- data4: '120',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '高压灭菌锅',
|
|
|
- data2: '343',
|
|
|
- data3: '71',
|
|
|
- data4: '10',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '纯水设备',
|
|
|
- data2: '256',
|
|
|
- data3: '7',
|
|
|
- data4: '120',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '二氧化碳培养箱',
|
|
|
- data2: '232',
|
|
|
- data3: '71',
|
|
|
- data4: '10',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- ],
|
|
|
- dataList: [{
|
|
|
- data1: '压力容器',
|
|
|
- data2: '468',
|
|
|
- data3: '88',
|
|
|
- data4: '220',
|
|
|
- data5: '137',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '浓缩设备',
|
|
|
- data2: '367',
|
|
|
- data3: '56',
|
|
|
- data4: '120',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '高压灭菌锅',
|
|
|
- data2: '343',
|
|
|
- data3: '42',
|
|
|
- data4: '10',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '纯水设备',
|
|
|
- data2: '256',
|
|
|
- data3: '34',
|
|
|
- data4: '120',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- {
|
|
|
- data1: '二氧化碳培养箱',
|
|
|
- data2: '232',
|
|
|
- data3: '22',
|
|
|
- data4: '10',
|
|
|
- data5: '37',
|
|
|
- },
|
|
|
- ],
|
|
|
+ dataList: [],
|
|
|
+ dataList2: [],
|
|
|
total: 0,
|
|
|
+ type:1,//type为1 按费用,2.按照机时,3.按照样品
|
|
|
+ deviceTotal:0,
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
@@ -305,10 +212,63 @@
|
|
|
|
|
|
},
|
|
|
mounted() {
|
|
|
- this.getServerData()
|
|
|
+ this.reportAppletReportBsEquipStatusList()
|
|
|
+ this.reportAppletReportApiEquipRankTopList()
|
|
|
+ this.reportAppletReportBsEquipAppointTopList()
|
|
|
+ //this.getServerData()
|
|
|
this.getServerDataTow()
|
|
|
},
|
|
|
methods: {
|
|
|
+ //设备总数
|
|
|
+ async reportAppletReportBsEquipStatusList() {
|
|
|
+ let self = this;
|
|
|
+ const {
|
|
|
+ data
|
|
|
+ } = await reportAppletReportBsEquipStatusList();
|
|
|
+ if (data.code == 200) {
|
|
|
+ let list=[];
|
|
|
+ data.data.forEach(function(item,index){
|
|
|
+ if(index<6){
|
|
|
+ list.push({
|
|
|
+ "name": item.name,
|
|
|
+ "value":item.value,
|
|
|
+ "labelShow": false,
|
|
|
+ })
|
|
|
+ self.deviceTotal+=item.value
|
|
|
+ }
|
|
|
+
|
|
|
+ })
|
|
|
+
|
|
|
+ let res = {
|
|
|
+ series: [{
|
|
|
+ data: list
|
|
|
+ }]
|
|
|
+ };
|
|
|
+ this.chartData = JSON.parse(JSON.stringify(res));
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //预约使用排行
|
|
|
+ async reportAppletReportApiEquipRankTopList() {
|
|
|
+ let self = this;
|
|
|
+ const {
|
|
|
+ data
|
|
|
+ } = await reportAppletReportApiEquipRankTopList({type:this.type});
|
|
|
+ if (data.code == 200) {
|
|
|
+
|
|
|
+ this.$set(this,'dataList',data.data)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //大仪预约排行
|
|
|
+ async reportAppletReportBsEquipAppointTopList() {
|
|
|
+ let self = this;
|
|
|
+ const {
|
|
|
+ data
|
|
|
+ } = await reportAppletReportBsEquipAppointTopList();
|
|
|
+ if (data.code == 200) {
|
|
|
+
|
|
|
+ this.$set(this,'dataList2',data.data)
|
|
|
+ }
|
|
|
+ },
|
|
|
getServerData() {
|
|
|
//模拟从服务器获取数据时的延时
|
|
|
setTimeout(() => {
|
|
@@ -353,6 +313,13 @@
|
|
|
},
|
|
|
chartTabClickTow(index) {
|
|
|
this.chartTabIndexTow = index;
|
|
|
+ this.type = index+1;
|
|
|
+ this.reportAppletReportApiEquipRankTopList();
|
|
|
+ },
|
|
|
+ chartTabClickThree(index) {
|
|
|
+ this.chartTabIndexThree = index;
|
|
|
+ this.type = index+1;
|
|
|
+ this.reportAppletReportApiEquipRankTopList();
|
|
|
},
|
|
|
},
|
|
|
}
|