﻿£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
from peewee import (
    Model,
    AutoField,
    CharField,
    TextField,
    TimestampField,
    Check,
)
from datetime import datetime, timezone


class AnalystCleanupRequest(Model):
    """
    Model for storing analyst cleanup requests.
    Tracks request details and status for each cleanup request submitted.
    """

    class Meta:
        db_table = "analyst_cleanup_requests"

    id = AutoField()
    username = CharField(null=False)
    zendesk_id = CharField(null=False)
    ticket_link = TextField(null=False)
    created_at = TimestampField(null=False, default=datetime.now(timezone.utc))
    status = CharField(
        null=False,
        default="pending",
        constraints=[Check("status in ('pending','in_progress','completed')")],
    )
    last_updated = TimestampField(
        null=False, default=datetime.now(timezone.utc)
    )


def migrate(migrator, database, fake=False, **kwargs):
    migrator.create_model(AnalystCleanupRequest)


def rollback(migrator, database, fake=False, **kwargs):
    analyst_cleanup_request = migrator.orm["analyst_cleanup_requests"]
    migrator.drop_model(analyst_cleanup_request)
