
    ef9                     @    d dl Z d dlmZ d dlmZ d dlZd dlZd Zd Zy)    N)datetime)
connect_dbc                   K   	 d}t        j                  |d       t         j                  j                  |      \  }}|j	                  dd      }t        j                         j                  d      }| d| | }t         j                  j                  ||      }t        |d      5 }|j                  |        d d d        t                d {   }	|	j                         }
d}|f}|
j                  ||       |	j                          |
j                  }|
j!                          |	j!                          t#        ||       d {    y# 1 sw Y   xY w7 7 # t$        $ r}t'        d	|        Y d }~y
d }~ww xY ww)NuploadsT)exist_ok _z%Y%m%d_%H%M%Swbzl
        INSERT INTO file_list (filename, created_at, updated_at)
        VALUES (%s, NOW(), NOW())
        zError saving file: F)osmakedirspathsplitextreplacer   nowstrftimejoinopenwriter   cursorexecutecommit	lastrowidcloseinsert_file_data	Exceptionprint)file_contentoriginal_filenameupload_directoryfilenamefile_extension	timestampnew_filename	file_pathfileconnr   insert_queryvaluesfile_list_ides                  Oc:\Users\Admin\OneDrive - OMSOFTWARE\Python\NoticeGen\operations\upload_data.pyupload_datar,      sd    .$
$t4 $&77#3#34E#F .##C- LLN++O<	"1YK/?@ GGLL!1<@	 )T" 	%dJJ|$	%  \! |V, '' 	

 |Y7775	% 	% "( 	8  #A3'(sf   FB%E )E;E EA6E EE FEE E 	E>&E94F9E>>Fc                   K   	 t                d {   }|j                         }t        j                  |      }|j	                  d      }|j                  t        j                  |      d       }g d}|D ]8  }t        j                  ||   d      j                  j                  d      ||<   : |j                  d      }|j                         D ]1  \  }}d}	|j                  |	|j                  d      f       |j                         }
|
rd	}g |j                  d
      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d       |j                  d!      |j                  d"      |j                  d#      |j                  d$      |j                  d%      |j                  d&      |j                  d'      |j                  d(      |j                  d)      |j                  d*      |j                  d+      |j                  d,      |j                  d-      |j                  d.      |j                  d/      |j                  d0      |j                  d1      |j                  d2      |j                  d3      |j                  d4      |j                  d5      |j                  d6      |j                  d7      |j                  d8      |j                  d9      |j                  d:      |j                  d;      |j                  d<      |j                  d=      |j                  d>      |j                  d?      |j                  d@      |j                  dA      |
