HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall_new/buyercall/buyercall/lib/__pycache__/util_dms.cpython-38.pyc
U

��Tf��@s�ddlZddlZddlZddlmmZddlmZddl	m
Z
ddlmZddl
mZddlmZe�e�Zdd�Zd	d
�Zdd�Zd
d�ZGdd�de�Zdd�ZGdd�de�ZdS)�N)�AMS)�NEO)�ExternalFormFieldDefinition)�current_app)�	AESCiphercCs&t|�dkr|d|}n||}|S)Nr� ��len)�current_message�
error_message�r�F/home/arjun/projects/buyercall_new/buyercall/buyercall/lib/util_dms.py�append_errorsrcCs`tjd}t|�}|dk	rXz|�|�WStk
r>|YStk
rT|YSXn|SdS)N�CRYPTO_SECRET_KEY)�app�configr�decrypt�	TypeError�
ValueError)�text�
crypto_key�cipherrrr
�
decrypt_values
rcCs|rt|�dkr|SdSdS)Nr�r)�valuerrr
�set_string_value*srcCs�ddlm}m}tjd}|j�|��|j|k��|j	|k��
�}|r�|j}ddlm
}||d�}	|��||	�t|�}
|
�|j�}|
�|j�}|
�|j�}
|
�|j�}t||||
||�}|S)Nr��0ExternalApiServiceProvidersPartnershipAccountTie�ExternalApiServiceProvidersr)�
RequestLog)�current_url�	path_info)�'buyercall.blueprints.partnership.modelsrrrr�query�join�filter�name�partnership_account_id�first�url�$buyercall.blueprints.sysadmin.modelsr�
update_recordrr�username�password�secret�	client_idr)r'�
provider_type�
request_idrr�encrypt_key� partner_service_provider_profiler)r�update_datar�decrypted_username�decrypted_password�decrypted_secretZdecrypted_client_id�clientrrr
�
ams_client1s.
����r9c@sfeZdZdXdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Zd:d;�Zd<d=�Z d>d?�Z!d@dA�Z"dBdC�Z#dDdE�Z$dFdG�Z%dHdI�Z&dJdK�Z'dLdM�Z(dNdO�Z)dPdQ�Z*dRdS�Z+dTdU�Z,dVdW�Z-dS)Y�
AmsLeadXmlNc(CsF|dk	r|nt�d�|_|j�dd�|j�dd�t�d�|_t�d�|_t�d�|_t�d	�|_t�d
�|_t�d�|_	t�d�|_
t�d
�|_t�d�|_t�d�|_
t�|jd�}d|_t�|jd�}d|_t�|jd�}t�|jd�}d|_t�|jd�}d|_t�|jd�}d|_t�|jd�}|�dd�t�|jd�}	|	�dd�t�|jd�}
|
�dd�t�|jd �}|�dd�t�|jd�}d|_t�|jd�}
d|
_t�|jd�}t�|jd�}d|_t�|jd�}d|_t�|jd�}d|_t�|jd�}|�dd�t�|jd�}|�dd�t�|jd�}|�dd�t�|jd �}|�dd�t�|jd!�}t�|jd"�}t�|jd#�}|�dd�t�|jd$�}|�dd�t�|jd%�}|�dd�t�|jd&�}|�dd�t�|jd'�}d(|_t�|jd)�}d*|_t�|jd+�}d,|_t�|jd-�}d.|_t�|jd/�} d0| _t�|jd1�}!t�|jd2�}"|"�dd�t�|jd3�}#|#�dd�t�|jd4�}$|$�dd�t�|jd5�}%|%�dd�t�|jd6�}&t�|jd7�}'d0|'_|j�|j�|j�|j�|j�|j�|j�|j	�|j�|j
�|j�|j�|j�|j�dS)8NZDealPushVoV1z	xmlns:xsdz http://www.w3.org/2001/XMLSchemaz	xmlns:xsiz)http://www.w3.org/2001/XMLSchema-instanceZBuyerZCoBuyerZIntegrationMappingZVehicleZCashDownZ
DealNumberZDealTypeZLenderDmsIDZSalesPerson1DmsIDZSalesPerson2DmsIDZContactTypeZProspectZContactSubTypeZPrivateZCompanyNameZCountryCode�USZ
EntityType�PersonZ
StatusType�UnknownZ
OptInEmailzxsi:nil�trueZ
OptInPhoneZ
OptInPrintZ	OptInTextZDMSStoreZ	DMSBranchZ
DSiActivityIdZDSiVehicleIdZDSiInventoryZDSiWLAccountIdZDMSIPAddresszhttps://buyercall.comZDMSName�	BuyerCallZ
DMSVersion�1ZOdometer�0ZMSRPz0.0000ZVehicleTypeZExtWarrantyExpireDateZExtWarrantyMilesZSrvcContractExpireDateZSrvcMaintMilesZCertifiedNumberZPrice)�ET�Element�root�set�buyer�co_buyer�integration�vehicle�	cash_downZdeal_numberZ	deal_typeZ
lender_dms_id�sales_person_dms_id_1Zsales_person_dms_id_2�
SubElementr�append)(�self�eltZcontact_typeZcontact_sub_typeZcompany_name�country_codeZentity_typeZstatus_typeZopt_in_emailZopt_in_phoneZopt_in_printZopt_in_textZco_applicant_contact_typeZco_applicant_contact_sub_typeZco_applicant_company_nameZco_applicant_country_codeZco_applicant_entity_typeZco_applicant_status_typeZco_applicant_opt_in_emailZco_applicant_opt_in_phoneZco_applicant_opt_in_printZco_applicant_opt_in_textZ	dms_storeZ
dms_branchZdsi_activity_idZdsi_vehicle_idZdsi_inventory_idZdsi_wl_account_idZdsi_addressZdms_nameZdms_versionZodometerZmsrpZvehicle_typeZwarranty_expire_dateZwarranty_milesZservice_contract_expireZservice_maintenance_milesZcertified_numberZpricerrr
�__init__Us�zAmsLeadXml.__init__cCstj|jdd�S)N�unicode)�encoding)rB�tostringrD�rNrrr
�__str__�szAmsLeadXml.__str__cCs t�d�}||_|j�|�|S�NZAddress1�rBrCrrFrM�rNrrOrrr
�	address_1�s�zAmsLeadXml.address_1cCs t�d�}||_|j�|�|S�NZAddress2rXrYrrr
�	address_2�s�zAmsLeadXml.address_2cCs t�d�}||_|j�|�|S�N�BirthdayrXrYrrr
�birthday�s�zAmsLeadXml.birthdaycCs t�d�}||_|j�|�|S�NZ	CellPhonerXrYrrr
�mobile_phone�s�zAmsLeadXml.mobile_phonecCs t�d�}||_|j�|�|S�N�CityrXrYrrr
�city�s�zAmsLeadXml.citycCs t�d�}||_|j�|�|S�NZDriversLicenserXrYrrr
�drivers_license�s�zAmsLeadXml.drivers_licensecCs t�d�}||_|j�|�|S�NZEmail1rXrYrrr
�email�s�zAmsLeadXml.emailcCs t�d�}||_|j�|�|S�N�	FirstNamerXrYrrr
�	firstname�s�zAmsLeadXml.firstnamecCs t�d�}||_|j�|�|S�NZ	HomePhonerXrYrrr
�phonenumbers�zAmsLeadXml.phonenumbercCs t�d�}||_|j�|�|S�N�LastNamerXrYrrr
�lastnames�zAmsLeadXml.lastnamecCs t�d�}||_|j�|�|S�NZ
MiddleNamerXrYrrr
�
middlenames�zAmsLeadXml.middlenamecCs t�d�}||_|j�|�|S�N�StaterXrYrrr
�states�zAmsLeadXml.statecCs t�d�}||_|j�|�|S�NZ	WorkPhonerXrYrrr
�
work_phone's�zAmsLeadXml.work_phonecCs t�d�}||_|j�|�|S�N�ZiprXrYrrr
�zip/s�zAmsLeadXml.zipcCs t�d�}||_|j�|�|S�NZSSNrXrYrrr
�ssn7s�zAmsLeadXml.ssncCs:t�d�}||_|j�|�|j|jkr6|j�|j�|SrW�rBrCrrGrMrDrYrrr
�co_applicant_address_1@s�z!AmsLeadXml.co_applicant_address_1cCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Sr[r}rYrrr
�co_applicant_address_2Ls�z!AmsLeadXml.co_applicant_address_2cCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Sr]r}rYrrr
�co_applicant_birthdayXs�z AmsLeadXml.co_applicant_birthdaycCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Sr`r}rYrrr
�co_applicant_mobile_phoneds�z$AmsLeadXml.co_applicant_mobile_phonecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srbr}rYrrr
�co_applicant_cityps�zAmsLeadXml.co_applicant_citycCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srer}rYrrr
�co_applicant_driver_license|s�z&AmsLeadXml.co_applicant_driver_licensecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srgr}rYrrr
�co_applicant_email�s�zAmsLeadXml.co_applicant_emailcCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srir}rYrrr
�co_applicant_firstname�s�z!AmsLeadXml.co_applicant_firstnamecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srlr}rYrrr
�co_applicant_phonenumber�s�z#AmsLeadXml.co_applicant_phonenumbercCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srnr}rYrrr
�co_applicant_lastname�s�z AmsLeadXml.co_applicant_lastnamecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srqr}rYrrr
�co_applicant_middlename�s�z"AmsLeadXml.co_applicant_middlenamecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srsr}rYrrr
�co_applicant_state�s�zAmsLeadXml.co_applicant_statecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srvr}rYrrr
�co_applicant_work_phone�s�z"AmsLeadXml.co_applicant_work_phonecCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Srxr}rYrrr
�co_applicant_zip�s�zAmsLeadXml.co_applicant_zipcCs:t�d�}||_|j�|�|j|jkr6|j�|j�|Sr{r}rYrrr
�co_applicant_ssn�s�zAmsLeadXml.co_applicant_ssncCs t�d�}||_|j�|�|S)NZ	DSiSiteId�rBrCrrHrMrYrrr
�
dealer_lot_id�s�zAmsLeadXml.dealer_lot_idcCs t�d�}||_|j�|�|S)NZ	DMSDealerr�rYrrr
r/�s�zAmsLeadXml.client_idcCs t�d�}||_|j�|�|S)NZDMSUsernamer�rYrrr
r,s�zAmsLeadXml.usernamecCs t�d�}||_|j�|�|S)NZDMSPasswordr�rYrrr
r-s�zAmsLeadXml.passwordcCs t�d�}||_|j�|�|S)N�Make�rBrCrrIrMrYrrr
�vehicle_makes�zAmsLeadXml.vehicle_makecCs t�d�}||_|j�|�|S)N�Modelr�rYrrr
�
vehicle_model"s�zAmsLeadXml.vehicle_modelcCs t�d�}||_|j�|�|S)NZYearr�rYrrr
�vehicle_year*s�zAmsLeadXml.vehicle_yearcCs t�d�}||_|j�|�|S)NZVINr�rYrrr
�vin2s�zAmsLeadXml.vincCs t�d�}||_|j�|�|S)NZStockNumberr�rYrrr
�stock_number:s�zAmsLeadXml.stock_numbercCs||j_|jS�N)rJr�rNrrrr
�down_payment_amountCszAmsLeadXml.down_payment_amountcCs(||j_|j|jkr"|j�|j�|jSr�)rKrrDrMr�rrr
�representativeHszAmsLeadXml.representative)N).�__name__�
__module__�__qualname__rQrVrZr\r_rardrfrhrkrmrprrrurwrzr|r~rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r/r,r-r�r�r�r�r�r�r�rrrr
r:TsV
n	
			
	r:cCspddlm}m}tjd}|j�|��|j|k��|j	|k��
�}|rl|j}t|�}|�
|j�}	t|	||�}
|
S)Nrrr)r"rrrrr#r$r%r&r'r(r)rrr.r)r'r0r1rrr2r3r)rr7r8rrr
�
neo_clientQs
���r�c@s�eZdZgZgZiZiZiZiZdZ	dZ
dZdZdZ
dZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,dZ-dZ.dZ/dZ0dZ1dZ2dZ3dZ4dZ5dZ6dZ7dZ8dZ9dZ:dZ;dZ<dZ=dZ>dZ?dZ@dZAdZBdZCdZDdZEdZFdZGdZHdZIdZJdZKdZLdZMdZNdZOdZPdZQdZRdZSdZTdZUdZVdZWdZXdZYdZZdZ[dZ\dZ]dZ^dZ_dZ`dZadZbdZcdZddZedZfdZgdZhdZidZjddd�Zkdd�Zldd�Zmdd	�Znd
d�Zodd
�Zpdd�Zqdd�Zrdd�Zsdd�ZtdS)�NeoLeadNcCsP|r||jd<d|jd<d|jd<d|jd<d|jd<d	|jd
<||_||_dS)N�neo_idZOnline�typeZFresh�statusr?Zadvertising_sourceZreferral_sourcerzjoint-income)�application�lead_fields�field_definition_list)rNr�r�r�rrr
rQ�s





zNeoLead.__init__c	Cs�d}d}�z�|jD�
]j}t�|j|j�}t|j�}d|krLt|�dkrL||_d|krft|�dkrf||_	d|kr�t|�dkr�||_
d|kr�t|�dkr�||_d|k�rt|�dk�rz*|�d	d
�}t
j
�|d��d�}||_Wn"t|d
t|�d�}YnX|j�st|�|_d|k�r|t|�dk�r||�d
d�}t|�dk�rv|dd�}|dd�}	|dd�}
d�||	|
�}||_d|k�r�t|�dk�r�||_d|k�r�t|�dk�r�||_d|k�r�t|�dk�r�||_d|k�r�t|�dk�r�||_d|k�rt|�dk�r||_d|k�r0t|�dk�r0||_d|k�rNt|�dk�rN||_d|k�rlt|�dk�rl||_d|k�r�t|�dk�r�||_d|k�r�t|�dk�r�||_d|k�r�t|�dk�r�||_ d|k�r�t|�dk�r�||_!d |k�rt|�dk�r||_"d!|k�r t|�dk�r ||_#d"|k�r>t|�dk�r>||_$d#|k�r\t|�dk�r\||_%d$|k�rzt|�dk�rz||_&d%|k�r�t|�dk�r�||_'d&|k�r�t|�dk�r�||_(d'|k�r�t|�dk�r�||_)d(|k�r�t|�dk�r�||_*d)|k�rt|�dk�r||_+d*|k�r.t|�dk�r.||_,d+|k�rLt|�dk�rL||_-d,|k�rjt|�dk�rj||_.d-|k�r�t|�dk�r�||_/d.|k�r�t|�dk�r�||_0d/|k�r�t|�dk�r�||_1d0|k�r�t|�dk�r�||_2d1|k�rt|�dk�r||_3d2|k�rt|�dk�r||_4d3|k�r<t|�dk�r<||_5d4|k�rZt|�dk�rZ||_6d5|k�rxt|�dk�rx||_7d6|k�r�t|�dk�r�||_8d7|k�r�t|�dk�r�||_9d8|k�r�t|�dk�r�||_:d9|k�r�t|�dk�r�||_;d:|k�rt|�dk�r||_<d;|k�r�t|�dk�r�z*|�d	d
�}t
j
�|d��d�}||_=Wn"t|d<t|�d�}YnX|j=�s�t|�|_=d=|k�r�t|�dk�r�||_>d>|k�r�t|�dk�r�||_?d?|k�r�t|�dk�r�||_@d@|k�r�t|�dk�r�||_AdA|k�rt|�dk�r||_BdB|k�r:t|�dk�r:||_CdC|k�rXt|�dk�rX||_DdD|k�rvt|�dk�rv||_EdE|k�r�t|�dk�r�||_FdF|k�r�t|�dk�r�||_GdG|k�r�t|�dk�r�||_HdH|k�r�t|�dk�r�||_IdI|k�rt|�dk�r||_JdJ|k�r*t|�dk�r*||_KdK|k�rHt|�dk�rH||_LdL|k�rft|�dk�rf||_MdM|k�r�t|�dk�r�||_NdN|k�r�t|�dk�r�||_OdO|k�r�t|�dk�r�||_PdP|k�r�t|�dk�r�||_QdQ|k�r�t|�dk�r�||_RdR|k�	rt|�dk�	r||_SdS|k�	r8t|�dk�	r8||_TdT|k�	rVt|�dk�	rV||_UdU|k�	rtt|�dk�	rt||_VdV|k�	r�t|�dk�	r�||_WdW|k�	r�t|�dk�	r�||_XdX|k�	r�t|�dk�	r�||_YdY|k�	r�t|�dk�	r�||_ZdZ|k�
r
t|�dk�
r
||_[d[|k�
r(t|�dk�
r(||_\d\|k�
rFt|�dk�
rF||_]d]|k�
rdt|�dk�
rd||_^d^|krt|�dkr||__q|jdk	�
r�|jdk	�
r�|jd_|j|_|j#dk	�
r�|j$dk	�
r�|j#d_|j$|_#|j@dk	�
r�|jAdk	�
r�|j@d_|jA|_@|jEdk	�r(|jFdk	�r(|jEd_|jF|_E|j*dk	�rR|j,dk	�rR|j*d_|j,|_*|j+dk	�r||j-dk	�r||j+d_|j-|_+|jLdk	�r�|jNdk	�r�|jLd_|jN|_L|jMdk	�r�|jOdk	�r�|jMd_|jO|_MWnt|d`�}da}YnX||fS)bNrTrkrrp�gender�marital_statusr_�/�-z%m-%d-%Yz%Y-%m-%dzInvalid Application Birthday z, must be in YYYY-mm-dd format.r|�	��z{0}-{1}-{2}rhrmrarw�number_of_dependentsrZr\rdrurz�rent_or_own�address_start_date�address_monthly_cost�previous_address_1�previous_address_2�
previous_city�previous_state�previous_zip�employer�previous_employer�employer_address_1�previous_employer_address_1�employer_address_2�previous_employer_address_2�
employer_city�previous_employer_city�employer_state�previous_employer_state�employer_zip�previous_employer_zip�employment_title�previous_employment_title�income�previous_income�
pay_period�previous_pay_period�employment_start_dater�r�r�zInvalid Co-Applicant Birthday Z!co_applicant_number_of_dependentsZco_applicant_marital_statusr~rr�r�r�Zco_applicant_previous_address_1Zco_applicant_previous_address_2Zco_applicant_previous_cityZco_applicant_previous_stateZco_applicant_previous_zipZco_applicant_employerZco_applicant_previous_employerZco_applicant_employer_address_1Z(co_applicant_previous_employer_address_1Zco_applicant_employer_address_2Z(co_applicant_previous_employer_address_2Zco_applicant_employer_cityZ#co_applicant_previous_employer_cityZco_applicant_employer_stateZ$co_applicant_previous_employer_stateZco_applicant_employer_zipZ"co_applicant_previous_employer_zipZco_applicant_employment_titleZ&co_applicant_previous_employment_titleZco_applicant_incomeZco_applicant_previous_incomeZco_applicant_pay_periodZ co_applicant_previous_pay_period�"co_applicant_employment_start_date�locationr�r�rzError processing lead.F)`r�r�get_all_related_fields�field_idr�r�field_valuer	�
first_name�	last_namer�r��replace�datetime�strptime�strftimer_r�strr�formatr|rh�
home_phone�
cell_phonerwr�rZr\rdrurzr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��co_application_first_name�co_application_last_name�co_application_birthday�#co_application_number_of_dependents�co_application_marital_status�co_application_address_1�co_application_address_2�co_application_city�co_application_state�co_application_zip�!co_application_previous_address_1�!co_application_previous_address_2�co_application_previous_city�co_application_previous_state�co_application_previous_zip�co_application_employer� co_application_previous_employer�!co_application_employer_address_1�*co_application_previous_employer_address_1�!co_application_employer_address_2�*co_application_previous_employer_address_2�co_application_employer_city�%co_application_previous_employer_city�co_application_employer_state�&co_application_previous_employer_state�co_application_employer_zip�$co_application_previous_employer_zip�co_application_employment_title�(co_application_previous_employment_title�co_application_income�co_application_previous_income�co_application_pay_period�"co_application_previous_pay_periodr�r�r�r�)rNr�result�field�
field_listr��final_field_valueZclean_field_valueZsection_oneZsection_twoZ
section_threerrr
�process_lead�sl�


��










































��

































�������


zNeoLead.process_leadcCs�t|j�|jd<t|j�|jd<|j|jd<|j|jd<|j|jd<|j|jd<|j|jd<|j	|jd<t|j
�|jd	<t|j�|jd
<|j|jd<dS)Nr�r��
date_of_birthr|�
email_addressZcell_phone_numberZhome_phone_numberZwork_phone_numberr�r��dependents_number)
rr��	applicantr�r_r|rhr�r�rwr�r�r�rUrrr
�
set_applicant.szNeoLead.set_applicantcCs�g|_i}i}t|j�|d<t|j�|d<t|j�|d<t|j�|d<t|j�|d<t|j�|d<|j|d<d|d	<|j�	|�|j
r�t|j
�|d<t|j�|d<t|j�|d<t|j
�|d<d
|d	<|j�	|�dS)N�streetrdrurzZresidence_type�
start_date�paymentT�currentF)�applicant_residencesrrZrdrurzr�r�r�rMr�r�r�r��rNZcurrent_residenceZprevious_residencerrr
�set_applicant_residences;s&
z NeoLead.set_applicant_residencescCsjg|_i}i}t|j�|d<t|j�|d<t|j�|d<|j|d<|j|d<|j|d<|j|d<|j	|d<t|j
�|d	<t|j�|d
<t|j�|d<t|j
�|d<d
|d<|j�|�|j�rft|j�|d<t|j�|d<t|j�|d<|j|d<|j|d<|j|d<|j|d<|j|d<t|j�|d<t|j�|d<t|j�|d<t|j�|d<d|d<|j�|�dS)Nr��position�job_type�monthly_net_incomer��next_paydater�end_daterrdrurzTrr��previous_streetr�r�r�F)�applicant_employersrr�r�rr�r�r
r�rr�r�r�r�rMr�r��previous_job_typer�r��previous_next_paydate�previous_start_date�previous_end_dater�r�r�r��rNZcurrent_employer_objZprevious_employer_objrrr
�set_applicant_employersRs@









