
    6"j                     N   d dl mZ d dlmZmZ ed   Zed   Zed   Zed   Zed   Z	ed   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 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 G d de      Zy)     )Literal)	BaseModelField)unknowninvoiceinstant_invoicedelivery_note)
processingreadyerror)pendingnot_startedready_for_match)	to_reviewreviewed)importedunsupportedr   )matchedno_candidateno_document_linesc                       e Zd ZU eed<   dZedz  ed<   dZedz  ed<   eed<   dZedz  ed<   dZ	edz  ed<   dZ
edz  ed<   dZedz  ed	<   dZedz  ed
<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZeed<   y)FiscalDocumentLineItemRead
line_indexNproduct_codeiso_codedescriptioncategory_code	unit_code
pack_countquantitygross_quantitytare_quantitynet_quantity
unit_price
line_totalvat_code raw_row_text)__name__
__module____qualname__int__annotations__r   strr   r   r   r   floatr    r!   r"   r#   r$   r%   r&   r(        /apps/backend-hub/app/models/fiscal_documents.pyr   r      s    O#L#*#HcDj $M3:$ IsTz #J#!Hedl!#'NEDL'"&M54<&!%L%$,%#J##J#HcDjL#r1   r   c                   D   e Zd ZU ed   ed<   dZeed<   dZedz  ed<   dZ	e
dz  ed<   dZe
dz  ed<   dZe
dz  ed	<   dZedz  ed
<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZe
dz  ed<   dZe
dz  ed<   dZe
dz  ed<   dZedz  ed<   y) FiscalDocumentOrderMatchLineRead)exactpartialmissingextraover_deliveredstatus        
confidenceNorder_item_idorder_product_nameorder_lot_codeorder_supplier_nameordered_quantitydelivered_quantitycomparable_delivered_quantitymissing_quantityextra_quantitydocument_line_indexdocument_descriptiondocument_raw_row_textdocument_unit_codedocument_quantity)r)   r*   r+   r   r-   r<   r/   r=   r,   r>   r.   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   r0   r1   r2   r4   r4       s    LMMJ $M3:$%)d
)!%NC$J%&*t*%)edl)'++26!54<6%)edl)#'NEDL'&*t*'+#*+(,3:,%)d
)&*ut|*r1   r4   c                       e Zd ZU eed<   dZedz  ed<   dZedz  ed<   dZ	edz  ed<   dZ
edz  ed<   dZeed<   d	Zeed
<   d	Zeed<   d	Zeed<   d	Zeed<   dZeed<    ee      Zee   ed<   y)FiscalDocumentOrderMatchReadr:   Nmatched_batch_idmatched_batch_confirmed_atmatched_batch_staffmatched_supplier_namer;   scorer   line_match_countexact_line_countmissing_line_countextra_line_countFcan_apply_stornodefault_factorylines)r)   r*   r+   FiscalDocumentOrderMatchStatusr-   rM   r,   rN   r.   rO   rP   rQ   r/   rR   rS   rT   rU   rV   boolr   listrY   r4   r0   r1   r2   rL   rL   3   s    **#'cDj'-1d
1&*t*(,3:,E5ccc"d"49$4OE401Or1   rL   c                      e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   eed<   dZedz  ed	<   dZedz  ed
<   dZ	edz  ed<   dZ
edz  ed<   dZeed<   dZeed<   dZeed<   dZeed<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed<   dZedz  ed<    ee      Zee   ed<   dZedz  ed<   eed<   dZeed<   dZeed<   dZ edz  ed <   eed!<   eed"<   y)#FiscalDocumentReadidoriginal_namedisplay_name	mime_typekindfile_size_bytesdocument_typeNdocument_numberdocument_datesupplier_nametotal_amountEURcurrencyr'   summary_textextracted_textpreview_textdrive_file_iddrive_web_urldrive_uploaded_atcovered_by_document_idcovered_by_document_namerW   
line_itemsorder_matchr:   r   matching_statusr   review_statuserror_detail
created_at
updated_at)!r)   r*   r+   r.   r-   r,   FiscalDocumentTyperf   rg   rh   ri   r/   rk   rl   rm   rn   ro   rp   rq   rr   rs   r   r\   rt   r   ru   rL   FiscalDocumentStatusrv   FiscalMatchingStatusrw   FiscalReviewStatusrx   r0   r1   r2   r^   r^   B   s+   GN
I%%"&OS4Z& $M3:$ $M3:$!%L%$,%HcL#NCL# $M3:$ $M3:$$(sTz()-C$J-+/cDj/383NJ/0N7;K-4;  ,5O)5(3M%3#L#*#OOr1   r^   c                       e Zd ZU  ee      Zee   ed<   dZe	ed<   dZ
e	ed<   dZe	ed<   dZe	ed<   dZe	ed<   dZe	ed	<   d
Ze	ed<   dZe	ed<   dZeed<   y)FiscalDocumentsListResponserW   itemsr   total_countarchive_total_countinvoice_countinstant_invoice_countdelivery_note_countto_review_count2   limitoffsetFhas_moreN)r)   r*   r+   r   r\   r   r^   r-   r   r,   r   r   r   r   r   r   r   r   r[   r0   r1   r2   r   r   a   sr    &+D&AE4"#AK  M3!"3"  OSE3OFCOHdr1   r   c                       e Zd ZU dZeed<   y)!FiscalDocumentNotificationSummaryr   discrepancy_countN)r)   r*   r+   r   r,   r-   r0   r1   r2   r   r   n   s    sr1   r   c                   D    e Zd ZU dZedz  ed<   dZeed<   dZedz  ed<   y)FiscalDocumentSettingsReadNinbound_emailFmailbox_configuredrz   )	r)   r*   r+   r   r.   r-   r   r[   rz   r0   r1   r2   r   r   r   s)     $M3:$$$!Jd
!r1   r   c                   "    e Zd ZU dZedz  ed<   y)#FiscalDocumentSettingsUpdatePayloadNr   )r)   r*   r+   r   r.   r-   r0   r1   r2   r   r   x   s     $M3:$r1   r   c                       e Zd ZU dZeed<   dZedz  ed<   dZeed<   dZ	eed<   dZ
edz  ed<   dZeed<   dZeed	<   dZeed
<   eed<   y)FiscalDocumentInboxStatusReadFr   Nr   google_configuredgoogle_connectedgoogle_account_emailgmail_scope_grantedmailbox_matches_google_accountready_for_sync	next_step)r)   r*   r+   r   r[   r-   r   r.   r   r   r   r   r   r   r0   r1   r2   r   r   |   se    $$ $M3:$#t#"d"'+#*+ %%+0"D0 ND Nr1   r   c                       e Zd ZU eed<   eed<   eed<   dZeed<   dZedz  ed<   dZedz  ed<   eed	<   eed
<   eed<   dZ	edz  ed<   dZ
edz  ed<   eed<   eed<   y)FiscalDocumentInboxItemReadr_   
message_idattachment_idr'   subjectNsenderreceived_atattachment_namerb   sync_statusdocument_idrx   ry   rz   )r)   r*   r+   r.   r-   r   r   r   FiscalDocumentInboxSyncStatusr   rx   r0   r1   r2   r   r      so    GOGSFC$J"Kt"N.."Kt"#L#*#OOr1   r   c                   h    e Zd ZU  ee      Zee   ed<   dZe	ed<   dZ
e	ed<   dZe	ed<   dZe	ed<   y)	FiscalDocumentInboxListResponserW   r   r   r   imported_countunsupported_counterror_countN)r)   r*   r+   r   r\   r   r   r-   r   r,   r   r   r   r0   r1   r2   r   r      s@    /4T/JE4+,JKNCsKr1   r   N)typingr   pydanticr   r   r{   r|   r}   r~   r   rZ   r   r4   rL   r^   r   r   r   r   r   r   r   r0   r1   r2   <module>r      s     % UV => JK 45  '(J K !()W!X  $+y +&P9 P >
) 
	 " "%) %	I 	)  i r1   