diff --git a/src/views/bpm/oa/index.vue b/src/views/bpm/oa/index.vue
deleted file mode 100644
index 3b64cfc4..00000000
--- a/src/views/bpm/oa/index.vue
+++ /dev/null
@@ -1,3 +0,0 @@
-
- 开发中
-
diff --git a/src/views/bpm/oa/leave/index.vue b/src/views/bpm/oa/leave/index.vue
index 3b64cfc4..6297979e 100644
--- a/src/views/bpm/oa/leave/index.vue
+++ b/src/views/bpm/oa/leave/index.vue
@@ -1,3 +1,28 @@
- 开发中
+
+
+
+
diff --git a/src/views/bpm/oa/leave/leave.data.ts b/src/views/bpm/oa/leave/leave.data.ts
new file mode 100644
index 00000000..0a9dbcb2
--- /dev/null
+++ b/src/views/bpm/oa/leave/leave.data.ts
@@ -0,0 +1,88 @@
+import { BasicColumn, FormSchema, useRender } from '@/components/Table'
+import { DICT_TYPE, getIntDictOptions } from '@/utils/dict'
+
+export const columns: BasicColumn[] = [
+ {
+ title: '申请编号',
+ dataIndex: 'id',
+ width: 100
+ },
+ {
+ title: '状态',
+ dataIndex: 'result',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDict(text, DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT)
+ }
+ },
+ {
+ title: '开始时间',
+ dataIndex: 'startTime',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDate(text)
+ }
+ },
+ {
+ title: '结束时间',
+ dataIndex: 'endTime',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDate(text)
+ }
+ },
+ {
+ title: '请假类型',
+ dataIndex: 'type',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDict(text, DICT_TYPE.BPM_OA_LEAVE_TYPE)
+ }
+ },
+ {
+ title: '原因',
+ dataIndex: 'reason',
+ width: 180
+ },
+ {
+ title: '申请时间',
+ dataIndex: 'applyTime',
+ width: 180,
+ customRender: ({ text }) => {
+ return useRender.renderDate(text)
+ }
+ }
+]
+
+export const searchFormSchema: FormSchema[] = [
+ {
+ label: '请假类型',
+ field: 'status',
+ component: 'Select',
+ componentProps: {
+ options: getIntDictOptions(DICT_TYPE.BPM_OA_LEAVE_TYPE)
+ },
+ colProps: { span: 8 }
+ },
+ {
+ label: '申请时间',
+ field: 'createTime',
+ component: 'RangePicker',
+ colProps: { span: 8 }
+ },
+ {
+ label: '结果',
+ field: 'status',
+ component: 'Select',
+ componentProps: {
+ options: getIntDictOptions(DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT)
+ },
+ colProps: { span: 8 }
+ },
+ {
+ label: '原因',
+ field: 'reason',
+ component: 'Input',
+ colProps: { span: 8 }
+ }
+]