1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00
pigallery2/common/entities/task/TaskScheduleDTO.ts
2019-12-06 15:53:34 +01:00

32 lines
709 B
TypeScript

export enum TaskTriggerType {
never = 1, scheduled = 2, periodic = 3
}
export interface TaskTrigger {
type: TaskTriggerType;
}
export interface NeverTaskTrigger {
type: TaskTriggerType.never;
}
export interface ScheduledTaskTrigger extends TaskTrigger {
type: TaskTriggerType.scheduled;
time: number; // data time
}
export interface PeriodicTaskTrigger extends TaskTrigger {
type: TaskTriggerType.periodic;
periodicity: number; // 0-6: week days 7 every day
atTime: number; // day time
}
export interface TaskScheduleDTO {
priority: number;
name?: string;
id?: string;
taskName: string;
config: any;
trigger: NeverTaskTrigger | ScheduledTaskTrigger | PeriodicTaskTrigger;
}