diff --git a/run.bat b/run.bat new file mode 100644 index 000000000..4adb79e22 --- /dev/null +++ b/run.bat @@ -0,0 +1,2 @@ +title ǰ˷ +npm run dev \ No newline at end of file diff --git a/src/components/FormCreate/src/components/DeptTreeSelect.vue b/src/components/FormCreate/src/components/DeptTreeSelect.vue new file mode 100644 index 000000000..1b2d5ba16 --- /dev/null +++ b/src/components/FormCreate/src/components/DeptTreeSelect.vue @@ -0,0 +1,50 @@ + + + diff --git a/src/components/FormCreate/src/config/index.ts b/src/components/FormCreate/src/config/index.ts index b1e2ddea5..9188f533e 100644 --- a/src/components/FormCreate/src/config/index.ts +++ b/src/components/FormCreate/src/config/index.ts @@ -2,6 +2,7 @@ import { useUploadFileRule } from './useUploadFileRule' import { useUploadImgRule } from './useUploadImgRule' import { useUploadImgsRule } from './useUploadImgsRule' import { useDictSelectRule } from './useDictSelectRule' +import { useDeptTreeSelectRule } from './useDeptTreeSelectRule' import { useEditorRule } from './useEditorRule' import { useSelectRule } from './useSelectRule' @@ -10,6 +11,7 @@ export { useUploadImgRule, useUploadImgsRule, useDictSelectRule, + useDeptTreeSelectRule, useEditorRule, useSelectRule } diff --git a/src/components/FormCreate/src/config/useDeptTreeSelectRule.ts b/src/components/FormCreate/src/config/useDeptTreeSelectRule.ts new file mode 100644 index 000000000..7ea5414cc --- /dev/null +++ b/src/components/FormCreate/src/config/useDeptTreeSelectRule.ts @@ -0,0 +1,36 @@ +import { generateUUID } from '@/utils' +import { localeProps, makeRequiredRule } from '@/components/FormCreate/src/utils' +import { selectRule } from '@/components/FormCreate/src/config/selectRule' +import { cloneDeep } from 'lodash-es' + +/** + * 部门树选择器规则,如果规则使用到动态数据则需要单独配置不能使用 useSelectRule + */ +export const useDeptTreeSelectRule = () => { + const label = '部门树选择' + const name = 'DeptTreeSelect' + const event = ['click','change','visibleChange','clear','blur','focus'] + const rules = cloneDeep(selectRule) + return { + icon: 'icon-doc-text', + label, + name, + event: event, + rule() { + return { + type: name, + field: generateUUID(), + title: label, + info: '', + $required: false + } + }, + props(_, { t }) { + return localeProps(t, name + '.props', [ + makeRequiredRule(), + { type: 'switch', field: 'showCheckbox', title: '是否显示复选框' }, + ...rules + ]) + } + } +}