-
+
diff --git a/apps/web-antd/src/views/bpm/processExpression/components/index.ts b/apps/web-antd/src/views/bpm/processExpression/components/index.ts
new file mode 100644
index 000000000..4047767df
--- /dev/null
+++ b/apps/web-antd/src/views/bpm/processExpression/components/index.ts
@@ -0,0 +1 @@
+export { default as ProcessExpressionSelectModal } from './select-modal.vue';
diff --git a/apps/web-antd/src/views/bpm/processExpression/components/process-expression-select-modal.vue b/apps/web-antd/src/views/bpm/processExpression/components/select-modal.vue
similarity index 51%
rename from apps/web-antd/src/views/bpm/processExpression/components/process-expression-select-modal.vue
rename to apps/web-antd/src/views/bpm/processExpression/components/select-modal.vue
index 8b8b66c09..ebecfe5a5 100644
--- a/apps/web-antd/src/views/bpm/processExpression/components/process-expression-select-modal.vue
+++ b/apps/web-antd/src/views/bpm/processExpression/components/select-modal.vue
@@ -1,11 +1,14 @@
diff --git a/apps/web-antd/src/views/bpm/processInstance/create/modules/form.vue b/apps/web-antd/src/views/bpm/processInstance/create/modules/form.vue
index d924aed7e..37e7937ef 100644
--- a/apps/web-antd/src/views/bpm/processInstance/create/modules/form.vue
+++ b/apps/web-antd/src/views/bpm/processInstance/create/modules/form.vue
@@ -169,7 +169,8 @@ async function initProcessInfo(row: any, formVariables?: any) {
path: row.formCustomCreatePath,
});
// 返回选择流程
- // TODO @jason:这里为啥要有个 cancel 事件哈?目前看 vue3 + element-plus 貌似不需要呀;
+ // 这里为啥要有个 cancel 事件哈?目前看 vue3 + element-plus 貌似不需要呀;
+ // @芋艿 不加貌似会有点问题。
emit('cancel');
}
}
diff --git a/apps/web-antd/src/views/bpm/processInstance/report/index.vue b/apps/web-antd/src/views/bpm/processInstance/report/index.vue
index b744eca0b..0792fdf07 100644
--- a/apps/web-antd/src/views/bpm/processInstance/report/index.vue
+++ b/apps/web-antd/src/views/bpm/processInstance/report/index.vue
@@ -15,8 +15,7 @@ import {
cancelProcessInstanceByAdmin,
getProcessInstanceManagerPage,
} from '#/api/bpm/processInstance';
-// TODO @jason:现在 ele 和 antd 使用的 parseFormFields 路径不同;看看以哪个为主。ele 是 import { parseFormFields } from '#/components/form-create';
-import { parseFormFields } from '#/views/bpm/components/simple-process-design';
+import { parseFormFields } from '#/components/form-create';
import { useGridColumns, useGridFormSchema } from './data';
diff --git a/apps/web-antd/src/views/bpm/processListener/components/data.ts b/apps/web-antd/src/views/bpm/processListener/components/data.ts
index 37725d839..eb9c62e93 100644
--- a/apps/web-antd/src/views/bpm/processListener/components/data.ts
+++ b/apps/web-antd/src/views/bpm/processListener/components/data.ts
@@ -1,21 +1,32 @@
+import type { VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
-import { DICT_TYPE } from '@vben/constants';
+import { CommonStatusEnum, DICT_TYPE } from '@vben/constants';
+import { getDictOptions } from '@vben/hooks';
/** 选择监听器弹窗的列表字段 */
export function useGridColumns(): VxeTableGridOptions['columns'] {
return [
- { field: 'name', title: '名字', minWidth: 120 },
+ { field: 'name', title: '名字', minWidth: 160 },
{
field: 'type',
title: '类型',
- minWidth: 200,
+ minWidth: 120,
cellRender: {
name: 'CellDict',
props: { type: DICT_TYPE.BPM_PROCESS_LISTENER_TYPE },
},
},
- { field: 'event', title: '事件', minWidth: 200 },
+ {
+ field: 'status',
+ title: '状态',
+ minWidth: 120,
+ cellRender: {
+ name: 'CellDict',
+ props: { type: DICT_TYPE.COMMON_STATUS },
+ },
+ },
+ { field: 'event', title: '事件', minWidth: 120 },
{
field: 'valueType',
title: '值类型',
@@ -34,3 +45,29 @@ export function useGridColumns(): VxeTableGridOptions['columns'] {
},
];
}
+
+/** 列表的搜索表单 */
+export function useGridFormSchema(): VbenFormSchema[] {
+ return [
+ {
+ fieldName: 'name',
+ label: '名字',
+ component: 'Input',
+ componentProps: {
+ placeholder: '请输入名字',
+ allowClear: true,
+ },
+ },
+ {
+ fieldName: 'status',
+ label: '状态',
+ component: 'Select',
+ defaultValue: CommonStatusEnum.ENABLE,
+ componentProps: {
+ options: getDictOptions(DICT_TYPE.COMMON_STATUS, 'number'),
+ placeholder: '请选择状态',
+ disabled: true,
+ },
+ },
+ ];
+}
diff --git a/apps/web-antd/src/views/bpm/processListener/components/index.ts b/apps/web-antd/src/views/bpm/processListener/components/index.ts
new file mode 100644
index 000000000..04dbccf3d
--- /dev/null
+++ b/apps/web-antd/src/views/bpm/processListener/components/index.ts
@@ -0,0 +1 @@
+export { default as ProcessListenerSelectModal } from './select-modal.vue';
diff --git a/apps/web-antd/src/views/bpm/processListener/components/process-listener-select-modal.vue b/apps/web-antd/src/views/bpm/processListener/components/select-modal.vue
similarity index 81%
rename from apps/web-antd/src/views/bpm/processListener/components/process-listener-select-modal.vue
rename to apps/web-antd/src/views/bpm/processListener/components/select-modal.vue
index c93b79ef5..0b85d24e2 100644
--- a/apps/web-antd/src/views/bpm/processListener/components/process-listener-select-modal.vue
+++ b/apps/web-antd/src/views/bpm/processListener/components/select-modal.vue
@@ -5,12 +5,11 @@ import type { BpmProcessListenerApi } from '#/api/bpm/processListener';
import { ref } from 'vue';
import { useVbenModal } from '@vben/common-ui';
-import { CommonStatusEnum } from '@vben/constants';
import { TableAction, useVbenVxeGrid } from '#/adapter/vxe-table';
import { getProcessListenerPage } from '#/api/bpm/processListener';
-import { useGridColumns } from './data';
+import { useGridColumns, useGridFormSchema } from './data';
defineOptions({ name: 'ProcessListenerSelectModal' });
@@ -18,27 +17,25 @@ const emit = defineEmits<{
select: [listener: BpmProcessListenerApi.ProcessListener];
}>();
-// TODO @jason:这里是不是要迁移下?
-// 查询参数
-const queryParams = ref({
- type: '',
- status: CommonStatusEnum.ENABLE,
-});
+const listenerType = ref('');
// 配置 VxeGrid
const [Grid] = useVbenVxeGrid({
+ formOptions: {
+ schema: useGridFormSchema(),
+ },
gridOptions: {
columns: useGridColumns(),
showOverflow: true,
minHeight: 300,
proxyConfig: {
ajax: {
- query: async ({ page }) => {
+ query: async ({ page }, formValues) => {
return await getProcessListenerPage({
pageNo: page.currentPage,
pageSize: page.pageSize,
- type: queryParams.value.type,
- status: queryParams.value.status,
+ type: listenerType.value,
+ ...formValues,
});
},
},
@@ -56,14 +53,15 @@ const [Grid] = useVbenVxeGrid({
// 配置 Modal
const [Modal, modalApi] = useVbenModal({
showConfirmButton: false,
+ contentClass: 'bg-background-deep p-3',
onOpenChange: async (isOpen: boolean) => {
if (!isOpen) {
- queryParams.value.type = '';
+ listenerType.value = '';
return;
}
const data = modalApi.getData<{ type: string }>();
if (data?.type) {
- queryParams.value.type = data.type;
+ listenerType.value = data.type;
}
},
destroyOnClose: true,