55from datetime import datetime
66from functools import lru_cache
77
8- from sqlalchemy import Column , Integer , String , Text , ForeignKey , DateTime , Boolean , and_ , or_
8+ from sqlalchemy import Column , Integer , String , Text , ForeignKey , DateTime , Boolean
99from sqlalchemy .orm import relationship
1010
1111from . import db
@@ -68,13 +68,6 @@ def signatures_received(self, total=False):
6868 if misc_count > REQUIRED_MISC_SIGNATURES :
6969 misc_count = REQUIRED_MISC_SIGNATURES
7070
71- if total :
72- return db .session .query (Packet .freshman_username ) \
73- .select_from (Packet ).outerjoin (UpperSignature ).outerjoin (FreshSignature ) \
74- .filter (or_ (and_ (Packet .freshman_username == self .freshman_username , UpperSignature .signed ),
75- and_ (Packet .freshman_username == self .freshman_username , FreshSignature .signed ))) \
76- .distinct ().count () + misc_count
77-
7871 eboard_count = db .session .query (UpperSignature .member ) \
7972 .select_from (Packet ).join (UpperSignature ) \
8073 .filter (Packet .freshman_username == self .freshman_username ,
@@ -94,6 +87,9 @@ def signatures_received(self, total=False):
9487 FreshSignature .signed ) \
9588 .distinct ().count ()
9689
90+ if total :
91+ return eboard_count + upper_count + fresh_count + misc_count
92+
9793 return {'eboard' : eboard_count ,
9894 'upperclassmen' : upper_count ,
9995 'freshmen' : fresh_count ,
0 commit comments