|
|
@@ -100,7 +100,11 @@ import Header from "@components/home/header.vue";
|
|
|
import Footer from "@components/home/Footer.vue";
|
|
|
import { computed, ref, onMounted } from "vue";
|
|
|
import { Icon } from "@iconify/vue";
|
|
|
-import { getFlows } from "@/api/user";
|
|
|
+import { getFlows, ssoLogin } from "@/api/user";
|
|
|
+import { useUserStore } from "@/stores/useUserStore";
|
|
|
+import { getAccessToken } from "@/utils/auth";
|
|
|
+
|
|
|
+const userStore = useUserStore();
|
|
|
|
|
|
const tabs = ref([]);
|
|
|
|
|
|
@@ -171,8 +175,25 @@ const getById = (tab) => {
|
|
|
activeKey.value = tab.groupName;
|
|
|
};
|
|
|
|
|
|
-const go = (item) => {
|
|
|
+const go = async (item) => {
|
|
|
console.log("跳转", item);
|
|
|
+ if (userStore.getUser.username && getAccessToken()) {
|
|
|
+ const res = await ssoLogin({
|
|
|
+ username: userStore.getUser.username,
|
|
|
+ });
|
|
|
+
|
|
|
+ if (res) {
|
|
|
+ const newTab = window.open("", "_blank");
|
|
|
+
|
|
|
+ newTab.location.href = item.indexUrl + "?ssoToken=" + res + "#/main";
|
|
|
+
|
|
|
+ setTimeout(function () {
|
|
|
+ newTab.location.href = item.flowUrl;
|
|
|
+ }, 1000);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ router.push({ path: "/login" });
|
|
|
+ }
|
|
|
};
|
|
|
|
|
|
onMounted(async () => {
|