zNeoLead.set_applicant_employerscCs�|jdk	r~|jdk	r~i|_g|_g|_t|j�|jd<t|j�|jd<|j|jd<t|j�|jd<t|j�|jd<|j	|jd<dS)Nr�r�r�r�r�r)
r�r��co_applicant�co_applicant_employers�co_applicant_residencesrr��co_application_genderr�r�rUrrr
�set_co_applicantvszNeoLead.set_co_applicantcCs�g|_i}i}t|j�|d<t|j�|d<t|j�|d<t|j�|d<d|d<|j�|�t|j�|d<t|j�|d<t|j	�|d<t|j
�|d<d|d<|j�|�dS)NrrdrurzTrF)rrr�r�r�r�rMr�r�r�r�rrrr
�set_co_applicant_residences�sz#NeoLead.set_co_applicant_residencescCsbg|_i}i}t|j�|d<t|j�|d<t|j�|d<|j|d<|j|d<|j|d<|j|d<|j	|d<t|j
�|d	<t|j�|d
<t|j�|d<t|j
�|d<d
|d<|j�|�t|j�|d<t|j�|d<t|j�|d<|j|d<|j|d<|j|d<|j|d<|j|d<t|j�|d<t|j�|d<t|j�|d<t|j�|d<d|d<|j�|�dS)Nr�r
rrr�r
rrrrdrurzTrr�Z
start_Daterr�r�r�F)rrr�r��co_application_job_typer�r��co_application_next_paydater��co_application_end_dater�r�r�r�rMr�r�� co_application_previous_job_typer�r��$co_application_previous_next_paydate�"co_application_previous_start_date� co_application_previous_end_dater�r�r�r�rrrr
�set_co_applicant_employers�s>









