from db import dbGetMany, dbGetOne, dbInsert, dbUpdate from loguru import logger import werkzeug def get_overhead_advances_by_flat(user, token_info, flatId=None): return dbGetMany(user, token_info, { "statement": """ SELECT o.id ,o.description ,o.amount ,o.startdate ,o.enddate FROM overhead_advance_t o, overhead_advance_flat_mapping_t m WHERE o.id = m.overhead_advance and m.flat = %s""", "params": (flatId, ) } ) def get_fees_by_tenancy(user, token_info, tenancyId=None): return dbGetMany(user, token_info, { "statement": """ SELECT o.id, o.description, o.amount, o.fee_type, o.startdate, o.enddate FROM fee_t o, tenancy_fee_mapping_t m WHERE o.id = m.fee and m.tenancy = %s""", "params": (tenancyId, ) } ) def get_account_saldo(user, token_info, accountId=None): return dbGetOne(user, token_info, { "statement": "SELECT sum(amount) as saldo FROM account_entry_t WHERE account=%s", "params": (accountId, ) } ) def get_tenant_with_saldo(user, token_info): return dbGetMany(user, token_info, { "statement": """ SELECT t.id, t.firstname, t.lastname, t.address1, sum(a.amount) AS saldo FROM tenant_t t LEFT OUTER JOIN account_entry_t a ON a.account = t.account GROUP BY t.id, t.firstname, t.lastname, t.address1 """, "params": () } ) def get_account_by_description(user, token_info, description=None): return dbGetOne(user, token_info, { "statement": """ SELECT a.id ,a.description FROM account_t a WHERE a.description = %s""", "params": (description, ) } ) def get_unique_number(user, token_info): return dbGetOne(user, token_info, { "statement": """ SELECT nextval('unique_number_s') AS "number" """, "params": () })