
    #^h	                        d dl mZmZ d dlmZ d dlmZ d dlmZm	Z	m
Z
 d dlmZ d dlmZ d dlmZ d dlmZ d d	l mZmZmZ d d
lmZ d dlZ eddg      Zej3                  d       ee       ee      fde	dedefd       Zej7                  d       ee       ee      fdededededef
d       Zej3                  d       ed       ee      fdedefd       Zy)    )	APIRouterDepends)get_db)Session)	UserLoginStoreManualSeatStoreAccountability)AccountabilityClass)get_current_active_user)	FileClass)BankStatementClass)
UploadFileFileHTTPException)datetimeNz/accountabilityAccountability)prefixtagsz/storemanual_seatsession_userdbc                     t        |      j                  | j                  | j                  | j                  | j
                  | j                        }d|iS Nmessage)r
   storebranch_office_idexpense_type_idtax_status_idperiodamount)r   r   r   datas       I/var/www/jisbackend.com/public_html/app/backend/routers/accountability.pyr   r      sf    r"(()E)E{GbGbdod}d}  @K  @R  @R  T_  Tf  Tf  gDt    z5/delete/{branch_office_id}/{period}/{expense_type_id}r   r   r   c                 B    t        |      j                  | ||      }d|iS r   )r
   delete)r   r   r   r   r   r!   s         r"   r%   r%      s'    r"))*:FOTDtr#   z/massive_storesupportc                 D   	 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                  |	      }
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   . accountability_xlsxi  zFormato no compatible)status_codedetail)r   file_urlr!   i  zError al procesar: )r   nowstrftimeuuiduuid4hexfilenamesplitr   uploadgetr
   !read_store_massive_accountabilityr   	Exceptionstr)r&   r   	timestamp	unique_idfile_extensionfile_category_nameunique_filenameremote_pathr   r1   
excel_dataes               r"   r   r      s3   
TLLN++,?@	JJL$$Ra(	<?7CSCS<S))//4R8Y[-IWYKq1^4DE`i_jjklukv]w+,Ao->?B-&&w<R=$$[1V#,R0RRS[\JC8OPP"*MM T6I#a&4RSSTs   C5C8 8	DDD)fastapir   r   app.backend.db.databaser   sqlalchemy.ormr   app.backend.schemasr   r   r	   (app.backend.classes.accountability_classr
   app.backend.auth.auth_userr   app.backend.classes.file_classr   (app.backend.classes.bank_statement_classr   r   r   r   r   r4   r,   postr   r:   intr=   r%    r#   r"   <module>rQ      s4   & * " O O H > 4 G 3 3  
	
 XAHI`Aaqxy  rA o Y gn  
 KL_fg~_  PW  X^  P_ S #  S\   FM  M
 %&t*&/TTT 'Tr#   