|
|
@@ -14,7 +14,13 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="sub-list" v-if="currentActive == item.name">
|
|
|
- <div class="sub-item" v-for="sub of subList" :key="sub" @click="activeChildren(sub)">
|
|
|
+ <div
|
|
|
+ class="sub-item"
|
|
|
+ v-for="sub of subList"
|
|
|
+ :key="sub"
|
|
|
+ :class="{ 'sub-active': childrenActive == sub }"
|
|
|
+ @click="activeChildren(sub)"
|
|
|
+ >
|
|
|
{{ sub }}
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -26,6 +32,7 @@
|
|
|
|
|
|
<script lang="ts">
|
|
|
import { Vue, Component, Prop, Watch } from 'vue-property-decorator'
|
|
|
+import ProjectPipeSpeedInfoCheck from '@/views/groupPage/districtPageModules/customTools/projectPipeSpeedInfoCheck.vue'
|
|
|
//统计分析专题切换
|
|
|
@Component({ name: 'specialSwitch' })
|
|
|
export default class specialSwitch extends Vue {
|
|
|
@@ -36,22 +43,32 @@ export default class specialSwitch extends Vue {
|
|
|
]
|
|
|
subList: Array<any> = ['进度专题', '进度模拟', '管道开挖']
|
|
|
childrenActive = null
|
|
|
+ prjPSICInstance = null
|
|
|
get currentActive() {
|
|
|
return this.$store.state.bigScreen.currentStatisticalActive
|
|
|
}
|
|
|
created() {
|
|
|
this.$store.state.bigScreen.currentStatisticalActive = 'progress'
|
|
|
+ this.initPrjPSIC()
|
|
|
+ }
|
|
|
+ initPrjPSIC() {
|
|
|
+ const prjPSICConstructor = Vue.extend(ProjectPipeSpeedInfoCheck)
|
|
|
+ this.prjPSICInstance = new prjPSICConstructor({
|
|
|
+ store: this.$store
|
|
|
+ }).$mount()
|
|
|
}
|
|
|
active(name) {
|
|
|
this.$store.state.bigScreen.currentStatisticalActive = name
|
|
|
this.subList = name == 'progress' ? ['进度专题', '进度模拟', '管道开挖'] : []
|
|
|
this.childrenActive = null
|
|
|
+ this.clear()
|
|
|
}
|
|
|
activeChildren(item) {
|
|
|
this.childrenActive = item
|
|
|
+ this.clear()
|
|
|
switch (item) {
|
|
|
case '进度专题':
|
|
|
- this.$store.state.bigScreen.isShowPipeSpeedInfoCheck = true
|
|
|
+ this.prjPSICInstance.initScanTimes()
|
|
|
break
|
|
|
case '进度模拟':
|
|
|
this.$store.state.bigScreen.isShowPipeSpeedInfoCheck = true
|
|
|
@@ -61,6 +78,16 @@ export default class specialSwitch extends Vue {
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
+ clear() {
|
|
|
+ //清除进度专题页面
|
|
|
+ this.$store.state.bigScreen.isShowPipeSpeedInfoCheck = false
|
|
|
+ this.prjPSICInstance.clearSpeedInfos()
|
|
|
+ //清除管道开挖页面
|
|
|
+ this.$store.state.bigScreen.isShowExcavationAnalysis = false
|
|
|
+ }
|
|
|
+ beforeDestroy() {
|
|
|
+ this.clear()
|
|
|
+ }
|
|
|
}
|
|
|
</script>
|
|
|
|