aa-ledger 1.0.3__py3-none-any.whl → 2.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {aa_ledger-1.0.3.dist-info → aa_ledger-2.0.0.dist-info}/METADATA +6 -6
- aa_ledger-2.0.0.dist-info/RECORD +267 -0
- {aa_ledger-1.0.3.dist-info → aa_ledger-2.0.0.dist-info}/WHEEL +1 -1
- ledger/__init__.py +2 -2
- ledger/admin.py +23 -18
- ledger/api/__init__.py +23 -7
- ledger/api/{ledger/admin.py → admin.py} +25 -31
- ledger/api/alliance.py +755 -0
- ledger/api/character.py +786 -0
- ledger/api/corporation.py +1141 -0
- ledger/api/{helpers.py → helpers/core.py} +33 -33
- ledger/api/helpers/icons.py +372 -0
- ledger/api/helpers/planetary_helper.py +354 -0
- ledger/api/planetary.py +354 -0
- ledger/api/schema.py +240 -15
- ledger/app_settings.py +18 -26
- ledger/auth_hooks.py +2 -2
- ledger/constants.py +50 -177
- ledger/decorators.py +2 -46
- ledger/forms.py +133 -39
- ledger/helpers/billboard.py +194 -144
- ledger/helpers/cache.py +105 -0
- ledger/helpers/discord.py +2 -4
- ledger/helpers/eveonline.py +160 -0
- ledger/helpers/ledger_data.py +23 -0
- ledger/helpers/ref_type.py +53 -78
- ledger/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
- ledger/locale/cs_CZ/LC_MESSAGES/django.po +349 -193
- ledger/locale/de/LC_MESSAGES/django.mo +0 -0
- ledger/locale/de/LC_MESSAGES/django.po +528 -379
- ledger/locale/django.pot +717 -553
- ledger/locale/es/LC_MESSAGES/django.mo +0 -0
- ledger/locale/es/LC_MESSAGES/django.po +349 -194
- ledger/locale/fr_FR/LC_MESSAGES/django.mo +0 -0
- ledger/locale/fr_FR/LC_MESSAGES/django.po +349 -193
- ledger/locale/it_IT/LC_MESSAGES/django.mo +0 -0
- ledger/locale/it_IT/LC_MESSAGES/django.po +349 -193
- ledger/locale/ja/LC_MESSAGES/django.mo +0 -0
- ledger/locale/ja/LC_MESSAGES/django.po +348 -193
- ledger/locale/ko_KR/LC_MESSAGES/django.mo +0 -0
- ledger/locale/ko_KR/LC_MESSAGES/django.po +349 -193
- ledger/locale/nl_NL/LC_MESSAGES/django.mo +0 -0
- ledger/locale/nl_NL/LC_MESSAGES/django.po +349 -193
- ledger/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
- ledger/locale/pl_PL/LC_MESSAGES/django.po +350 -193
- ledger/locale/ru/LC_MESSAGES/django.mo +0 -0
- ledger/locale/ru/LC_MESSAGES/django.po +348 -193
- ledger/locale/sk/LC_MESSAGES/django.mo +0 -0
- ledger/locale/sk/LC_MESSAGES/django.po +348 -193
- ledger/locale/uk/LC_MESSAGES/django.mo +0 -0
- ledger/locale/uk/LC_MESSAGES/django.po +348 -193
- ledger/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
- ledger/locale/zh_Hans/LC_MESSAGES/django.po +348 -193
- ledger/managers/character_audit_manager.py +28 -20
- ledger/managers/character_journal_manager.py +187 -358
- ledger/managers/character_mining_manager.py +64 -30
- ledger/managers/character_planetary_manager.py +185 -138
- ledger/managers/corporation_audit_manager.py +36 -27
- ledger/managers/corporation_journal_manager.py +94 -57
- ledger/managers/general_manager.py +12 -8
- ledger/migrations/0018_remove_characterplanet_ledger_char_planet__58a5b6_idx_and_more.py +44 -0
- ledger/migrations/0019_rename_characteraudit_characterowner_and_more.py +48 -0
- ledger/models/__init__.py +5 -11
- ledger/models/characteraudit.py +101 -109
- ledger/models/corporationaudit.py +94 -49
- ledger/models/general.py +105 -211
- ledger/models/helpers/update_manager.py +302 -0
- ledger/models/planetary.py +60 -205
- ledger/providers.py +101 -0
- ledger/static/ledger/css/{ledger.css → aa-ledger.css} +54 -28
- ledger/static/ledger/js/aa-ledger.js +124 -0
- ledger/static/ledger/js/charts.js +25 -1
- ledger/static/ledger/js/view-alliance-ledger.js +383 -0
- ledger/static/ledger/js/view-character-ledger.js +388 -0
- ledger/static/ledger/js/view-corporation-ledger.js +402 -0
- ledger/static/ledger/js/view-planetary.js +492 -0
- ledger/static/ledger/libs/amCharts/5.14.4/js/flow.js +2 -0
- ledger/static/ledger/libs/amCharts/5.14.4/js/index.js +2 -0
- ledger/static/ledger/libs/amCharts/5.14.4/js/percent.js +2 -0
- ledger/static/ledger/libs/amCharts/5.14.4/js/themes/Animated.js +2 -0
- ledger/static/ledger/libs/amCharts/5.14.4/js/themes/Dark.js +2 -0
- ledger/static/ledger/libs/amCharts/5.14.4/js/xy.js +2 -0
- ledger/static/ledger/libs/datatables/2.3.5/css/dataTables.bootstrap5.css +610 -0
- ledger/static/ledger/libs/datatables/2.3.5/js/dataTables.bootstrap5.js +122 -0
- ledger/static/ledger/libs/datatables/2.3.5/js/dataTables.js +14127 -0
- ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/css/columnControl.bootstrap5.css +516 -0
- ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/css/columnControl.dataTables.css +529 -0
- ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/js/columnControl.bootstrap5.js +73 -0
- ledger/static/ledger/libs/datatables/Extensions/ColumnControl/1.1.1/js/dataTables.columnControl.js +3090 -0
- ledger/static/ledger/libs/datatables/Extensions/FixedHeader/4.0.4/css/fixedHeader.bootstrap5.css +20 -0
- ledger/static/ledger/libs/datatables/Extensions/FixedHeader/4.0.4/js/dataTables.fixedHeader.js +1203 -0
- ledger/static/ledger/libs/datatables/Extensions/FixedHeader/4.0.4/js/fixedHeader.bootstrap5.js +59 -0
- ledger/tasks.py +157 -146
- ledger/templates/ledger/base.html +59 -21
- ledger/templates/ledger/bundles/aa-ledger-css.html +3 -0
- ledger/templates/ledger/bundles/aa-ledger-js.html +3 -0
- ledger/templates/ledger/bundles/view-alliance-ledger-js.html +14 -0
- ledger/templates/ledger/bundles/view-character-ledger-js.html +15 -0
- ledger/templates/ledger/bundles/view-character-planetary-css.html +3 -0
- ledger/templates/ledger/bundles/view-character-planetary-js.html +4 -0
- ledger/templates/ledger/bundles/view-corporation-ledger-js.html +15 -0
- ledger/templates/ledger/partials/modal/confirm.html +0 -1
- ledger/templates/ledger/partials/modal/request-accept-delete-alliance.html +38 -0
- ledger/templates/ledger/partials/modal/request-accept-delete-character.html +38 -0
- ledger/templates/ledger/partials/modal/request-accept-delete-corporation.html +38 -0
- ledger/templates/ledger/partials/modal/request-accept-switch-notification.html +38 -0
- ledger/templates/ledger/partials/modal/request-view-alliance-details.html +26 -0
- ledger/templates/ledger/partials/modal/request-view-character-details.html +26 -0
- ledger/templates/ledger/partials/modal/request-view-corporation-details.html +26 -0
- ledger/templates/ledger/partials/modal/request-view-extractor.html +32 -0
- ledger/templates/ledger/partials/modal/request-view-factory.html +31 -0
- ledger/templates/ledger/partials/{menu → navigation}/administration.html +8 -0
- ledger/templates/ledger/partials/{menu → navigation}/navigation.html +2 -2
- ledger/templates/ledger/partials/{administration → view-alliance-administration}/alliance_corporations.html +3 -3
- ledger/templates/ledger/partials/view-alliance-administration/dashboard.html +81 -0
- ledger/templates/ledger/partials/view-alliance-ledger/alliance-billboard.html +25 -0
- ledger/templates/ledger/partials/view-alliance-ledger/alliance-ledger-details.html +21 -0
- ledger/templates/ledger/partials/view-alliance-ledger/alliance-table.html +24 -0
- ledger/templates/ledger/partials/view-alliance-ledger/information/daily.html +18 -0
- ledger/templates/ledger/partials/view-alliance-ledger/information/hourly.html +18 -0
- ledger/templates/ledger/partials/view-alliance-ledger/information/summary.html +19 -0
- ledger/templates/ledger/partials/{administration → view-character-administration}/character.html +1 -9
- ledger/templates/ledger/partials/{administration → view-character-administration}/dashboard.html +0 -34
- ledger/templates/ledger/partials/view-character-ledger/character-billboard.html +25 -0
- ledger/templates/ledger/partials/view-character-ledger/character-ledger-details.html +21 -0
- ledger/templates/ledger/partials/view-character-ledger/character-table.html +25 -0
- ledger/templates/ledger/partials/view-character-ledger/information/daily.html +18 -0
- ledger/templates/ledger/partials/view-character-ledger/information/hourly.html +18 -0
- ledger/templates/ledger/partials/view-character-ledger/information/summary.html +19 -0
- ledger/templates/ledger/partials/view-character-planetary/extractor-table.html +24 -0
- ledger/templates/ledger/partials/view-character-planetary/factory-table.html +24 -0
- ledger/templates/ledger/partials/view-character-planetary/planetary-table.html +22 -0
- ledger/templates/ledger/partials/view-character-planetary/storage-table.html +23 -0
- ledger/templates/ledger/partials/{administration → view-corporation-administration}/corporation.html +5 -13
- ledger/templates/ledger/partials/{administration → view-corporation-administration}/corporation_characters.html +1 -1
- ledger/templates/ledger/partials/view-corporation-administration/dashboard.html +81 -0
- ledger/templates/ledger/partials/view-corporation-ledger/corporation-billboard.html +25 -0
- ledger/templates/ledger/partials/view-corporation-ledger/corporation-ledger-details.html +21 -0
- ledger/templates/ledger/partials/view-corporation-ledger/corporation-table.html +26 -0
- ledger/templates/ledger/partials/view-corporation-ledger/information/daily.html +18 -0
- ledger/templates/ledger/partials/view-corporation-ledger/information/hourly.html +18 -0
- ledger/templates/ledger/partials/view-corporation-ledger/information/summary.html +19 -0
- ledger/templates/ledger/view-administration.html +62 -0
- ledger/templates/ledger/view-alliance-administration.html +49 -0
- ledger/templates/ledger/view-alliance-ledger.html +72 -0
- ledger/templates/ledger/view-alliance-overview.html +131 -0
- ledger/templates/ledger/view-character-administration.html +42 -0
- ledger/templates/ledger/view-character-ledger.html +73 -0
- ledger/templates/ledger/view-character-overview.html +135 -0
- ledger/templates/ledger/view-character-planetary-overview.html +135 -0
- ledger/templates/ledger/view-character-planetary.html +73 -0
- ledger/templates/ledger/view-corporation-administration.html +42 -0
- ledger/templates/ledger/view-corporation-ledger.html +73 -0
- ledger/templates/ledger/view-corporation-overview.html +131 -0
- ledger/templatetags/ledger.py +3 -5
- ledger/tests/__init__.py +187 -0
- ledger/tests/test_admin.py +164 -68
- ledger/tests/test_auth_hook.py +31 -13
- ledger/tests/test_decarators.py +14 -79
- ledger/tests/test_discord_installed.py +0 -1
- ledger/tests/test_helpers/test_ledger_data.py +19 -0
- ledger/tests/test_managers/test_character_audit_manager.py +111 -69
- ledger/tests/test_managers/test_character_journal_manager.py +48 -208
- ledger/tests/test_managers/test_character_mining_manager.py +37 -16
- ledger/tests/test_managers/test_corporation_division_manager.py +66 -28
- ledger/tests/test_managers/test_corporation_journal_manager.py +39 -42
- ledger/tests/test_managers/test_general_manager.py +78 -18
- ledger/tests/test_managers/test_planetary_manager.py +73 -32
- ledger/tests/test_models/test_characteraudit.py +58 -74
- ledger/tests/test_models/test_characterminingledger.py +20 -26
- ledger/tests/test_models/test_characterwalletjournal.py +10 -33
- ledger/tests/test_models/test_corporationaudit.py +41 -35
- ledger/tests/test_models/test_corporationwalletjournal.py +35 -32
- ledger/tests/test_models/test_general.py +44 -11
- ledger/tests/test_models/test_planetary.py +14 -80
- ledger/tests/test_templatetags.py +2 -7
- ledger/tests/test_views/corporation/test_add_corp.py +16 -35
- ledger/tests/test_views/corporation/test_delete_corporation.py +66 -42
- ledger/tests/test_views/test_access.py +512 -545
- ledger/tests/test_views/test_add_ally.py +57 -46
- ledger/tests/test_views/test_add_char.py +21 -33
- ledger/tests/test_views/test_delete_character.py +24 -21
- ledger/tests/testdata/README_ESI_STUB.md +430 -0
- ledger/tests/testdata/esi_stub_openapi.py +511 -0
- ledger/tests/testdata/integrations/__init__.py +0 -0
- ledger/tests/testdata/{load_eveuniverse.py → integrations/eveuniverse.py} +0 -1
- ledger/tests/testdata/integrations/planetary.py +13 -0
- ledger/tests/testdata/json/factory.json +281 -0
- ledger/tests/testdata/json/inactive.json +281 -0
- ledger/tests/testdata/json/pins.json +175 -272
- ledger/tests/testdata/json/route.json +95 -528
- ledger/tests/testdata/test_esi_stub.py +468 -0
- ledger/tests/testdata/utils.py +601 -0
- ledger/thirdparty/charlink_hook.py +60 -30
- ledger/urls.py +0 -135
- ledger/views/alliance/add_ally.py +2 -4
- ledger/views/alliance/alliance_ledger.py +64 -147
- ledger/views/character/add_char.py +8 -10
- ledger/views/character/character_ledger.py +60 -126
- ledger/views/character/planetary.py +5 -98
- ledger/views/corporation/add_corp.py +10 -12
- ledger/views/corporation/corporation_ledger.py +65 -327
- ledger/views/index.py +92 -30
- aa_ledger-1.0.3.dist-info/RECORD +0 -236
- ledger/api/api_helper/planetary_helper.py +0 -107
- ledger/api/ledger/__init__.py +0 -7
- ledger/api/ledger/planetary.py +0 -231
- ledger/helpers/alliance.py +0 -317
- ledger/helpers/character.py +0 -251
- ledger/helpers/core.py +0 -665
- ledger/helpers/corporation.py +0 -427
- ledger/helpers/data_exporter.py +0 -452
- ledger/static/ledger/js/planetary-confirm.js +0 -66
- ledger/static/ledger/js/planetary.js +0 -143
- ledger/templates/ledger/admin.html +0 -43
- ledger/templates/ledger/allyledger/admin/alliance_administration.html +0 -46
- ledger/templates/ledger/allyledger/admin/alliance_overview.html +0 -108
- ledger/templates/ledger/allyledger/alliance_ledger.html +0 -86
- ledger/templates/ledger/bundles/character-ledger-bundles.html +0 -66
- ledger/templates/ledger/bundles/corporation-ledger-bundles.html +0 -75
- ledger/templates/ledger/bundles/ledger-bundles.html +0 -23
- ledger/templates/ledger/bundles/ledger-css.html +0 -3
- ledger/templates/ledger/bundles/planetary-bundles.html +0 -50
- ledger/templates/ledger/bundles/table-css.html +0 -3
- ledger/templates/ledger/charledger/admin/character_administration.html +0 -39
- ledger/templates/ledger/charledger/admin/character_overview.html +0 -106
- ledger/templates/ledger/charledger/character_ledger.html +0 -94
- ledger/templates/ledger/charledger/planetary/admin/planetary_overview.html +0 -123
- ledger/templates/ledger/charledger/planetary/planetary_ledger.html +0 -54
- ledger/templates/ledger/corpledger/admin/corporation_administration.html +0 -39
- ledger/templates/ledger/corpledger/admin/corporation_overview.html +0 -108
- ledger/templates/ledger/corpledger/corporation_ledger.html +0 -129
- ledger/templates/ledger/data-export.html +0 -78
- ledger/templates/ledger/error.html +0 -31
- ledger/templates/ledger/partials/form/error-message.html +0 -1
- ledger/templates/ledger/partials/information/daily.html +0 -56
- ledger/templates/ledger/partials/information/day.html +0 -48
- ledger/templates/ledger/partials/information/error.html +0 -8
- ledger/templates/ledger/partials/information/hourly.html +0 -53
- ledger/templates/ledger/partials/information/summary.html +0 -88
- ledger/templates/ledger/partials/information/view_character_content.html +0 -35
- ledger/templates/ledger/partials/modal/switchalarm_confirm.html +0 -39
- ledger/templates/ledger/partials/modal/view_extractor.html +0 -48
- ledger/templates/ledger/partials/modal/view_factory.html +0 -123
- ledger/templates/ledger/partials/table/char-ledger.html +0 -85
- ledger/templates/ledger/partials/table/corp-ledger.html +0 -66
- ledger/templates/ledger/partials/table/planetary.html +0 -18
- ledger/templates/ledger/partials/thirdparty/billboard.html +0 -22
- ledger/templates/ledger/partials/view/card.html +0 -160
- ledger/templates/ledger/permission.html +0 -2
- ledger/tests/test_helpers/test_billboard.py +0 -11
- ledger/tests/test_helpers/test_data_exporter.py +0 -207
- ledger/tests/test_tasks.py +0 -282
- ledger/tests/test_view_helpers/test_core.py +0 -47
- ledger/tests/test_views/corporation/test_corporation.py +0 -267
- ledger/tests/test_views/test_planetary.py +0 -137
- ledger/tests/testdata/esi_stub.py +0 -109
- ledger/tests/testdata/esi_stub_migration.py +0 -80
- ledger/tests/testdata/generate_characteraudit.py +0 -106
- ledger/tests/testdata/generate_corporationaudit.py +0 -74
- ledger/tests/testdata/generate_events.py +0 -31
- ledger/tests/testdata/generate_miningledger.py +0 -13
- ledger/tests/testdata/generate_planets.py +0 -48
- ledger/tests/testdata/generate_walletjournal.py +0 -42
- ledger/tests/testdata/json/czarno-pins.json +0 -240
- ledger/tests/testdata/json/czarno-routes.json +0 -165
- ledger/tests/testdata/json/pins2.json +0 -538
- {aa_ledger-1.0.3.dist-info → aa_ledger-2.0.0.dist-info}/licenses/LICENSE +0 -0
- /ledger/{tests/test_view_helpers → api/helpers}/__init__.py +0 -0
- /ledger/templates/ledger/bundles/{ally-administration-bundles.html → view-alliance-administration-js.html} +0 -0
- /ledger/templates/ledger/bundles/{char-administration-bundles.html → view-character-administration-js.html} +0 -0
- /ledger/templates/ledger/bundles/{corp-administration-bundles.html → view-corporation-administration-js.html} +0 -0
- /ledger/templates/ledger/partials/{administration → view-alliance-administration}/alliance.html +0 -0
- /ledger/tests/testdata/{esi.json → esi_test_data.json} +0 -0
- /ledger/tests/testdata/{allianceauth.json → integrations/allianceauth.json} +0 -0
- /ledger/tests/testdata/{load_allianceauth.py → integrations/allianceauth.py} +0 -0
- /ledger/tests/testdata/{eveentity.json → integrations/eveentity.json} +0 -0
- /ledger/tests/testdata/{load_eveentity.py → integrations/eveentity.py} +0 -0
- /ledger/tests/testdata/{eveuniverse.json → integrations/eveuniverse.json} +0 -0
- /ledger/tests/testdata/{planetary.json → integrations/planetary.json} +0 -0
|
@@ -1,21 +1,30 @@
|
|
|
1
|
+
# Standard Library
|
|
2
|
+
from typing import TYPE_CHECKING
|
|
3
|
+
|
|
1
4
|
# Django
|
|
2
5
|
from django.db import models
|
|
3
6
|
from django.db.models import Case, Count, Q, Value, When
|
|
4
7
|
|
|
5
8
|
# Alliance Auth
|
|
9
|
+
from allianceauth.authentication.models import User
|
|
6
10
|
from allianceauth.services.hooks import get_extension_logger
|
|
7
11
|
|
|
8
|
-
# Alliance Auth (External Libs)
|
|
9
|
-
from app_utils.logging import LoggerAddTag
|
|
10
|
-
|
|
11
12
|
# AA Ledger
|
|
12
13
|
from ledger import __title__
|
|
14
|
+
from ledger.models.helpers.update_manager import CorporationUpdateSection, UpdateStatus
|
|
15
|
+
from ledger.providers import AppLogger
|
|
13
16
|
|
|
14
|
-
logger =
|
|
17
|
+
logger = AppLogger(get_extension_logger(__name__), __title__)
|
|
15
18
|
|
|
19
|
+
if TYPE_CHECKING:
|
|
20
|
+
# AA Ledger
|
|
21
|
+
from ledger.models.corporationaudit import (
|
|
22
|
+
CorporationOwner as CorporationAuditContext,
|
|
23
|
+
)
|
|
16
24
|
|
|
17
|
-
|
|
18
|
-
|
|
25
|
+
|
|
26
|
+
class CorporationAuditQuerySet(models.QuerySet["CorporationAuditContext"]):
|
|
27
|
+
def visible_to(self, user: User):
|
|
19
28
|
"""Returns a queryset of all corps visible to the user."""
|
|
20
29
|
if user.is_superuser:
|
|
21
30
|
logger.debug(
|
|
@@ -38,7 +47,7 @@ class CorporationAuditQuerySet(models.QuerySet):
|
|
|
38
47
|
corp_ids = char.character_ownership.user.character_ownerships.all().values_list(
|
|
39
48
|
"character__corporation_id", flat=True
|
|
40
49
|
)
|
|
41
|
-
queries.append(models.Q(
|
|
50
|
+
queries.append(models.Q(eve_corporation__corporation_id__in=corp_ids))
|
|
42
51
|
|
|
43
52
|
logger.debug("%s queries for User %s.", len(queries), user)
|
|
44
53
|
|
|
@@ -53,7 +62,7 @@ class CorporationAuditQuerySet(models.QuerySet):
|
|
|
53
62
|
logger.debug("User %s has no main character. Nothing visible.", user)
|
|
54
63
|
return self.none()
|
|
55
64
|
|
|
56
|
-
def manage_to(self, user):
|
|
65
|
+
def manage_to(self, user: User):
|
|
57
66
|
"""Return all corps that the user can manage."""
|
|
58
67
|
if user.is_superuser:
|
|
59
68
|
logger.debug(
|
|
@@ -76,7 +85,7 @@ class CorporationAuditQuerySet(models.QuerySet):
|
|
|
76
85
|
corp_ids = char.character_ownership.user.character_ownerships.all().values_list(
|
|
77
86
|
"character__corporation_id", flat=True
|
|
78
87
|
)
|
|
79
|
-
queries.append(models.Q(
|
|
88
|
+
queries.append(models.Q(eve_corporation__corporation_id__in=corp_ids))
|
|
80
89
|
|
|
81
90
|
logger.debug("%s queries for User %s.", len(queries), user)
|
|
82
91
|
|
|
@@ -91,18 +100,14 @@ class CorporationAuditQuerySet(models.QuerySet):
|
|
|
91
100
|
logger.debug("User %s has no main character. Nothing visible.", user)
|
|
92
101
|
return self.none()
|
|
93
102
|
|
|
94
|
-
def annotate_total_update_status_user(self, user):
|
|
103
|
+
def annotate_total_update_status_user(self, user: User):
|
|
95
104
|
"""Get the total update status for the given user."""
|
|
96
105
|
# TODO: implement this method if needed
|
|
97
106
|
return user
|
|
98
107
|
|
|
99
108
|
def annotate_total_update_status(self):
|
|
100
109
|
"""Get the total update status."""
|
|
101
|
-
|
|
102
|
-
# AA Ledger
|
|
103
|
-
from ledger.models.corporationaudit import CorporationAudit
|
|
104
|
-
|
|
105
|
-
sections = CorporationAudit.UpdateSection.get_sections()
|
|
110
|
+
sections = CorporationUpdateSection.get_sections()
|
|
106
111
|
num_sections_total = len(sections)
|
|
107
112
|
qs = (
|
|
108
113
|
self.annotate(
|
|
@@ -143,25 +148,25 @@ class CorporationAuditQuerySet(models.QuerySet):
|
|
|
143
148
|
total_update_status=Case(
|
|
144
149
|
When(
|
|
145
150
|
active=False,
|
|
146
|
-
then=Value(
|
|
151
|
+
then=Value(UpdateStatus.DISABLED),
|
|
147
152
|
),
|
|
148
153
|
When(
|
|
149
154
|
num_sections_token_error=1,
|
|
150
|
-
then=Value(
|
|
155
|
+
then=Value(UpdateStatus.TOKEN_ERROR),
|
|
151
156
|
),
|
|
152
157
|
When(
|
|
153
158
|
num_sections_failed__gt=0,
|
|
154
|
-
then=Value(
|
|
159
|
+
then=Value(UpdateStatus.ERROR),
|
|
155
160
|
),
|
|
156
161
|
When(
|
|
157
162
|
num_sections_ok=num_sections_total,
|
|
158
|
-
then=Value(
|
|
163
|
+
then=Value(UpdateStatus.OK),
|
|
159
164
|
),
|
|
160
165
|
When(
|
|
161
166
|
num_sections_total__lt=num_sections_total,
|
|
162
|
-
then=Value(
|
|
167
|
+
then=Value(UpdateStatus.INCOMPLETE),
|
|
163
168
|
),
|
|
164
|
-
default=Value(
|
|
169
|
+
default=Value(UpdateStatus.IN_PROGRESS),
|
|
165
170
|
)
|
|
166
171
|
)
|
|
167
172
|
)
|
|
@@ -169,14 +174,18 @@ class CorporationAuditQuerySet(models.QuerySet):
|
|
|
169
174
|
return qs
|
|
170
175
|
|
|
171
176
|
|
|
172
|
-
class
|
|
177
|
+
class CorporationAuditManager(models.Manager["CorporationAuditContext"]):
|
|
178
|
+
def get_queryset(self) -> CorporationAuditQuerySet:
|
|
179
|
+
return CorporationAuditQuerySet(self.model, using=self._db)
|
|
180
|
+
|
|
181
|
+
def annotate_total_update_status_user(self, user: User):
|
|
182
|
+
return self.get_queryset().annotate_total_update_status_user(user)
|
|
183
|
+
|
|
184
|
+
def annotate_total_update_status(self):
|
|
185
|
+
return self.get_queryset().annotate_total_update_status()
|
|
186
|
+
|
|
173
187
|
def visible_to(self, user):
|
|
174
188
|
return self.get_queryset().visible_to(user)
|
|
175
189
|
|
|
176
190
|
def manage_to(self, user):
|
|
177
191
|
return self.get_queryset().manage_to(user)
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
CorporationAuditManager = CorporationAuditManagerBase.from_queryset(
|
|
181
|
-
CorporationAuditQuerySet
|
|
182
|
-
)
|
|
@@ -11,31 +11,31 @@ from django.utils.translation import gettext_lazy as _
|
|
|
11
11
|
from allianceauth.services.hooks import get_extension_logger
|
|
12
12
|
from esi.exceptions import HTTPNotModified
|
|
13
13
|
|
|
14
|
-
# Alliance Auth (External Libs)
|
|
15
|
-
from app_utils.logging import LoggerAddTag
|
|
16
|
-
|
|
17
14
|
# AA Ledger
|
|
18
15
|
from ledger import __title__
|
|
16
|
+
from ledger.app_settings import LEDGER_BULK_BATCH_SIZE
|
|
19
17
|
from ledger.decorators import log_timing
|
|
20
18
|
from ledger.errors import DatabaseError
|
|
21
19
|
from ledger.helpers.ref_type import RefTypeManager
|
|
22
20
|
from ledger.models.general import EveEntity
|
|
23
|
-
from ledger.
|
|
21
|
+
from ledger.models.helpers.update_manager import CorporationUpdateSection
|
|
22
|
+
from ledger.providers import AppLogger, esi
|
|
24
23
|
|
|
25
24
|
if TYPE_CHECKING:
|
|
26
25
|
# Alliance Auth
|
|
27
|
-
from esi.stubs import CorporationsCorporationIdDivisionsGet as
|
|
26
|
+
from esi.stubs import CorporationsCorporationIdDivisionsGet as DivisionsContext
|
|
28
27
|
from esi.stubs import (
|
|
29
|
-
CorporationsCorporationIdWalletsDivisionJournalGetItem as
|
|
28
|
+
CorporationsCorporationIdWalletsDivisionJournalGetItem as DivisionJournalContext,
|
|
30
29
|
)
|
|
30
|
+
from esi.stubs import CorporationsCorporationIdWalletsGetItem as WalletsGetContext
|
|
31
31
|
|
|
32
32
|
# AA Ledger
|
|
33
33
|
from ledger.models.corporationaudit import (
|
|
34
|
-
|
|
34
|
+
CorporationOwner,
|
|
35
35
|
CorporationWalletDivision,
|
|
36
36
|
)
|
|
37
37
|
|
|
38
|
-
logger =
|
|
38
|
+
logger = AppLogger(get_extension_logger(__name__), __title__)
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
class CorporationWalletQuerySet(models.QuerySet):
|
|
@@ -72,7 +72,9 @@ class CorporationWalletQuerySet(models.QuerySet):
|
|
|
72
72
|
miscellaneous=Coalesce(
|
|
73
73
|
Sum(
|
|
74
74
|
"amount",
|
|
75
|
-
filter=Q(
|
|
75
|
+
filter=Q(
|
|
76
|
+
ref_type__in=RefTypeManager.ledger_ref_types(), amount__gt=0
|
|
77
|
+
),
|
|
76
78
|
),
|
|
77
79
|
Value(0),
|
|
78
80
|
output_field=DecimalField(),
|
|
@@ -84,7 +86,9 @@ class CorporationWalletQuerySet(models.QuerySet):
|
|
|
84
86
|
costs=Coalesce(
|
|
85
87
|
Sum(
|
|
86
88
|
"amount",
|
|
87
|
-
filter=Q(
|
|
89
|
+
filter=Q(
|
|
90
|
+
ref_type__in=RefTypeManager.ledger_ref_types(), amount__lt=0
|
|
91
|
+
),
|
|
88
92
|
),
|
|
89
93
|
Value(0),
|
|
90
94
|
output_field=DecimalField(),
|
|
@@ -106,7 +110,7 @@ class CorporationWalletQuerySet(models.QuerySet):
|
|
|
106
110
|
def aggregate_miscellaneous(self) -> dict:
|
|
107
111
|
"""Aggregate miscellaneous income (nur positive Beträge)."""
|
|
108
112
|
return self.filter(
|
|
109
|
-
ref_type__in=RefTypeManager.
|
|
113
|
+
ref_type__in=RefTypeManager.ledger_ref_types(), amount__gt=0
|
|
110
114
|
).aggregate(
|
|
111
115
|
total_misc=Coalesce(Sum("amount"), Value(0), output_field=DecimalField())
|
|
112
116
|
)[
|
|
@@ -116,7 +120,7 @@ class CorporationWalletQuerySet(models.QuerySet):
|
|
|
116
120
|
def aggregate_costs(self) -> dict:
|
|
117
121
|
"""Aggregate costs."""
|
|
118
122
|
return self.filter(
|
|
119
|
-
ref_type__in=RefTypeManager.
|
|
123
|
+
ref_type__in=RefTypeManager.ledger_ref_types(), amount__lt=0
|
|
120
124
|
).aggregate(
|
|
121
125
|
total_costs=Coalesce(Sum("amount"), Value(0), output_field=DecimalField())
|
|
122
126
|
)[
|
|
@@ -159,20 +163,67 @@ class CorporationWalletQuerySet(models.QuerySet):
|
|
|
159
163
|
)["total"]
|
|
160
164
|
|
|
161
165
|
|
|
162
|
-
class
|
|
166
|
+
class CorporationWalletManager(models.Manager):
|
|
167
|
+
def get_queryset(self) -> CorporationWalletQuerySet:
|
|
168
|
+
return CorporationWalletQuerySet(self.model, using=self._db)
|
|
169
|
+
|
|
170
|
+
def annotate_bounty_income(
|
|
171
|
+
self,
|
|
172
|
+
) -> CorporationWalletQuerySet:
|
|
173
|
+
return self.get_queryset().annotate_bounty_income()
|
|
174
|
+
|
|
175
|
+
def annotate_ess_income(self) -> CorporationWalletQuerySet:
|
|
176
|
+
return self.get_queryset().annotate_ess_income()
|
|
177
|
+
|
|
178
|
+
def annotate_miscellaneous(self) -> CorporationWalletQuerySet:
|
|
179
|
+
return self.get_queryset().annotate_miscellaneous()
|
|
180
|
+
|
|
181
|
+
def annotate_costs(self) -> CorporationWalletQuerySet:
|
|
182
|
+
return self.get_queryset().annotate_costs()
|
|
183
|
+
|
|
184
|
+
def aggregate_bounty(self) -> dict:
|
|
185
|
+
"""Aggregate bounty income."""
|
|
186
|
+
return self.get_queryset().aggregate_bounty()
|
|
187
|
+
|
|
188
|
+
def aggregate_ess(self) -> dict:
|
|
189
|
+
"""Aggregate ESS income."""
|
|
190
|
+
return self.get_queryset().aggregate_ess()
|
|
191
|
+
|
|
192
|
+
def aggregate_miscellaneous(self) -> dict:
|
|
193
|
+
"""Aggregate miscellaneous income (nur positive Beträge)."""
|
|
194
|
+
return self.get_queryset().aggregate_miscellaneous()
|
|
195
|
+
|
|
196
|
+
def aggregate_costs(self) -> dict:
|
|
197
|
+
"""Aggregate costs."""
|
|
198
|
+
return self.get_queryset().aggregate_costs()
|
|
199
|
+
|
|
200
|
+
# pylint: disable=too-many-positional-arguments
|
|
201
|
+
def aggregate_ref_type(
|
|
202
|
+
self,
|
|
203
|
+
ref_type: list,
|
|
204
|
+
first_party=None,
|
|
205
|
+
second_party=None,
|
|
206
|
+
exclude=None,
|
|
207
|
+
income: bool = False,
|
|
208
|
+
) -> dict:
|
|
209
|
+
"""Aggregate income by ref_type."""
|
|
210
|
+
return self.get_queryset().aggregate_ref_type(
|
|
211
|
+
ref_type, first_party, second_party, exclude, income
|
|
212
|
+
)
|
|
213
|
+
|
|
163
214
|
@log_timing(logger)
|
|
164
215
|
def update_or_create_esi(
|
|
165
|
-
self,
|
|
216
|
+
self, owner: "CorporationOwner", force_refresh: bool = False
|
|
166
217
|
) -> None:
|
|
167
218
|
"""Update or Create a wallet journal entry from ESI data."""
|
|
168
|
-
return
|
|
169
|
-
section=
|
|
219
|
+
return owner.update_manager.update_section_if_changed(
|
|
220
|
+
section=CorporationUpdateSection.WALLET_JOURNAL,
|
|
170
221
|
fetch_func=self._fetch_esi_data,
|
|
171
222
|
force_refresh=force_refresh,
|
|
172
223
|
)
|
|
173
224
|
|
|
174
225
|
def _fetch_esi_data(
|
|
175
|
-
self,
|
|
226
|
+
self, owner: "CorporationOwner", force_refresh: bool = False
|
|
176
227
|
) -> None:
|
|
177
228
|
"""Fetch wallet journal entries from ESI data."""
|
|
178
229
|
# AA Ledger
|
|
@@ -185,16 +236,16 @@ class CorporationWalletManagerBase(models.Manager):
|
|
|
185
236
|
]
|
|
186
237
|
req_roles = ["CEO", "Director", "Accountant", "Junior_Accountant"]
|
|
187
238
|
|
|
188
|
-
token =
|
|
239
|
+
token = owner.get_token(scopes=req_scopes, req_roles=req_roles)
|
|
189
240
|
|
|
190
|
-
divisions = CorporationWalletDivision.objects.filter(corporation=
|
|
241
|
+
divisions = CorporationWalletDivision.objects.filter(corporation=owner)
|
|
191
242
|
is_updated = False
|
|
192
243
|
|
|
193
244
|
for division in divisions:
|
|
194
245
|
# Make the ESI request
|
|
195
246
|
operation = (
|
|
196
247
|
esi.client.Wallet.GetCorporationsCorporationIdWalletsDivisionJournal(
|
|
197
|
-
corporation_id=
|
|
248
|
+
corporation_id=owner.eve_corporation.corporation_id,
|
|
198
249
|
division=division.division_id,
|
|
199
250
|
token=token,
|
|
200
251
|
)
|
|
@@ -216,7 +267,7 @@ class CorporationWalletManagerBase(models.Manager):
|
|
|
216
267
|
def _update_or_create_objs(
|
|
217
268
|
self,
|
|
218
269
|
division: "CorporationWalletDivision",
|
|
219
|
-
objs: list["
|
|
270
|
+
objs: list["DivisionJournalContext"],
|
|
220
271
|
) -> None:
|
|
221
272
|
"""Update or Create wallet journal entries from objs data."""
|
|
222
273
|
_new_names = []
|
|
@@ -264,7 +315,7 @@ class CorporationWalletManagerBase(models.Manager):
|
|
|
264
315
|
created_names = EveEntity.objects.create_bulk_from_esi(_new_names)
|
|
265
316
|
|
|
266
317
|
if created_names:
|
|
267
|
-
self.bulk_create(items)
|
|
318
|
+
self.bulk_create(items, batch_size=LEDGER_BULK_BATCH_SIZE)
|
|
268
319
|
else:
|
|
269
320
|
raise DatabaseError("DB Fail")
|
|
270
321
|
|
|
@@ -275,29 +326,20 @@ class CorporationWalletManagerBase(models.Manager):
|
|
|
275
326
|
)
|
|
276
327
|
|
|
277
328
|
|
|
278
|
-
|
|
279
|
-
CorporationWalletQuerySet
|
|
280
|
-
)
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
class CorporationDivisionQuerySet(models.QuerySet):
|
|
284
|
-
pass
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
class CorporationDivisionManagerBase(models.Manager):
|
|
329
|
+
class CorporationDivisionManager(models.Manager):
|
|
288
330
|
@log_timing(logger)
|
|
289
331
|
def update_or_create_esi(
|
|
290
|
-
self,
|
|
332
|
+
self, owner: "CorporationOwner", force_refresh: bool = False
|
|
291
333
|
) -> None:
|
|
292
334
|
"""Update or Create a division entry from ESI data."""
|
|
293
|
-
return
|
|
294
|
-
section=
|
|
335
|
+
return owner.update_manager.update_section_if_changed(
|
|
336
|
+
section=CorporationUpdateSection.WALLET_DIVISION,
|
|
295
337
|
fetch_func=self._fetch_esi_data,
|
|
296
338
|
force_refresh=force_refresh,
|
|
297
339
|
)
|
|
298
340
|
|
|
299
341
|
def _fetch_esi_data(
|
|
300
|
-
self,
|
|
342
|
+
self, owner: "CorporationOwner", force_refresh: bool = False
|
|
301
343
|
) -> None:
|
|
302
344
|
"""Fetch division entries from ESI data."""
|
|
303
345
|
req_scopes = [
|
|
@@ -306,52 +348,52 @@ class CorporationDivisionManagerBase(models.Manager):
|
|
|
306
348
|
"esi-corporations.read_divisions.v1",
|
|
307
349
|
]
|
|
308
350
|
req_roles = ["CEO", "Director", "Accountant", "Junior_Accountant"]
|
|
309
|
-
token =
|
|
351
|
+
token = owner.get_token(scopes=req_scopes, req_roles=req_roles)
|
|
310
352
|
|
|
311
353
|
# Make the ESI request
|
|
312
354
|
operation = esi.client.Wallet.GetCorporationsCorporationIdWallets(
|
|
313
|
-
corporation_id=
|
|
355
|
+
corporation_id=owner.eve_corporation.corporation_id,
|
|
314
356
|
token=token,
|
|
315
357
|
)
|
|
316
358
|
division_items = operation.results(force_refresh=force_refresh)
|
|
317
359
|
|
|
318
|
-
self._update_or_create_objs(
|
|
360
|
+
self._update_or_create_objs(owner=owner, objs=division_items)
|
|
319
361
|
|
|
320
362
|
@log_timing(logger)
|
|
321
363
|
def update_or_create_esi_names(
|
|
322
|
-
self,
|
|
364
|
+
self, owner: "CorporationOwner", force_refresh: bool = False
|
|
323
365
|
) -> None:
|
|
324
366
|
"""Update or Create a division entry from ESI data."""
|
|
325
|
-
return
|
|
326
|
-
section=
|
|
367
|
+
return owner.update_manager.update_section_if_changed(
|
|
368
|
+
section=CorporationUpdateSection.WALLET_DIVISION_NAMES,
|
|
327
369
|
fetch_func=self._fetch_esi_data_names,
|
|
328
370
|
force_refresh=force_refresh,
|
|
329
371
|
)
|
|
330
372
|
|
|
331
373
|
def _fetch_esi_data_names(
|
|
332
|
-
self,
|
|
374
|
+
self, owner: "CorporationOwner", force_refresh: bool = False
|
|
333
375
|
) -> None:
|
|
334
376
|
"""Fetch division entries from ESI data."""
|
|
335
377
|
req_scopes = [
|
|
336
378
|
"esi-corporations.read_divisions.v1",
|
|
337
379
|
]
|
|
338
380
|
req_roles = ["CEO", "Director"]
|
|
339
|
-
token =
|
|
381
|
+
token = owner.get_token(scopes=req_scopes, req_roles=req_roles)
|
|
340
382
|
|
|
341
383
|
# Make the ESI request
|
|
342
384
|
operation = esi.client.Corporation.GetCorporationsCorporationIdDivisions(
|
|
343
|
-
corporation_id=
|
|
385
|
+
corporation_id=owner.eve_corporation.corporation_id,
|
|
344
386
|
token=token,
|
|
345
387
|
)
|
|
346
388
|
division_items = operation.results(force_refresh=force_refresh)
|
|
347
389
|
|
|
348
|
-
self._update_or_create_objs_division(
|
|
390
|
+
self._update_or_create_objs_division(owner=owner, objs=division_items)
|
|
349
391
|
|
|
350
392
|
@transaction.atomic()
|
|
351
393
|
def _update_or_create_objs_division(
|
|
352
394
|
self,
|
|
353
|
-
|
|
354
|
-
objs: list["
|
|
395
|
+
owner: "CorporationOwner",
|
|
396
|
+
objs: list["DivisionsContext"],
|
|
355
397
|
) -> None:
|
|
356
398
|
"""Update or Create division entries from objs data."""
|
|
357
399
|
for division in objs: # list (hanger, wallet)
|
|
@@ -362,7 +404,7 @@ class CorporationDivisionManagerBase(models.Manager):
|
|
|
362
404
|
name = getattr(wallet, "name", _("Unknown"))
|
|
363
405
|
|
|
364
406
|
obj, created = self.get_or_create(
|
|
365
|
-
corporation=
|
|
407
|
+
corporation=owner,
|
|
366
408
|
division_id=wallet.division,
|
|
367
409
|
defaults={"balance": 0, "name": name},
|
|
368
410
|
)
|
|
@@ -373,13 +415,13 @@ class CorporationDivisionManagerBase(models.Manager):
|
|
|
373
415
|
@transaction.atomic()
|
|
374
416
|
def _update_or_create_objs(
|
|
375
417
|
self,
|
|
376
|
-
|
|
377
|
-
objs: list,
|
|
418
|
+
owner: "CorporationOwner",
|
|
419
|
+
objs: list["WalletsGetContext"],
|
|
378
420
|
) -> None:
|
|
379
421
|
"""Update or Create division entries from objs data."""
|
|
380
422
|
for division in objs:
|
|
381
423
|
obj, created = self.get_or_create(
|
|
382
|
-
corporation=
|
|
424
|
+
corporation=owner,
|
|
383
425
|
division_id=division.division,
|
|
384
426
|
defaults={
|
|
385
427
|
"balance": division.balance,
|
|
@@ -390,8 +432,3 @@ class CorporationDivisionManagerBase(models.Manager):
|
|
|
390
432
|
if not created:
|
|
391
433
|
obj.balance = division.balance
|
|
392
434
|
obj.save()
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
CorporationDivisionManager = CorporationDivisionManagerBase.from_queryset(
|
|
396
|
-
CorporationDivisionQuerySet
|
|
397
|
-
)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# Standard Library
|
|
2
|
-
from typing import Any
|
|
2
|
+
from typing import TYPE_CHECKING, Any
|
|
3
3
|
|
|
4
4
|
# Django
|
|
5
5
|
from django.db import models
|
|
@@ -8,17 +8,19 @@ from django.db import models
|
|
|
8
8
|
from allianceauth.eveonline.providers import ObjectNotFound
|
|
9
9
|
from allianceauth.services.hooks import get_extension_logger
|
|
10
10
|
|
|
11
|
-
# Alliance Auth (External Libs)
|
|
12
|
-
from app_utils.logging import LoggerAddTag
|
|
13
|
-
|
|
14
11
|
# AA Ledger
|
|
15
12
|
from ledger import __title__
|
|
16
|
-
from ledger.
|
|
13
|
+
from ledger.app_settings import LEDGER_BULK_BATCH_SIZE
|
|
14
|
+
from ledger.providers import AppLogger, esi
|
|
15
|
+
|
|
16
|
+
logger = AppLogger(get_extension_logger(__name__), __title__)
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
if TYPE_CHECKING:
|
|
19
|
+
# AA Ledger
|
|
20
|
+
from ledger.models.general import EveEntity as EveEntityContext
|
|
19
21
|
|
|
20
22
|
|
|
21
|
-
class EveEntityManager(models.Manager):
|
|
23
|
+
class EveEntityManager(models.Manager["EveEntityContext"]):
|
|
22
24
|
def get_or_create_esi(self, *, eve_id: int) -> tuple[Any, bool]:
|
|
23
25
|
"""gets or creates entity object with data fetched from ESI"""
|
|
24
26
|
# pylint: disable=import-outside-toplevel
|
|
@@ -58,7 +60,9 @@ class EveEntityManager(models.Manager):
|
|
|
58
60
|
category=entity.category,
|
|
59
61
|
)
|
|
60
62
|
)
|
|
61
|
-
EveEntity.objects.bulk_create(
|
|
63
|
+
EveEntity.objects.bulk_create(
|
|
64
|
+
new_names, batch_size=LEDGER_BULK_BATCH_SIZE, ignore_conflicts=True
|
|
65
|
+
)
|
|
62
66
|
return True
|
|
63
67
|
return True
|
|
64
68
|
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Generated by Django 4.2.26 on 2025-12-25 14:42
|
|
2
|
+
|
|
3
|
+
# Django
|
|
4
|
+
from django.db import migrations, models
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Migration(migrations.Migration):
|
|
8
|
+
|
|
9
|
+
dependencies = [
|
|
10
|
+
("ledger", "0017_alter_eveentity_category_alter_eveentity_eve_id_and_more"),
|
|
11
|
+
]
|
|
12
|
+
|
|
13
|
+
operations = [
|
|
14
|
+
migrations.RemoveIndex(
|
|
15
|
+
model_name="characterplanet",
|
|
16
|
+
name="ledger_char_planet__58a5b6_idx",
|
|
17
|
+
),
|
|
18
|
+
migrations.RenameField(
|
|
19
|
+
model_name="characterplanet",
|
|
20
|
+
old_name="planet",
|
|
21
|
+
new_name="eve_planet",
|
|
22
|
+
),
|
|
23
|
+
migrations.RenameField(
|
|
24
|
+
model_name="characterplanet",
|
|
25
|
+
old_name="planet_name",
|
|
26
|
+
new_name="name",
|
|
27
|
+
),
|
|
28
|
+
migrations.RenameField(
|
|
29
|
+
model_name="corporationaudit",
|
|
30
|
+
old_name="corporation",
|
|
31
|
+
new_name="eve_corporation",
|
|
32
|
+
),
|
|
33
|
+
migrations.AddIndex(
|
|
34
|
+
model_name="characterplanet",
|
|
35
|
+
index=models.Index(
|
|
36
|
+
fields=["eve_planet"], name="ledger_char_eve_pla_d4379e_idx"
|
|
37
|
+
),
|
|
38
|
+
),
|
|
39
|
+
migrations.RenameField(
|
|
40
|
+
model_name="characterplanetdetails",
|
|
41
|
+
old_name="facilitys",
|
|
42
|
+
new_name="factories",
|
|
43
|
+
),
|
|
44
|
+
]
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Generated by Django 4.2.26 on 2025-12-26 19:44
|
|
2
|
+
|
|
3
|
+
# Django
|
|
4
|
+
from django.db import migrations, models
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Migration(migrations.Migration):
|
|
8
|
+
|
|
9
|
+
dependencies = [
|
|
10
|
+
("eveonline", "0017_alliance_and_corp_names_are_not_unique"),
|
|
11
|
+
(
|
|
12
|
+
"ledger",
|
|
13
|
+
"0018_remove_characterplanet_ledger_char_planet__58a5b6_idx_and_more",
|
|
14
|
+
),
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
operations = [
|
|
18
|
+
migrations.RenameModel(
|
|
19
|
+
old_name="CharacterAudit",
|
|
20
|
+
new_name="CharacterOwner",
|
|
21
|
+
),
|
|
22
|
+
migrations.RenameModel(
|
|
23
|
+
old_name="CorporationAudit",
|
|
24
|
+
new_name="CorporationOwner",
|
|
25
|
+
),
|
|
26
|
+
migrations.RenameField(
|
|
27
|
+
model_name="characterupdatestatus",
|
|
28
|
+
old_name="character",
|
|
29
|
+
new_name="owner",
|
|
30
|
+
),
|
|
31
|
+
migrations.RenameField(
|
|
32
|
+
model_name="corporationupdatestatus",
|
|
33
|
+
old_name="corporation",
|
|
34
|
+
new_name="owner",
|
|
35
|
+
),
|
|
36
|
+
migrations.AddIndex(
|
|
37
|
+
model_name="characterwalletjournalentry",
|
|
38
|
+
index=models.Index(
|
|
39
|
+
fields=["character"], name="ledger_char_charact_fa27b8_idx"
|
|
40
|
+
),
|
|
41
|
+
),
|
|
42
|
+
migrations.AddIndex(
|
|
43
|
+
model_name="corporationwalletjournalentry",
|
|
44
|
+
index=models.Index(
|
|
45
|
+
fields=["division"], name="ledger_corp_divisio_6ef4ce_idx"
|
|
46
|
+
),
|
|
47
|
+
),
|
|
48
|
+
]
|
ledger/models/__init__.py
CHANGED
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
from .corporationaudit import (
|
|
7
|
-
CorporationAudit,
|
|
8
|
-
CorporationWalletDivision,
|
|
9
|
-
CorporationWalletJournalEntry,
|
|
10
|
-
)
|
|
11
|
-
from .general import EveEntity, General
|
|
1
|
+
# flake8: noqa
|
|
2
|
+
from .characteraudit import *
|
|
3
|
+
from .corporationaudit import *
|
|
4
|
+
from .general import *
|
|
5
|
+
from .planetary import *
|