consider year in creating fee and overhead requests

This commit is contained in:
2022-01-24 16:36:28 +01:00
parent b748ba7a77
commit e1ebfe254a

View File

@ -2,14 +2,20 @@ from db import dbGetMany, dbGetOne
from loguru import logger from loguru import logger
from decimal import Decimal from decimal import Decimal
import datetime import datetime
import iso8601
def perform(dbh, params): def perform(dbh, params):
try: try:
createdAt = params['created_at'] createdAt = iso8601.parse_date(params['created_at'])
dueAt = createdAt.replace(day=1) except iso8601.iso8601.ParseError:
msg = f"Can not parse given date {params['created_at']}"
logger.error(msg)
raise Exception(msg)
except KeyError: except KeyError:
createdAt = datetime.datetime.today().strftime("%Y-%m-%d") createdAt = datetime.datetime.today()
dueAt = createdAt.replace(day=1)
year = createdAt.year
createdAt = createdAt.strftime("%Y-%m-%d")
tenants = dbGetMany(dbh, { "statement": "SELECT * FROM tenant_t", "params": () }) tenants = dbGetMany(dbh, { "statement": "SELECT * FROM tenant_t", "params": () })
for tenant in tenants: for tenant in tenants:
@ -101,11 +107,11 @@ def perform(dbh, params):
accountEntry = dbGetOne(dbh, { accountEntry = dbGetOne(dbh, {
"statement": """ "statement": """
INSERT INTO account_entry_t INSERT INTO account_entry_t
(description, account, created_at, amount, account_entry_category) (description, account, created_at, fiscal_year, amount, account_entry_category)
VALUES (%s, %s, %s, %s, (SELECT id FROM account_entry_category_t WHERE description = %s)) VALUES (%s, %s, %s, %s, %s, (SELECT id FROM account_entry_category_t WHERE description = %s))
RETURNING id RETURNING id
""", """,
"params": (request['description'], request['account'], request['created_at'], request['amount'], request['category']) "params": (request['description'], request['account'], request['created_at'], year, request['amount'], request['category'])
} }
) )
logger.info(f" account entry entered with id {accountEntry['id']}") logger.info(f" account entry entered with id {accountEntry['id']}")