From d72964fd7c1130a72288ad6ef1bea94c259c8cbc Mon Sep 17 00:00:00 2001 From: AaronKable Date: Tue, 5 Jan 2021 22:14:52 +0800 Subject: [PATCH] Add CEO Id to Corp Eve Model --- .../0013_evecorporationinfo_ceo_id.py | 18 ++++++++++++++++++ .../migrations/0014_auto_20210105_1413.py | 17 +++++++++++++++++ allianceauth/eveonline/models.py | 7 +++++++ 3 files changed, 42 insertions(+) create mode 100644 allianceauth/eveonline/migrations/0013_evecorporationinfo_ceo_id.py create mode 100644 allianceauth/eveonline/migrations/0014_auto_20210105_1413.py diff --git a/allianceauth/eveonline/migrations/0013_evecorporationinfo_ceo_id.py b/allianceauth/eveonline/migrations/0013_evecorporationinfo_ceo_id.py new file mode 100644 index 00000000..4585f8a7 --- /dev/null +++ b/allianceauth/eveonline/migrations/0013_evecorporationinfo_ceo_id.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.1 on 2021-01-05 14:11 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('eveonline', '0012_index_additions'), + ] + + operations = [ + migrations.AddField( + model_name='evecorporationinfo', + name='ceo_id', + field=models.PositiveIntegerField(blank=True, default=None, null=True), + ), + ] diff --git a/allianceauth/eveonline/migrations/0014_auto_20210105_1413.py b/allianceauth/eveonline/migrations/0014_auto_20210105_1413.py new file mode 100644 index 00000000..173522fc --- /dev/null +++ b/allianceauth/eveonline/migrations/0014_auto_20210105_1413.py @@ -0,0 +1,17 @@ +# Generated by Django 3.1.1 on 2021-01-05 14:13 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('eveonline', '0013_evecorporationinfo_ceo_id'), + ] + + operations = [ + migrations.AddIndex( + model_name='evecorporationinfo', + index=models.Index(fields=['ceo_id'], name='eveonline_e_ceo_id_eea7b8_idx'), + ), + ] diff --git a/allianceauth/eveonline/models.py b/allianceauth/eveonline/models.py index bd703e22..9a55e4fa 100644 --- a/allianceauth/eveonline/models.py +++ b/allianceauth/eveonline/models.py @@ -82,6 +82,7 @@ class EveCorporationInfo(models.Model): corporation_name = models.CharField(max_length=254, unique=True) corporation_ticker = models.CharField(max_length=254) member_count = models.IntegerField() + ceo_id = models.PositiveIntegerField(blank=True, null=True, default=None) alliance = models.ForeignKey( EveAllianceInfo, blank=True, null=True, on_delete=models.SET_NULL ) @@ -89,10 +90,16 @@ class EveCorporationInfo(models.Model): objects = EveCorporationManager() provider = EveCorporationProviderManager() + class Meta: + indexes = [ + models.Index(fields=['ceo_id',]), + ] + def update_corporation(self, corp: providers.Corporation = None): if corp is None: corp = self.provider.get_corporation(self.corporation_id) self.member_count = corp.members + self.ceo_id = corp.ceo_id try: self.alliance = EveAllianceInfo.objects.get(alliance_id=corp.alliance_id) except EveAllianceInfo.DoesNotExist: