aboutsummaryrefslogtreecommitdiffstats
path: root/python/Dawn/utils.py
blob: 731d6dbb2f5075508d58689a52bf401bd0cfd484 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import re
from pickle import dumps


def bump_rev(filename):
    pattern = r"([^r]*)(\srev(\d)|).pdf"
    begin, _, rev_number = re.match(pattern, filename).groups()
    rev_number = int(rev_number) + 1 if rev_number else 1
    return f"{begin} rev{rev_number}.pdf"


def simple_serialize(obj, **kwargs):
    d = {c.name: getattr(obj, c.name) for c in obj.__table__.columns}
    # add data from foreign relationship
    if obj.__table__.name == 'wires':
        d.update({'Counterparty': obj.account.counterparty,
                  'cashaccount': obj.account.cash_account,
                  'custodian': obj.account.custodian})
    d.update(kwargs)
    return dumps(d)