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

32 lines
713 B
TypeScript
Raw Normal View History

2019-07-28 04:56:12 +08:00
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;
2019-08-20 18:54:45 +08:00
time: number; // data time
2019-07-28 04:56:12 +08:00
}
export interface PeriodicTaskTrigger extends TaskTrigger {
type: TaskTriggerType.periodic;
2019-08-20 18:54:45 +08:00
periodicity: number; // 1-7: week days 8+ every x days
atTime: number; // day time
2019-07-28 04:56:12 +08:00
}
export interface TaskScheduleDTO {
priority: number;
name?: string;
id?: string;
taskName: string;
config: any;
trigger: NeverTaskTrigger | ScheduledTaskTrigger | PeriodicTaskTrigger;
}