# Generated by Django 5.2.7 on 2025-10-27 10:50 import simple_history.models import uuid from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name="ABABehavior", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, verbose_name="Created At")), ("updated_at", models.DateTimeField(auto_now=True, verbose_name="Updated At")), ("behavior_description", models.TextField(verbose_name="Behavior Description")), ( "frequency", models.CharField( choices=[ ("HOURLY", "Hourly"), ("DAILY", "Daily"), ("WEEKLY", "Weekly"), ("LESS_THAN_WEEKLY", "Less than Weekly"), ], max_length=20, verbose_name="Frequency", ), ), ( "duration", models.CharField( blank=True, help_text="How long the behavior typically lasts", max_length=100, verbose_name="Duration", ), ), ( "intensity", models.CharField( choices=[("MILD", "Mild"), ("MODERATE", "Moderate"), ("SEVERE", "Severe")], max_length=20, verbose_name="Intensity", ), ), ( "antecedents_likely", models.TextField( blank=True, help_text="Contexts where behavior is most likely to occur", verbose_name="Antecedents (Most Likely)", ), ), ( "antecedents_least_likely", models.TextField( blank=True, help_text="Contexts where behavior is least likely to occur", verbose_name="Antecedents (Least Likely)", ), ), ( "consequences", models.TextField( blank=True, help_text="What happens after the behavior occurs", verbose_name="Consequences", ), ), ( "order", models.PositiveIntegerField( default=0, help_text="Order of behaviors in the list", verbose_name="Order" ), ), ], options={ "verbose_name": "ABA Behavior", "verbose_name_plural": "ABA Behaviors", "ordering": ["consult", "order", "created_at"], }, ), migrations.CreateModel( name="ABAConsult", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, verbose_name="Created At")), ("updated_at", models.DateTimeField(auto_now=True, verbose_name="Updated At")), ( "signed_at", models.DateTimeField(blank=True, null=True, verbose_name="Signed At"), ), ("consultation_date", models.DateField(verbose_name="Consultation Date")), ( "reason_of_referral", models.CharField( choices=[ ("DEVELOPMENTAL_DELAY", "Developmental Delay"), ("AUTISM_SPECTRUM", "Autism Spectrum Disorder"), ("BEHAVIORAL_ISSUES", "Behavioral Issues"), ("LEARNING_DIFFICULTIES", "Learning Difficulties"), ("SOCIAL_SKILLS", "Social Skills Deficits"), ("COMMUNICATION", "Communication Difficulties"), ("SELF_CARE", "Self-Care Skills"), ("OTHER", "Other"), ], max_length=50, verbose_name="Reason of Referral", ), ), ("parental_concern", models.TextField(blank=True, verbose_name="Parental Concern")), ("school_concern", models.TextField(blank=True, verbose_name="School Concern")), ( "respondents", models.CharField( blank=True, help_text="Who provided the information (e.g., mother, father, teacher)", max_length=200, verbose_name="Respondents", ), ), ( "interviewer", models.CharField(blank=True, max_length=200, verbose_name="Interviewer"), ), ( "diagnosed_condition", models.CharField( blank=True, max_length=200, verbose_name="Diagnosed Condition" ), ), ( "interaction_hours_per_day", models.PositiveIntegerField( blank=True, help_text="Hours of interaction per day", null=True, verbose_name="Interaction Hours/Day", ), ), ( "physiological_factors", models.TextField( blank=True, help_text="Physiological factors affecting behavior (e.g., sleep, appetite, medical conditions)", verbose_name="Physiological Factors", ), ), ( "medical_factors", models.TextField( blank=True, help_text="Medical factors and conditions", verbose_name="Medical Factors", ), ), ("recommendations", models.TextField(blank=True, verbose_name="Recommendations")), ], options={ "verbose_name": "ABA Consultation", "verbose_name_plural": "ABA Consultations", "ordering": ["-consultation_date", "-created_at"], }, ), migrations.CreateModel( name="ABAGoal", fields=[ ( "id", models.UUIDField( default=uuid.uuid4, editable=False, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, verbose_name="Created At")), ("updated_at", models.DateTimeField(auto_now=True, verbose_name="Updated At")), ("goal_description", models.TextField(verbose_name="Goal Description")), ( "target_date", models.DateField(blank=True, null=True, verbose_name="Target Date"), ), ( "status", models.CharField( choices=[ ("NOT_STARTED", "Not Started"), ("IN_PROGRESS", "In Progress"), ("ACHIEVED", "Achieved"), ("DISCONTINUED", "Discontinued"), ], default="NOT_STARTED", max_length=20, verbose_name="Status", ), ), ("progress_notes", models.TextField(blank=True, verbose_name="Progress Notes")), ( "achieved_date", models.DateField(blank=True, null=True, verbose_name="Achieved Date"), ), ], options={ "verbose_name": "ABA Goal", "verbose_name_plural": "ABA Goals", "ordering": ["consult", "target_date"], }, ), migrations.CreateModel( name="HistoricalABAConsult", fields=[ ( "id", models.UUIDField( db_index=True, default=uuid.uuid4, editable=False, verbose_name="ID" ), ), ( "created_at", models.DateTimeField(blank=True, editable=False, verbose_name="Created At"), ), ( "updated_at", models.DateTimeField(blank=True, editable=False, verbose_name="Updated At"), ), ( "signed_at", models.DateTimeField(blank=True, null=True, verbose_name="Signed At"), ), ("consultation_date", models.DateField(verbose_name="Consultation Date")), ( "reason_of_referral", models.CharField( choices=[ ("DEVELOPMENTAL_DELAY", "Developmental Delay"), ("AUTISM_SPECTRUM", "Autism Spectrum Disorder"), ("BEHAVIORAL_ISSUES", "Behavioral Issues"), ("LEARNING_DIFFICULTIES", "Learning Difficulties"), ("SOCIAL_SKILLS", "Social Skills Deficits"), ("COMMUNICATION", "Communication Difficulties"), ("SELF_CARE", "Self-Care Skills"), ("OTHER", "Other"), ], max_length=50, verbose_name="Reason of Referral", ), ), ("parental_concern", models.TextField(blank=True, verbose_name="Parental Concern")), ("school_concern", models.TextField(blank=True, verbose_name="School Concern")), ( "respondents", models.CharField( blank=True, help_text="Who provided the information (e.g., mother, father, teacher)", max_length=200, verbose_name="Respondents", ), ), ( "interviewer", models.CharField(blank=True, max_length=200, verbose_name="Interviewer"), ), ( "diagnosed_condition", models.CharField( blank=True, max_length=200, verbose_name="Diagnosed Condition" ), ), ( "interaction_hours_per_day", models.PositiveIntegerField( blank=True, help_text="Hours of interaction per day", null=True, verbose_name="Interaction Hours/Day", ), ), ( "physiological_factors", models.TextField( blank=True, help_text="Physiological factors affecting behavior (e.g., sleep, appetite, medical conditions)", verbose_name="Physiological Factors", ), ), ( "medical_factors", models.TextField( blank=True, help_text="Medical factors and conditions", verbose_name="Medical Factors", ), ), ("recommendations", models.TextField(blank=True, verbose_name="Recommendations")), ("history_id", models.AutoField(primary_key=True, serialize=False)), ("history_date", models.DateTimeField(db_index=True)), ("history_change_reason", models.CharField(max_length=100, null=True)), ( "history_type", models.CharField( choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1 ), ), ], options={ "verbose_name": "historical ABA Consultation", "verbose_name_plural": "historical ABA Consultations", "ordering": ("-history_date", "-history_id"), "get_latest_by": ("history_date", "history_id"), }, bases=(simple_history.models.HistoricalChanges, models.Model), ), ]