update 新增子流程面板
This commit is contained in:
parent
bc4358f4eb
commit
b6415c21be
66
src/components/BpmnDesign/panel/SubProcessPanel.vue
Normal file
66
src/components/BpmnDesign/panel/SubProcessPanel.vue
Normal file
@ -0,0 +1,66 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-collapse v-model="currentCollapseItem">
|
||||
<el-collapse-item name="1">
|
||||
<template #title>
|
||||
<div class="collapse__title">
|
||||
<el-icon>
|
||||
<InfoFilled />
|
||||
</el-icon>
|
||||
常规
|
||||
</div>
|
||||
</template>
|
||||
<div>
|
||||
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="90px">
|
||||
<el-form-item prop="id" label="节点 ID">
|
||||
<el-input v-model="formData.id" @change="idChange"> </el-input>
|
||||
</el-form-item>
|
||||
<el-form-item prop="name" label="节点名称">
|
||||
<el-input v-model="formData.name" @change="nameChange"> </el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
|
||||
<el-collapse-item name="2">
|
||||
<template #title>
|
||||
<div class="collapse__title">
|
||||
<el-icon>
|
||||
<BellFilled />
|
||||
</el-icon>
|
||||
执行监听器
|
||||
</div>
|
||||
</template>
|
||||
<div>
|
||||
<ExecutionListener :element="element"></ExecutionListener>
|
||||
</div>
|
||||
</el-collapse-item>
|
||||
</el-collapse>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import useParseElement from '@/components/BpmnDesign/hooks/useParseElement';
|
||||
import usePanel from '@/components/BpmnDesign/hooks/usePanel';
|
||||
import { ModdleElement } from 'bpmn';
|
||||
import { StartEndPanel } from 'bpmnDesign';
|
||||
|
||||
interface PropType {
|
||||
element: ModdleElement;
|
||||
}
|
||||
const props = withDefaults(defineProps<PropType>(), {});
|
||||
const { nameChange, idChange } = usePanel({
|
||||
element: toRaw(props.element)
|
||||
});
|
||||
const { parseData } = useParseElement({
|
||||
element: toRaw(props.element)
|
||||
});
|
||||
|
||||
const formData = ref(parseData<StartEndPanel>());
|
||||
const currentCollapseItem = ref(['1', '2']);
|
||||
const formRules = ref<ElFormRules>({
|
||||
id: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
name: [{ required: true, message: '请输入', trigger: 'blur' }]
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped></style>
|
@ -12,6 +12,7 @@ import StartEndPanel from './StartEndPanel.vue';
|
||||
import GatewayPanel from './GatewayPanel.vue';
|
||||
import SequenceFlowPanel from './SequenceFlowPanel.vue';
|
||||
import ParticipantPanel from './ParticipantPanel.vue';
|
||||
import SubProcessPanel from './SubProcessPanel.vue';
|
||||
import { Modeler, ModdleElement } from 'bpmn';
|
||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||
interface propsType {
|
||||
@ -47,6 +48,7 @@ const component = computed(() => {
|
||||
if (gatewayType.includes(type)) return GatewayPanel;
|
||||
if (processType.includes(type)) return ProcessPanel;
|
||||
if (type === 'bpmn:Participant') return ParticipantPanel;
|
||||
if (type === 'bpmn:SubProcess') return SubProcessPanel;
|
||||
//return proxy?.$modal.msgWarning('面板开发中....');
|
||||
});
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user