# Generated by Django 5.2.4 on 2026-04-24 15:42

from django.db import migrations
import json

def add_tt_pos_module_group(apps, schema_editor):
    TtSetting = apps.get_model("api", "TtSetting")

    setting = TtSetting.objects.filter(param="import_tables").first()
    if not setting:
        return

    try:
        tables = json.loads(setting.value)
    except Exception:
        tables = []

    table_to_add = {
        "tt_suitability",
        "tt_suitability_staff",
        "tt_suitability_location",
        "tt_activity_template_staff",
        "tt_activity_template_staff_s",
        "tt_activity_template_location",
        "tt_activity_template_location_s",
        "tt_activity_staff_preset",
        "tt_activity_staff_s",
        "tt_activity_location_preset",
        "tt_activity_location_s",
    }

    for table in table_to_add:
        if table not in tables:
            tables.append(table)
        setting.value = json.dumps(tables)
        setting.save()


def reverse_add_tt_pos_module_group(apps, schema_editor):
    TtSetting = apps.get_model("api", "TtSetting")

    setting = TtSetting.objects.filter(param="import_tables").first()
    if not setting:
        return

    try:
        tables = json.loads(setting.value)
    except Exception:
        tables = []
    table_to_add = {
        "tt_suitability",
        "tt_suitability_staff",
        "tt_suitability_location",
        "tt_activity_template_staff",
        "tt_activity_template_staff_s",
        "tt_activity_template_location",
        "tt_activity_template_location_s",
        "tt_activity_staff_preset",
        "tt_activity_staff_s",
        "tt_activity_location_preset",
        "tt_activity_location_s",
    }
    for table in table_to_add:
        if table not in tables:
            tables.remove(table)
        setting.value = json.dumps(tables)
        setting.save()

class Migration(migrations.Migration):

    dependencies = [
        ('api', '0066_alter_incomingapiemx_incoming_params_and_more'),
    ]

    operations = [
        migrations.RunPython(add_tt_pos_module_group, reverse_add_tt_pos_module_group),
    ]
