|
@@ -3,16 +3,25 @@
|
|
|
<img :src="require('@assets/png/3dback.png')" class="i3dback" />
|
|
|
<!-- <img :src="require('@assets/png/3dcloud.png')" class="i3dcloud" /> -->
|
|
|
<StBack></StBack>
|
|
|
- <ThreeModel1 class="three-model-layer" @when="when"></ThreeModel1>
|
|
|
+ <ThreeModel1
|
|
|
+ class="three-model-layer"
|
|
|
+ :data="mapSource"
|
|
|
+ @when="when"
|
|
|
+ ></ThreeModel1>
|
|
|
<div class="sand-table-left" v-if="showPanel">
|
|
|
- <PanelSand class="left-panel" title="气象预测" subTitle="AM10:52 实况">
|
|
|
- <weather class="pd-t-16" />
|
|
|
+ <PanelSand
|
|
|
+ class="left-panel"
|
|
|
+ title="气象预测"
|
|
|
+ :subTitle="timeStr + '实况'"
|
|
|
+ >
|
|
|
+ <weather class="pd-t-16" :data="tqmap1" />
|
|
|
</PanelSand>
|
|
|
- <PanelSand class="left-panel mg-t-16" title="等级评估">
|
|
|
+ <PanelSand class="left-panel mg-t-16" title="健康推荐">
|
|
|
<RankTable :data="levelTableData"></RankTable>
|
|
|
</PanelSand>
|
|
|
- <PanelSand class="left-panel mg-t-16" title="等级评估">
|
|
|
- <RankTable :data="levelTableData"></RankTable>
|
|
|
+ <PanelSand class="left-panel mg-t-16" title="停机信息">
|
|
|
+ <RankTable :data="sels" @rowClick="clickRow"></RankTable>
|
|
|
+ <!-- <ComTable :data="sels"></ComTable> -->
|
|
|
</PanelSand>
|
|
|
<PanelSandToolbar class="left-panel mg-t-16" title="部件">
|
|
|
<template v-slot:tools>
|
|
@@ -48,25 +57,36 @@
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</PanelSand>
|
|
|
- <PanelSand class="right-panel mg-t-16" title="板块标题">
|
|
|
- <div class="person-info-box mg-t-16">
|
|
|
+ <PanelSand class="right-panel mg-t-16" title="工单管理">
|
|
|
+ <div
|
|
|
+ class="person-info-box mg-t-16 animated a0"
|
|
|
+ :class="peopleClass"
|
|
|
+ v-if="workData.data[0]"
|
|
|
+ >
|
|
|
<img
|
|
|
class="header mg-r-8 bg-green"
|
|
|
- :src="require('@assets/logo.png')"
|
|
|
+ style="width: 75px; height: 75px"
|
|
|
+ :src="workData.data[workDataIndex].imgurl"
|
|
|
/>
|
|
|
<div class="person-info">
|
|
|
- <div class="green font-lg" style="font-weight: bold">张三</div>
|
|
|
+ <div class="green font-lg" style="font-weight: bold">
|
|
|
+ {{ workData.data[workDataIndex].laborname }}
|
|
|
+ </div>
|
|
|
<div class="white font-sm">
|
|
|
- <span>职务:高级检修工</span>
|
|
|
- <span class="mg-l-16">当前任务编号 000000</span>
|
|
|
+ <span>职务:{{ workData.data[workDataIndex].jobcode }}</span>
|
|
|
+ <!-- <span class="mg-l-16">当前任务编号 000000</span> -->
|
|
|
</div>
|
|
|
<div class="white font-sm">
|
|
|
- 平均检修时间 <span class="green">5</span> 小时
|
|
|
+ <!-- 平均检修时间 <span class="green">5</span> 小时 -->
|
|
|
+ 开始时间
|
|
|
+ <span class="green">{{
|
|
|
+ workData.data[workDataIndex].starttime
|
|
|
+ }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="table mg-t-8">
|
|
|
- <Table :data="tableData" />
|
|
|
+ <Table :data="workData" />
|
|
|
</div>
|
|
|
</PanelSand>
|
|
|
<PanelSandToolbar class="right-panel mg-t-16" title="风险隐患详情">
|
|
@@ -83,20 +103,179 @@
|
|
|
</PanelSandToolbar>
|
|
|
</div>
|
|
|
<div class="sand-table-bottom" v-if="showPanel">
|
|
|
- <Ppanel title="利用小时"></Ppanel>
|
|
|
- <Ppanel title="设备可利用率" class="stb-p"></Ppanel>
|
|
|
- <Ppanel title="MTBF" class="stb-p"></Ppanel>
|
|
|
- <Ppanel title="MTTR" class="stb-p"></Ppanel>
|
|
|
- <Ppanel title="MTTF" class="stb-p"></Ppanel>
|
|
|
+ <!-- <Ppanel
|
|
|
+ title="利用小时"
|
|
|
+ :data="riseNumber(gxkmap.bg_dxkyss)"
|
|
|
+ :dataColor="gxkmap.bg_dxkyss < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.ydxkyss"
|
|
|
+ :data1Icon="gxkmap.tb_dxkyss < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="gxkmap.tb_dxkyss < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ :data2Icon="gxkmap.hb_dxkyss < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="gxkmap.hb_dxkyss < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel title="设备可利用率"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_sbklyl)"
|
|
|
+ :dataColor="gxkmap.bg_sbklyl < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.ysbklyl"
|
|
|
+ :data1Icon="gxkmap.hb_sbklyl < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="gxkmap.hb_sbklyl < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ :data2Icon="gxkmap.tb_sbklyl < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="gxkmap.tb_sbklyl < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="MTBF"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_mtbf)"
|
|
|
+ :dataColor="gxkmap.bg_mtbf < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.mtbf"
|
|
|
+ :data1Icon="gxkmap.hb_mtbf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="gxkmap.hb_mtbf < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ :data2Icon="gxkmap.tb_mtbf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="gxkmap.tb_mtbf < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="MTTR"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_mttr)"
|
|
|
+ :dataColor="gxkmap.bg_mttr < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.mttr"
|
|
|
+ :data1Icon="gxkmap.hb_mttr < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="gxkmap.hb_mttr < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ :data2Icon="gxkmap.tb_mttr < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="gxkmap.tb_mttr < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="MTTF"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_mttf)"
|
|
|
+ :dataColor="gxkmap.bg_mttf < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.mttf"
|
|
|
+ :data1Icon="gxkmap.hb_mttf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="gxkmap.hb_mttf < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ :data2Icon="gxkmap.tb_mttf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="gxkmap.tb_mttf < 0 ? 'svg-icon-sm svg-icon-yellow' : 'svg-icon-sm svg-icon-green'"
|
|
|
+ ></Ppanel> -->
|
|
|
+ <Ppanel
|
|
|
+ title="利用小时"
|
|
|
+ :data="riseNumber(gxkmap.bg_dxkyss)"
|
|
|
+ :dataColor="gxkmap.bg_dxkyss < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.ydxkyss"
|
|
|
+ :data1Icon="
|
|
|
+ gxkmap.tb_dxkyss < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'
|
|
|
+ "
|
|
|
+ :data1IconClass="
|
|
|
+ gxkmap.tb_dxkyss < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ :data2Icon="
|
|
|
+ gxkmap.hb_dxkyss < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'
|
|
|
+ "
|
|
|
+ :data2IconClass="
|
|
|
+ gxkmap.hb_dxkyss < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="设备可利用率"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_sbklyl)"
|
|
|
+ :dataColor="gxkmap.bg_sbklyl < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.ysbklyl"
|
|
|
+ :data1Icon="
|
|
|
+ gxkmap.hb_sbklyl < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'
|
|
|
+ "
|
|
|
+ :data1IconClass="
|
|
|
+ gxkmap.hb_sbklyl < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ :data2Icon="
|
|
|
+ gxkmap.tb_sbklyl < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'
|
|
|
+ "
|
|
|
+ :data2IconClass="
|
|
|
+ gxkmap.tb_sbklyl < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="MTBF"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_mtbf)"
|
|
|
+ :dataColor="gxkmap.bg_mtbf < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.mtbf"
|
|
|
+ :data1Icon="gxkmap.hb_mtbf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="
|
|
|
+ gxkmap.hb_mtbf < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ :data2Icon="gxkmap.tb_mtbf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="
|
|
|
+ gxkmap.tb_mtbf < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="MTTR"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_mttr)"
|
|
|
+ :dataColor="gxkmap.bg_mttr < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.mttr"
|
|
|
+ :data1Icon="gxkmap.hb_mttr < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="
|
|
|
+ gxkmap.hb_mttr < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ :data2Icon="gxkmap.tb_mttr < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="
|
|
|
+ gxkmap.tb_mttr < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ ></Ppanel>
|
|
|
+ <Ppanel
|
|
|
+ title="MTTF"
|
|
|
+ class="stb-p"
|
|
|
+ :data="riseNumber(gxkmap.bg_mttf)"
|
|
|
+ :dataColor="gxkmap.bg_mttf < 0 ? '#f25656' : '#05BB4C'"
|
|
|
+ :days="gxkmap.mttf"
|
|
|
+ :data1Icon="gxkmap.hb_mttf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data1IconClass="
|
|
|
+ gxkmap.hb_mttf < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ :data2Icon="gxkmap.tb_mttf < 0 ? 'svg-arrow-dpwn-1' : 'svg-arrow-up-1'"
|
|
|
+ :data2IconClass="
|
|
|
+ gxkmap.tb_mttf < 0
|
|
|
+ ? 'svg-icon-sm svg-icon-yellow'
|
|
|
+ : 'svg-icon-sm svg-icon-green'
|
|
|
+ "
|
|
|
+ ></Ppanel>
|
|
|
</div>
|
|
|
- <!-- bounceInUp, -->
|
|
|
<el-dialog
|
|
|
top="50px"
|
|
|
- custom-class="modal animated bounceIn"
|
|
|
+ title="查看视频"
|
|
|
+ :custom-class="videoDialogClass"
|
|
|
v-model="showVideoDialog"
|
|
|
width="80%"
|
|
|
:destroy-on-close="true"
|
|
|
- @closed="dialogVideoUrl = ''"
|
|
|
+ :before-close="
|
|
|
+ (done) => {
|
|
|
+ videoDialogClass = 'modal animated a1 bounceOut';
|
|
|
+ delaylyFn(450, done);
|
|
|
+ }
|
|
|
+ "
|
|
|
+ @closed="
|
|
|
+ dialogVideoUrl = '';
|
|
|
+ videoDialogClass = 'modal animated a1 bounceIn';
|
|
|
+ "
|
|
|
>
|
|
|
<iframe
|
|
|
class="videoBoxiframe"
|
|
@@ -105,6 +284,47 @@
|
|
|
:src="dialogVideoUrl"
|
|
|
/>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog
|
|
|
+ title="停机详情"
|
|
|
+ :custom-class="tableDialogClass"
|
|
|
+ v-model="showTableDialog"
|
|
|
+ width="80%"
|
|
|
+ :destroy-on-close="true"
|
|
|
+ :before-close="
|
|
|
+ (done) => {
|
|
|
+ tableDialogClass = 'modal animated a1 fadeOutLeftBig';
|
|
|
+ delaylyFn(450, done);
|
|
|
+ }
|
|
|
+ "
|
|
|
+ @closed="
|
|
|
+ dialogVideoUrl = '';
|
|
|
+ tableDialogClass = 'modal animated a1 fadeInLeftBig';
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <el-form style="margin: 30px 0" label-width="120px" inline>
|
|
|
+ <el-form-item label="风机ID" style="width: 45%; margin-bottom: 25px">
|
|
|
+ <el-input v-model="tableItem.windTurbineId" readonly></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="所属风场" style="width: 45%; margin-bottom: 25px">
|
|
|
+ <el-input v-model="tableItem.wpName" readonly></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="停机类型" style="width: 45%; margin-bottom: 25px">
|
|
|
+ <el-input v-model="tableItem.statusName" readonly></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="停机时间" style="width: 45%; margin-bottom: 25px">
|
|
|
+ <el-input v-model="tableItem.stopTime" readonly></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="恢复时间" style="width: 45%; margin-bottom: 25px">
|
|
|
+ <el-input v-model="tableItem.startTime" readonly></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ label="停机时长(小时)"
|
|
|
+ style="width: 45%; margin-bottom: 25px"
|
|
|
+ >
|
|
|
+ <el-input v-model="tableItem.stopHours" readonly></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -136,11 +356,23 @@ export default {
|
|
|
},
|
|
|
// 数据
|
|
|
data() {
|
|
|
+ const that = this;
|
|
|
return {
|
|
|
videoShow: true,
|
|
|
showPanel: false,
|
|
|
exchangeBtn: false,
|
|
|
exchangeBtn1: false,
|
|
|
+ timmer1: null,
|
|
|
+ showTableDialog: false,
|
|
|
+ videoDialogClass: "modal animated a1 bounceIn",
|
|
|
+ tableDialogClass: "modal animated a1 fadeInLeftBig",
|
|
|
+ peopleClass: "",
|
|
|
+ timeStr: "",
|
|
|
+ wpId: "0",
|
|
|
+ tqmap1: {},
|
|
|
+ gxkmap: {},
|
|
|
+ tableItem: {},
|
|
|
+ mapSource: {},
|
|
|
videoArray: [
|
|
|
[
|
|
|
{
|
|
@@ -193,65 +425,48 @@ export default {
|
|
|
total: 100,
|
|
|
},
|
|
|
],
|
|
|
- tableData: {
|
|
|
+ workDataIndex: 0,
|
|
|
+ workData: {
|
|
|
column: [
|
|
|
{
|
|
|
- name: "标题",
|
|
|
- field: "v1",
|
|
|
+ name: "人员",
|
|
|
+ field: "laborname",
|
|
|
is_num: false,
|
|
|
is_light: false,
|
|
|
+ click(e, row) {
|
|
|
+ that.changePeople(row.index);
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
- name: "标题",
|
|
|
- field: "v2",
|
|
|
+ name: "职务",
|
|
|
+ field: "jobcode",
|
|
|
is_num: false,
|
|
|
is_light: false,
|
|
|
+ click(e, row) {
|
|
|
+ that.changePeople(row.index);
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
- name: "标题",
|
|
|
- field: "v3",
|
|
|
+ name: "开始时间",
|
|
|
+ field: "starttime",
|
|
|
width: "150px",
|
|
|
is_num: false,
|
|
|
is_light: false,
|
|
|
+ click(e, row) {
|
|
|
+ that.changePeople(row.index);
|
|
|
+ },
|
|
|
},
|
|
|
{
|
|
|
- name: "标题",
|
|
|
- field: "v4",
|
|
|
+ name: "原因",
|
|
|
+ field: "problem",
|
|
|
is_num: false,
|
|
|
is_light: false,
|
|
|
+ click(e, row) {
|
|
|
+ that.changePeople(row.index);
|
|
|
+ },
|
|
|
},
|
|
|
],
|
|
|
- data: [
|
|
|
- {
|
|
|
- v1: "内容内容",
|
|
|
- v2: "内容内容",
|
|
|
- v3: "内容内容内容内容内容",
|
|
|
- v4: "内容内容",
|
|
|
- is_light: false,
|
|
|
- },
|
|
|
- {
|
|
|
- v1: "内容内容",
|
|
|
- v2: "内容内容",
|
|
|
- v3: "内容内容内容内容内容",
|
|
|
- v4: "内容内容",
|
|
|
- is_light: false,
|
|
|
- },
|
|
|
- {
|
|
|
- v1: "内容内容",
|
|
|
- v2: "内容内容",
|
|
|
- v3: "内容内容内容内容内容",
|
|
|
- v4: "内容内容",
|
|
|
- is_light: false,
|
|
|
- },
|
|
|
-
|
|
|
- {
|
|
|
- v1: "内容内容",
|
|
|
- v2: "内容内容",
|
|
|
- v3: "内容内容内容内容内容",
|
|
|
- v4: "内容内容",
|
|
|
- is_light: false,
|
|
|
- },
|
|
|
- ],
|
|
|
+ data: [],
|
|
|
},
|
|
|
levelTableData: {
|
|
|
column: [
|
|
@@ -296,8 +511,22 @@ export default {
|
|
|
},
|
|
|
],
|
|
|
},
|
|
|
+ sels: {
|
|
|
+ column: [
|
|
|
+ {
|
|
|
+ name: "风机编号",
|
|
|
+ field: "windTurbineId",
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "时间",
|
|
|
+ field: "stopTime",
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ data: [],
|
|
|
+ },
|
|
|
};
|
|
|
},
|
|
|
+
|
|
|
// 函数
|
|
|
methods: {
|
|
|
openVideoDialog(item) {
|
|
@@ -306,12 +535,109 @@ export default {
|
|
|
this.showVideoDialog = true;
|
|
|
}
|
|
|
},
|
|
|
+
|
|
|
+ getWtInfo() {
|
|
|
+ let that = this;
|
|
|
+ that.API.requestData({
|
|
|
+ method: "POST",
|
|
|
+ subUrl: "sandtable/findWtInfo",
|
|
|
+ data: {
|
|
|
+ wpId: that.wpId,
|
|
|
+ },
|
|
|
+ success(res) {
|
|
|
+ console.log(11111, res);
|
|
|
+
|
|
|
+ that.tqmap1 = res.data.tqmap1;
|
|
|
+
|
|
|
+ res.data.sels.forEach((ele) => {
|
|
|
+ ele.stopTime = new Date(ele.stopTime).formatDate(
|
|
|
+ "yyyy-MM-dd hh:mm:ss"
|
|
|
+ );
|
|
|
+ ele.startTime = new Date(ele.stopTime).formatDate(
|
|
|
+ "yyyy-MM-dd hh:mm:ss"
|
|
|
+ );
|
|
|
+ });
|
|
|
+
|
|
|
+ that.sels.data = res.data.sels;
|
|
|
+ that.gxkmap = res.data.gxkmap;
|
|
|
+ },
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ // 获取中部地图数据
|
|
|
+ getWpHealthInfo() {
|
|
|
+ let that = this;
|
|
|
+ that.API.requestData({
|
|
|
+ method: "POST",
|
|
|
+ subUrl: "sandtable/judgeWpHealth",
|
|
|
+ data: {
|
|
|
+ wpId: that.wpId,
|
|
|
+ },
|
|
|
+ success(res) {
|
|
|
+ that.mapSource = res.data;
|
|
|
+ },
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ // 获取中部地图数据
|
|
|
+ getTop4Info() {
|
|
|
+ let that = this;
|
|
|
+ that.API.requestData({
|
|
|
+ method: "GET",
|
|
|
+ baseURL: "http://192.168.1.18:9988/",
|
|
|
+ subUrl: "equoperationrecord/top4",
|
|
|
+ data: {
|
|
|
+ stId: that.wpId,
|
|
|
+ },
|
|
|
+ success(res) {
|
|
|
+ res.data.forEach((ele, index) => {
|
|
|
+ ele.index = index;
|
|
|
+ });
|
|
|
+ that.workData.data = res.data;
|
|
|
+ },
|
|
|
+ });
|
|
|
+ },
|
|
|
+
|
|
|
+ clickRow(row) {
|
|
|
+ this.tableItem = row;
|
|
|
+ this.showTableDialog = true;
|
|
|
+ },
|
|
|
+
|
|
|
+ delaylyFn(time, fn) {
|
|
|
+ setTimeout(() => {
|
|
|
+ fn();
|
|
|
+ }, time);
|
|
|
+ },
|
|
|
+
|
|
|
+ riseNumber(number) {
|
|
|
+ if (number < 0) {
|
|
|
+ return (number - number * 2) / 100;
|
|
|
+ } else {
|
|
|
+ return number / 100;
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ // 切换人员展示
|
|
|
+ changePeople(index) {
|
|
|
+ if (!this.peopleAnmLock && this.workDataIndex !== index) {
|
|
|
+ this.peopleAnmLock = true;
|
|
|
+ this.peopleClass = "fadeOutRight";
|
|
|
+ setTimeout(() => {
|
|
|
+ this.workDataIndex = index;
|
|
|
+ this.peopleClass = "fadeInRight";
|
|
|
+ this.peopleAnmLock = false;
|
|
|
+ }, 150);
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
when: function () {
|
|
|
this.showPanel = true;
|
|
|
},
|
|
|
+
|
|
|
exchange: function () {
|
|
|
this.exchangeBtn = !this.exchangeBtn;
|
|
|
},
|
|
|
+
|
|
|
exchange1: function () {
|
|
|
this.exchangeBtn1 = !this.exchangeBtn1;
|
|
|
},
|
|
@@ -321,7 +647,13 @@ export default {
|
|
|
// 创建前
|
|
|
},
|
|
|
created() {
|
|
|
- // 创建后
|
|
|
+ this.getWtInfo();
|
|
|
+ this.getWpHealthInfo();
|
|
|
+ this.getTop4Info();
|
|
|
+ this.timeStr = new Date().formatDate("MM-dd hh:mm");
|
|
|
+ this.timmer1 = setInterval(() => {
|
|
|
+ this.timeStr = new Date().formatDate("MM-dd hh:mm");
|
|
|
+ });
|
|
|
},
|
|
|
beforeMount() {
|
|
|
// 渲染前
|
|
@@ -335,6 +667,11 @@ export default {
|
|
|
updated() {
|
|
|
// 数据更新后
|
|
|
},
|
|
|
+
|
|
|
+ unmounted() {
|
|
|
+ clearInterval(this.timmer1);
|
|
|
+ this.timmer1 = null;
|
|
|
+ },
|
|
|
};
|
|
|
</script>
|
|
|
|
|
@@ -450,6 +787,10 @@ export default {
|
|
|
margin-left: -1.481vh;
|
|
|
margin-bottom: -1.481vh;
|
|
|
|
|
|
+ tr {
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+
|
|
|
.com-table thead tr th,
|
|
|
.com-table tr td {
|
|
|
padding: 0.556vh 0;
|
|
@@ -457,8 +798,12 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .animated {
|
|
|
- // animation-duration: 0.5s;
|
|
|
+ .animated.a0 {
|
|
|
+ animation-duration: 0.35s;
|
|
|
+ }
|
|
|
+
|
|
|
+ .animated.a1 {
|
|
|
+ animation-duration: 0.5s;
|
|
|
}
|
|
|
|
|
|
.el-overlay {
|
|
@@ -480,22 +825,24 @@ export default {
|
|
|
animation-duration: 0;
|
|
|
@keyframes dialog-fade-in {
|
|
|
0% {
|
|
|
- transform: translate3d(0, 100%, 0);
|
|
|
- opacity: 1;
|
|
|
+ transform: translate3d(-1000%, -1000%, 0);
|
|
|
+ opacity: 0;
|
|
|
}
|
|
|
100% {
|
|
|
- transform: translate3d(0, 100%, 0);
|
|
|
+ transform: translate3d(-1000%, -1000%, 0);
|
|
|
opacity: 1;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@keyframes dialog-fade-out {
|
|
|
0% {
|
|
|
- transform: translate3d(0, 0, 0);
|
|
|
+ // transform: translate3d(0, 0, 0);
|
|
|
+ transform: translate3d(-1000%, -1000%, 0);
|
|
|
opacity: 1;
|
|
|
}
|
|
|
100% {
|
|
|
- transform: translate3d(0, -100%, 0);
|
|
|
+ // transform: translate3d(0, -100%, 0);
|
|
|
+ transform: translate3d(-1000%, -1000%, 0);
|
|
|
opacity: 0;
|
|
|
}
|
|
|
}
|