o
    â6iñ  ã                   @   s   d Z ddlZdefdd„ZdS )ul   
analyzer.py
Analiza los resultados JSON generados por el extractor.
VersiÃ³n mÃ­nima para debug y pruebas.
é    NÚinvoice_jsonc           	      C   sL  i i g dœ}t |  d¡tƒr|  di ¡n	dt|  dd¡ƒi}| dd¡|d d< |  dg ¡}t|ƒ|d d< |  d	i ¡}| d
i ¡ d¡pM| d
i ¡ d¡}| di ¡ d¡p_| di ¡ d¡}||d d
< ||d d< t |tƒrw| di ¡ni }dD ]}| |d¡|d |< q{|  dd¡|d d< |s›|d  d¡ |s¤|d  d¡ |S )uœ   
    Realiza anÃ¡lisis bÃ¡sico del JSON extraÃ­do:
      - cuenta Ã­tems
      - revisa totales y consistencia
      - devuelve un resumen estructurado
    )ÚsummaryÚvalidationsÚwarningsÚinvoice_typeÚverbatimÚ Úunknownr   ÚitemsÚitems_countÚtotalsÚgstÚcomputedÚgrand_totalr   )Úitems_sum_matches_subtotalÚ0subtotal_plus_gst_plus_extras_equals_grand_totalÚtendered_equals_grand_totalÚtax_includedÚgst_rate_presentÚgst_rate_inferedÚnegative_lines_checkFÚstatusr   u&   No se detectaron Ã­tems en la factura.u'   No se encontrÃ³ el total de la factura.)Ú
isinstanceÚgetÚdictÚstrÚlenÚappend)	r   Úanalysisr   r
   r   r   r   r   Úkey© r    ú@/var/www/html/flask_server/apps/wp_invoices/services/analyzer.pyÚanalyze   s2   ý	ÿý$$	r"   )Ú__doc__Újsonr   r"   r    r    r    r!   Ú<module>   s    