1.1.9 funcs for raise and highlight routes

This commit is contained in:
SDE
2024-06-03 02:46:58 +03:00
parent a83ff0e080
commit e319a8af46
11 changed files with 249 additions and 114 deletions

View File

@@ -18,7 +18,7 @@ from datetime import datetime, timedelta
class SubscribeOption(BaseModel):
allow_route_rising_count = models.IntegerField(verbose_name=_('Количество поднятий объявлений') ,default=0)
allow_route_select_count = models.IntegerField(verbose_name=_('Количество выделений объявлений'), default=0)
allow_route_highlight_count = models.IntegerField(verbose_name=_('Количество выделений объявлений'), default=0)
class Meta:
verbose_name = _('Опция подписки')
@@ -71,7 +71,7 @@ class SubscribeForUser(BaseModel):
default=False, verbose_name=_('Получать сообщения о окончании периода'))
used_route_rising_count = models.IntegerField(verbose_name=_('Использовано поднятий объявлений'), default=0)
used_route_select_count = models.IntegerField(verbose_name=_('Использовано выделений объявлений'), default=0)
used_route_highlight_count = models.IntegerField(verbose_name=_('Использовано выделений объявлений'), default=0)
class Meta:
verbose_name = _('Пользовательская подписка')
@@ -94,13 +94,13 @@ class SubscribeForUser(BaseModel):
enable=True, rel_subscribes_for_option=self.subscribe
).aggregate(
total_route_rising_count = Coalesce(Sum('allow_route_rising_count'), 0),
total_route_select_count = Coalesce(Sum('allow_route_select_count'), 0),
total_route_highlight_count = Coalesce(Sum('allow_route_highlight_count'), 0),
)
total_data.update({
'used_route_rising_count': self.used_route_rising_count,
'used_route_select_count': self.used_route_select_count,
'used_route_highlight_count': self.used_route_highlight_count,
'remains_route_rising_count': total_data['total_route_rising_count'] - self.used_route_rising_count,
'remains_route_select_count': total_data['total_route_select_count'] - self.used_route_select_count,
'remains_route_highlight_count': total_data['total_route_highlight_count'] - self.used_route_highlight_count,
})
return total_data