2020-01-14 09:06:03 +08:00
|
|
|
|
<template>
|
|
|
|
|
<transition name="el-zoom-in-center">
|
|
|
|
|
<div class="mapPaint">
|
|
|
|
|
<div class="map-view">
|
2020-02-05 12:21:56 +08:00
|
|
|
|
<iscs-plate ref="iscsPlate" @iscsChange="iscsChange" />
|
2020-01-14 09:06:03 +08:00
|
|
|
|
</div>
|
2020-08-11 14:34:17 +08:00
|
|
|
|
<div class="map-draft" :class="{'hide': draftShow}">
|
|
|
|
|
<div class="btn_left_box" @click="clickRightBtn"><i :class="draftShow?'el-icon-arrow-right':'el-icon-arrow-left'" /></div>
|
2020-09-18 18:30:14 +08:00
|
|
|
|
<iscs-operate v-if="iscsMode==='fas'" ref="iscsOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
|
|
|
|
<iscs-bas-operate v-else-if="iscsMode==='bas'" ref="iscsBasOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
|
|
|
|
<iscs-psd-operate v-else-if="iscsMode==='psd'" ref="iscsPsdOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
|
|
|
|
<iscs-cctv-operate v-else-if="iscsMode==='cctv'" ref="iscsCctvOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
|
|
|
|
<iscs-afc-operate v-else-if="iscsMode==='afc'" ref="iscsAfcOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
|
|
|
|
<iscs-acs-operate v-else-if="iscsMode==='acs'" ref="iscsAcsOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
|
|
|
|
<iscs-net-operate v-else-if="iscsMode==='netState'" ref="iscsNetOperate" @iscsChange="iscsChange" @handleSave="handleSave" />
|
2020-01-14 09:06:03 +08:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</transition>
|
|
|
|
|
</template>
|
|
|
|
|
<script>
|
2020-02-05 12:21:56 +08:00
|
|
|
|
import localStore from 'storejs';
|
2020-01-14 09:06:03 +08:00
|
|
|
|
import IscsPlate from '@/views/iscsSystem/index';
|
|
|
|
|
import IscsOperate from './iscsOperate/index';
|
2020-01-15 17:56:31 +08:00
|
|
|
|
import IscsBasOperate from './iscsBasOperate/index';
|
2020-01-16 16:25:33 +08:00
|
|
|
|
import IscsPsdOperate from './iscsPsdOperate/index';
|
2020-01-17 14:15:14 +08:00
|
|
|
|
import IscsCctvOperate from './iscsCctvOperate/index';
|
2020-01-17 18:45:28 +08:00
|
|
|
|
import IscsAfcOperate from './iscsAfcOperate/index';
|
|
|
|
|
import IscsAcsOperate from './iscsAcsOperate/index';
|
2020-06-16 14:45:34 +08:00
|
|
|
|
import IscsNetOperate from './IscsNetOperate/index';
|
2020-09-18 18:30:14 +08:00
|
|
|
|
import { saveIscsElement } from '@/api/iscs';
|
|
|
|
|
|
2020-01-14 09:06:03 +08:00
|
|
|
|
export default {
|
|
|
|
|
name: 'IscsView',
|
|
|
|
|
components: {
|
|
|
|
|
IscsPlate,
|
2020-01-15 17:56:31 +08:00
|
|
|
|
IscsOperate,
|
2020-01-16 16:25:33 +08:00
|
|
|
|
IscsBasOperate,
|
2020-01-17 14:15:14 +08:00
|
|
|
|
IscsPsdOperate,
|
2020-01-17 18:45:28 +08:00
|
|
|
|
IscsCctvOperate,
|
|
|
|
|
IscsAfcOperate,
|
2020-06-16 14:45:34 +08:00
|
|
|
|
IscsAcsOperate,
|
|
|
|
|
IscsNetOperate
|
2020-01-14 09:06:03 +08:00
|
|
|
|
},
|
|
|
|
|
data() {
|
|
|
|
|
return {
|
|
|
|
|
size: {
|
|
|
|
|
width: this.$store.state.app.width - 521,
|
|
|
|
|
height: this.$store.state.app.height - 60
|
2020-02-05 12:21:56 +08:00
|
|
|
|
},
|
2020-08-11 14:34:17 +08:00
|
|
|
|
widthLeft: Number(localStore.get('LeftWidth')) || 450,
|
|
|
|
|
draftShow: false
|
2020-01-14 09:06:03 +08:00
|
|
|
|
};
|
|
|
|
|
},
|
2020-01-15 17:56:31 +08:00
|
|
|
|
computed:{
|
|
|
|
|
iscsMode() {
|
2020-06-24 15:02:09 +08:00
|
|
|
|
return this.$route.query.mode;
|
2020-01-15 17:56:31 +08:00
|
|
|
|
}
|
|
|
|
|
},
|
2020-01-14 09:06:03 +08:00
|
|
|
|
watch: {
|
2020-01-16 13:15:52 +08:00
|
|
|
|
$route(val) {
|
2020-06-24 15:02:09 +08:00
|
|
|
|
this.iscsChange(this.$route.query.mode, this.$route.query.system, this.$route.query.part);
|
2020-01-16 13:15:52 +08:00
|
|
|
|
}
|
2020-01-14 09:06:03 +08:00
|
|
|
|
},
|
|
|
|
|
mounted() {
|
2020-06-24 15:02:09 +08:00
|
|
|
|
this.$refs.iscsPlate.show(this.$route.query.mode, this.$route.query.system, this.$route.query.part);
|
2020-01-14 09:06:03 +08:00
|
|
|
|
this.$refs.iscsPlate.drawIscsInit();
|
|
|
|
|
},
|
|
|
|
|
beforeDestroy() {
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
methods: {
|
2020-06-24 15:02:09 +08:00
|
|
|
|
iscsChange(mode, system, part) {
|
|
|
|
|
this.$refs.iscsPlate.show(mode, system, part);
|
2020-01-14 09:06:03 +08:00
|
|
|
|
this.$refs.iscsPlate.drawIscsInit();
|
2020-08-11 14:34:17 +08:00
|
|
|
|
},
|
|
|
|
|
clickRightBtn() {
|
|
|
|
|
this.draftShow = !this.draftShow;
|
2020-09-18 18:30:14 +08:00
|
|
|
|
},
|
|
|
|
|
handleSave(data) {
|
|
|
|
|
const param = {
|
|
|
|
|
graphData: data,
|
|
|
|
|
lineCode: this.$route.query.lineCode,
|
|
|
|
|
stationCode: '',
|
|
|
|
|
system: this.$route.query.system,
|
|
|
|
|
totalSystem: this.$route.query.mode,
|
|
|
|
|
userInterface: this.$route.query.part
|
|
|
|
|
};
|
|
|
|
|
saveIscsElement(param).then(resp => {
|
|
|
|
|
this.$message.success('ISCS数据保存成功!');
|
|
|
|
|
}).catch(() => {
|
|
|
|
|
this.$message.error('ISCS数据保存异常!');
|
|
|
|
|
});
|
|
|
|
|
// {
|
|
|
|
|
// "graphData": "string",
|
|
|
|
|
// "id": 0,
|
|
|
|
|
// "lineCode": "string",
|
|
|
|
|
// "stationCode": "string",
|
|
|
|
|
// "system": "string",
|
|
|
|
|
// "totalSystem": "string",
|
|
|
|
|
// "userInterface": "string"
|
|
|
|
|
// }
|
2020-01-14 09:06:03 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
</script>
|
|
|
|
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
|
|
|
@import "src/styles/mixin.scss";
|
|
|
|
|
|
|
|
|
|
.map-draft{
|
2020-08-11 14:34:17 +08:00
|
|
|
|
width: 420px;
|
|
|
|
|
height: 100%;
|
|
|
|
|
position: absolute;
|
|
|
|
|
right: 0;
|
|
|
|
|
transform: translateX(420px);
|
|
|
|
|
transition: all 0.5s;
|
|
|
|
|
background: #fff;
|
|
|
|
|
z-index: 9;
|
|
|
|
|
/deep/{
|
|
|
|
|
.v-modal{
|
|
|
|
|
opacity: 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
&.hide{
|
|
|
|
|
transform: translateX(0);
|
|
|
|
|
}
|
2020-01-14 09:06:03 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.map-view {
|
|
|
|
|
float: left;
|
|
|
|
|
width: 60%;
|
|
|
|
|
}
|
|
|
|
|
.mapPaint{
|
|
|
|
|
height: 100%;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
2020-08-11 14:34:17 +08:00
|
|
|
|
.btn_left_box{
|
|
|
|
|
position: absolute;
|
|
|
|
|
left: 0;
|
|
|
|
|
top: 50%;
|
|
|
|
|
padding: 8px 3px;
|
|
|
|
|
background: #fff;
|
|
|
|
|
z-index: 10;
|
|
|
|
|
transform: translateX(-22px);
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
border-radius: 5px 0 0 5px;
|
|
|
|
|
}
|
2020-01-14 09:06:03 +08:00
|
|
|
|
</style>
|