diff --git a/packages/plugins/@nocobase/plugin-workflow/src/client/components/TriggerCollectionRecordSelect.tsx b/packages/plugins/@nocobase/plugin-workflow/src/client/components/TriggerCollectionRecordSelect.tsx
index ca1f085b11..42d964426c 100644
--- a/packages/plugins/@nocobase/plugin-workflow/src/client/components/TriggerCollectionRecordSelect.tsx
+++ b/packages/plugins/@nocobase/plugin-workflow/src/client/components/TriggerCollectionRecordSelect.tsx
@@ -21,19 +21,19 @@ export function TriggerCollectionRecordSelect(props) {
const [dataSourceName, collectionName] = parseCollectionName(workflow.config.collection);
const { collectionManager } = app.dataSourceManager.getDataSource(dataSourceName);
const collection = collectionManager.getCollection(collectionName);
- const render = (props) => (
+ const render = (p) => (
);
return (
@@ -42,6 +42,7 @@ export function TriggerCollectionRecordSelect(props) {
onChange={props.onChange}
nullable={false}
changeOnSelect
+ {...props}
render={render}
/>
);
diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/index.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/index.ts
index 375ef784ab..a2343e8fb2 100644
--- a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/index.ts
+++ b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/ScheduleTrigger/index.ts
@@ -9,6 +9,7 @@
import Trigger from '..';
import type Plugin from '../../Plugin';
+import { WorkflowModel } from '../../types';
import DateFieldScheduleTrigger from './DateFieldScheduleTrigger';
import StaticScheduleTrigger from './StaticScheduleTrigger';
import { SCHEDULE_MODE } from './utils';
@@ -67,19 +68,15 @@ export default class ScheduleTrigger extends Trigger {
// return !existed.length;
// }
- validateContext(values) {
- if (!values?.mode) {
- return {
- mode: 'Mode is required',
- };
- }
- const trigger = this.getTrigger(values.mode);
+ validateContext(values, workflow: WorkflowModel) {
+ const { mode } = workflow.config;
+ const trigger = this.getTrigger(mode);
if (!trigger) {
return {
mode: 'Mode in invalid',
};
}
- return trigger.validateContext?.(values);
+ return trigger.validateContext?.(values, workflow);
}
}
diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/index.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/index.ts
index 24c01d874e..50e462fd33 100644
--- a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/index.ts
+++ b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/index.ts
@@ -20,7 +20,7 @@ export abstract class Trigger {
return true;
}
duplicateConfig?(workflow: WorkflowModel, options: Transactionable): object | Promise