
    hXh)                         U d Z ddlmZmZ ddlmZ ddlZdZe	e
d<   dZee	ee	         df         e
d<   dZee	ee	         df         e
d<   dZee	ee	         df         e
d	<   ddZddZdS )zdCreate initial database schema

Revision ID: 001
Revises: 
Create Date: 2025-09-12 17:29:12.386632

    )SequenceUnion)opN001revisiondown_revisionbranch_labels
depends_onreturnc                  &   t          j        dt          j        dt          j                    d          t          j        dt          j                    d          t          j        dt          j                    d          t          j        dt          j                    d          t          j        dt          j                    d	          t          j        d
t          j        dddd          d	          t          j        dt          j        d	          t          j        d          d	          t          j        dt          j        d	          d	          t          j        dt          j                    d	          t          j        dt          j	                    d	          t          j        dt          j                    d	          t          j        dt          j	                    d	          t          j        dt          j	                    d	          t          j
        d                     t          j        t          j        d          ddgd	           t          j        t          j        d          ddgd           t          j        dt          j        dt          j                    d          t          j        dt          j                    d          t          j        dt          j	                    d	          t          j        dt          j        d	          t          j        d          d	          t          j
        d          t          j        d                     t          j        t          j        d           ddgd           t          j        d!t          j        dt          j                    d          t          j        dt          j                    d          t          j        d"t          j                    d          t          j        d#t          j                    d          t          j        d$t          j        d%d&d'          d          t          j        d(t          j                    d	          t          j        dt          j        d	          t          j        d          d	          t          j
        d          	  	         t          j        t          j        d)          d!dgd	           t          j        t          j        d*          d!dgd           t          j        d+t          j        dt          j                    d          t          j        dt          j                    d          t          j        d,t          j                    d          t          j        d-t          j	                    d          t          j        d.t          j        d/d0d1d2          d	          t          j        d(t          j                    d	          t          j        d3t          j                    d          t          j        dt          j        d	          t          j        d          d	          t          j        dt          j        d	          d	          t          j        d3gd4g          t          j
        d                     t          j        t          j        d5          d+dgd           t          j        d6t          j        dt          j                    d          t          j        d7t          j                    d          t          j        d8t          j                    d	          t          j        d,t          j                    d          t          j        d-t          j	                    d          t          j        d.t          j        d/d0d1d2          d	          t          j        d9t          j        d	          t          j        d          d	          t          j        d:t          j                    d	          t          j        d;t          j                    d	          t          j        d7gd<g          t          j        d8gd4g          t          j
        d                     t          j        t          j        d=          d6dgd           t          j        d>t          j        dt          j                    d          t          j        d7t          j                    d          t          j        d?t          j                    d          t          j        d@t          j                    d          t          j        dAt          j        dBdCdDdEdF          d          t          j        dGt          j                    d	          t          j        dHt          j        d	          t          j        d          d	          t          j        d7gd<g          t          j
        d          
  
         t          j        t          j        dI          d>dgd           t          j        dJt          j        dt          j                    d          t          j        d7t          j                    d          t          j        d8t          j                    d          t          j        dKt          j	                    d          t          j        dLt          j                    d	          t          j        dt          j        d	          t          j        d          d	          t          j        d7gd<g          t          j        d8gd4g          t          j
        d          
  
         t          j        t          j        dM          dJdgd           t          j        dNt          j        dt          j                    d          t          j        dOt          j                    d          t          j        dt          j	                    d	          t          j        dPt          j        dQdRdSdT          d	          t          j        dt          j        d	          t          j        d          d	          t          j        dt          j        d	          d	          t          j        dUt          j                    d          t          j        dUgd4g          t          j
        d          
  
         t          j        t          j        dV          dNdgd           t          j        dWt          j        d7t          j                    d          t          j        dXt          j                    d          t          j        dPt          j        dYdZd[d\d]d^          d	          t          j        d_t          j        d	          t          j        d          d	          t          j        dt          j        d	          d	          t          j        d`t          j	                    d	          t          j        dat          j	                    d	          t          j        d7gd<g          t          j        dXgdbg          t          j
        d7dX                     t          j        dct          j        dt          j                    d          t          j        dXt          j                    d          t          j        dt          j                    d          t          j        ddt          j                    d	          t          j        det          j                    d	          t          j        dt          j        d	          t          j        d          d	          t          j        dXgdbg          t          j
        d          	  	         t          j        t          j        df          dcdgd           t          j        dgt          j        dXt          j                    d          t          j        dht          j                    d          t          j        dit          j                    d	          t          j        dt          j        d	          t          j        d          d	          t          j        dXgdbg          t          j        dhgdjg          t          j
        dXdh                     t          j        dkt          j        dt          j                    d          t          j        d7t          j                    d          t          j        dXt          j                    d          t          j        dlt          j                    d	          t          j        dmt          j	                    d	          t          j        dnt          j                    d	          t          j        dot          j                    d	          t          j        dpt          j        d	          t          j        d          d	          t          j        d7dXgdqdrg          t          j
        d                     t          j        t          j        ds          dkdgd           dtS )uzUpgrade schema.
candidatesidF)nullable
first_name	last_nameemailphoneTstatus_overallACTIVEARCHIVEDBLACKLISTEDcandidatestatus)name
created_at)timezoneznow())server_defaultr   
updated_at
birth_dateaddressnationalityacademic_backgroundwork_experienceix_candidates_email)uniqueix_candidates_idsoft_skillsr   descriptionix_soft_skills_idusershashed_password	full_nameroleADMINSTAFFuserrole	is_activeix_users_emailix_users_idcommunication_templatessubjectbodytypeEMAILSMSPLATFORMcommunicationtype
created_byzusers.idix_communication_templates_idcommunicationscandidate_iduser_idsent_atis_templatetemplate_namezcandidates.idix_communications_id	documents	file_name	file_pathdocument_typeCV
TRANSCRIPTCOVER_LETTEROTHERdocumenttype	file_sizeuploaded_atix_documents_idnotescontentis_importantix_notes_idprojectstitlestatusDRAFTOPENCLOSEDprojectstatusowner_idix_projects_idapplications
project_idNEW	IN_REVIEW	INTERVIEWREJECTEDADMITTEDapplicationstatus
applied_atmotivation_letteradditional_infozprojects.idcriteriaweightis_mandatoryix_criteria_idproject_soft_skillssoft_skill_idrequired_levelzsoft_skills.idai_assessmentsscoresummarydetailsmodel_versiongenerated_atzapplications.candidate_idzapplications.project_idix_ai_assessments_idN)r   create_tablesaColumnIntegerStringEnumDateTimetextTextPrimaryKeyConstraintcreate_indexfUniqueConstraintBooleanForeignKeyConstraintFloatJSON     P/home/runner/workspace/migrations/versions/001_create_initial_database_schema.pyupgrader      s0    OLIdBJLL5111IlBIKK%888Ik29;;777Igry{{U333Igry{{T222I*mRc d d dostttIlBK666rwwGWGWbfgggIlBK666FFFIlBKMMD999IiT222ImRY[[4888I#RWYY>>>IT:::D!!    OBD.//yQUVVVVOBD+,,lTF5QQQQOMIdBJLL5111IfbikkE222ImRWYY666IlBK666rwwGWGWbfgggD!!   OBD,--}tfUSSSSOGIdBJLL5111Igry{{U333Iu===Ik29;;777IfbggwZ@@@5QQQIk2:<<$777IlBK666rwwGWGWbfgggD!!	 	 	 OBD)**GgYtLLLLOBD''4&GGGGO-IdBJLL5111IfbikkE222Iiu555Ifbgii%000Ifbgguj?RSSS^bcccIk2:<<$777IlBJLL5999IlBK666rwwGWGWbfgggIlBK666FFF\NZL;;D!!   OBD899;TW[V\ejkkkkO$IdBJLL5111InbjllU;;;Ii555Iiu555Ifbgii%000Ifbgguj?RSSS^bcccIid333BGGDTDT_cdddImRZ\\D999Iory{{T:::^,.?BBYK*88D!!   OBD/002BTFSXYYYYOKIdBJLL5111InbjllU;;;Ik29;;777Ik29;;777Iorwt\>7YghhhsxyyyIk2:<<$777ImR[$777PWHXHXcghhh^,.?BBD!!
 
 
 OBD*++[4&OOOOOGIdBJLL5111InbjllU;;;Ii666IiU333InbjllT:::IlBK666rwwGWGWbfggg^,.?BBYK*88D!!
 
 
 OBD''4&GGGGOJIdBJLL5111Igry{{U333ImRWYY666IhPPP[_```IlBK666rwwGWGWbfgggIlBK666FFFIj"*,,777ZL:,99D!!
 
 
 OBD)**JuMMMMONInbjllU;;;IlBJLL5999Ih{KZ^qrrr  ~B  C  C  CIlBK666rwwGWGWbfgggIlBK666FFFI!2799t<<<IT:::^,.?BB\N]O>>NL99   OJIdBJLL5111IlBJLL5999ImRY[[5999Ih

T222InbjllT:::IlBK666rwwGWGWbfggg\N]O>>D!!	 	 	 OBD)**JuMMMMO)IlBJLL5999Iorz||e<<<I
t<<<IlBK666rwwGWGWbfggg\N]O>>_-0@/ADDL/::   O$IdBJLL5111InbjllU;;;IlBJLL5999IgrxzzD111IiT222IiT222Iory{{T:::Inbk4888QXIYIYdhiii^\:=XZs<twwD!!   OBD/002BTFSXYYYYYYr   c                     t          j        t          j        d          d           t          j        d           t          j        d           t          j        t          j        d          d           t          j        d           t          j        d           t          j        t          j        d          d	           t          j        d	           t          j        t          j        d
          d           t          j        d           t          j        t          j        d          d           t          j        d           t          j        t          j        d          d           t          j        d           t          j        t          j        d          d           t          j        d           t          j        t          j        d          d           t          j        t          j        d          d           t          j        d           t          j        t          j        d          d           t          j        d           t          j        t          j        d          d           t          j        t          j        d          d           t          j        d           dS )zDowngrade schema.ru   ro   )
table_namerl   rk   rh   r]   r\   rT   rS   rP   rO   rD   rC   r=   r<   r3   r2   r)   r1   r(   r&   r%   r   r#   N)r   
drop_indexr   
drop_tabler   r   r   	downgrader      sO    M"$-..;KLLLLM"###M'(((M"$'((Z@@@@M*M.!!!M"$'((Z@@@@M*M"$}%%'::::M'M"$())kBBBBM+M"$-..;KLLLLM"###M"$677D]^^^^M+,,,M"$}%%'::::M"$'((W====M'M"$*++FFFFM-   M"$)**|DDDDM"$,--,GGGGM,r   )r   N)__doc__typingr   r   alembicr   
sqlalchemyrw   r   str__annotations__r   r	   r
   r   r   r   r   r   <module>r      s      # " " " " " " "           #   15uS(3--. 5 5 515uS(3--. 5 5 5.2
E#x}d*+ 2 2 2WZ WZ WZ WZv           r   