Beispiel #1
0
    def autoSend(self):
        tasks = db.query(Task).filter_by(taf_id=None).order_by(
            Task.planning).all()
        now = datetime.datetime.utcnow()
        sendStatus = False

        for task in tasks:

            if task.planning <= now:

                message = '\n'.join([task.head, task.rpt])
                aftn = AFTNMessage(message, time=task.planning)
                item = Taf(tt=task.tt,
                           sign=task.head,
                           rpt=task.rpt,
                           raw=aftn.toJson())
                db.add(item)
                db.flush()
                task.taf_id = item.id
                db.merge(task)
                db.commit()

                sendStatus = True

        logger.debug('Tasks ' + ' '.join(task.rpt for task in tasks))

        if sendStatus:
            logger.debug('Task complete')
Beispiel #2
0
 def validateObsTime(self):
     if self.beginningTime.hasAcceptableInput() and self.obsTime.hasAcceptableInput():
         start = parseDateTime(self.beginningTime.text())
         obs = parseTime(self.obsTime.text())
         if obs > start:
             self.obsTime.clear()
             logger.debug('Observation time should before the beginning time')
Beispiel #3
0
 def save(self):
     item = Sigmet(tt=self.message['sign'][0:2], sign=self.message['sign'], rpt=self.message['rpt'], raw=self.aftn.toJson())
     db.add(item)
     db.commit()
     logger.debug('Save ' + item.rpt)
     self.remind(item)
     self.sendSignal.emit()
Beispiel #4
0
 def save(self):
     item = Task(tt=self.message['sign'][0:2],
                 sign=self.message['sign'],
                 rpt=self.message['rpt'],
                 planning=self.message['planning'])
     db.add(item)
     db.commit()
     logger.debug('Save Task {}'.format(
         item.planning.strftime('%b %d %Y %H:%M:%S')))
     self.sendSignal.emit()
Beispiel #5
0
    def validateEndingTime(self):
        if self.beginningTime.hasAcceptableInput() and self.endingTime.hasAcceptableInput():
            start = parseDateTime(self.beginningTime.text())
            end = parseDateTime(self.endingTime.text())

            if end <= start:
                self.endingTime.clear()
                logger.debug('Ending time must be greater than the beginning time')

            if end - start > datetime.timedelta(hours=self.duration):
                self.endingTime.clear()
                logger.debug('Valid period more than {} hours'.format(self.duration))
Beispiel #6
0
    def updateGui(self):
        self.updateTable()
        self.updateRecent()
        self.updateContractMenu()

        logger.debug('Update GUI')