
    jr                         d dl mZmZmZmZmZmZmZmZm	Z	m
Z
mZ d dlmZ d dlmZ  G d de          Z G d de          Z G d d	e          Z G d
 de          Z G d de          ZdS )    )JSONBooleanColumnDateDateTimeFloat
ForeignKeyIndexIntegerStringText)func)Basec                   <   e Zd ZdZ eed          Z e ed          dd          Z e ed          d          Z	 e ed	          d          Z
 e ed	          d          Z e ed	                    Z e ed          d          Z ee          Z eed
          Z e ed                    Z eed
          Z eed
          Z eed
          Z eed
          Z ee          Z ee ej                    
          ZdS )
DataSourcedata_sourcesT)primary_key2   F)uniquenullable   r      defaultg      ?g      @   N)__name__
__module____qualname____tablename__r   r   idr   codenamesource_typeregion_levelregion_codeadapter_classr   adapter_configr   has_categoriescrawl_scheduler   request_delay_minrequest_delay_maxmax_retries	is_activer   last_crawled_atr   now
created_at     A/lsinfo/ai/hellotax_ai/data_center/backend/app/models/tax_data.pyr   r      s       "M	T	*	*	*B6&&**TE:::D6&&++...D&e444K6&&**u555L&$$KF66#;;777MVD\\NVGU333NVFF2JJ''Nuc222uc222&!,,,Kw---IfX&&O($(**555JJJr3   r   c                   ^   e Zd ZdZ eedd          Z e ed          ddd          Z eed          Z	 ee e
d          d          Z e ed	          d
          Z e ed	          dd          Z eed          Z eed          Z eed          Z eed          Z ee          Z ee          Z ee          Z ee ej                              Z ee ej                     ej                              Z edd           edd          fZdS )DataProcessingTaskdata_processing_tasksTr   indexr   Fr   r9   r   r9   data_sources.idr   r   pending)r   r   r   r   r   onupdateidx_task_statusstatusidx_task_createdr1   N)r   r   r   r    r   r   r!   r   task_idcategory_idr	   	source_idmoderA   progresstotal_countsuccess_countfailed_countr   error_messager   
started_atcompleted_atr   r0   r1   
updated_atr
   __table_args__r2   r3   r4   r6   r6   &   s       +M	T	6	6	6BfVVBZZD5IIIG&---Kw

+< = =TJJJI6&&**u---DVFF2JJ	BBBFvgq)))H&!,,,KF7A...M6'1---LF4LLM!!J6(##L($(**555J($(**xtxzzJJJJe-x88%%@RT`:a:abNNNr3   r6   c            	          e Zd ZdZ eedd          Z e ed          ddd          Z eedd          Z	 e ed          d	          Z
 e ed          d
          Z e ed                    Z ee          Z ee          Z e ed          d	          Z ee          Z e ed                    Z e ed                    Z e ed                    Z ee          Z ee          Z ee          Z ee          Z ee          Z e ed                    Z e ed                    Z ee          Z ee          Z ee          Z  e ed          d          Z! ee e"d          d	          Z# e ed          d	          Z$ e ed          d	          Z% ee          Z& ee          Z' e ed          d	          Z( e ed          d          Z) e ed                    Z* ee+          Z, ee-d          Z. ee          Z/ ee+ e0j1                              Z2 ee+ e0j1                     e0j1                              Z3 e4dd           e4dd           e4dd           e4dd           e4dd           e4dd          fZ5d S )!TaxDocumenttax_documentsTr8     Fr:   )r9   r   d   r;   r   r   r      normalr   r<   r=   @   r>   idx_doc_categoryrD   idx_doc_statusprocessing_statusidx_doc_importedis_importedidx_doc_issue_date
issue_dateidx_doc_hashcontent_hashidx_doc_interp_forminterpretation_formN)6r   r   r   r    r   r   r!   r   
source_urlrD   
doc_numbertitleissuing_authorityr   r^   effective_date
doc_statussuperseded_by_doc_idsuperseded_by_doc_numbersuperseded_by_titlesuperseded_by_source_urlr   content_htmlcontent_markdowncontent_textr   
supersedes
references	file_pathfile_directoryattachmentsinline_imagesinline_videosfetch_strategyr	   rE   doc_typer&   qa_question	qa_answerrb   rZ   r`   r   last_check_timer   r\   knowledge_doc_idr   r0   r1   rN   r
   rO   r2   r3   r4   rQ   rQ   9   s       #M	T	6	6	6BsDuMMMJ&u===Ks4000JF66#;;///Evvc{{++JVD\\Nr

$///J!6'??%vffSkk22 &--%vffSkk226$<<Lvd||6$<<LJJvvc{{##IVFF3KK((N&,,KF4LLMF4LLMVFF2JJ999Nw

+< = =TJJJIvffRjj---H&4000K&,,KtI &4888vvbzz9===6&&**%%LfX&&O&%000Kvg($(**555J($(**xtxzzJJJJe.>>FVXk@l@lnsns  uG  IV  oW  oW  Y^  Y^  _s  uA  YB  YB  DI  DI  JX  Zh  Di  Di  kp  kp  qF  H]  k^  k^  _NNNr3   rQ   c                       e Zd ZdZ eedd          Z ee edd          dd          Z eed	          Z	 ee
          Z ee ej                    
          Z edd          fZdS )TaxDocumentVersiontax_document_versionsTr8   ztax_documents.idCASCADE)ondeleteF)r   r9   r   r   idx_docver_doc_iddoc_idN)r   r   r   r    r   r   r!   r	   r   version_numberr   rn   r   r   r0   r1   r
   rO   r2   r3   r4   r~   r~   b   s        +M	T	6	6	6BVGZZ(:YOOOZ_gklllFVGe444Nvd||($(**555Je/::<NNNr3   r~   c                   X   e Zd ZdZ eedd          Z e ed          d          Z e ed                    Z	 e ed          d	          Z
 eed	          Z ee          Z ee ej                    
          Z edd           edd           edd          fZdS )ProcessingLogprocessing_logsTr8   r   r;   rS   r   Fr   r   idx_log_taskrC   idx_log_level	log_levelidx_log_createdr1   N)r   r   r   r    r   r   r!   r   rC   document_urlr   r   message	exceptionr   r   r0   r1   r
   rO   r2   r3   r4   r   r   k   s        %M	T	6	6	6BfVVBZZt,,,G6&&++&&LvvbzzE222IfTE***GtI($(**555JeNI66o{8[8[]b]bct  wC  ^D  ^D  ENNNr3   r   N)
sqlalchemyr   r   r   r   r   r   r	   r
   r   r   r   sqlalchemy.sqlr   app.databaser   r   r6   rQ   r~   r   r2   r3   r4   <module>r      s                                        6 6 6 6 6 6 6 6&c c c c c c c c&'_ '_ '_ '_ '_$ '_ '_ '_R= = = = = = = =	E 	E 	E 	E 	ED 	E 	E 	E 	E 	Er3   