Fix scheduling same tasks
This commit is contained in:
		@@ -58,8 +58,17 @@ export class Scheduler {
 | 
			
		||||
 | 
			
		||||
    scheduleTask(name: string, args: Args, ts?: number | undefined): void {
 | 
			
		||||
        this.logger.log('PUSH TASK', name, args, ts);
 | 
			
		||||
        this.taskQueue.push(name, args, ts || timestamp());
 | 
			
		||||
        const villageId = args.villageId;
 | 
			
		||||
        let insertedTs = ts;
 | 
			
		||||
        if (villageId && !insertedTs) {
 | 
			
		||||
            const tasks = this.taskQueue.seeItems();
 | 
			
		||||
            const sameNamePred = t => sameVillage(villageId, t.args) && t.name === name;
 | 
			
		||||
            insertedTs = lastTaskTime(tasks, sameNamePred);
 | 
			
		||||
            if (insertedTs) {
 | 
			
		||||
                insertedTs += 1;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        this.taskQueue.push(name, args, insertedTs || timestamp());
 | 
			
		||||
        if (villageId) {
 | 
			
		||||
            this.reorderVillageTasks(villageId);
 | 
			
		||||
        }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user