dB   }|j                  ||       dC}|
dB   | |j                  d      dDf}|j                  ||       ndE}g | |j                  d      |j                  d
      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      |j                  d       |j                  d!      |j                  d"      |j                  d#      |j                  d$      |j                  d%      |j                  d&      |j                  d'      |j                  d(      |j                  d)      |j                  d*      |j                  d+      |j                  d,      |j                  d-      |j                  d.      |j                  d/      |j                  d0      |j                  d1      |j                  d2      |j                  d3      |j                  d4      |j                  d5      |j                  d6      |j                  d7      |j                  d8      |j                  d9      |j                  d:      |j                  d;      |j                  d<      |j                  d=      |j                  d>      |j                  d?      |j                  d@      |j                  dA      }|j                  ||       |j                          4 	 j%                          j%                          y 7 	# t         $ r}t#        dF|        Y d }~@d }~ww xY w# j%                          j%                          w xY ww)GN   )DRR CUT OFF DATEOVER DUE DATETOS DateDATE OF DISB.coerce)errorsz%Y-%m-%d z4SELECT id FROM notice_list WHERE cl_contract_id = %szCL CONTRACT IDa	  
                UPDATE notice_list SET
                    lk_loan_account_id = %s,
                    formatted_lan = %s,
                    lrn = %s,
                    language_of_notice = %s,
                    advocate_name = %s,
                    customer_name = %s,
                    zone = %s,
                    state = %s,
                    location = %s,
                    district = %s,
                    ncm = %s,
                    opn_dpd = %s,
                    drr_cut_off_date = %s,
                    current_dpd = %s,
                    current_pos = %s,
                    lender_name = %s,
                    co_lender_name = %s,
                    lender_colender_ratio = %s,
                    current_month_best_dispo = %s,
                    date_of_disb = %s,
                    mob = %s,
                    non_starter_flag = %s,
                    loan_amount = %s,
                    pos_amount_in_lakh = %s,
                    emi_amount = %s,
                    emi_frequency = %s,
                    overdue_emi_amount = %s,
                    over_due_charges = %s,
                    total_overdue_amount = %s,
                    over_due_date = %s,
                    tos_amount = %s,
                    tos_date = %s,
                    payment_link = %s,
                    lk_contact_person_name = %s,
                    email_id = %s,
                    lk_contact_person_cell_no = %s,
                    borrower_name = %s,
                    borrower_address = %s,
                    borrower_city = %s,
                    borrower_state = %s,
                    borrower_pin_code = %s,
                    borrower_email_id = %s,
                    borrower_mob_no = %s,
                    co_borrower_1_name = %s,
                    co_borrower_1_address = %s,
                    co_borrower_1_city = %s,
                    co_borrower_1_state = %s,
                    co_borrower_1_pin_code = %s,
                    co_borrower_1_email_id = %s,
                    co_borrower_1_mob_no = %s,
                    primary_sms_whats_app_no = %s,
                    primary_email_id = %s,
                    secondary_sms_whats_app_no = %s,
                    secondary_email_id = %s,
                    date_of_issue = %s,
                    link = %s,
                    updated_at = NOW()
                WHERE id = %s
                zLK LOAN ACCOUNT IDzFORMATTED LANLRNzLanguage of NoticezAdvocate NamezCUSTOMER NAMEZONESTATELOCATIONDISTRICTNCMzOPN DPDr/   zCURRENT DPDzCURRENT POSzLENDER NAMEzCO-LENDER NAMEzLENDER-COLENDER RATIOzCURRENT MONTH BEST DISPOr2   MOBzNON-STARTER FLAGzLOAN AMOUNTzPOS Amount in Lakhz
EMI AMOUNTzEMI FREQUENCYzOVERDUE EMI AMOUNTzOVER DUE CHARGESzTOTAL OVERDUE AMOUNTr0   z
TOS AMOUNTr1   zPAYMENT LINKzLK CONTACT PERSON NAMEzEMAIL IDzLK CONTACT PERSON CELL NOzBORROWER NAMEzBORROWER ADDRESSzBORROWER CITYzBORROWER STATEzBORROWER PIN CODEzBORROWER EMAIL IDzBORROWER MOB NOzCO-BORROWER-1 NAMEzCO-BORROWER-1 ADDRESSzCO-BORROWER-1 CITYzCO-BORROWER-1 STATEzCO-BORROWER-1 PIN CODEzCO-BORROWER-1 EMAIL IDzCO-BORROWER-1 MOB NOzPrimary SMS/Whats App NozPrimary Email IDzSecondary SMS/Whats App NozSecondary Email IDzdate of issuelinkr   a  
                INSERT INTO notice_list_data (
                    notice_list_id,
                    file_list_id,
                    cl_contract_id,
                    status,
                    created_at,
                    updated_at
                ) VALUES (
                    %s,
                    %s,
                    %s,
                    %s,
                    NOW(),
                    NOW()
                )
                ReissuedaZ  
                INSERT INTO notice_list (
                    file_list_id, cl_contract_id, lk_loan_account_id, formatted_lan, lrn, language_of_notice,
                    advocate_name, customer_name, zone, state, location, district, ncm, opn_dpd, drr_cut_off_date,
                    current_dpd, current_pos, lender_name, co_lender_name, lender_colender_ratio, current_month_best_dispo,
                    date_of_disb, mob, non_starter_flag, loan_amount, pos_amount_in_lakh, emi_amount, emi_frequency,
                    overdue_emi_amount, over_due_charges, total_overdue_amount, over_due_date, tos_amount, tos_date,
                    payment_link, lk_contact_person_name, email_id, lk_contact_person_cell_no, borrower_name,
                    borrower_address, borrower_city, borrower_state, borrower_pin_code, borrower_email_id,
                    borrower_mob_no, co_borrower_1_name, co_borrower_1_address, co_borrower_1_city, co_borrower_1_state,
                    co_borrower_1_pin_code, co_borrower_1_email_id, co_borrower_1_mob_no, primary_sms_whats_app_no,
                    primary_email_id, secondary_sms_whats_app_no, secondary_email_id, date_of_issue, link,
                    created_at, updated_at, status
                ) VALUES (
                    %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s,
                    %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, 
                    %s, %s, %s, %s, %s, %s, NOW(), NOW(), 'First Notice Send'
                )
                zError inserting file data: )r   r   pd
