예제 #1
0
 def get_log_entries(tank_id=None, timerange=None):
     """ Get a list of LogEntry objects """
     query = DBSession().query(LogEntry)
     if tank_id is not None:
         query = query.filter(LogEntry.tank_id == tank_id)
     if timerange is not None:
         if 'start' in timerange:
             query = query.filter(LogEntry.entry_time >= timerange['start'])
         if 'end' in timerange:
             query = query.filter(LogEntry.entry_time <= timerange['end'])
     return query.order_by(LogEntry.entry_time.asc()).all()
예제 #2
0
 def get_measurements(tank_id=None, parameters=None, timerange=None):
     """ Get a list of Measurements """
     query = DBSession().query(Measurement)
     if tank_id is not None:
         query = query.filter(Measurement.tank_id == tank_id)
     if parameters is not None:
         query = query.filter(Measurement.measurement_type_id.in_(parameters))
     if timerange is not None:
         if 'start' in timerange:
             query = query.filter(Measurement.measurement_time >= timerange['start'])
         if 'end' in timerange:
             query = query.filter(Measurement.measurement_time <= timerange['end'])
     return query.order_by(Measurement.measurement_time.asc()).all()
예제 #3
0
 def get_tanks():
     """ Get a list of all Tanks """
     query = DBSession().query(Tank)
     return query.order_by(Tank.name.asc()).all()
예제 #4
0
 def get_scheduled_events(tank_id):
     """ Get a list of ScheduledEvents by tank ID """
     query = DBSession().query(ScheduledEvent).filter(ScheduledEvent.tank_id == tank_id)
     return query.order_by(ScheduledEvent.event_name.asc()).all()
예제 #5
0
 def get_measurement_types():
     """ Get a list of all MeasurementTypes """
     query = DBSession().query(MeasurementType)
     return query.order_by(MeasurementType.label.asc()).all()