feat: additional expenses
This commit is contained in:
19
services/statistics/common.py
Normal file
19
services/statistics/common.py
Normal file
@@ -0,0 +1,19 @@
|
||||
from datetime import date
|
||||
|
||||
from sqlalchemy import select, func, literal, text, cast, CTE
|
||||
from sqlalchemy.dialects.postgresql import TIMESTAMP
|
||||
|
||||
|
||||
def generate_date_range(date_from: date, date_to: date, additional_columns: list[str]) -> CTE:
|
||||
cols = [literal(0).label(col_label) for col_label in additional_columns]
|
||||
return select(
|
||||
cast(
|
||||
func.generate_series(
|
||||
date_from,
|
||||
date_to,
|
||||
text("'1 day'")
|
||||
),
|
||||
TIMESTAMP(timezone=False)
|
||||
).label("date"),
|
||||
*cols,
|
||||
).cte()
|
||||
Reference in New Issue
Block a user