|
@@ -5,506 +5,186 @@
|
|
|
<el-card>
|
|
|
<el-form ref="form" :model="form" label-width="80px" style="margin-left: 20%;margin-top: 20px;" @submit.native.prevent>
|
|
|
<el-form-item label="机号">
|
|
|
- <el-input v-model="searchNum" style=" width: 50%;" placeholder="请输入内容" @keyup.enter.native="search" @clear="search" clearable> </el-input>
|
|
|
+ <el-input v-model="form.searchNum" style=" width: 50%;" placeholder="请输入内容" @keyup.enter.native="search" @clear="search" clearable> </el-input>
|
|
|
<el-button type="primary" icon="el-icon-search" @click="search"></el-button>
|
|
|
</el-form-item>
|
|
|
<span></span>
|
|
|
</el-form>
|
|
|
- <el-row style="margin: 20px;">
|
|
|
- <el-col :span="4" v-for="(items,indexs) in numList" :key="items.id" @click.native="showDrawer(items)">
|
|
|
- <div shadow="hover" @click="showDrawer(items)" class="card">
|
|
|
+ <el-row style="margin: 20px;" v-loading="loadingAircraftStatus">
|
|
|
+ <el-col :span="4" v-for="(item) in airCraftList" :key="item.airNumber" @click.native="showDetails(item.airNumber)">
|
|
|
+ <div shadow="hover" class="card">
|
|
|
<span style="font-size: 25px;display: block; color: wheat">机号</span>
|
|
|
- <span class="span1" :style="{color: items.color1}">{{items.num}}</span>
|
|
|
- <span style="color: wheat">状态:<span :style="{color: items.color2}">{{items.name}}</span></span>
|
|
|
+ <span class="span1" :style="{color: item.color1}">{{item.airNumber}}</span>
|
|
|
+ <span style="color: wheat">状态:
|
|
|
+ <span v-if="item.cnt == 0" style="color: green">健康</span>
|
|
|
+ <span v-else style="color: red">故障</span>
|
|
|
+ </span>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
+ <pagination
|
|
|
+ v-show="airCraftTotal>0"
|
|
|
+ :total="airCraftTotal"
|
|
|
+ :page.sync="form.pageNum"
|
|
|
+ :limit.sync="form.pageSize"
|
|
|
+ @pagination="search"
|
|
|
+ :page-sizes="[24, 36, 48, 60]"
|
|
|
+ />
|
|
|
</el-card>
|
|
|
</el-col>
|
|
|
- <el-col :span="12" class="card-box">
|
|
|
- <el-row>
|
|
|
- <el-card>
|
|
|
- <div slot="header" style="color:#bfcbd9"><span>CPU</span></div>
|
|
|
- <div class="el-table el-table--enable-row-hover el-table--medium">
|
|
|
- <table cellspacing="0" style="width: 100%;">
|
|
|
- <thead>
|
|
|
- <tr>
|
|
|
- <th class="el-table__cell is-leaf"><div class="cell">属性</div></th>
|
|
|
- <th class="el-table__cell is-leaf"><div class="cell">值</div></th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody>
|
|
|
- <tr>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell">核心数</div></td>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell" v-if="server.cpu">{{ server.cpu.cpuNum }}</div></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell">用户使用率</div></td>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell" v-if="server.cpu">{{ server.cpu.used }}%</div></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell">系统使用率</div></td>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell" v-if="server.cpu">{{ server.cpu.sys }}%</div></td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell">当前空闲率</div></td>
|
|
|
- <td class="el-table__cell is-leaf"><div class="cell" v-if="server.cpu">{{ server.cpu.free }}%</div></td>
|
|
|
- </tr>
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- <el-row>
|
|
|
- <el-card>
|
|
|
- <div slot="header">
|
|
|
- <span>内存信息</span>
|
|
|
- </div>
|
|
|
- <div class="el-table el-table--enable-row-hover el-table--medium">
|
|
|
- <div ref="usedmemory" style="height: 280px" />
|
|
|
- </div>
|
|
|
- </el-card>
|
|
|
- </el-row>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
-
|
|
|
-
|
|
|
- <el-dialog title="提示" :visible.sync="dialogVisible" width="50%" :before-close="handleClose" center>
|
|
|
- <div>
|
|
|
- <el-form ref="form" :model="form">
|
|
|
- <el-form-item label="机号">
|
|
|
- <!-- <el-input v-model="form.num" style=" width: 90%;" placeholder="请输入内容"> </el-input> -->
|
|
|
- {{ form.number }}
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <el-row :gutter='24'>
|
|
|
- <el-col :span='20'>
|
|
|
- <div class="demo-image__preview">
|
|
|
- <!-- <el-image style="width: 540px; height: 160px" :src="url">
|
|
|
- </el-image> -->
|
|
|
- <img src="../assets/knowledge/1.jpg" style="width: 540px; height: 160px">
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
- <el-col :span='4'>
|
|
|
- <h2>机号:{{ form.number }}</h2>
|
|
|
- <h2>机型:02</h2>
|
|
|
- <h2>隶属:03</h2>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row :gutter='24' style="text-align: center;">
|
|
|
- <el-col :span='12'>
|
|
|
- <h2>当月故障发生数量:20</h2>
|
|
|
- </el-col>
|
|
|
- <el-col :span='12'>
|
|
|
- <h2>当月故障完结数量:20</h2>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <div v-for="item in list" :key='item.id'>
|
|
|
- <el-row :gutter='24'>
|
|
|
- <el-col :span='8' style='text-align: right;' @click.native="getDra(item.id,item.name)">
|
|
|
- <h2 @click="drawer = false">{{item.name}}</h2>
|
|
|
- </el-col>
|
|
|
- <el-col :span='8'>
|
|
|
- <el-progress :text-inside="true" :stroke-width="26" :percentage="item.per" style="margin-top: 20px;"
|
|
|
- :color='item.color'>
|
|
|
- </el-progress>
|
|
|
- </el-col>
|
|
|
- <el-col :span='8' style="text-align: center;">
|
|
|
- <el-checkbox v-model="item.checked" style="margin-top: 20px;">预警</el-checkbox>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- </div>
|
|
|
- <el-row :gutter='24'>
|
|
|
- <el-col :span="24" style="text-align: center;">
|
|
|
- <h2>当月故障记录</h2>
|
|
|
- </el-col>
|
|
|
+ <el-col :span="12" class="card-box">
|
|
|
+ <el-row v-loading="loadingBreakdownList">
|
|
|
+ <BreakdownSchedule :breakdownList="breakdownList"></BreakdownSchedule>
|
|
|
</el-row>
|
|
|
- <el-table :data="tableData" border style="width: 100%">
|
|
|
- <el-table-column fixed prop="date" label="序号" width='100' align='center'>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="name" label="案例名" align='center'>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="province" label="平台" align='center'>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column fixed="right" label="结果" width="200" align='center'>
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button type="primary" round>浏览</el-button>
|
|
|
- <el-button type="danger" round>删除</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
- </el-dialog>
|
|
|
|
|
|
- <el-drawer :title="name" :visible.sync="drawer" :direction="direction" :before-close="handleClose1" size='50%'>
|
|
|
- <div>
|
|
|
- <el-form ref="form" :model="form">
|
|
|
- <el-form-item label="机号" style="margin-left: 15px;">
|
|
|
- <el-input v-model="form.name2" style=" width: 90%;" placeholder="请输入内容"> </el-input>
|
|
|
- <el-button type="primary" icon="el-icon-search"></el-button>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
- <el-row :gutter='24'>
|
|
|
- <el-col :span='12'>
|
|
|
- <div class="demo-image__preview">
|
|
|
- <!-- <el-image style="width: 540px; height: 160px" :src="url">
|
|
|
- </el-image> -->
|
|
|
- <img src="../assets/knowledge/1.jpg" style="width: 540px; height: 160px">
|
|
|
- </div>
|
|
|
- </el-col>
|
|
|
- <el-col :span='12'>
|
|
|
- <h2>机号:1</h2>
|
|
|
- <h2>机型:2</h2>
|
|
|
- <h2>隶属:3</h2>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- <el-row :gutter='24' style="text-align: center;">
|
|
|
- <el-col :span='12'>
|
|
|
- <h2>当月故障发生数量:20</h2>
|
|
|
- </el-col>
|
|
|
- <el-col :span='12'>
|
|
|
- <h2>当月故障完结数量:20</h2>
|
|
|
- </el-col>
|
|
|
+ <el-row>
|
|
|
+ <el-card style="margin-top: 10px;">
|
|
|
+ <!-- <el-row style="text-align: center;">
|
|
|
+ <el-col :span="8" >
|
|
|
+ 当月故障飞机数
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ 当月故障维修完成数
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ 可出动飞机数
|
|
|
+ </el-col>
|
|
|
+ </el-row> -->
|
|
|
+ <el-row v-loading="loadingAircraftStatusCurrentMonth">
|
|
|
+ <el-col :span="8">
|
|
|
+ <div shadow="always" style="background-color:rgba(255,0,0,0.5); text-align: center; margin-left:12px;padding: 0px; border:1px solid #e6ebf5">
|
|
|
+ <span style="font-size:1.5rem">当月故障飞机数</span>
|
|
|
+ <br>
|
|
|
+ <span style="font-size:3rem">{{ aircraftStatusCurrentMonth.breakdownNumber }}</span>
|
|
|
+ </div>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <div shadow="always" style="background-color:rgba(0,255,0,0.5); text-align: center; margin-left:12px;padding: 0px; border:1px solid #e6ebf5">
|
|
|
+ <span style="font-size:1.5rem">当月故障维修完成数</span>
|
|
|
+ <br>
|
|
|
+ <span style="font-size:3rem">{{ aircraftStatusCurrentMonth.repairedNumber }}</span>
|
|
|
+ </div>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <div shadow="always" style="background-color:rgba(0,0,255,0.5); text-align: center; margin-left:12px;margin-right:12px;padding: 0px; border:1px solid #e6ebf5">
|
|
|
+ <span style="font-size:1.5rem">可出动飞机数</span>
|
|
|
+ <br>
|
|
|
+ <span style="font-size:3rem">{{ aircraftStatusCurrentMonth.availableNumber }}</span>
|
|
|
+ </div>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-card>
|
|
|
</el-row>
|
|
|
- <el-row :gutter='24'>
|
|
|
- <div id="chart"></div>
|
|
|
+ <el-row v-loading="loadingDetails">
|
|
|
+ <el-card style="margin-top: 10px; font-size:2rem">
|
|
|
+ <el-row>飞机状态详细信息</el-row>
|
|
|
+ <el-row>
|
|
|
+ 机号:{{ aircraftDetial.airNumber }}
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ 故障系统:{{ aircraftDetial.systems? aircraftDetial.systems:'无'}}
|
|
|
+ </el-row>
|
|
|
+ <el-row>
|
|
|
+ 维修完成度:
|
|
|
+ <!-- <el-progress :text-inside="true" :stroke-width="22" :percentage="aircraftDetial.breakdownCount === 0 ? 100: aircraftDetial.repairRate" status="warning"></el-progress>
|
|
|
+ <el-progress type="circle" :percentage="100" status="success"></el-progress> -->
|
|
|
+ {{ aircraftDetial.breakdownCount === 0 ? 100: aircraftDetial.repairRate }} %
|
|
|
+ </el-row>
|
|
|
+ </el-card>
|
|
|
</el-row>
|
|
|
- </div>
|
|
|
- </el-drawer>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
- import echarts from "echarts";
|
|
|
- import { getServer } from "@/api/monitor/server";
|
|
|
- import { getCache } from "@/api/monitor/cache";
|
|
|
+ // import echarts from "echarts";
|
|
|
+ import { getAircraftStatus, getAircraftStatusCurrentMonth, getBreakdownInfoByAirNumber, getBreakdownSchedule } from '@/api/showInfo/breakdown'
|
|
|
+ import BreakdownSchedule from "@/views/index/breakdownSchedule"
|
|
|
export default {
|
|
|
+ components: { BreakdownSchedule },
|
|
|
data() {
|
|
|
return {
|
|
|
- dialogVisible: false,
|
|
|
- drawer: false,
|
|
|
- name: '',
|
|
|
- direction: 'rtl',
|
|
|
- searchNum: '',
|
|
|
- server: [],
|
|
|
- // 统计命令信息
|
|
|
- // commandstats: null,
|
|
|
- // 使用内存
|
|
|
- usedmemory: null,
|
|
|
- // cache信息
|
|
|
- cache: [],
|
|
|
- form: {
|
|
|
- number: '',
|
|
|
- name: '',
|
|
|
- name1: '',
|
|
|
- name2: ''
|
|
|
+ form:{
|
|
|
+ searchNum: "",
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 24,
|
|
|
},
|
|
|
- list: [{
|
|
|
- id: 1,
|
|
|
- name: '飞控系统健康状况',
|
|
|
- per: 70,
|
|
|
- color: '#f56c6c',
|
|
|
- checked: 0
|
|
|
- },
|
|
|
- {
|
|
|
- id: 2,
|
|
|
- name: '航电系统健康状况',
|
|
|
- per: 60,
|
|
|
- color: '#e6a23c',
|
|
|
- checked: 0
|
|
|
- },
|
|
|
- {
|
|
|
- id: 3,
|
|
|
- name: '机械系统健康状况',
|
|
|
- per: 50,
|
|
|
- color: '#5cb87a',
|
|
|
- checked: 0
|
|
|
- },
|
|
|
- {
|
|
|
- id: 4,
|
|
|
- name: '火控系统健康状况',
|
|
|
- per: 40,
|
|
|
- color: '#1989fa',
|
|
|
- checked: 0
|
|
|
- },
|
|
|
- ],
|
|
|
- tableData: [{
|
|
|
- date: '1',
|
|
|
- name: 'admin',
|
|
|
- province: '专业',
|
|
|
- },
|
|
|
- {
|
|
|
- date: '2',
|
|
|
- name: 'admin',
|
|
|
- province: '专业',
|
|
|
- },
|
|
|
- {
|
|
|
- date: '3',
|
|
|
- name: 'admin',
|
|
|
- province: '专业',
|
|
|
- },
|
|
|
- ],
|
|
|
- mockList: [{
|
|
|
- id: 1,
|
|
|
- num: '01',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 2,
|
|
|
- num: '02',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 3,
|
|
|
- num: '03',
|
|
|
- name: '故障',
|
|
|
- color1: 'red',
|
|
|
- color2: 'red',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 4,
|
|
|
- num: '04',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 5,
|
|
|
- num: '05',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 6,
|
|
|
- num: '06',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 7,
|
|
|
- num: '07',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 8,
|
|
|
- num: '08',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 9,
|
|
|
- num: '09',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 10,
|
|
|
- num: '10',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 11,
|
|
|
- num: '11',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 12,
|
|
|
- num: '12',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 13,
|
|
|
- num: '13',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 14,
|
|
|
- num: '14',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 15,
|
|
|
- num: '15',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 16,
|
|
|
- num: '16',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 17,
|
|
|
- num: '17',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 18,
|
|
|
- num: '18',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 19,
|
|
|
- num: '19',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 20,
|
|
|
- num: '20',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 21,
|
|
|
- num: '21',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 22,
|
|
|
- num: '22',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 23,
|
|
|
- num: '23',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- },
|
|
|
- {
|
|
|
- id: 24,
|
|
|
- num: '24',
|
|
|
- name: '健康',
|
|
|
- color1: 'green',
|
|
|
- color2: 'green',
|
|
|
- }
|
|
|
- ],
|
|
|
- numList: []
|
|
|
+ airCraftTotal:0,
|
|
|
+ airCraftList:[],
|
|
|
+ aircraftStatusCurrentMonth: {
|
|
|
+ breakdownNumber:"-",
|
|
|
+ repairedNumber:"-",
|
|
|
+ availableNumber:"-",
|
|
|
+ },
|
|
|
+ aircraftDetial: {
|
|
|
+ airNumber: "-",
|
|
|
+ systems: "-",
|
|
|
+ repairRate: "-",
|
|
|
+ breakdownCount: "-",
|
|
|
+ },
|
|
|
+ breakdownList: [],
|
|
|
+ queryBreakdownParams: {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ },
|
|
|
+ breakdownTotal:0,
|
|
|
+ loadingAircraftStatus: false,
|
|
|
+ loadingAircraftStatusCurrentMonth: false,
|
|
|
+ loadingDetails: false,
|
|
|
+ loadingBreakdownList: false,
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
|
- this.search();
|
|
|
- this.getList();
|
|
|
- this.getCache();
|
|
|
+ this.search()
|
|
|
+ this.getAircraftStatusCurrentMonth()
|
|
|
+ this.getBreakdownSchedule()
|
|
|
},
|
|
|
methods: {
|
|
|
- getList() {
|
|
|
- getServer().then(response => {
|
|
|
- this.server = response.data;
|
|
|
- });
|
|
|
- },
|
|
|
- /** 查缓存询信息 */
|
|
|
- getCache() {
|
|
|
- getCache().then((response) => {
|
|
|
- this.cache = response.data;
|
|
|
- // this.commandstats = echarts.init(this.$refs.commandstats, "macarons");
|
|
|
- // this.commandstats.setOption({
|
|
|
- // tooltip: {
|
|
|
- // trigger: "item",
|
|
|
- // formatter: "{a} <br/>{b} : {c} ({d}%)",
|
|
|
- // },
|
|
|
- // series: [
|
|
|
- // {
|
|
|
- // name: "命令",
|
|
|
- // type: "pie",
|
|
|
- // roseType: "radius",
|
|
|
- // radius: [15, 95],
|
|
|
- // center: ["50%", "38%"],
|
|
|
- // data: response.data.commandStats,
|
|
|
- // animationEasing: "cubicInOut",
|
|
|
- // animationDuration: 1000,
|
|
|
- // }
|
|
|
- // ]
|
|
|
- // });
|
|
|
- this.usedmemory = echarts.init(this.$refs.usedmemory, "macarons");
|
|
|
- this.usedmemory.setOption({
|
|
|
- tooltip: {
|
|
|
- formatter: "{b} <br/>{a} : " + this.cache.info.used_memory_human,
|
|
|
- },
|
|
|
- series: [
|
|
|
- {
|
|
|
- name: "峰值",
|
|
|
- type: "gauge",
|
|
|
- min: 0,
|
|
|
- max: 1000,
|
|
|
- detail: {
|
|
|
- formatter: this.cache.info.used_memory_human,
|
|
|
- },
|
|
|
- data: [
|
|
|
- {
|
|
|
- value: parseFloat(this.cache.info.used_memory_human),
|
|
|
- name: "内存消耗",
|
|
|
- }
|
|
|
- ]
|
|
|
- }
|
|
|
- ]
|
|
|
- });
|
|
|
- });
|
|
|
- },
|
|
|
-
|
|
|
- getPopup(e) {
|
|
|
- this.dialogVisible = true
|
|
|
- },
|
|
|
- getDra(e, name) {
|
|
|
- this.drawer = true
|
|
|
- this.name = name + '介绍'
|
|
|
- },
|
|
|
- handleClose(done) {
|
|
|
- this.dialogVisible = false
|
|
|
+ search(){
|
|
|
+ this.loadingAircraftStatus = true
|
|
|
+ getAircraftStatus(this.form).then(resp => {
|
|
|
+ console.info("getAircraftStatus",resp)
|
|
|
+ this.airCraftList = resp.rows;
|
|
|
+ this.airCraftTotal = resp.total;
|
|
|
+ this.loadingAircraftStatus = false;
|
|
|
+ })
|
|
|
},
|
|
|
- handleClose1(done) {
|
|
|
- this.drawer = false
|
|
|
+ getAircraftStatusCurrentMonth(){
|
|
|
+ this.loadingAircraftStatusCurrentMonth = true;
|
|
|
+ getAircraftStatusCurrentMonth().then(resp => {
|
|
|
+ this.aircraftStatusCurrentMonth = {
|
|
|
+ breakdownNumber: resp.data.breakdownNumber,
|
|
|
+ repairedNumber: resp.data.breakdownNumber - resp.data.repairingNumber,
|
|
|
+ availableNumber: resp.data.availableNumber,
|
|
|
+ }
|
|
|
+ this.loadingAircraftStatusCurrentMonth = false
|
|
|
+ })
|
|
|
},
|
|
|
- showDrawer(item){
|
|
|
- this.dialogVisible = true
|
|
|
- this.form.number = item.num
|
|
|
+ showDetails(airNumber){
|
|
|
+ this.loadingDetails = true
|
|
|
+ getBreakdownInfoByAirNumber(airNumber).then(resp => {
|
|
|
+ this.aircraftDetial = {
|
|
|
+ airNumber: resp.data.airNumber,
|
|
|
+ systems: resp.data.systems,
|
|
|
+ repairRate: Math.round(resp.data.repairingCount * 100 / resp.data.breakdownCount),
|
|
|
+ breakdownCount: resp.data.breakdownCount
|
|
|
+ }
|
|
|
+ this.loadingDetails = false
|
|
|
+ })
|
|
|
},
|
|
|
- search(){
|
|
|
- if(!this.searchNum){
|
|
|
- this.numList = this.mockList
|
|
|
- }else{
|
|
|
- let list = [];
|
|
|
- for(let item of this.mockList){
|
|
|
- if(item.num == this.searchNum){
|
|
|
- list.push(item)
|
|
|
- }
|
|
|
+ getBreakdownSchedule(){
|
|
|
+ this.loadingBreakdownList = true;
|
|
|
+ getBreakdownSchedule(this.queryBreakdownParams).then(resp => {
|
|
|
+ let rows = resp.rows
|
|
|
+ for(let row of rows){
|
|
|
+ row.countDown = 30-Math.round((new Date()- new Date(row.discoveryDate))/24/60/60/1000)
|
|
|
}
|
|
|
- this.numList = list;
|
|
|
- }
|
|
|
+ this.breakdownList = resp.rows;
|
|
|
+ console.info(this.breakdownList);
|
|
|
+ this.breakdownTotal = resp.total;
|
|
|
+ this.loadingBreakdownList = false;
|
|
|
+ })
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -541,4 +221,13 @@
|
|
|
background-repeat: no-repeat;
|
|
|
background-size: 100% 100%;
|
|
|
}
|
|
|
+
|
|
|
+ /* .el-table tr {
|
|
|
+ background-color: transparent
|
|
|
+ } */
|
|
|
+
|
|
|
+ .el-card__body {
|
|
|
+ padding: 0px;
|
|
|
+ }
|
|
|
+
|
|
|
</style>
|