
    &Kh                        d dl mZmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
mZ d dl mZmZmZ d dlmZ d dlmZ d d	lZ ed
dg      Zej)                  d       ee      fdefd       Zej-                  d       ee      fdefd       Zej-                  d       ee      fdefd       Zej-                  d       ee
j2                         ed	       ee      fde
dedefd       Zej)                  d       ee      fdedefd       Zej)                  d       ee      fdedefd       Zej-                  d       ee      fdedefd       Zy	)     )	APIRouterDepends)get_db)Session)	FileClass)BankStatement
DepositIds)
UploadFileFileHTTPException)BankStatementClass)datetimeNz/bank_statementsr   )prefixtagsz/compare_update_depositsdbc                 <    t        |       j                          ddiS )NmessagezUploaded successfully)r   compare_update_deposits)r   s    J/var/www/jisbackend.com/public_html/app/backend/routers/bank_statements.pyr   r      s!     r224.//    z-/get_comparation_pending_dtes_bank_statementsc                 <    t        |       j                         }d|iS Nr   )r   ,get_comparation_pending_dtes_bank_statementsr   bank_statementss     r   r   r      s"     ),YY[O''r   z1/get_comparation_pending_deposits_bank_statementsc                 <    t        |       j                         }d|iS r   )r   0get_comparation_pending_deposits_bank_statementsr   s     r   r   r       s"     ),]]_O''r   z/store	form_datasupportc                 Z   	 t        j                         j                  d      }t        j                         j
                  d d }d|j                  v r|j                  j                  d      d   nd}d}|r
| d| d| n| d| }| d| }t        |      j                  ||      }	t        |      j                  |      }
|dk(  r&t        |      j                  |
| j                        }nt        d	d
      |	|
|dS # t        $ r}t        ddt!        |             d }~ww xY w)Nz%Y_%m_%d_%H_%M_%S   . r   _xlsxi  zFormato no compatible)status_codedetail)r   file_urldatai  zError al procesar: )r   nowstrftimeuuiduuid4hexfilenamesplitr   uploadgetr   read_store_bank_statementperiodr   	Exceptionstr)r   r   r   	timestamp	unique_idfile_extensionfile_category_nameunique_filenameremote_pathr   r)   
excel_dataes                r   storer@   (   s;   TLLN++,?@	JJL$$Ra(	<?7CSCS<S))//4R8Y[.IWYKq1^4DE`i_jjklukv]w+,Ao->?B-&&w<R=$$[1V#+B/II(T]TdTdeJC8OPP"*MM T6I#a&4RSSTs   D D 	D*D%%D*z/customer/accept/{id}idc                 >    t        |      j                  |       }d|iS r   )r   customer_acceptrA   r   r   s      r   rC   rC   E   s$    
 !$44R8Gwr   z/deposit/accept/{id}c                 >    t        |      j                  |       }d|iS r   )r   deposit_acceptrD   s      r   rF   rF   N   s$    
 !$33B7Gwr   z/deposit/massive_acceptr*   c                     g }| j                   D ]0  }t        |      j                  |      }|j                  ||d       2 d|dS )N)rA   r   u#   Depósitos procesados correctamente)r   details)deposit_idsr   rF   append)r*   r   results
deposit_idresponses        r   massive_acceptrN   W   sQ    G&& @
%b)88DjX>?@ =QQr   )fastapir   r   app.backend.db.databaser   sqlalchemy.ormr   app.backend.classes.file_classr   app.backend.schemasr   r	   r
   r   r   (app.backend.classes.bank_statement_classr   r   r-   r   r3   r   postr   r   as_formr@   intrC   rF   rN    r   r   <module>rY      s   & * " 4 9 3 3 G  
	
 /0&/00 10 EF&/(( G( IJ&/(( K( h&}'<'<=t*&/TTT 	T  T8 ,- &/    .  +, &/    -  /03:6? R R R 1Rr   