예제 #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(cls, name='', seller='', start_date='', end_date='', section=''):
     query = DBSession().query(cls)
     if name:
         query = query.filter(cls.name.like('%{}%'.format(name)))
     if seller:
         query = query.filter(cls.seller.like('%{}%'.format(seller)))
     if section:
         query = query.filter(cls.seller.like('%{}%'.format(section)))
     if start_date and end_date:
         start_date = datetime.datetime.strptime(start_date, '%Y-%m-%d')
         end_date = datetime.datetime.strptime(end_date, '%Y-%m-%d')
         query = query.filter(cls.created_at.between(start_date, end_date))
         print query
     return query.all()