diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/migrations/0230_auto_20230807_1105.py (renamed from ishtar_common/migrations/0230_auto_20230803_1648.py) | 14 | ||||
| -rw-r--r-- | ishtar_common/models_imports.py | 27 | 
2 files changed, 39 insertions, 2 deletions
| diff --git a/ishtar_common/migrations/0230_auto_20230803_1648.py b/ishtar_common/migrations/0230_auto_20230807_1105.py index 19402b5f6..9d462f393 100644 --- a/ishtar_common/migrations/0230_auto_20230803_1648.py +++ b/ishtar_common/migrations/0230_auto_20230807_1105.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.24 on 2023-08-03 16:48 +# Generated by Django 2.2.24 on 2023-08-07 11:05  import django.core.validators  from django.db import migrations, models @@ -27,6 +27,10 @@ class Migration(migrations.Migration):                  'ordering': ('name',),              },          ), +        migrations.AlterModelOptions( +            name='import', +            options={'verbose_name': 'Import - Import', 'verbose_name_plural': 'Import - Imports'}, +        ),          migrations.AddField(              model_name='importertype',              name='is_import', @@ -60,7 +64,8 @@ class Migration(migrations.Migration):                  ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='ishtar_common.IshtarUser')),              ],              options={ -                'abstract': False, +                'verbose_name': 'Import - Group', +                'verbose_name_plural': 'Import - Groups',              },          ),          migrations.CreateModel( @@ -75,4 +80,9 @@ class Migration(migrations.Migration):                  'ordering': ('group', 'order'),              },          ), +        migrations.AddField( +            model_name='import', +            name='group', +            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='ishtar_common.ImportGroup', verbose_name='Group'), +        ),      ] diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py index e9a7cf6df..76148a1a6 100644 --- a/ishtar_common/models_imports.py +++ b/ishtar_common/models_imports.py @@ -1311,6 +1311,31 @@ class ImportGroup(BaseImport):              return ""          return IMPORT_GROUP_STATE_DCT[self.state] +    def get_actions(self): +        """ +        Get available action relevant with the current status +        """ +        actions = [] +        if self.state == "C": +            actions.append(("A", _("Analyse"))) +        if self.state == "A": +            actions.append(("A", _("Re-analyse"))) +            actions.append(("I", _("Launch import"))) +        if self.state in ("F", "FE"): +            actions.append(("A", _("Re-analyse"))) +            actions.append(("I", _("Re-import"))) +            actions.append(("AC", _("Archive"))) +        if self.state == "AC": +            state = "FE" if self.error_file else "F" +            actions.append((state, _("Unarchive"))) +        if self.state in ("C", "A"): +            actions.append(("ED", _("Edit"))) +        actions.append(("D", _("Delete"))) +        return actions + +    def save(self, *args, **kwargs): +        super().save(*args, **kwargs) +  class Import(BaseImport):      importer_type = models.ForeignKey(ImporterType, on_delete=models.CASCADE, @@ -1383,6 +1408,8 @@ class Import(BaseImport):          null=True,          validators=[validate_comma_separated_integer_list],      ) +    group = models.ForeignKey(ImportGroup, blank=True, null=True, on_delete=models.CASCADE, +                              verbose_name=_("Group"), related_name="imports")      class Meta:          verbose_name = _("Import - Import") | 
