mirror of
https://gitee.com/myxzgzs/boyue-ui-admin-vue3
synced 2025-08-08 16:32:43 +08:00
feat: bpm流程表单复制功能
This commit is contained in:
parent
ead7fa26ab
commit
f92ab64ffc
@ -50,11 +50,13 @@ import FcDesigner from '@form-create/designer'
|
|||||||
import { encodeConf, encodeFields, setConfAndFields } from '@/utils/formCreate'
|
import { encodeConf, encodeFields, setConfAndFields } from '@/utils/formCreate'
|
||||||
import { useTagsViewStore } from '@/store/modules/tagsView'
|
import { useTagsViewStore } from '@/store/modules/tagsView'
|
||||||
import { useFormCreateDesigner } from '@/components/FormCreate'
|
import { useFormCreateDesigner } from '@/components/FormCreate'
|
||||||
|
import { useRoute } from 'vue-router'
|
||||||
|
|
||||||
defineOptions({ name: 'BpmFormEditor' })
|
defineOptions({ name: 'BpmFormEditor' })
|
||||||
|
|
||||||
const { t } = useI18n() // 国际化
|
const { t } = useI18n() // 国际化
|
||||||
const message = useMessage() // 消息
|
const message = useMessage() // 消息
|
||||||
|
const route = useRoute() // 路由
|
||||||
const { push, currentRoute } = useRouter() // 路由
|
const { push, currentRoute } = useRouter() // 路由
|
||||||
const { query } = useRoute() // 路由信息
|
const { query } = useRoute() // 路由信息
|
||||||
const { delView } = useTagsViewStore() // 视图操作
|
const { delView } = useTagsViewStore() // 视图操作
|
||||||
@ -150,6 +152,14 @@ onMounted(async () => {
|
|||||||
const data = await FormApi.getForm(id)
|
const data = await FormApi.getForm(id)
|
||||||
formData.value = data
|
formData.value = data
|
||||||
setConfAndFields(designer, data.conf, data.fields)
|
setConfAndFields(designer, data.conf, data.fields)
|
||||||
|
|
||||||
|
if (route.query.type !== 'copy') {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
// 场景三: 复制表单
|
||||||
|
const { id: foo, ...copied } = data
|
||||||
|
formData.value = copied
|
||||||
|
formData.value.name += '_copy'
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -59,7 +59,15 @@
|
|||||||
v-hasPermi="['bpm:form:update']"
|
v-hasPermi="['bpm:form:update']"
|
||||||
link
|
link
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="openForm(scope.row.id)"
|
@click="openForm('copy', scope.row.id)"
|
||||||
|
>
|
||||||
|
复制
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-hasPermi="['bpm:form:update']"
|
||||||
|
link
|
||||||
|
type="primary"
|
||||||
|
@click="openForm('update', scope.row.id)"
|
||||||
>
|
>
|
||||||
编辑
|
编辑
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -139,16 +147,17 @@ const resetQuery = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** 添加/修改操作 */
|
/** 添加/修改操作 */
|
||||||
const openForm = (id?: number) => {
|
const openForm = (type: string, id?: number) => {
|
||||||
const toRouter: { name: string; query?: { id: number } } = {
|
const toRouter: { name: string; query: { type: string; id?: number } } = {
|
||||||
name: 'BpmFormEditor'
|
name: 'BpmFormEditor',
|
||||||
|
query: {
|
||||||
|
type
|
||||||
|
}
|
||||||
}
|
}
|
||||||
console.log(typeof id)
|
console.log(typeof id)
|
||||||
// 表单新建的时候id传的是event需要排除
|
// 表单新建的时候id传的是event需要排除
|
||||||
if (typeof id === 'number' || typeof id === 'string') {
|
if (typeof id === 'number' || typeof id === 'string') {
|
||||||
toRouter.query = {
|
toRouter.query.id = id
|
||||||
id
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
push(toRouter)
|
push(toRouter)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user