|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<!-- 菜单弹窗 -->
|
|
|
- <div v-if="resizablePinnedDetail.detailMessageList.length">
|
|
|
+ <div v-if="resizablePinnedDetail.detailMessageList.length" :style="{display:display}">
|
|
|
<div
|
|
|
class="x-window synopkg-window sds-window-v5 x-resizable-pinned"
|
|
|
style="
|
|
@@ -19,11 +19,9 @@
|
|
|
zIndex: detailMessage.zIndex,
|
|
|
}"
|
|
|
:class="detailMessage.cls"
|
|
|
- v-for="(
|
|
|
- detailMessage, detailMessageIndex
|
|
|
- ) in resizablePinnedDetail.detailMessageList"
|
|
|
+ v-for="detailMessage in resizablePinnedDetail.detailMessageList"
|
|
|
:key="detailMessage.id"
|
|
|
- @click="changeDialogMenuWindow(detailMessage.title)"
|
|
|
+ @click="changeDialogMenuWindow(detailMessage.id)"
|
|
|
>
|
|
|
<div class="x-dlg-focus tjCenter" tabindex="0" role="application"></div>
|
|
|
<div class="x-window-tl" @click="moveWindowPosition">
|
|
@@ -37,7 +35,7 @@
|
|
|
<div
|
|
|
class="x-tool x-tool-close"
|
|
|
role="option"
|
|
|
- @click.stop="closeWindow(detailMessageIndex)"
|
|
|
+ @click.stop="closeWindow(detailMessage.id)"
|
|
|
>
|
|
|
|
|
|
</div>
|
|
@@ -45,14 +43,14 @@
|
|
|
class="x-tool x-tool-restore"
|
|
|
role="option"
|
|
|
:style="{ display: `${detailMessage.iconRestore}` }"
|
|
|
- @click.stop="restoreMizeWindow(detailMessageIndex)"
|
|
|
+ @click.stop="restoreMizeWindow(detailMessage.id)"
|
|
|
>
|
|
|
|
|
|
</div>
|
|
|
<div
|
|
|
class="x-tool x-tool-maximize"
|
|
|
role="option"
|
|
|
- @click.stop="maxiSizeWindow(detailMessageIndex)"
|
|
|
+ @click.stop="maxiSizeWindow(detailMessage.id)"
|
|
|
:style="{ display: `${detailMessage.iconMaximize}` }"
|
|
|
>
|
|
|
|
|
@@ -60,7 +58,7 @@
|
|
|
<div
|
|
|
class="x-tool x-tool-minimize"
|
|
|
role="option"
|
|
|
- @click.stop="miniMizeWindow(detailMessageIndex)"
|
|
|
+ @click.stop="miniMizeWindow(detailMessage.id)"
|
|
|
>
|
|
|
|
|
|
</div>
|
|
@@ -219,93 +217,26 @@ export default {
|
|
|
props: ["defaultZIndex", "detailMessageList"],
|
|
|
data() {
|
|
|
return {
|
|
|
+ display:'block',
|
|
|
resizablePinnedDetail: {
|
|
|
- detailMessageList: [
|
|
|
- // {
|
|
|
- // id: "0",
|
|
|
- // width: "1254px",
|
|
|
- // height: "calc(100vh - 80px)",
|
|
|
- // minHeight: "560px",
|
|
|
- // title: "套件中心",
|
|
|
- // spacialCls: "tjCenter",
|
|
|
- // cls: "deactive-win",
|
|
|
- // titleImgUrl: "../../../../public/image/index/tjCenter.png",
|
|
|
- // display: "none",
|
|
|
- // zIndex: 9053,
|
|
|
- // iconRestore: "none",
|
|
|
- // iconMaximize: "block",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // id: "1",
|
|
|
- // width: "1150px",
|
|
|
- // height: "calc(100vh - 120px)",
|
|
|
- // minHeight: "520px",
|
|
|
- // title: "控制中心",
|
|
|
- // spacialCls: "controlCenter",
|
|
|
- // cls: "deactive-win",
|
|
|
- // titleImgUrl: "../../../../public/image/index/controlCenter.png",
|
|
|
- // display: "none",
|
|
|
- // zIndex: 9053,
|
|
|
- // iconRestore: "none",
|
|
|
- // iconMaximize: "block",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // id: "2",
|
|
|
- // width: "1010px",
|
|
|
- // height: "calc(100vh - 200px)",
|
|
|
- // minHeight: "440px",
|
|
|
- // title: "File Station",
|
|
|
- // spacialCls: "file",
|
|
|
- // cls: "deactive-win",
|
|
|
- // titleImgUrl: "../../../../public/image/index/file.png",
|
|
|
- // display: "none",
|
|
|
- // zIndex: 9053,
|
|
|
- // iconRestore: "none",
|
|
|
- // iconMaximize: "block",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // id: "3",
|
|
|
- // width: "1010px",
|
|
|
- // height: "calc(100vh - 220px)",
|
|
|
- // minHeight: "420px",
|
|
|
- // title: "DSM 说明",
|
|
|
- // spacialCls: "question",
|
|
|
- // cls: "deactive-win",
|
|
|
- // titleImgUrl: "../../../../public/image/index/question.png",
|
|
|
- // display: "none",
|
|
|
- // zIndex: 9053,
|
|
|
- // iconRestore: "none",
|
|
|
- // iconMaximize: "block",
|
|
|
- // },
|
|
|
- ],
|
|
|
+ detailMessageList: [],
|
|
|
},
|
|
|
lastCheckIndex: -1,
|
|
|
openWindowNum: 0,
|
|
|
- detailMessageWidthList: [
|
|
|
- // {
|
|
|
- // width: "1254px",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // width: "1150px",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // width: "1010px",
|
|
|
- // },
|
|
|
- // {
|
|
|
- // width: "1010px",
|
|
|
- // },
|
|
|
- ],
|
|
|
- fixWindowZIndedxIsMax: false,
|
|
|
+ detailMessageWidthList: [],
|
|
|
// 已经被打开的弹出窗口
|
|
|
openedmenuList: [],
|
|
|
};
|
|
|
},
|
|
|
mounted() {
|
|
|
+ this.$bus.on("showDialogWindow", this.showDialogWindow);
|
|
|
+ this.$bus.on("hiddenDialogWindow", this.hiddenDialogWindow);
|
|
|
this.$bus.on("clickAppViewItem", this.clickAppViewItem);
|
|
|
- this.$bus.on("clickMenuItem", this.clickMenuItem);
|
|
|
this.$bus.on("openDSMWindow", this.openDSMWindow);
|
|
|
this.$bus.on("changeDialogMenuWindow", this.changeDialogMenuWindow);
|
|
|
this.$bus.on("menuItemChanged", this.menuItemChanged);
|
|
|
+ this.$bus.on("clickMenuItem", this.clickMenuItem);
|
|
|
+ // this.$bus.on("fixWindowZIndexchange", this.fixWindowZIndexchange);
|
|
|
this.resizablePinnedDetail.detailMessageList = JSON.parse(
|
|
|
JSON.stringify(this.detailMessageList)
|
|
|
);
|
|
@@ -316,16 +247,28 @@ export default {
|
|
|
);
|
|
|
},
|
|
|
methods: {
|
|
|
+ // 显示本页面
|
|
|
+ showDialogWindow(){
|
|
|
+ if(this.display === 'none'){
|
|
|
+ this.display = 'block'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 隐藏本页面
|
|
|
+ hiddenDialogWindow(){
|
|
|
+ if(this.display === 'block'){
|
|
|
+ this.display = 'none'
|
|
|
+ }
|
|
|
+ },
|
|
|
// 点击大菜单图标
|
|
|
- clickAppViewItem(obj) {
|
|
|
- let { detailMessageIndex } = obj;
|
|
|
- this.openDialogWindow(detailMessageIndex);
|
|
|
+ clickAppViewItem(id) {
|
|
|
+ this.showDialogWindow()
|
|
|
+ this.changeDialogMenuWindow(id)
|
|
|
},
|
|
|
// 点击小菜单图标
|
|
|
- clickMenuItem(imgUrl) {
|
|
|
+ clickMenuItem(id) {
|
|
|
let detailMessageIndex =
|
|
|
this.resizablePinnedDetail.detailMessageList.findIndex((item) => {
|
|
|
- return item.titleImgUrl == imgUrl;
|
|
|
+ return item.id === id;
|
|
|
});
|
|
|
if (detailMessageIndex != -1) {
|
|
|
this.openDialogWindow(detailMessageIndex);
|
|
@@ -333,39 +276,19 @@ export default {
|
|
|
},
|
|
|
// 打开弹出窗口
|
|
|
openDialogWindow(detailMessageIndex) {
|
|
|
- console.log(this.openedmenuList)
|
|
|
- let repeatDialog = this.openedmenuList.some((item) => {
|
|
|
- console.log(item.title)
|
|
|
- return (
|
|
|
- item.title ===
|
|
|
- this.resizablePinnedDetail.detailMessageList[detailMessageIndex].title
|
|
|
- );
|
|
|
- });
|
|
|
- console.log(
|
|
|
- repeatDialog,
|
|
|
- this.resizablePinnedDetail.detailMessageList[detailMessageIndex].title
|
|
|
- );
|
|
|
- console.log(
|
|
|
- (!detailMessageIndex && detailMessageIndex != 0) ||
|
|
|
- detailMessageIndex == -1 ||
|
|
|
- this.lastCheckIndex == detailMessageIndex ||
|
|
|
- repeatDialog
|
|
|
- );
|
|
|
+ this.resizablePinnedDetail.detailMessageList[detailMessageIndex].display =
|
|
|
+ "block";
|
|
|
if (
|
|
|
(!detailMessageIndex && detailMessageIndex != 0) ||
|
|
|
detailMessageIndex == -1 ||
|
|
|
- this.lastCheckIndex == detailMessageIndex ||
|
|
|
this.resizablePinnedDetail.detailMessageList[detailMessageIndex].cls ===
|
|
|
- "active-win" ||
|
|
|
- repeatDialog
|
|
|
+ "active-win"
|
|
|
) {
|
|
|
return;
|
|
|
}
|
|
|
console.log(11231)
|
|
|
- this.resizablePinnedDetail.detailMessageList[detailMessageIndex].display =
|
|
|
- "block";
|
|
|
- this.resizablePinnedDetail.detailMessageList[detailMessageIndex].cls =
|
|
|
- "active-win";
|
|
|
+ // this.resizablePinnedDetail.detailMessageList[detailMessageIndex].cls =
|
|
|
+ // "active-win";
|
|
|
this.resizablePinnedDetail.detailMessageList.forEach((item) => {
|
|
|
item.cls = "deactive-win";
|
|
|
});
|
|
@@ -380,23 +303,24 @@ export default {
|
|
|
this.lastCheckIndex = detailMessageIndex;
|
|
|
},
|
|
|
// 切换弹出的menu窗口
|
|
|
- changeDialogMenuWindow(title) {
|
|
|
- console.log(title);
|
|
|
+ changeDialogMenuWindow(id) {
|
|
|
let menuIndex = this.resizablePinnedDetail.detailMessageList.findIndex(
|
|
|
(item) => {
|
|
|
- return item.title === title;
|
|
|
+ return item.id === id;
|
|
|
}
|
|
|
);
|
|
|
if ((menuIndex || menuIndex == 0) && menuIndex != -1) {
|
|
|
this.openDialogWindow(menuIndex);
|
|
|
}
|
|
|
+ this.$bus.emit('dialogWindowZIndexIsMax',true)
|
|
|
},
|
|
|
// 打开DSM 说明
|
|
|
openDSMWindow() {
|
|
|
let detailMessageIndex =
|
|
|
this.resizablePinnedDetail.detailMessageList.findIndex((item) => {
|
|
|
- return item.title === "DSM 说明";
|
|
|
+ return item.id === 1;
|
|
|
});
|
|
|
+ console.log(this.resizablePinnedDetail.detailMessageList[detailMessageIndex])
|
|
|
if (detailMessageIndex && detailMessageIndex != -1) {
|
|
|
this.openDialogWindow(detailMessageIndex);
|
|
|
}
|
|
@@ -413,11 +337,16 @@ export default {
|
|
|
zIndex:
|
|
|
this.resizablePinnedDetail.detailMessageList[detailMessageIndex]
|
|
|
.zIndex,
|
|
|
+ id:this.resizablePinnedDetail.detailMessageList[detailMessageIndex]
|
|
|
+ .id,
|
|
|
};
|
|
|
this.$bus.emit("changeDialogWindow", obj);
|
|
|
},
|
|
|
// 最小化弹出框口
|
|
|
- miniMizeWindow(detailMessageIndex) {
|
|
|
+ miniMizeWindow(id) {
|
|
|
+ let detailMessageIndex = this.resizablePinnedDetail.detailMessageList.findIndex(item=>{
|
|
|
+ return item.id === id
|
|
|
+ })
|
|
|
this.resizablePinnedDetail.detailMessageList[detailMessageIndex].display =
|
|
|
"none";
|
|
|
this.countOpenWindowNum();
|
|
@@ -436,7 +365,10 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
//最大化弹出窗口
|
|
|
- maxiSizeWindow(detailMessageIndex) {
|
|
|
+ maxiSizeWindow(id) {
|
|
|
+ let detailMessageIndex = this.resizablePinnedDetail.detailMessageList.findIndex(item=>{
|
|
|
+ return item.id === id
|
|
|
+ })
|
|
|
this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width =
|
|
|
"100%";
|
|
|
this.resizablePinnedDetail.detailMessageList[
|
|
@@ -445,12 +377,17 @@ export default {
|
|
|
this.resizablePinnedDetail.detailMessageList[
|
|
|
detailMessageIndex
|
|
|
].iconMaximize = "none";
|
|
|
- this.openDialogWindow(detailMessageIndex);
|
|
|
+ if (detailMessageIndex && detailMessageIndex != -1) {
|
|
|
+ this.openDialogWindow(detailMessageIndex);
|
|
|
+ }
|
|
|
},
|
|
|
//恢复弹出窗口宽度
|
|
|
- restoreMizeWindow(detailMessageIndex) {
|
|
|
+ restoreMizeWindow(id) {
|
|
|
+ let detailMessageIndex = this.resizablePinnedDetail.detailMessageList.findIndex(item=>{
|
|
|
+ return item.id === id
|
|
|
+ })
|
|
|
this.resizablePinnedDetail.detailMessageList[detailMessageIndex].width =
|
|
|
- this.detailMessageWidthList[detailMessageIndex].width;
|
|
|
+ this.detailMessageWidthList[detailMessageIndex];
|
|
|
this.resizablePinnedDetail.detailMessageList[
|
|
|
detailMessageIndex
|
|
|
].iconRestore = "none";
|
|
@@ -458,16 +395,18 @@ export default {
|
|
|
detailMessageIndex
|
|
|
].iconMaximize = "block";
|
|
|
this.countOpenWindowNum();
|
|
|
- this.openDialogWindow(detailMessageIndex);
|
|
|
+ if (detailMessageIndex && detailMessageIndex != -1) {
|
|
|
+ this.openDialogWindow(detailMessageIndex);
|
|
|
+ }
|
|
|
},
|
|
|
//关闭弹出窗口
|
|
|
- closeWindow(detailMessageIndex) {
|
|
|
+ closeWindow(id) {
|
|
|
+ let detailMessageIndex = this.resizablePinnedDetail.detailMessageList.findIndex(item=>{
|
|
|
+ return item.id === id
|
|
|
+ })
|
|
|
this.resizablePinnedDetail.detailMessageList[detailMessageIndex].display =
|
|
|
"none";
|
|
|
- let imgUrl =
|
|
|
- this.resizablePinnedDetail.detailMessageList[detailMessageIndex]
|
|
|
- .titleImgUrl;
|
|
|
- this.$bus.emit("closeDialogWindow", imgUrl);
|
|
|
+ this.$bus.emit("closeDialogWindow", id);
|
|
|
let detailMessageList =
|
|
|
this.resizablePinnedDetail.detailMessageList.filter((item) => {
|
|
|
return item.display === "block";
|
|
@@ -491,10 +430,11 @@ export default {
|
|
|
this.openWindowNum++;
|
|
|
}
|
|
|
});
|
|
|
- if (this.openWindowNum == 0) {
|
|
|
+ if (! this.openWindowNum) {
|
|
|
this.resizablePinnedDetail.detailMessageList.forEach((item) => {
|
|
|
- item.zIndex = 9053;
|
|
|
+ item.zIndex = 9050;
|
|
|
});
|
|
|
+ this.$bus.emit("changeDefaultZIndex", 9050);
|
|
|
}
|
|
|
},
|
|
|
// 按z-index 给menuItem排序
|
|
@@ -505,11 +445,12 @@ export default {
|
|
|
return x < y ? -1 : x > y ? 1 : 0;
|
|
|
});
|
|
|
},
|
|
|
+ // 当固定窗口的zIndex改变时
|
|
|
+ fixWindowZIndexchange(){},
|
|
|
// 移动弹出框窗口位置
|
|
|
moveWindowPosition(e) {},
|
|
|
// 小图标被改变了
|
|
|
menuItemChanged(menuList) {
|
|
|
- console.log(menuList);
|
|
|
this.openedmenuList = menuList;
|
|
|
},
|
|
|
},
|
|
@@ -520,24 +461,10 @@ export default {
|
|
|
this.resizablePinnedDetail.detailMessageList.findIndex((item) => {
|
|
|
return item.zIndex >= this.defaultZIndex && item.display === "block";
|
|
|
});
|
|
|
- console.log(this.dialogZIndexMaxIndex);
|
|
|
if (
|
|
|
this.dialogZIndexMaxIndex != -1 &&
|
|
|
this.dialogZIndexMaxIndex != undefined
|
|
|
) {
|
|
|
- console.log(
|
|
|
- this.resizablePinnedDetail.detailMessageList[
|
|
|
- this.dialogZIndexMaxIndex
|
|
|
- ].titleImgUrl
|
|
|
- );
|
|
|
- this.resizablePinnedDetail.detailMessageList.forEach((item) => {
|
|
|
- if (item.cls === "active-win") {
|
|
|
- item.cls = "deactive-win";
|
|
|
- }
|
|
|
- });
|
|
|
- this.resizablePinnedDetail.detailMessageList[
|
|
|
- this.dialogZIndexMaxIndex
|
|
|
- ].cls = "active-win";
|
|
|
let obj = {
|
|
|
imgUrl:
|
|
|
this.resizablePinnedDetail.detailMessageList[
|
|
@@ -555,16 +482,17 @@ export default {
|
|
|
this.resizablePinnedDetail.detailMessageList[
|
|
|
this.dialogZIndexMaxIndex
|
|
|
].title,
|
|
|
+ id:
|
|
|
+ this.resizablePinnedDetail.detailMessageList[
|
|
|
+ this.dialogZIndexMaxIndex
|
|
|
+ ].id,
|
|
|
};
|
|
|
this.$bus.emit("changeDialogWindow", obj);
|
|
|
- } else {
|
|
|
- this.resizablePinnedDetail.detailMessageList.forEach((item) => {
|
|
|
- if (item.cls === "active-win") {
|
|
|
- item.cls = "deactive-win";
|
|
|
- }
|
|
|
- });
|
|
|
}
|
|
|
},
|
|
|
+ detailMessageList(){
|
|
|
+ this.resizablePinnedDetail.detailMessageList =this.detailMessageList
|
|
|
+ }
|
|
|
},
|
|
|
beforeDestroy() {
|
|
|
this.$bus.off("clickShortcutItem", this.clickShortcutItem);
|
|
@@ -574,7 +502,7 @@ export default {
|
|
|
name: "AppViewItem",
|
|
|
};
|
|
|
</script>
|
|
|
-<style scope lang="css">
|
|
|
+<style scoped lang="css">
|
|
|
@media screen and (max-height: 600px) {
|
|
|
.x-window.synopkg-window {
|
|
|
top: 0 !important;
|