feat: processing of modules in card, renaming

This commit is contained in:
2025-02-20 20:20:42 +04:00
parent 1af78ce08a
commit c6c006d45b
7 changed files with 174 additions and 167 deletions

View File

@@ -41,23 +41,23 @@ class PaymentStatisticsService(BaseService):
return expenses_with_filled_gaps
@staticmethod
def _apply_payments(deals_by_dates: Subquery, expenses_subquery: Subquery):
def _apply_payments(cards_by_dates: Subquery, expenses_subquery: Subquery):
return (
select(
deals_by_dates.c.date,
deals_by_dates.c.deals_count,
deals_by_dates.c.revenue,
(func.coalesce(deals_by_dates.c.profit, 0) - func.coalesce(expenses_subquery.c.expenses, 0))
cards_by_dates.c.date,
cards_by_dates.c.cards_count,
cards_by_dates.c.revenue,
(func.coalesce(cards_by_dates.c.profit, 0) - func.coalesce(expenses_subquery.c.expenses, 0))
.label("profit"),
(deals_by_dates.c.expenses + expenses_subquery.c.expenses).label("expenses"),
(cards_by_dates.c.expenses + expenses_subquery.c.expenses).label("expenses"),
)
.join(expenses_subquery, expenses_subquery.c.date == deals_by_dates.c.date)
.join(expenses_subquery, expenses_subquery.c.date == cards_by_dates.c.date)
)
def apply_payments(self, filters: CommonProfitFilters, deals_by_dates: Subquery):
def apply_payments(self, filters: CommonProfitFilters, cards_by_dates: Subquery):
self.date_from, self.date_to = filters.date_range
salary_expenses = self._get_payment_records_sub()
deals_by_dates = self._apply_payments(deals_by_dates, salary_expenses)
cards_by_dates = self._apply_payments(cards_by_dates, salary_expenses)
return deals_by_dates
return cards_by_dates