|
|
|
@ -8,11 +8,21 @@ import type { |
|
|
|
AllowDropType, |
|
|
|
NodeDropType, |
|
|
|
} from 'element-plus/es/components/tree/src/tree.type' |
|
|
|
|
|
|
|
import { gainAllAppMenu,editAppMenuCont } from '@/api/DesignForm/requestapi' |
|
|
|
|
|
|
|
import SvgIcon from "@/components/SvgIcon/index.vue"; |
|
|
|
import { threeShiyanData } from "@/api/date/type" |
|
|
|
import AppMenuSvgPage from "@/components/IconSelect/appMenuSvgPage.vue"; |
|
|
|
import AppMenuGroup from "@/views/sysworkflow/lowcodepage/appPage/appMenuGroup.vue" |
|
|
|
|
|
|
|
const props = defineProps({ |
|
|
|
appCont:{ |
|
|
|
type:Object, |
|
|
|
default(){ |
|
|
|
return {} |
|
|
|
} |
|
|
|
}, |
|
|
|
formKey:{ |
|
|
|
type:String, |
|
|
|
default:"" |
|
|
|
@ -25,21 +35,43 @@ const props = defineProps({ |
|
|
|
} |
|
|
|
}); |
|
|
|
const svgIsShow = ref(false) |
|
|
|
const emits = defineEmits(["update:menusTree"]); |
|
|
|
/** |
|
|
|
@ 作者: 秦东 |
|
|
|
@ 时间: 2024-04-24 13:17:30 |
|
|
|
@ 功能: 菜单列表 |
|
|
|
*/ |
|
|
|
const appMenuTree = computed({ |
|
|
|
get() { |
|
|
|
return props.menusTree |
|
|
|
}, |
|
|
|
set(val: any) { |
|
|
|
emits('update:menusTree', val) |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ 作者: 秦东 |
|
|
|
@ 时间: 2024-04-22 10:06:20 |
|
|
|
@ 功能: 树移动完毕后执行的操作 |
|
|
|
*/ |
|
|
|
const handleDrop = ( |
|
|
|
draggingNode: Node, |
|
|
|
dropNode: Node, |
|
|
|
dropType: NodeDropType, |
|
|
|
ev: DragEvents |
|
|
|
draggingNode: Node, |
|
|
|
dropNode: Node, |
|
|
|
dropType: NodeDropType, |
|
|
|
ev: DragEvents |
|
|
|
) => { |
|
|
|
console.log('draggingNode:', draggingNode) |
|
|
|
console.log('dropNode:', dropNode) |
|
|
|
console.log('dropType:', dropType) |
|
|
|
console.log('ev:', ev) |
|
|
|
|
|
|
|
let sendCont = { |
|
|
|
id:props.appCont.uuid, |
|
|
|
menuTree:appMenuTree.value |
|
|
|
} |
|
|
|
editAppMenuCont(sendCont) |
|
|
|
.then((data)=>{ |
|
|
|
console.log('树移动完毕后执行的操作============>',data) |
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
const treeList = ref<any[]>([]) |
|
|
|
@ -102,10 +134,36 @@ const diguiData = (val:any) =>{ |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
/** |
|
|
|
@ 作者: 秦东 |
|
|
|
@ 时间: 2024-04-24 13:12:18 |
|
|
|
@ 功能: 新建子分组 |
|
|
|
*/ |
|
|
|
const menuGroupShow = ref(false) |
|
|
|
const menuParentKey = ref("") |
|
|
|
const addNewSunMenuGroup = (val:any) =>{ |
|
|
|
console.log('新建子分组:', val); |
|
|
|
menuParentKey.value = val.id |
|
|
|
menuGroupShow.value = true |
|
|
|
} |
|
|
|
/** |
|
|
|
@ 作者: 秦东 |
|
|
|
@ 时间: 2024-04-24 13:22:47 |
|
|
|
@ 功能: 更新 |
|
|
|
*/ |
|
|
|
const gainSunAppContent = () =>{ |
|
|
|
console.log('更新:'); |
|
|
|
gainAllAppMenu({id:props.appCont.uuid}) |
|
|
|
.then((data) =>{ |
|
|
|
console.log('更新:',data); |
|
|
|
appMenuTree.value = data.data |
|
|
|
}) |
|
|
|
} |
|
|
|
</script> |
|
|
|
<template> |
|
|
|
<AppMenuGroup v-model:is-show="menuGroupShow" :menu-parent-key="menuParentKey" :app-cont="props.appCont" @updateMenu="gainSunAppContent" /> |
|
|
|
<el-tree |
|
|
|
:data="props.menusTree" |
|
|
|
:data="appMenuTree" |
|
|
|
draggable |
|
|
|
default-expand-all |
|
|
|
node-key="id" |
|
|
|
@ -124,7 +182,7 @@ const diguiData = (val:any) =>{ |
|
|
|
<el-dropdown-item>修改名称</el-dropdown-item> |
|
|
|
<el-dropdown-item>复制</el-dropdown-item> |
|
|
|
<el-dropdown-item>移动到</el-dropdown-item> |
|
|
|
<el-dropdown-item divided>新建子分组</el-dropdown-item> |
|
|
|
<el-dropdown-item divided @click="addNewSunMenuGroup(data)">新建子分组</el-dropdown-item> |
|
|
|
<el-dropdown-item>新建普通表单</el-dropdown-item> |
|
|
|
<el-dropdown-item>新建流程表单</el-dropdown-item> |
|
|
|
<el-dropdown-item divided>隐藏PC端</el-dropdown-item> |
|
|
|
|