diff --git a/src/views/doc/manage.vue b/src/views/doc/manage.vue index 37ef48e..e50129b 100644 --- a/src/views/doc/manage.vue +++ b/src/views/doc/manage.vue @@ -22,7 +22,7 @@ import {ElSelect,ElOption, ElText,ElInput,TableInstance,ElMessage,UploadFile, UploadFiles,ElPagination,ElTree,TreeNode,ElDropdown,ElDropdownItem} from "element-plus"; import preview from './preview.vue'; import uploadlog from './uploadlog.vue'; -import space from './space.vue'; +import { useRoute } from 'vue-router' import spacePermission from './spacePermission.vue'; import SvgIcon from "@/components/SvgIcon/index.vue"; import {doDelSpace,doAccessManage,doCreateAiagent,setAgentQueryURL,getAgentQueryURL} from "@/api/doc/space" @@ -60,7 +60,7 @@ const treeRef = ref(); const currentNode=ref({}) //打开的路径层次 const officeHost=import.meta.env.VITE_OFFICE_HOST const dynamicVNode = ref(null) //permission 组件的父组件 - +const route = useRoute() const multipleTableRef = ref() const paginInfo = ref({ page: 0, total: 0 }) @@ -69,7 +69,7 @@ const PRIVATESPACE = ref(true) //是空间状态的控制 2种:私有云盘和 const SpaceID= ref<{name:string,uuid:string,userUuid:string,manager:boolean,permits:matterPermit}>({}) //当前space的id const spaceEleRef = ref() //space组件的引用,它与spaceTreeRef没有父子关系,反而是为了处理spaceTree的操作而创建的该变量 const spaceTreeData=ref([])//{name:'个人空间',uuid:'root',children:[]} -const spaceTreeRef = ref(); //space的树树组件的引用 +const spaceTreeRef = ref(); //space的树组件的引用 let spaceNodeUid="" //用来判断树组件的展开和关闭,如何只是展开和关闭的点击事件不在刷新,通currentNode的作用 const modListOrGrild=ref(true) @@ -857,6 +857,15 @@ function onAiAgent(row:matterInfo){ }) } +//空间分享链接 +const onSpaceShareRequest=(spaceid:string,name:string)=>{ + spaceTreeRef.value.data.forEach(item=>{ + if(item.uuid==spaceid){ + onSpaceNodeClick(item,null,null,null) + } + }) +} + //设置智能体联网查询地址 async function onAgentQueryURL(row:matterInfo){ await getAgentQueryURL(row.uuid).then(resp=>{ @@ -892,7 +901,7 @@ async function onAgentQueryURL(row:matterInfo){ //------------------------------------------------------ //http://172.20.2.87:6010/api/alien/preview/5a10aaf6-396e-4d9a-7e87-3c5c8029d4db/123.png?ir=fill_100_100 //渲染完页面再执行 -onMounted(() => { +onMounted(async () => { // treeRef.value.append( // {name:'个人空间',uuid:'root',dir:false}, // currentNode.value.uuid @@ -900,7 +909,7 @@ onMounted(() => { currentNode.value={uuid:"root"} //加载我的空间列表 - getMySpaces(uid,{roles:Departs.value}).then((resp)=>{ + await getMySpaces(uid,{roles:Departs.value}).then((resp)=>{ resp.data.forEach((item)=>{ let ismanager=false if(item.userUuid==rawUid || item.managers.includes(rawUid)) ismanager=true; @@ -913,6 +922,14 @@ onMounted(() => { }else{ modListOrGrild.value=true } + + const query = route.query + if(query.s_token){ + const s_token=decodeURIComponent(atob(query.s_token as string)).split("|") + if(s_token.length==3){ + onSpaceShareRequest(s_token[0],s_token[2]) + } + } }); const handleSelectionChange = (val:matterInfo[]) => { diff --git a/src/views/doc/space.vue b/src/views/doc/space.vue index e1c44aa..f7e3e6f 100644 --- a/src/views/doc/space.vue +++ b/src/views/doc/space.vue @@ -5,6 +5,7 @@ -->