| | |
| | | </template>
|
| | |
|
| | | <script>
|
| | | import draggable from "vuedraggable";
|
| | | import { findAllSdk } from "@/api/taskMange";
|
| | | import bus from "@/plugin/bus";
|
| | | import draggable from "vuedraggable"
|
| | | import { findAllSdk } from "@/api/taskMange"
|
| | | import bus from "@/plugin/bus"
|
| | | export default {
|
| | | name: "toolsEntry",
|
| | | data() {
|
| | |
| | | // ],
|
| | | //rowSize: 3,
|
| | | // badgeNum: 0,
|
| | | };
|
| | | }
|
| | | },
|
| | | computed: {
|
| | | stateDocks() {
|
| | | return this.$store.state.desktop.docks;
|
| | | console.log("carousels", this.$store.state.desktop.docks)
|
| | | return this.$store.state.desktop.docks
|
| | | },
|
| | | carousels() {
|
| | | let pages = 0;
|
| | | let tempArr = this.stateDocks.concat(this.installedSdk);
|
| | | let upgradeArr = tempArr.filter((item) => item.isUpgrade);
|
| | | let arr = null;
|
| | | let pages = 0
|
| | | let tempArr = this.stateDocks.concat(this.installedSdk)
|
| | | let upgradeArr = tempArr.filter((item) => item.isUpgrade)
|
| | | let arr = null
|
| | | //根据屏幕高度来判断是展示3排还是4排 阈值:970
|
| | | if (window.innerHeight >= 930) {
|
| | | //this.rowSize = 4;
|
| | | arr = this.chunk(tempArr, 24);
|
| | | arr = this.chunk(tempArr, 24)
|
| | | } else {
|
| | | //this.rowSize = 3;
|
| | | arr = this.chunk(tempArr, 18);
|
| | | arr = this.chunk(tempArr, 18)
|
| | | }
|
| | | return arr;
|
| | |
|
| | | return arr
|
| | | },
|
| | | badgeNum() {
|
| | | let tempArr = this.stateDocks.concat(this.installedSdk);
|
| | | return tempArr.filter((item) => item.isUpgrade).length;
|
| | | let tempArr = this.stateDocks.concat(this.installedSdk)
|
| | | return tempArr.filter((item) => item.isUpgrade).length
|
| | | },
|
| | | rowSize() {
|
| | | if (window.innerHeight >= 930) {
|
| | | return 4;
|
| | | return 4
|
| | | } else {
|
| | | return 3;
|
| | | return 3
|
| | | }
|
| | | }
|
| | | },
|
| | | mounted() {
|
| | | this.getAllSdk();
|
| | | let _this = this;
|
| | | this.getAllSdk()
|
| | | let _this = this
|
| | | window.addEventListener("message", (e) => {
|
| | | if (e.data && e.data.msg) {
|
| | | let msg = e.data.msg;
|
| | | let msg = e.data.msg
|
| | | if (msg === "logout") {
|
| | | location.assign("/");
|
| | | return;
|
| | | location.assign("/")
|
| | | return
|
| | | }
|
| | | if (msg.indexOf("toSearch") >= 0) {
|
| | | let params = msg.substring(7);
|
| | | this.addFrameByName("search", params);
|
| | | let params = msg.substring(7)
|
| | | this.addFrameByName("search", params)
|
| | | }
|
| | | if (msg.indexOf("toCluster") >= 0) {
|
| | | let params = msg.substring(8);
|
| | | this.addFrameByName("searchForCluster", params);
|
| | | let params = msg.substring(8)
|
| | | this.addFrameByName("searchForCluster", params)
|
| | | }
|
| | | if (msg.indexOf("toSetting") > -1) {
|
| | | const str = msg.split("?")[1];
|
| | | this.addFrameByName("settings", str);
|
| | | const str = msg.split("?")[1]
|
| | | this.addFrameByName("settings", str)
|
| | | }
|
| | | if (msg.indexOf("toVindicate") > -1) {
|
| | | const str = msg.split("?")[1];
|
| | | this.addFrameByName("vindicate", str);
|
| | | const str = msg.split("?")[1]
|
| | | this.addFrameByName("vindicate", str)
|
| | | }
|
| | | if (msg.indexOf("toAI") > -1) {
|
| | | const str = msg.split("?")[1];
|
| | | this.addFrameByName("algorithmManage", str);
|
| | | const str = msg.split("?")[1]
|
| | | this.addFrameByName("algorithmManage", str)
|
| | | }
|
| | | if (msg.indexOf("toOpenApp") >= 0) {
|
| | | let id = msg.substring(10);
|
| | | this.addFrameByID(id);
|
| | | let id = msg.substring(10)
|
| | | this.addFrameByID(id)
|
| | | }
|
| | | if (msg.indexOf("changeBackground") > -1) {
|
| | | const name = e.data.msg.split("?")[1];
|
| | | _this.$emit("changeBackground", `/images/desktop/${name}.png`);
|
| | | const name = e.data.msg.split("?")[1]
|
| | | _this.$emit("changeBackground", `/images/desktop/${name}.png`)
|
| | | }
|
| | | if (msg == "AppUpdate") {
|
| | | this.getAllSdk();
|
| | | this.getAllSdk()
|
| | | }
|
| | | }
|
| | | });
|
| | | })
|
| | | },
|
| | | methods: {
|
| | | chunk(arr, size) {
|
| | | size = Math.max(size, 0);
|
| | | const len = arr == null ? 0 : arr.length;
|
| | | size = Math.max(size, 0)
|
| | | const len = arr == null ? 0 : arr.length
|
| | | if (!len || size < 1) {
|
| | | return [];
|
| | | return []
|
| | | }
|
| | | let index = 0;
|
| | | let resIndex = 0;
|
| | | const result = new Array(Math.ceil(len / size));
|
| | | let index = 0
|
| | | let resIndex = 0
|
| | | const result = new Array(Math.ceil(len / size))
|
| | | while (index < len) {
|
| | | result[resIndex++] = arr.slice(index, (index += size));
|
| | | result[resIndex++] = arr.slice(index, (index += size))
|
| | | }
|
| | | return result;
|
| | | return result
|
| | | },
|
| | | onJumpToDock(name) {
|
| | | let togo;
|
| | | let togo
|
| | | this.carousels.forEach((arr) => {
|
| | | arr.forEach((x) => {
|
| | | if (x.title == name) {
|
| | | togo = x;
|
| | | togo = x
|
| | | }
|
| | | });
|
| | | });
|
| | | this.dockClick(togo);
|
| | | })
|
| | | })
|
| | | this.dockClick(togo)
|
| | | },
|
| | | getAllSdk() {
|
| | | findAllSdk()
|
| | | .then((res) => {
|
| | | this.installedSdk = res.data.filter((item) => item.installed);
|
| | | this.installedSdk = res.data.filter((item) => item.installed)
|
| | | })
|
| | | .catch((e) => {
|
| | | console.log(e);
|
| | | });
|
| | | console.log(e)
|
| | | })
|
| | | },
|
| | | dockClick(dock) {
|
| | | if (dock.type === "1") {
|
| | | window.open(dock.url);
|
| | | window.open(dock.url)
|
| | | } else if (dock.type === "2" && !dock.isOpen) {
|
| | | if(dock.url== "/view/debuggTool/"){
|
| | | return true;
|
| | | if (dock.url == "/view/debuggTool/") {
|
| | | return true
|
| | | }
|
| | | this.$store.dispatch("desktop/addFrame", {
|
| | | id: dock.id,
|
| | | icon: dock.src,
|
| | | title: dock.title,
|
| | | url: dock.url
|
| | | });
|
| | | })
|
| | | this.$store.commit("desktop/addMinDock", {
|
| | | id: dock.id,
|
| | | src: dock.src,
|
| | |
| | | highlight: true,
|
| | | url: dock.url,
|
| | | screenshot: ""
|
| | | });
|
| | | })
|
| | | //打开应用后异步抓拍,之后的抓拍采用这张固定的
|
| | | //if(dock.name=='cameraVideo'||dock.name=='search'||dock.name=='library'||dock.name=='cameraAccess'||dock.name=='dataStack'){
|
| | | setTimeout(() => {
|
| | | this.$parent.screenShot(dock);
|
| | | }, 1500);
|
| | | this.$parent.screenShot(dock)
|
| | | }, 1500)
|
| | | //}
|
| | | } else if (dock.type === "2" && dock.isOpen) {
|
| | | this.$store.commit("desktop/resetMinFrame", dock.id);
|
| | | this.$store.commit("desktop/resetMinFrame", dock.id)
|
| | | }
|
| | | },
|
| | | resetDockItem() {
|
| | | const dockItems = document.getElementsByClassName("dock-item");
|
| | | const dockMask = document.getElementsByClassName("dock-mask")[0];
|
| | | const dockItems = document.getElementsByClassName("dock-item")
|
| | | const dockMask = document.getElementsByClassName("dock-mask")[0]
|
| | | for (let i = 0; i < dockItems.length; i++) {
|
| | | dockItems[i].width = 60;
|
| | | dockItems[i].width = 60
|
| | | if (dockItems[i].parentNode.nextElementSibling) {
|
| | | dockItems[i].parentNode.nextElementSibling.style.marginLeft = "-35px";
|
| | | dockItems[i].parentNode.nextElementSibling.style.marginLeft = "-35px"
|
| | | }
|
| | | }
|
| | | dockMask.style.width = dockItems.length * 60 + 40 + "px";
|
| | | dockMask.style.width = dockItems.length * 60 + 40 + "px"
|
| | | },
|
| | | addFrameByName(name, params) {
|
| | | let dock = null;
|
| | | let dock = null
|
| | | this.$store.state.desktop.docks.forEach((app) => {
|
| | | if (app.name === name) {
|
| | | dock = app;
|
| | | dock = app
|
| | | }
|
| | | });
|
| | | })
|
| | | if (dock.isOpen) {
|
| | | this.$store.dispatch("desktop/closeFrame", dock);
|
| | | this.$store.dispatch("desktop/closeFrame", dock)
|
| | | }
|
| | | this.$store.dispatch("desktop/addFrame", {
|
| | | id: dock.id,
|
| | | icon: dock.src,
|
| | | title: dock.title,
|
| | | url: dock.url + "?" + params
|
| | | });
|
| | | })
|
| | | this.$store.commit("desktop/addMinDock", {
|
| | | id: dock.id,
|
| | | src: dock.src,
|
| | |
| | | highlight: true,
|
| | | url: dock.url,
|
| | | screenshot: ""
|
| | | });
|
| | | })
|
| | | },
|
| | | addFrameByID(id, params) {
|
| | | let dock = null;
|
| | | let toClose = null;
|
| | | let dock = null
|
| | | let toClose = null
|
| | | this.$store.state.desktop.docks.forEach((app) => {
|
| | | if (app.id == id) {
|
| | | dock = app;
|
| | | dock = app
|
| | | }
|
| | | if (app.name == "algorithmManage") {
|
| | | toClose = app;
|
| | | toClose = app
|
| | | }
|
| | | });
|
| | | this.dockClick(dock);
|
| | | })
|
| | | this.dockClick(dock)
|
| | | }
|
| | | }
|
| | | };
|
| | | }
|
| | | </script>
|
| | |
|
| | | <style lang="scss">
|