feat(web-admin): add relatedApproval FormCreate control with picker UI

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
zlwuandCursor committed 2026-07-22 17:03:29 +08:00
1 parent 14f00d5d3a
commit f68927ce70
6 files changed
+560

No files matched your search

@@ -0,0 +1,17 @@
import FcDesigner from '@form-create/designer'
import OaRelatedApproval from '@/components/oa-approval/OaRelatedApproval.vue'
import { relatedApprovalDragRule } from '@/utils/oa-related-approval-rule'
const FLAG = '__oaRelatedApprovalConfigured'
export function setupOaRelatedApproval(formCreate?: { component?: (name: string, c: unknown) => void }) {
if ((FcDesigner as any)[FLAG]) return
FcDesigner.component('relatedApproval', OaRelatedApproval)
if (typeof formCreate?.component === 'function') {
formCreate.component('relatedApproval', OaRelatedApproval)
}
if (typeof FcDesigner.addDragRule === 'function') {
FcDesigner.addDragRule(relatedApprovalDragRule)
}
;(FcDesigner as any)[FLAG] = true
}
@@ -0,0 +1,32 @@
import uniqueId from '@form-create/utils/lib/unique'
/** FormCreate Designer DragRule:关联审批单 */
export const relatedApprovalDragRule = {
menu: 'main' as const,
icon: 'icon-select',
label: '关联审批单',
name: 'relatedApproval',
input: true,
mask: true,
validate: ['array'],
event: ['change'],
rule() {
return {
type: 'relatedApproval',
field: uniqueId(),
title: '关联审批单',
info: '',
$required: false,
props: {}
}
},
props() {
return [
{
type: 'input',
field: 'formCreateInfo',
title: '提示信息'
}
]
}
}