From 185e89351e727205bfdc7a118b38f87e1525f8da Mon Sep 17 00:00:00 2001 From: "Mohamad.Elsena" Date: Wed, 21 May 2025 09:34:51 +0200 Subject: [PATCH] Update expense creation to include current user ID for better tracking. Introduce a utility function to round monetary values to two decimal places. Enhance ListDetailPage styles by adding overflow handling for improved UI layout. --- be/app/api/v1/endpoints/costs.py | 2 +- be/app/crud/expense.py | 4 ++++ fe/src/pages/ListDetailPage.vue | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/be/app/api/v1/endpoints/costs.py b/be/app/api/v1/endpoints/costs.py index 5ca2318..223812b 100644 --- a/be/app/api/v1/endpoints/costs.py +++ b/be/app/api/v1/endpoints/costs.py @@ -187,7 +187,7 @@ async def get_list_cost_summary( split_type=SplitTypeEnum.ITEM_BASED, paid_by_user_id=db_list.creator.id ) - db_expense = await crud_expense.create_expense(db=db, expense_in=expense_in) + db_expense = await crud_expense.create_expense(db=db, expense_in=expense_in, current_user_id=current_user.id) # 4. Calculate cost summary from expense splits participating_users = set() diff --git a/be/app/crud/expense.py b/be/app/crud/expense.py index 728ee01..301e676 100644 --- a/be/app/crud/expense.py +++ b/be/app/crud/expense.py @@ -39,6 +39,10 @@ from app.core.exceptions import ( logger = logging.getLogger(__name__) # Initialize logger +def _round_money(amount: Decimal) -> Decimal: + """Rounds a Decimal to two decimal places using ROUND_HALF_UP.""" + return amount.quantize(Decimal("0.01"), rounding=ROUND_HALF_UP) + async def get_users_for_splitting(db: AsyncSession, expense_group_id: Optional[int], expense_list_id: Optional[int], expense_paid_by_user_id: int) -> PyList[UserModel]: """ Determines the list of users an expense should be split amongst. diff --git a/fe/src/pages/ListDetailPage.vue b/fe/src/pages/ListDetailPage.vue index 7deffbc..6e8aafa 100644 --- a/fe/src/pages/ListDetailPage.vue +++ b/fe/src/pages/ListDetailPage.vue @@ -832,6 +832,7 @@ const editItem = (item: Item) => { flex-direction: column; cursor: pointer; border: 3px solid #111; + overflow: hidden; } .neo-item-list {