Beispiel #1
0
    def all_queryed(cls,
                    ucid,
                    qry=False,
                    cats=False,
                    creds=False,
                    total_only=False,
                    fromdate=False,
                    todate=False,):
        base = DBSession.query(Invoice)
        if total_only:
            base = DBSession.query(func.sum(Invoice.amount).label('a_sum'))\

        base = base.join(Invoice.category)\
                   .join(Invoice.creditor)\
                   .filter(not_(and_(Category.private == True,
                                     Category.user_id != ucid)))

        """ if argument add filter(s)."""
        if qry:
            qry = "%"+qry+"%"
            base = base.filter(Invoice.title.like(qry))
        if cats:
            for c in cats:
                base = base.filter(Category.id == c.id)
        if creds:
            for c in creds:
                base = base.filter(Creditor.id == c.id)
        if fromdate:
            base = base.filter(Invoice.due >= fromdate)
        if todate:
            base = base.filter(Invoice.due <= todate)
        return base
Beispiel #2
0
 def with_category(cls, id, total_only=False):
     if total_only:
         return DBSession.query(func.sum(Expenditure.amount)
                                    .label('a_sum'))\
                         .filter(and_(Expenditure.archived == False,
                                      Expenditure.category_id == id))\
                         .first()
     return DBSession.query(Expenditure)\
                     .filter(and_(Expenditure.category_id == id,
                                  Expenditure.archived == False)).all()
Beispiel #3
0
    def with_category_all_unpaid(cls, cid, total_only=False):
        base = DBSession.query(Invoice)

        if total_only:
            base = DBSession.query(func.sum(Invoice.amount).label('a_sum'))\

        base = base.filter(and_(Invoice.category_id == cid,
                                Invoice.archived == False,
                                Invoice.paid == None))\
                   .all()
        return base
Beispiel #4
0
    def with_category_paid(cls, cid, year, month, total_only=False):
        base = DBSession.query(Invoice)

        if total_only:
            base = DBSession.query(func.sum(Invoice.amount).label('a_sum'))\

        base = base.filter(and_(Invoice.category_id == cid,
                                Invoice.archived == False,
                                Invoice.paid != None))\
                   .filter(extract('year', Invoice.due) == year)\
                   .filter(extract('month', Invoice.due) == month)\
                   .all()
        return base
Beispiel #5
0
 def all_active(cls, request, id=False):
     if not id:
         id = authenticated_userid(request)
     return DBSession.query(Creditor)\
                     .filter(Creditor.archived == False)\
                     .filter(not_(and_(Creditor.private == True,
                                       Creditor.user_id != id)))
Beispiel #6
0
 def all_private(cls, request, id=False):
     if not id:
         id = authenticated_userid(request)
     return DBSession.query(Category)\
                     .filter(and_(Category.user_id == id,
                                  Category.private == True,
                                  Category.archived == False))
Beispiel #7
0
 def first_private(cls, request):
     id = authenticated_userid(request)
     return DBSession.query(Creditor)\
                     .filter(and_(Creditor.archived == False,
                                  Creditor.private == True,
                                  Creditor.user_id == id)).first()
Beispiel #8
0
 def all_archived(cls, ucid):
     return DBSession.query(Invoice)\
                     .join(Invoice.category)\
                     .filter(Invoice.archived == True)\
                     .filter(not_(and_(Category.private == True,
                                       Category.user_id != ucid)))
Beispiel #9
0
 def all_active(cls):
     return DBSession.query(User).filter(User.archived == False)
Beispiel #10
0
 def by_email(cls, email):
     return DBSession.query(User).filter(User.email == email).first()
Beispiel #11
0
 def all_archived(cls, request):
     id = authenticated_userid(request)
     return DBSession.query(File)\
                     .filter(File.archived == True)\
                     .filter(not_(and_(File.private == True,
                                       File.user_id != id)))
Beispiel #12
0
 def all_shared(cls):
     return DBSession.query(Category)\
                     .filter(Category.archived == False)\
                     .filter(Category.private == False)
Beispiel #13
0
 def first_active(cls):
     return DBSession.query(Category)\
                     .filter(and_(Category.archived == False,
                                  Category.private == False)).first()
Beispiel #14
0
 def by_id(cls, id):
     return DBSession.query(Category).filter(Category.id == id).first()
Beispiel #15
0
 def by_id(cls, id):
     return DBSession.query(Tag).filter(Tag.id == id).first()
Beispiel #16
0
 def popular(cls):
     return DBSession.query(Tag).get(20)
Beispiel #17
0
 def all_shared(cls):
     return DBSession.query(Creditor)\
                     .filter(Creditor.archived == False)\
                     .filter(Creditor.private == False)
Beispiel #18
0
 def by_id(cls, id):
     return DBSession.query(File).filter(File.id == id).first()
Beispiel #19
0
 def by_id(cls, id):
     return DBSession.query(Expenditure)\
                     .filter(Expenditure.id == id).first()
Beispiel #20
0
 def by_id(cls, id):
     return DBSession.query(User).filter(User.id == id).first()
Beispiel #21
0
 def all_archived(cls):
     return DBSession.query(Expenditure)\
                     .filter(Expenditure.archived == True)
Beispiel #22
0
 def all_users(cls):
     return DBSession.query(User).all()
Beispiel #23
0
 def all_active(cls):
     return DBSession.query(Income).filter(Income.archived == False)
Beispiel #24
0
 def all_archived(cls):
     return DBSession.query(User).filter(User.archived == True)
Beispiel #25
0
 def by_id(cls, id):
     return DBSession.query(Income).filter(Income.id == id).first()
Beispiel #26
0
 def all_archived(cls):
     return DBSession.query(Income).filter(Income.archived == True)
Beispiel #27
0
 def by_id(cls, id):
     return DBSession.query(Creditor).filter(Creditor.id == id).first()
Beispiel #28
0
 def amount_sum(cls):
     return DBSession.query(func.sum(Income.amount).label('a_sum'))\
                     .filter(Income.archived == False).first()
Beispiel #29
0
 def first_active(cls):
     return DBSession.query(Creditor)\
                     .filter(and_(Creditor.archived == False,
                                  Creditor.private == False)).first()