read_excelheadwherenotnullto_datetimedtr   fillnaiterrowsr   getfetchoner   r   r   r   )r)   r$   r&   r   dfdate_columnscolr	   rowselect_queryexisting_recordupdate_queryr(   r'   insert_valuesr*   s                   r+   r   r   9   s
    K\! ]]9%WWQZXXbjjnd+ Z 	WCnnRWX>AAJJ:VBsG	W YYr] kkm s	FAsQLNN<#''2B*C)EF$oo/O< z:GG01:GGO,: GGEN: GG01	:
 GGO,: GGO,: GGFO: GGG$: GGJ': GGJ': GGEN: GGI&: GG./: GGM*: GGM*:  GGM*!:" GG,-#:$ GG34%:& GG67':( GGO,):* GGEN+:, GG./-:. GGM*/:0 GG011:2 GGL)3:4 GGO,5:6 GG017:8 GG./9:: GG23;:< GGO,=:> GGL)?:@ GGJ'A:B GGN+C:D GG45E:F GGJ'G:H GG78I:J GGO,K:L GG./M:N GGO,O:P GG,-Q:R GG/0S:T GG/0U:V GG-.W:X GG01Y:Z GG34[:\ GG01]:^ GG12_:` GG45a:b GG45c:d GG23e:f GG67g:h GG./i:j GG89k:l GG01m:n GGO,o:p GGFOq:r $A&s:v |V4 ( $A& GG,-	! |]; &; ;GG,-; GG01; GGO,	;
 GGEN; GG01; GGO,; GGO,; GGFO; GGG$; GGJ'; GGJ'; GGEN; GGI&; GG./;  GGM*!;" GGM*#;$ GGM*%;& GG,-';( GG34);* GG67+;, GGO,-;. GGEN/;0 GG./1;2 GGM*3;4 GG015;6 GGL)7;8 GGO,9;: GG01;;< GG./=;> GG23?;@ GGO,A;B GGL)C;D GGJ'E;F GGN+G;H GG45I;J GGJ'K;L GG78M;N GGO,O;P GG./Q;R GGO,S;T GG,-U;V GG/0W;X GG/0Y;Z GG-.[;\ GG01];^ GG34_;` GG01a;b GG12c;d GG45e;f GG45g;h GG23i;j GG67k;l GG./m;n GG89o;p GG01q;r GGO,s;t GGFOu;x |V4 KKMgs	n 	

S "J  1+A3/001 	

sQ   e6d- d*c6d- e 	!e6*d- -	e6e	e 	ee "e33e6)	r   r   models.connectr   pandasr?   asyncior,   r        r+   <module>rW      s     	  %  /bLrV   