Refactor registers to flat membership model and move apps to root
Some checks failed
Some checks failed
This commit is contained in:
@@ -28,7 +28,7 @@ from apps.parsers.models import (
|
||||
ManufacturerRecord,
|
||||
ProcurementRecord,
|
||||
)
|
||||
from apps.registers.models import (
|
||||
from registers.models import (
|
||||
Organization,
|
||||
Register,
|
||||
RegisterUpload,
|
||||
@@ -37,7 +37,7 @@ from apps.registers.models import (
|
||||
from cryptography.hazmat.primitives.ciphers.aead import AESGCM
|
||||
from django.conf import settings
|
||||
from django.db import IntegrityError, transaction
|
||||
from django.db.models import Model, Q
|
||||
from django.db.models import Model
|
||||
from django.utils import timezone
|
||||
|
||||
|
||||
@@ -127,8 +127,7 @@ class BackupExportService:
|
||||
@classmethod
|
||||
def _get_active_organization_ids(cls, actual_date: date) -> list[int]:
|
||||
return list(
|
||||
RegistryMembershipPeriod.objects.filter(started_at__lte=actual_date)
|
||||
.filter(Q(ended_at__isnull=True) | Q(ended_at__gt=actual_date))
|
||||
RegistryMembershipPeriod.objects.all()
|
||||
.values_list("organization_id", flat=True)
|
||||
.distinct()
|
||||
)
|
||||
@@ -140,16 +139,17 @@ class BackupExportService:
|
||||
actual_date: date,
|
||||
active_org_ids: list[int],
|
||||
) -> dict:
|
||||
active_periods = RegistryMembershipPeriod.objects.filter(
|
||||
active_memberships = RegistryMembershipPeriod.objects.filter(
|
||||
organization_id__in=active_org_ids,
|
||||
started_at__lte=actual_date,
|
||||
).filter(Q(ended_at__isnull=True) | Q(ended_at__gt=actual_date))
|
||||
)
|
||||
|
||||
register_ids = list(
|
||||
active_periods.values_list("registry_id", flat=True).distinct()
|
||||
active_memberships.values_list("registry_id", flat=True).distinct()
|
||||
)
|
||||
upload_ids = list(
|
||||
active_periods.values_list("started_by_upload_id", flat=True).distinct()
|
||||
RegisterUpload.objects.filter(registry_id__in=register_ids)
|
||||
.values_list("id", flat=True)
|
||||
.distinct()
|
||||
)
|
||||
|
||||
reports_qs = FinancialReport.objects.filter(
|
||||
@@ -165,10 +165,9 @@ class BackupExportService:
|
||||
RegisterUpload: RegisterUpload.objects.filter(id__in=upload_ids).order_by(
|
||||
"id"
|
||||
),
|
||||
RegistryMembershipPeriod: active_periods.order_by(
|
||||
RegistryMembershipPeriod: active_memberships.order_by(
|
||||
"registry_id",
|
||||
"organization_id",
|
||||
"started_at",
|
||||
),
|
||||
IndustrialCertificateRecord: IndustrialCertificateRecord.objects.filter(
|
||||
registry_organization_id__in=active_org_ids
|
||||
|
||||
Reference in New Issue
Block a user