Fixed bug in queue

This commit is contained in:
REDNBLACK 2016-11-12 18:57:50 +03:00
parent 5db6888ad3
commit 3bbc62b9b9
2 changed files with 8 additions and 6 deletions

View File

@ -25,9 +25,9 @@ class ChatPurgeQueue:
else:
interval = (job.execute_at - current_datetime).total_seconds()
self.add(chat_id=job.chat_id, interval=interval)
self.add(chat_id=job.chat_id, interval=interval, write_to_db=False)
def add(self, chat_id, interval=default_interval):
def add(self, chat_id, interval=default_interval, write_to_db=True):
scheduled_at = datetime.now() + timedelta(seconds=interval)
logging.info("Added chat #%d to purge queue, scheduled to run at %s" %
@ -37,10 +37,11 @@ class ChatPurgeQueue:
self.jobs[chat_id] = job
self.queue.put(job)
JobEntity.create(chat_id=chat_id,
type=self.job_type,
repeat=False,
execute_at=scheduled_at)
if write_to_db:
JobEntity.create(chat_id=chat_id,
type=self.job_type,
repeat=False,
execute_at=scheduled_at)
def remove(self, chat_id):
if chat_id not in self.jobs:

View File

@ -7,6 +7,7 @@ import src.entity.chat
class Job(Model):
__fillable__ = ['chat_id', 'type', 'repeat', 'execute_at']
__timestamps__ = False
__dates__ = ['execute_at']
@belongs_to
def chat(self):