|
@@ -1,17 +1,35 @@
|
|
<template>
|
|
<template>
|
|
<div id="bottomMenus">
|
|
<div id="bottomMenus">
|
|
<!-- 底部菜单动态SVG底座 -->
|
|
<!-- 底部菜单动态SVG底座 -->
|
|
- <BottomMenuSvg id="svgBox" @changeShowBottomMenusStatus="changeShowBottomMenusStatus()" />
|
|
|
|
|
|
+ <BottomMenuSvg
|
|
|
|
+ id="svgBox"
|
|
|
|
+ @changeShowBottomMenusStatus="changeShowBottomMenusStatus()"
|
|
|
|
+ />
|
|
<!-- 申请任务弹窗 -->
|
|
<!-- 申请任务弹窗 -->
|
|
- <CreateTaskForm ref="sqrw" @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
|
|
|
|
|
|
+ <CreateTaskForm
|
|
|
|
+ ref="sqrw"
|
|
|
|
+ @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
|
|
|
|
+ />
|
|
<!-- 我的任务弹窗 -->
|
|
<!-- 我的任务弹窗 -->
|
|
- <MyMission ref="wdrw" @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
|
|
|
|
|
|
+ <MyMission
|
|
|
|
+ ref="wdrw"
|
|
|
|
+ @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
|
|
|
|
+ />
|
|
<!-- 同屏对比弹窗 -->
|
|
<!-- 同屏对比弹窗 -->
|
|
- <SameScreenComparison ref="tpdb" @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
|
|
|
|
|
|
+ <SameScreenComparison
|
|
|
|
+ ref="tpdb"
|
|
|
|
+ @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
|
|
|
|
+ />
|
|
<!-- 上传数据弹窗 -->
|
|
<!-- 上传数据弹窗 -->
|
|
- <UploadingData ref="scsj" @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
|
|
|
|
|
|
+ <UploadingData
|
|
|
|
+ ref="scsj"
|
|
|
|
+ @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
|
|
|
|
+ />
|
|
<!-- 报告输出弹窗 -->
|
|
<!-- 报告输出弹窗 -->
|
|
- <ReportOutput ref="ReportOutput" @changeShowBottomMenusStatus="changeShowBottomMenusStatus" />
|
|
|
|
|
|
+ <ReportOutput
|
|
|
|
+ ref="ReportOutput"
|
|
|
|
+ @changeShowBottomMenusStatus="changeShowBottomMenusStatus"
|
|
|
|
+ />
|
|
<!-- 自定义模型 -->
|
|
<!-- 自定义模型 -->
|
|
<CustomModelDialog />
|
|
<CustomModelDialog />
|
|
<!-- 底部菜单主体 -->
|
|
<!-- 底部菜单主体 -->
|
|
@@ -20,7 +38,7 @@
|
|
:style="{
|
|
:style="{
|
|
width: showBottomMenusStatus ? '981px' : '0px',
|
|
width: showBottomMenusStatus ? '981px' : '0px',
|
|
height: showBottomMenusStatus ? '200px' : '0px',
|
|
height: showBottomMenusStatus ? '200px' : '0px',
|
|
- border: showBottomMenusStatus ? '1px solid #00aaff' : 'none'
|
|
|
|
|
|
+ border: showBottomMenusStatus ? '1px solid #00aaff' : 'none',
|
|
}"
|
|
}"
|
|
>
|
|
>
|
|
<!-- 模块遍历渲染也是menus对象的第一层数组 -->
|
|
<!-- 模块遍历渲染也是menus对象的第一层数组 -->
|
|
@@ -37,16 +55,27 @@
|
|
<!-- 遍历渲染每个模块下的子菜单,也是menus数组中subMenu数组 -->
|
|
<!-- 遍历渲染每个模块下的子菜单,也是menus数组中subMenu数组 -->
|
|
<div
|
|
<div
|
|
class="colBtuMenu"
|
|
class="colBtuMenu"
|
|
|
|
+ :style="{ cursor: subItem.isForbidden ? 'not-allowed' : 'pointer' }"
|
|
@click="changeBottomMenu(item.index, subItem)"
|
|
@click="changeBottomMenu(item.index, subItem)"
|
|
v-for="(subItem, subIndex) in item.subMenu"
|
|
v-for="(subItem, subIndex) in item.subMenu"
|
|
:key="subIndex"
|
|
:key="subIndex"
|
|
>
|
|
>
|
|
<!-- 选中状态的背景高亮(舍弃) -->
|
|
<!-- 选中状态的背景高亮(舍弃) -->
|
|
- <div :class="ifMenuIndex(item.index, subItem) ? 'colBtuMenuShadow' : ''"></div>
|
|
|
|
|
|
+ <div
|
|
|
|
+ :class="
|
|
|
|
+ ifMenuIndex(item.index, subItem) ? 'colBtuMenuShadow' : ''
|
|
|
|
+ "
|
|
|
|
+ ></div>
|
|
|
|
|
|
<!-- 子菜单图标的选择性渲染 -->
|
|
<!-- 子菜单图标的选择性渲染 -->
|
|
- <el-image class="BtuMenu_hover" :src="returnBgImage(subItem.bgImage + '-a')"></el-image>
|
|
|
|
- <el-image class="BtuMenu" :src="returnBgImage(subItem.bgImage)"></el-image>
|
|
|
|
|
|
+ <el-image
|
|
|
|
+ class="BtuMenu_hover"
|
|
|
|
+ :src="returnBgImage(subItem.bgImage + '-a')"
|
|
|
|
+ ></el-image>
|
|
|
|
+ <el-image
|
|
|
|
+ class="BtuMenu"
|
|
|
|
+ :src="returnBgImage(subItem.bgImage)"
|
|
|
|
+ ></el-image>
|
|
<!-- 子菜单标题 -->
|
|
<!-- 子菜单标题 -->
|
|
<div class="BtuMenu_title">
|
|
<div class="BtuMenu_title">
|
|
{{ subItem.title }}
|
|
{{ subItem.title }}
|
|
@@ -80,7 +109,7 @@ export default {
|
|
SameScreenComparison,
|
|
SameScreenComparison,
|
|
UploadingData,
|
|
UploadingData,
|
|
CustomModelDialog,
|
|
CustomModelDialog,
|
|
- ReportOutput
|
|
|
|
|
|
+ ReportOutput,
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
@@ -96,8 +125,8 @@ export default {
|
|
title: "任务申请",
|
|
title: "任务申请",
|
|
subMenu: [
|
|
subMenu: [
|
|
{ index: 0, title: "申请任务", bgImage: "sqrw", clickRef: "sqrw" },
|
|
{ index: 0, title: "申请任务", bgImage: "sqrw", clickRef: "sqrw" },
|
|
- { index: 1, title: "我的任务", bgImage: "wdrw", clickRef: "wdrw" }
|
|
|
|
- ]
|
|
|
|
|
|
+ { index: 1, title: "我的任务", bgImage: "wdrw", clickRef: "wdrw" },
|
|
|
|
+ ],
|
|
},
|
|
},
|
|
{
|
|
{
|
|
index: 1,
|
|
index: 1,
|
|
@@ -108,44 +137,68 @@ export default {
|
|
index: 0,
|
|
index: 0,
|
|
title: "疑点审计",
|
|
title: "疑点审计",
|
|
bgImage: "ydsj",
|
|
bgImage: "ydsj",
|
|
- clickEmit: "caseAuditEvent"
|
|
|
|
|
|
+ clickEmit: "caseAuditEvent",
|
|
|
|
+ isForbidden: false,
|
|
},
|
|
},
|
|
{
|
|
{
|
|
index: 1,
|
|
index: 1,
|
|
title: "标记疑点",
|
|
title: "标记疑点",
|
|
- bgImage: "bjyd"
|
|
|
|
|
|
+ bgImage: "bjyd",
|
|
|
|
+ isForbidden: false,
|
|
// clickEmit: "labelCaseEvent"
|
|
// clickEmit: "labelCaseEvent"
|
|
},
|
|
},
|
|
- { index: 2, title: "同屏对比", bgImage: "tpdb", clickRef: "tpdb" },
|
|
|
|
|
|
+ {
|
|
|
|
+ index: 2,
|
|
|
|
+ title: "同屏对比",
|
|
|
|
+ bgImage: "tpdb",
|
|
|
|
+ clickRef: "tpdb",
|
|
|
|
+ isForbidden: false,
|
|
|
|
+ },
|
|
{
|
|
{
|
|
index: 3,
|
|
index: 3,
|
|
title: "卷帘对比",
|
|
title: "卷帘对比",
|
|
bgImage: "jldb",
|
|
bgImage: "jldb",
|
|
clickEmit: "JLControl",
|
|
clickEmit: "JLControl",
|
|
- stateKey: "jlActiveState"
|
|
|
|
|
|
+ stateKey: "jlActiveState",
|
|
|
|
+ isForbidden: false,
|
|
},
|
|
},
|
|
- { index: 4, title: "上传数据", bgImage: "scsj", clickRef: "scsj"},
|
|
|
|
|
|
+ { index: 4, title: "上传数据", bgImage: "scsj", clickRef: "scsj" },
|
|
{
|
|
{
|
|
index: 5,
|
|
index: 5,
|
|
title: "自定义模型",
|
|
title: "自定义模型",
|
|
bgImage: "zdymx",
|
|
bgImage: "zdymx",
|
|
- clickEmit: "customModelEvent"
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
|
|
+ clickEmit: "customModelEvent",
|
|
|
|
+ isForbidden: false,
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
},
|
|
},
|
|
{
|
|
{
|
|
index: 2,
|
|
index: 2,
|
|
width: "94px",
|
|
width: "94px",
|
|
title: "疑点报告",
|
|
title: "疑点报告",
|
|
- subMenu: [{ index: 0, title: "报告输出", bgImage: "bgsc", clickRef: "ReportOutput" }]
|
|
|
|
|
|
+ subMenu: [
|
|
|
|
+ {
|
|
|
|
+ index: 0,
|
|
|
|
+ title: "报告输出",
|
|
|
|
+ bgImage: "bgsc",
|
|
|
|
+ clickRef: "ReportOutput",
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
},
|
|
},
|
|
{
|
|
{
|
|
index: 3,
|
|
index: 3,
|
|
width: "94px",
|
|
width: "94px",
|
|
title: "现场勘查",
|
|
title: "现场勘查",
|
|
- subMenu: [{ index: 0, title: "发到手机", bgImage: "fdsj", clickEmit: "notFound" }]
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
|
|
+ subMenu: [
|
|
|
|
+ {
|
|
|
|
+ index: 0,
|
|
|
|
+ title: "发到手机",
|
|
|
|
+ bgImage: "fdsj",
|
|
|
|
+ clickEmit: "notFound",
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
};
|
|
};
|
|
},
|
|
},
|
|
mounted() {
|
|
mounted() {
|
|
@@ -168,7 +221,8 @@ export default {
|
|
} else if (index == 1) {
|
|
} else if (index == 1) {
|
|
if (subItem.index === 0 || subItem.index === 1) {
|
|
if (subItem.index === 0 || subItem.index === 1) {
|
|
return (
|
|
return (
|
|
- this.$store.state.bottomMenuIndexs.index == index && this.$store.state.bottomMenuIndexs.subIndex == subItem.index
|
|
|
|
|
|
+ this.$store.state.bottomMenuIndexs.index == index &&
|
|
|
|
+ this.$store.state.bottomMenuIndexs.subIndex == subItem.index
|
|
);
|
|
);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -177,25 +231,47 @@ export default {
|
|
changeBottomMenu(index, item) {
|
|
changeBottomMenu(index, item) {
|
|
// 该逻辑可能会舍弃
|
|
// 该逻辑可能会舍弃
|
|
if (item.stateKey != undefined) {
|
|
if (item.stateKey != undefined) {
|
|
- this.$store.commit("changeJlActiveState", !this.$store.state[item.stateKey]);
|
|
|
|
|
|
+ this.$store.commit(
|
|
|
|
+ "changeJlActiveState",
|
|
|
|
+ !this.$store.state[item.stateKey]
|
|
|
|
+ );
|
|
} else {
|
|
} else {
|
|
- this.$store.commit("changeBottomMenu", {
|
|
|
|
- index: index,
|
|
|
|
- subIndex: item.index
|
|
|
|
- });
|
|
|
|
|
|
+ // 疑点审计按钮禁止点击事件
|
|
|
|
+ if (item.title === "疑点审计") {
|
|
|
|
+ if (!item.isForbidden) {
|
|
|
|
+ this.$store.commit("changeBottomMenu", {
|
|
|
|
+ index: index,
|
|
|
|
+ subIndex: item.index,
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ if(item.isForbidden){
|
|
|
|
+ this.$message.info("仅支持开启一个预设模型图层!")
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ this.$store.commit("changeBottomMenu", {
|
|
|
|
+ index: index,
|
|
|
|
+ subIndex: item.index,
|
|
|
|
+ });
|
|
|
|
+ }
|
|
}
|
|
}
|
|
- if (item.clickEmit) {
|
|
|
|
|
|
+ if (item.clickEmit && !item.isForbidden) {
|
|
// 调用全局事件总线中的指定事件
|
|
// 调用全局事件总线中的指定事件
|
|
this.$bus.$emit(item.clickEmit);
|
|
this.$bus.$emit(item.clickEmit);
|
|
}
|
|
}
|
|
- if ((item.clickEmit ? item.clickEmit != "notFound" : true) && item.clickRef) {
|
|
|
|
|
|
+ if (
|
|
|
|
+ (item.clickEmit ? item.clickEmit != "notFound" : true) &&
|
|
|
|
+ item.clickRef
|
|
|
|
+ ) {
|
|
// 调用全局事件总线中的指定事件
|
|
// 调用全局事件总线中的指定事件
|
|
this.$refs[item.clickRef].changeShowBottomMenusStatus();
|
|
this.$refs[item.clickRef].changeShowBottomMenusStatus();
|
|
}
|
|
}
|
|
},
|
|
},
|
|
// 根据菜单参数bgImage,菜单父级index和子菜单index,判断全局变量已选中底部菜单的index对比,返回不同状态下的icon图标地址。
|
|
// 根据菜单参数bgImage,菜单父级index和子菜单index,判断全局变量已选中底部菜单的index对比,返回不同状态下的icon图标地址。
|
|
returnBgImage(bgImage, index, subIndex) {
|
|
returnBgImage(bgImage, index, subIndex) {
|
|
- if (this.$store.state.bottomMenuIndexs.index == index && this.$store.state.bottomMenuIndexs.subIndex == subIndex) {
|
|
|
|
|
|
+ if (
|
|
|
|
+ this.$store.state.bottomMenuIndexs.index == index &&
|
|
|
|
+ this.$store.state.bottomMenuIndexs.subIndex == subIndex
|
|
|
|
+ ) {
|
|
return "/static/images/bottomMenuIcon/" + bgImage + "-a.png";
|
|
return "/static/images/bottomMenuIcon/" + bgImage + "-a.png";
|
|
} else {
|
|
} else {
|
|
return "/static/images/bottomMenuIcon/" + bgImage + ".png";
|
|
return "/static/images/bottomMenuIcon/" + bgImage + ".png";
|
|
@@ -213,9 +289,23 @@ export default {
|
|
// 否则直接切换底部菜单显示隐藏状态
|
|
// 否则直接切换底部菜单显示隐藏状态
|
|
this.showBottomMenusStatus = !this.showBottomMenusStatus;
|
|
this.showBottomMenusStatus = !this.showBottomMenusStatus;
|
|
}
|
|
}
|
|
- }
|
|
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ watch: {
|
|
|
|
+ "$store.state.preModelLayerMap": {
|
|
|
|
+ handler(val) {
|
|
|
|
+ console.log(val);
|
|
|
|
+ if (val.length === 1) {
|
|
|
|
+ console.log("当前打开了一个预设模型图层");
|
|
|
|
+ this.menus[1].subMenu[0].isForbidden = false;
|
|
|
|
+ }
|
|
|
|
+ if (val.length > 1) {
|
|
|
|
+ console.log("当前不允许开启预设模型图层");
|
|
|
|
+ this.menus[1].subMenu[0].isForbidden = true;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ },
|
|
},
|
|
},
|
|
- watch: {}
|
|
|
|
};
|
|
};
|
|
</script>
|
|
</script>
|
|
|
|
|
|
@@ -303,7 +393,12 @@ export default {
|
|
display: flex;
|
|
display: flex;
|
|
justify-content: center;
|
|
justify-content: center;
|
|
align-items: center;
|
|
align-items: center;
|
|
- background-image: linear-gradient(to left, @topTitleMinLeft, @borderColor, @topTitleMinLeft);
|
|
|
|
|
|
+ background-image: linear-gradient(
|
|
|
|
+ to left,
|
|
|
|
+ @topTitleMinLeft,
|
|
|
|
+ @borderColor,
|
|
|
|
+ @topTitleMinLeft
|
|
|
|
+ );
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
font-family: pingfangSC;
|
|
font-family: pingfangSC;
|
|
font-weight: 300;
|
|
font-weight: 300;
|