|
@@ -12,6 +12,12 @@
|
|
|
<el-option v-for="item in baseData.stepTypeOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
+ <!-- 如果是节点类型为汇总节点 需要选择汇总目标节点 -->
|
|
|
+ <el-form-item label="汇总目标节点" prop="summaryTargetCode" :rules="[{ required: true, message: '请选择汇总目标节点', trigger: 'change' }]" v-if="form.stepType === 3">
|
|
|
+ <el-select v-model="form.summaryTargetCode" class="w100" placeholder="请选择汇总目标节点">
|
|
|
+ <el-option v-for="item in summaryTargetCodeOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
<el-form-item label="业务类型" prop="businessType" :rules="[{ required: true, message: '请选择业务类型', trigger: 'change' }]">
|
|
|
<el-select v-model="form.businessType" class="w100" placeholder="请选择业务类型">
|
|
|
<el-option v-for="item in baseData.businessTypeOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
@@ -163,6 +169,10 @@ const props = defineProps({
|
|
|
type: Object,
|
|
|
default: () => {},
|
|
|
},
|
|
|
+ nodes: {
|
|
|
+ type: Array,
|
|
|
+ default: () => []
|
|
|
+ }
|
|
|
});
|
|
|
// 注意:ref不能与model一样,相同的话表单双向绑定将会失效
|
|
|
const form = reactive<Record<string, any>>({
|
|
@@ -179,6 +189,7 @@ const form = reactive<Record<string, any>>({
|
|
|
instanceMode: null, // 实例化模式
|
|
|
instancePolicy: null, // 动态策略
|
|
|
terminalDynamicMark: null, // 动态终止标识
|
|
|
+ summaryTargetCode: null, // 汇总目标编码
|
|
|
tag: '', // 标识
|
|
|
});
|
|
|
const emits = defineEmits(['update:modelValue']); // 定义事件
|
|
@@ -271,9 +282,12 @@ const baseData = reactive<any>({
|
|
|
dynamicPolicyOptions: <EmptyArrayType>[], // 会签策略
|
|
|
instanceModeOptions: <EmptyArrayType>[], // 实例化模式
|
|
|
});
|
|
|
+const summaryTargetCodeOptions = ref<EmptyArrayType>([]); // 汇总目标节点
|
|
|
onMounted(async () => {
|
|
|
const { stepTypeOptions, businessTypeOptions, handlerTypeOptions, countersignMode, dynamicPolicyOptions, executeModeOptions, instanceModeOptions } =
|
|
|
props.baseData;
|
|
|
+ // 筛选出节点中的普通节点
|
|
|
+ summaryTargetCodeOptions.value = props.nodes.map((item: any) => ({ key: item.id, value: item.text.value,...item.properties })).filter((item: any) => item.stepType === 0);
|
|
|
baseData.businessTypeOptions = businessTypeOptions; // 业务类型
|
|
|
baseData.stepTypeOptions = stepTypeOptions; // 节点类型
|
|
|
baseData.handlerTypeOptions = handlerTypeOptions; // 办理者类型
|