
    Si                     8    d dl mZ d dlmZ d dlZ G d d      Zy)    )SettingModel)datetimeNc                   *    e Zd Zd Zd Zd Zd Zd Zy)SettingClassc                     || _         y )N)db)selfr   s     _C:\Users\jesus\OneDrive\Escritorio\proyecto_pie360\backend\app\backend\classes\setting_class.py__init__zSettingClass.__init__   s	        c                    d}ddd}ddi}t        j                  |||      }|j                  dk(  r|j                         }d	|v rx| j                  j                  t              j                  t        j                  d
k(        j                         }|r$|d	   |_
        | j                  j                          |d	   S ddiS y )Nz"https://api.simplefactura.cl/tokenzinfo@vitrificadoschile.com
23414255Jo)emailpasswordzContent-Typezapplication/json)jsonheaders   accessToken   errorzToken not found in response)requestspoststatus_coder   r   queryr   filteridone_or_nonesimplefactura_tokencommit)r	   urlpayloadr   responsedataexisting_settings          r
   get_simplefactura_tokenz$SettingClass.get_simplefactura_token	   s    2 2$
 .
 ==7GD3&==?D$#'77==#>#E#ElooYZFZ#[#g#g#i #;?;N$8GGNN$M**!>?? 'r   c                    | j                   j                  t              j                  t        j                  dk(        j                         }|j                  }d}i }dd| i}t        j                  d|||      }|j                  dk(  ryy)	Nr   z)https://api.simplefactura.cl/token/expireAuthorizationzBearer GET)r   r#   r   r   )
r   r   r   r   r   firstr   r   requestr   )r	   setting_datatokenr    r!   r   r"   s          r
   validate_tokenzSettingClass.validate_token"   s    ww}}\299,//Q:NOUUW009wug.
 ##E3gN3&r   c                    | j                   j                  t              j                  t        j                  |k(        j                         }|sdddS 	 |j                         D ]  \  }}t        |||        t        j                         |_
        | j                   j                          | j                   j                  |       dddS # t        $ r4}| j                   j                          t        |      }d|dcY d }~S d }~ww xY w)Nr   zNo data found)statusmessagesuccesszSettings updated successfully)r   r   r   r   r   r   itemssetattrr   nowupdated_dater   refresh	Exceptionrollbackstr)r	   r   	form_datar$   keyvalueeerror_messages           r
   updatezSettingClass.update4   s    77==6==looQS>ST``b%/BB	A'oo/ 6
U(#u56 -5LLN)GGNNGGOO,-'4STT 	AGGFM%-@@	As   A7C 	D)D DDc                 2   	 | j                   j                  t              j                  t        j                  |k(        j                         }|r|j                  |j                  |j                  |j                  |j                  |j                  |j                  |j                  |j                  |j                  |j                  |j                   |j"                  |j$                  d}d|iS ddiS # t&        $ r}dt)        |      icY d }~S d }~ww xY w)N)r   	tax_valueidentification_numberaccount_typeaccount_numberaccount_nameaccount_emailbankdelivery_costr   shop_addresspayment_card_urlprepaid_discountphoner+   r   z3No se encontraron datos para el campo especificado.)r   r   r   r   r   r)   rA   rB   rC   rD   rE   rF   rG   rH   r   rI   rJ   rK   rL   r7   r9   )r	   r   
data_queryr+   r=   s        r
   getzSettingClass.getH   s    	%f\__*+EEG  $--!+!5!5-7-M-M$.$;$;&0&?&?$.$;$;%/%=%=&OO%/%=%=+5+I+I$.$;$;(2(C(C(2(C(C'-- " '55  !VWW 	%SV$$	%s$   C/C6 2C6 6	D?DDDN)__name__
__module____qualname__r   r%   r-   r?   rN    r   r
   r   r      s    @2$A(%r   r   )app.backend.db.modelsr   r   r   r   rR   r   r
   <module>rT      s    .  a% a%r   