bug: things were scheduling out to 2074
authorxangelo <git@xangelo.ca>
Fri, 27 May 2022 14:48:03 +0000 (10:48 -0400)
committerxangelo <git@xangelo.ca>
Fri, 27 May 2022 14:48:06 +0000 (10:48 -0400)
Instead of passing a diff between now and the due date, we were passing
the due date to delay jobs. As a result it was scheduling it way further
that it should be.

src/api.ts

index 9fab0f4a72f2eb1937b46e6df7dcec865ccf25f2..50d4f06d014eeb92b75c7bc8df2a63b665d4795b 100644 (file)
@@ -274,7 +274,7 @@ server.post<{
 
   const queueData = await cityRepo.buildBuilding(building, amount, city);
 
-       construction.trigger(queueData, { delay: queueData.due });
+       construction.trigger(queueData, { delay: queueData.due - Date.now() });
 }, 'reload-construction-queue');
 
 server.post<{
@@ -288,7 +288,8 @@ server.post<{
        const acct = await accountRepo.validate(req.authInfo.accountId, req.authInfo.token);
        const city = await cityRepo.getUsersCity(acct.id);
 
-       const amount  = parseInt(req.body.amount, 10);
+       const amount  = parseInt(req.body.amount, 10) || 0;
+  console.log('request amount?!', amount);
   if(amount < 1) {
     throw new BadInputError('Please specify an amount > 0', ERROR_CODE.INVALID_AMOUNT);
   }
@@ -299,7 +300,7 @@ server.post<{
        }
 
        const queueData = await cityRepo.train(unit, amount, city);
-       unitTraining.trigger(queueData, { delay: queueData.due });
+       unitTraining.trigger(queueData, { delay: queueData.due - Date.now() });
 
 }, 'reload-unit-training');