예제 #1
0
class FlightScheduleCommands(db.Model):
    __tablename__ = 'flightschedulecommands'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    command_id = db.Column(db.Integer,
                           db.ForeignKey('telecommands.id'),
                           nullable=False)
    timestamp = db.Column(db.DateTime)
    flightschedule_id = db.Column(db.Integer,
                                  db.ForeignKey('flightschedules.id'),
                                  nullable=False)
    arguments = db.relationship('FlightScheduleCommandsArgs',
                                backref='flightschedulecommand',
                                lazy=True,
                                cascade='all, delete-orphan')

    def to_json(self):
        """Returns a dictionary of some selected model attributes
        """
        return {
            'flightschedule_command_id': self.id,
            'timestamp': str(self.timestamp),
            'command': self.command.to_json(),
            'args': [arg.to_json() for arg in self.arguments]
        }
예제 #2
0
class FlightScheduleCommandsArgs(db.Model):
    __tablename__ = 'flightschedulecommandsargs'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    index = db.Column(db.Integer)
    argument = db.Column(db.String(8))
    flightschedulecommand_id = db.Column(
        db.Integer, db.ForeignKey('flightschedulecommands.id'), nullable=False)

    def to_json(self):
        """Returns a dictionary of some selected model attributes
        """
        return {'index': self.index, 'argument': self.argument}
예제 #3
0
class PowerChannels(db.Model):
    __tablename__ = 'powerchannels'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    hk_id = db.Column(db.Integer,
                      db.ForeignKey('housekeeping.id'),
                      nullable=False)
    channel_no = db.Column(db.Integer)  # Range of 1-24
    enabled = db.Column(db.Boolean)
    current = db.Column(db.Float)

    # Might also need a 'Nominal' column? According to ASAT Common Commands doc.

    def to_json(self):
        """Returns a dictionary of some selected model attributes
        """
        return {
            'id': self.id,
            'hk_id': self.hk_id,
            'channel_no': self.channel_no,
            'enabled': self.enabled,
            'current': self.current
        }