z"NeoLead.set_co_applicant_employersc	Cs�d}d}z�d|jd<|jr(|j|jd<n|jr:|j|jd<|j|jd<|��|��|j|jd<|��|j	|jd<|j|jd<|�
�|jdk	r�|��|j
|jd<|��|j|jd<|j|jd<Wn(d	}t�d
�t����d}YnX||fS)NTrZcar_lotZsalespersonZ
residences�employmentsrZcoapplicantzError building lead JSON.z#Error building lead JSON. Error: {}F)r�r�r�r�rr	rrrrrrrrr$r�log�errorr��	traceback�
format_exc)rNr�rrrr
�build_lead_object�s6


zNeoLead.build_lead_objectcCsddlm}ddlm}|jS)Nr)�LogRequestTaskTrigger)�request)�=buyercall.blueprints.sysadmin.utilities.request_log_task_callr+�flaskr,r�)rNr+r,rrr
�get_lead_object�szNeoLead.get_lead_object)N)ur�r�r�r�r�r�rrrrrrr�r�r�r�r�r_r|rhr�r�rwr�r�r�rZr�r\r�rur�rdr�rzr�r�r�r�r�r�r�r�rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr�rr�r�r�r�r
rr�rrrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr�rr r!r"r#rQr�rr	rrrr$r*r/rrrr
r�js�
I
$#!r�)�loggingr�r(�xml.etree.ElementTree�etree�ElementTreerBZbuyercall.integrations.amsrZbuyercall.integrations.neor�&buyercall.blueprints.form_leads.modelsrr.rr�buyercall.lib.util_cryptor�	getLoggerr�r&rrrr9�objectr:r�r�rrrr
�<module>s(
	#