feat : 表单权限处理
This commit is contained in:
@@ -217,4 +217,4 @@ body,div {
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
</style>
|
||||
|
||||
@@ -2,14 +2,14 @@
|
||||
<div v-loading="loading" class="add-block">
|
||||
<baseTitle title="需求征集信息录入"></baseTitle>
|
||||
<el-form :model="formData" inline class="query-form" ref="demandForm" :rules="rules">
|
||||
<el-form-item v-if="checkFormPrem('requirementName')" label="名称" prop="requirementName">
|
||||
<el-form-item label="名称" prop="requirementName">
|
||||
<el-input v-model="formData.requirementName" placeholder="请输入名称" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="checkFormPrem('companyIds')" label="所属公司" prop="companyIds">
|
||||
<el-form-item label="所属公司" prop="companyIds">
|
||||
<el-tree-select v-model="formData.companyIds" :data="companyOption" style="width: 100%;"
|
||||
filterable clearable :check-strictly="true" multiple/>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="checkFormPrem('collectType')" label="征集类型" prop="collectType">
|
||||
<el-form-item label="征集类型" prop="collectType">
|
||||
<el-select v-model="formData.collectType" placeholder="征集类型" clearable filterable>
|
||||
<el-option
|
||||
v-for="item in typeOption"
|
||||
@@ -31,7 +31,7 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<baseTitle title="征集说明"></baseTitle>
|
||||
<Tinymce v-if="checkFormPrem('collectExplain') && showTinymce" image-url="/notice/file" file-url="/notice/file"
|
||||
<Tinymce v-if="showTinymce" image-url="/notice/file" file-url="/notice/file"
|
||||
v-model:value="formData.collectExplain" height="300" />
|
||||
<baseTitle title="申请文件"></baseTitle>
|
||||
<file-upload v-if="checkFormPrem('fileList')" @getFile="getFile"/>
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<el-dialog v-model="validVisible" title="设置项检查">
|
||||
<el-steps align-center :active="validStep" finish-status="success">
|
||||
@@ -54,7 +55,6 @@
|
||||
<script setup>
|
||||
import {getProcessDefinitionInfo, addProcessDefinition} from "@/api/workflow/process-definition.js";
|
||||
import ProcessDesign from '@/views/workflow/process/ProcessDesign.vue'
|
||||
import FormDesign from '@/views/workflow/form/FormDesign.vue'
|
||||
import ProcessSetting from "./ProcessSetting.vue";
|
||||
import Ellipsis from '@/views/workflow/process/common/Ellipsis.vue'
|
||||
import {getCurrentInstance} from '@vue/runtime-core';
|
||||
@@ -117,7 +117,7 @@ const init = () => {
|
||||
|
||||
const loadInitFrom = () => {
|
||||
let design = {
|
||||
processDefinitionKey: 'pro' + getRandomId(),
|
||||
processDefinitionKey: "",
|
||||
deploymentName: "未命名表单",
|
||||
processKey: '',
|
||||
// logo: {
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
<template>
|
||||
<el-input v-model="processData.deploymentName" placeholder="请输入流程名称"/>
|
||||
<!-- <div v-if="!processData.processDefinitionKey">-->
|
||||
<el-select v-model="processData.processKey" placeholder="请选择流程环节">
|
||||
<div v-if="processData.processDefinitionKey">
|
||||
<p>
|
||||
流程名称: {{ processData.deploymentName }}
|
||||
</p>
|
||||
</div>
|
||||
<div v-if="!processData.processDefinitionKey">
|
||||
<el-select v-model="processData.processKey" @change="processKeyChange" placeholder="请选择流程环节">
|
||||
<el-option v-for="item in optionList" :label="item.label" :value="item.value"/>
|
||||
</el-select>
|
||||
<!-- </div>-->
|
||||
<!-- <div v-else>-->
|
||||
<!-- {{processData.processName}}-->
|
||||
<!-- </div>-->
|
||||
</div>
|
||||
|
||||
流程设置{{ processData.deploymentName }}
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import {useProcessStore} from '@/stores/processStore.js'
|
||||
import {computed, defineExpose} from "vue";
|
||||
import {getTypeOption} from "@/api/workflow/process-definition";
|
||||
import { ElNotification} from "element-plus";
|
||||
import {getTypeOption, getFromPerm} from "@/api/workflow/process-definition";
|
||||
|
||||
const processStore = useProcessStore()
|
||||
|
||||
@@ -27,17 +28,31 @@ const processData = computed(() => {
|
||||
|
||||
|
||||
const validate = () => {
|
||||
console.log("validate")
|
||||
return []
|
||||
}
|
||||
|
||||
const init = () => {
|
||||
getTypeOption().then(res => {
|
||||
console.log(res)
|
||||
optionList.value = res.data
|
||||
})
|
||||
}
|
||||
|
||||
const processKeyChange = () => {
|
||||
getFromPerm(processData.value.processKey).then(res => {
|
||||
if (res.code === 1000) {
|
||||
processData.value.processFromPerms = res.data
|
||||
} else {
|
||||
ElNotification({
|
||||
title: '提示',
|
||||
message: res.msg,
|
||||
type: res.code === 1000 ? 'success' : 'error'
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
|
||||
defineExpose({
|
||||
validate
|
||||
})
|
||||
|
||||
@@ -91,12 +91,15 @@ const formPermsLoadMosr = (oldPermMap, perms) => {
|
||||
old.required = perm.required;
|
||||
formPerms.value.push(old);
|
||||
} else {
|
||||
formPerms.value.push({
|
||||
id: perm.id, //todo ,id 就是字段名称
|
||||
title: perm.title,
|
||||
required: perm.required,
|
||||
perm: nowNode.value.type === "ROOT" ? "E" : "R"
|
||||
});
|
||||
console.log(perm)
|
||||
if (perm.id === 'fileList'){
|
||||
formPerms.value.push({
|
||||
id: perm.id, //todo ,id 就是字段名称
|
||||
title: perm.title,
|
||||
required: perm.required,
|
||||
perm: nowNode.value.type === "ROOT" ? "E" : "R"
|
||||
});
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user