|
|
@@ -25,6 +25,7 @@
|
|
|
import DrawerDefault from './drawer_default.vue'
|
|
|
import { ProcessHelper } from '../common/process.helper'
|
|
|
import { ProcessConstant } from '../common/process.data'
|
|
|
+ import request from '@/api'
|
|
|
|
|
|
const props = withDefaults(defineProps<{ node: Process.NodeConfig }>(), {})
|
|
|
const processHelper = inject<ProcessHelper>(ProcessConstant.KEY_PROCESS_HELPER)
|
|
|
@@ -37,55 +38,91 @@
|
|
|
const faultDrawerRef = ref()
|
|
|
const voiceDrawerRef = ref()
|
|
|
|
|
|
+ const roleOptions = ref<{ label: string; value: number }[]>([])
|
|
|
+ const getRoleName = async () => {
|
|
|
+ const { data } = await request.post<{ roleID: number; roleName: string }[]>('/role/list')
|
|
|
+ roleOptions.value = data!.map((item) => ({ label: item.roleName, value: item.roleID }))
|
|
|
+ }
|
|
|
+ const findRolename = (roleID: number) => {
|
|
|
+ const find = roleOptions.value.find((item) => item.value === roleID)
|
|
|
+ return find?.label || ''
|
|
|
+ }
|
|
|
+
|
|
|
const [Dialog, dialogApi] = useDialog({
|
|
|
width: '40%',
|
|
|
dialogType: 'drawer',
|
|
|
modal: true,
|
|
|
destroyOnClose: true,
|
|
|
async onConfirm() {
|
|
|
+ let nodeData: Record<string, unknown> = {}
|
|
|
+ let nodenameParams = ''
|
|
|
switch (processNode.value?.nodeType) {
|
|
|
case 'cognize': {
|
|
|
const data = await courseDrawerRef.value.getValues()
|
|
|
const cognizeData = await cognizeDrawerRef.value.getValues()
|
|
|
- console.log(cognizeData)
|
|
|
- processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), cognizeNode: cognizeData })
|
|
|
- dialogApi.close()
|
|
|
+ nodeData = { ...data, nodeID: Number(props.node.nodeId), cognizeNode: cognizeData }
|
|
|
+ nodenameParams = cognizeDrawerRef.value.getnameWithParams()
|
|
|
+ // processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), cognizeNode: cognizeData })
|
|
|
+ // dialogApi.close()
|
|
|
break
|
|
|
}
|
|
|
case 'operation': {
|
|
|
const data = await courseDrawerRef.value.getValues()
|
|
|
const operationData = await operationDrawerRef.value.getValues()
|
|
|
- console.log(operationData)
|
|
|
- processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), operationNode: operationData })
|
|
|
- dialogApi.close()
|
|
|
+ nodeData = { ...data, nodeID: Number(props.node.nodeId), operationNode: operationData }
|
|
|
+ nodenameParams = await operationDrawerRef.value.getnameWithParams()
|
|
|
+ // processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), operationNode: operationData })
|
|
|
+ // dialogApi.close()
|
|
|
break
|
|
|
}
|
|
|
case 'fault': {
|
|
|
const data = await courseDrawerRef.value.getValues()
|
|
|
const faultData = await faultDrawerRef.value.getValues()
|
|
|
- processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), faultNode: faultData })
|
|
|
- dialogApi.close()
|
|
|
+ nodeData = { ...data, nodeID: Number(props.node.nodeId), faultNode: faultData }
|
|
|
+ nodenameParams = await faultDrawerRef.value.getnameWithParams()
|
|
|
+ // processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), faultNode: faultData })
|
|
|
+ // dialogApi.close()
|
|
|
break
|
|
|
}
|
|
|
case 'voice': {
|
|
|
const data = await courseDrawerRef.value.getValues()
|
|
|
const voiceData = await voiceDrawerRef.value.getValues()
|
|
|
- processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), voiceNode: voiceData })
|
|
|
- dialogApi.close()
|
|
|
+ nodeData = { ...data, nodeID: Number(props.node.nodeId), voiceNode: voiceData }
|
|
|
+ nodenameParams = await voiceDrawerRef.value.getnameWithParams()
|
|
|
+ // processHelper?.updateNode(props.node.nodeId, { ...data, nodeID: Number(props.node.nodeId), voiceNode: voiceData })
|
|
|
+ // dialogApi.close()
|
|
|
break
|
|
|
}
|
|
|
case 'condition': {
|
|
|
const conditionData = await conditionDrawerRef.value.getValues()
|
|
|
- processHelper?.updateNode(props.node.nodeId, { ...conditionData, nodeID: Number(props.node.nodeId) })
|
|
|
- dialogApi.close()
|
|
|
+ nodeData = { ...conditionData, nodeID: Number(props.node.nodeId) }
|
|
|
+ nodenameParams = ''
|
|
|
+ // processHelper?.updateNode(props.node.nodeId, { ...conditionData, nodeID: Number(props.node.nodeId) })
|
|
|
+ // dialogApi.close()
|
|
|
break
|
|
|
}
|
|
|
default:
|
|
|
+ nodeData = {}
|
|
|
+ nodenameParams = ''
|
|
|
ElMessage.error('错误节点类型')
|
|
|
break
|
|
|
}
|
|
|
+ if (Object.keys(nodeData).length === 0) {
|
|
|
+ ElMessage.error('请配置节点数据')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (String(nodeData.nodeName ?? '').length === 0) {
|
|
|
+ // 操作角色+分类名称+子分类名称+参数
|
|
|
+ const rolename = findRolename(Number(nodeData.bindRole ?? 0))
|
|
|
+ nodeData.nodeName = `${rolename ?? ''}-${nodenameParams}`
|
|
|
+ }
|
|
|
+ processHelper?.updateNode(props.node.nodeId, nodeData)
|
|
|
+ dialogApi.close()
|
|
|
}
|
|
|
})
|
|
|
+ onMounted(() => {
|
|
|
+ getRoleName()
|
|
|
+ })
|
|
|
defineExpose({
|
|
|
show(node: Process.NodeConfig) {
|
|
|
processNode.value = node
|