| Conditions | 2 |
| Total Lines | 18 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 1 | ||
| Bugs | 0 | Features | 0 |
| 1 | from .model import * |
||
| 24 | @classmethod |
||
| 25 | def get_scans_with_counts(cls): |
||
| 26 | out = [] |
||
| 27 | badscans = DBSession.query(cls.badscan, func.count(cls.badscan).label('count'))\ |
||
| 28 | .group_by(cls.badscan)\ |
||
| 29 | .all() |
||
| 30 | for badscan in badscans: |
||
| 31 | most_recent = DBSession.query(cls)\ |
||
| 32 | .filter(cls.badscan==badscan.badscan)\ |
||
| 33 | .order_by(cls.timestamp.desc())\ |
||
| 34 | .first() |
||
| 35 | out.append({ |
||
| 36 | 'badscan': badscan.badscan, |
||
| 37 | 'count': badscan.count, |
||
| 38 | 'timestamp': most_recent.timestamp |
||
| 39 | }) |
||
| 40 | |||
| 41 | return out |
||
| 42 |