Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions app/data_access/regulatory_alerts_summary.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ class AlertsGroup(graphene.ObjectType):


class RegulatoryAlertsSummary(graphene.ObjectType):
has_any_computation = graphene.Boolean(
description="Indique s'il y a des données pour le mois."
)
month = graphene.String(description="Mois correspondant aux données.")
total_nb_alerts = graphene.Int(
description="Nombre d'alertes total sur le mois."
Expand Down
16 changes: 15 additions & 1 deletion app/domain/regulatory_alerts_summary.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from dateutil.relativedelta import relativedelta

from app import db
from app.data_access.regulation_computation import (
get_regulation_checks_by_unit,
)
Expand All @@ -8,7 +9,7 @@
RegulatoryAlertsSummary,
)
from app.helpers.submitter_type import SubmitterType
from app.models import RegulatoryAlert
from app.models import RegulatoryAlert, RegulationComputation
from app.models.regulation_check import UnitType, RegulationCheckType


Expand Down Expand Up @@ -50,6 +51,19 @@ def query_alerts(_start_date, _end_date, _user_ids, count_only=True):
return current_month_alerts, previous_month_alerts_count


def has_any_regulation_computation(month, user_ids):
start_date = month
end_date = month + relativedelta(months=1)
db.session.query(
RegulationComputation.query.filter(
RegulationComputation.user_id.in_(user_ids),
RegulationComputation.day >= start_date,
RegulationComputation.day < end_date,
RegulatoryAlert.submitter_type == SubmitterType.ADMIN,
).exists()
).scalar()


def get_regulatory_alerts_summary(month, user_ids, unique_user_id=False):
current_month_alerts, previous_month_alerts_count = query_alerts_for_month(
month=month, user_ids=user_ids
Expand Down