Files
Anton_wireframe/app/routers/__pycache__/investors.cpython-312.pyc
T

172 lines
23 KiB
Plaintext
Raw Normal View History

Ë
Û(iXãó¢ddlmZddlmZddlmZmZmZmZddl m
Z
m Z m Z m
Z
ddlmZddlmZmZmZmZmZmZddlmZmZmZddlmZmZe
d g¬
«ZGd d e«ZGd
de«Z ejCdee¬«e
ddd¬«e
dddd¬«e
dd¬«e e«fde"de"dee"defd«Z#ejCd ee¬«e
dd!¬«e
dd"¬«e
dd#¬«e
dd$¬«e
dd%¬«e
dd&¬«e
dd'¬«e
ddd¬«e
dddd¬«e
dd¬«e e«f d(eed)ee"d*ee"d+ee$d,ee$d-ee"d.ee"de"de"dee"defd/„«Z%ejCd0e¬«e e«fd1e"defd2„«Z&ejOde¬«e e«fd3edefd4„«Z(ejSd0e¬«e e«fd1e"d3e defd5„«Z*ejWd0«e e«fd1e"defd6„«Z,ejCd7ee¬«e
dd8¬«e
ddd¬«e
dddd¬«e e«fd1e"d9e"de"de"def
d:„«Z-y);é)ÚOptional)Úget_db)Ú FundTableÚ
InvestorTableÚ ProjectTableÚ SectorTable)Ú APIRouterÚDependsÚ
HTTPExceptionÚQuery)Ú BaseModel)ÚCompanyMinimalÚInvestmentResponseÚInvestmentStageÚ InvestorDataÚPaginatedResponseÚ
SectorMinimal)Ú(calculate_project_investor_compatibilityÚ%_calculate_project_fund_compatibilityÚ0_calculate_project_investor_direct_compatibility)ÚSessionÚ selectinloadzInvestor Routes)ÚtagscóŠeZdZUeed<dZeeed<dZeeed<dZeeed<e ed<e ed<e ed<eed <d
Z
e ed <y) ÚInvestorCreateÚnameNÚ descriptionÚwebsiteÚ headquartersÚaumÚcheck_size_lowerÚcheck_size_upperÚgeographic_focusrÚnumber_of_investments) Ú__name__Ú
__module__Ú __qualname__ÚstrÚ__annotations__rrrrÚintr$©óúL/home/oluwasanmi/Documents/Work/MKD/anton_wireframe/app/routers/investors.pyrrsSØ
ƒIØ!%€K˜#‘Ó!€GˆXc‰]Ó!Ø"&€L(˜3 ƒHØÓØÓØÓØ!"И"r,rcóÂeZdZUdZeeed<dZeeed<dZeeed<dZ eeed<dZ
ee ed<dZ ee ed<dZ
ee ed<dZeeed <dZee ed
<y) ÚInvestorUpdateNrrrrr r!r"r#r$)r%r&r'rrr(r)rrrr r*r!r"r#r$r+r,r-r/r/&s„Ø€Dˆ(3‰-ÓØ!%€K˜#‘Ó!€GˆXc‰]Ó!Ø"&€L(˜3€Cˆ#‰ÓØ&*Ðh˜s*Ø&*Ðh˜s*Ø&*Ðh˜s*Ø+/И8 C™=Ô/r,r/z
/investors)Úresponse_modelézPage number (starts at 1))Úgeré
édzItems per page (max 100))r2ÚlerNz-Optional project ID for compatibility scoring)rÚpageÚ page_sizeÚ
project_idÚdbcóh|dz
|z}|jt«j«}d}|x|jt«j t tj ««jtj|k(«j«}|s
tdd¬«|jt«j t tj«t tj«t tj«t tj«j tj «t tj«j tj««j#|«j%|«j'«}g}|D} | jddD
cgc]#}
t)|
j|
j*¬«Œ%} }
| jr9| jD]'} d}
|
t-|| ¬ «}
| j r3d
j/| j Dcgc]}|j*Œc}«nd}| jr| jddngDcgc]#}t1|j|j*¬«Œ%}}t3| j| j4r| j*d | j4n | j*| j6| j8| j:| j<|| ||
¬ «
}|j?|«Œ*Œ…d}
|
tA|| ¬
«}
t3| j| j*| j6dddd| g|
¬ «
}|j?|«ŒÜ||zdz
|z}tC|||||¬«Scc}
wcc}wcc}w)aGet all investors with their funds as separate entries (paginated)
Each investor-fund combination is returned as a separate row.
An investor with 3 funds will appear as 3 entries.
If project_id is provided, calculates compatibility scores for each investor.
r1Né”úProject not found©Ú status_codeÚdetailé©Úidrçð?©ÚprojectÚfundú, ú - ©
rBrr r!r"r#Ú stage_focusÚportfolio_companiesÚsectorsÚcompatibility_score)rEÚinvestor©ÚitemsÚtotalr6r7Ú total_pages)"ÚqueryrÚcountrÚoptionsrÚsectorÚfilterrBÚfirstr rKÚ team_membersrLÚfundsrÚinvestment_stagesÚoffsetÚlimitÚallrrrÚjoinrrÚ fund_namer r!r"r#Úappendrr)r6r7r8r9r\Ú total_countrEÚ investorsÚinvestment_responsesrNÚcompanyrKrFrMÚstagerJrVÚ fund_sectorsÚinvestment_responserRs r-Úread_investorsri2sYð"Q‰h˜
#€Fð—(‘(œ=Ó1€Kð€GØÐà H‰H”\Ó
‰W”\¤,×"5Ñ"5Ó
‰V”L—OO 
‰U‹Wð ñ ܨCÐ8KÔ  Óß Ü œ× œ× œ× œ× :¼9×;VÑ;VÓ œ× :¼9×;LÑ;LÓ 
÷
ß ˆyÓ ß ððÐØóBð¸Ð
àô
˜gŸj™j¨w¯|©|Ö 
Ðð
ð > Ÿó#
Aà&)ÐÐ&Ü*OØ '¨dô+Ð×—II°t×7MÑ7MÖN¨e˜uŸzðð8<·|²| 4§<¡<°°Ñ#3Èö àô" V§Y¡Y°V·[±[Ö  ð ô
'9Ø—{—~%ŸM™M˜?¨#¨d¯n©nÐ-=ÑØ Ÿ Ø%)×%:Ñ%:Ø%)×%:Ñ%:Ø%)×%:Ñ%:Ø +Ø(;Ø(Ø(;ô
'Ð%×+Ð,?Ö@òG#
AðN#&Ð ØÐ"Ü&VØ#¨hô'Ð#5Ø—;—]‘]Ø—L‘LØ!%Ø!%Ø!%Ø Ø$7ØØ$7ô #Ð ð
!× 'Ð(;Ö <ðEB=ðJ Ñ*¨QÑ.°9Ñ<€Kä ØØ
ØØô  ðùòK
ùò"Oùò  sÇ(N%È?N* É:(N/z/investors/filterzFilter by investment stagezMinimum check sizezMaximum check sizez Geographic focus (partial match)zSector name (partial match)z Minimum AUMz Maximum AUMrfÚmin_check_sizeÚmax_check_sizeÚ geographyrVÚmin_aumÚmax_aumc
óP d} | x|
jt«jttj««j tj | k(«j«} | s
tdd¬«|
jt«jttj«jtj«ttj«jtj«ttj«jtj«ttj«ttj««} |"| j tj |k\«} |"| j tj"|k«} |r2| j tj$j'd|d««} |?| j)tj«j tj*|k\«} |C|| j)tj«} | j tj*|k«} |rO| j)tj«j t,j.j'd|d««} | j1«}
|dz
|z}| j3|«j5|«j7«}g}|D]n}|j}d}|
t9| |¬«}|jdd Dcgc]#}t;|j |j.¬
«Œ%}}|jr3d j)|jDcgc]}|j.Œc}«nd}|jr|jdd ngDcgc]#}t=|j |j.¬
«Œ%}}t?|j |j@r|j.d |j@n |j.|j*|j |j"|j$||||¬
«
}|jC|«Œq|
|zdz
|z}tE||
|||¬«Scc}wcc}wcc}w)züFilter investors based on various criteria (paginated)
Returns investor-fund combinations as separate rows.
Queries the funds table to find matching funds.
If project_id is provided, calculates compatibility scores for each investor.
Nr;r<r=ú%r1rCrDr@rArGrHrIrO)#rSrrUrrVrWrBrXr rrNrrKrYrLr[r!r"r#Úiliker_r rrrTr\r]r^rrrrr`rar)rfrjrkrlrVrmrnr6r7r8r9rErSrbr\rZrdrFrNrMrerKrJrgrhrRs r-Úfilter_investorsrrµsÿð:€GØÐà H‰H”\Ó
‰W”\¤,×"5Ñ"5Ó
‰V”L—OO 
‰U‹Wð ñ ܨCÐ8KÔ 
H‰H”YÓ × ”Y×(× × 
ô ”Y×(×5´m×6PÑ6PÓ”Y×(×5´m×6KÑ6KÓ”Y×”Y×
€EðÐ œY×7¸>ÑàÐ œY×7¸>ÑáØ œY×À)ÀÈAÐ>NÓðÐØ
œ9×.×5´m×6GÑ6GÈ7Ñ6RÓàÐØ ˆ?Ø—J‘Jœy×2ˆEØ œ]×.°'Ñ:ˆñØ
œ9× × Ñ × " Q v h¨a  
ˆð
—+‘+“-€KðQ‰h˜)Ñ
#€FØ L‰L˜Ó × &  1× 7€EðÐØó+Ø—=‘=ˆðØ Ð Ü"GØ #Ð ð¸Ð
àô
˜gŸj™j¨w¯|©|Ö 
Ðð
ð×
I‰I¨t×/EÑ/EÖF eu—z“zÒ ð ð04¯|ª|˜4Ÿ<™<¨¨Ñö
àô
˜VŸY™Y¨V¯[©[Ö 
ˆ ð
ô
{‰{à~Š~ð—MM? # d§n¡nÐ%5ÑØ Ø#Ø 3Ø Ø 3ô

Ðð ×#Ð$7Ö8ðW+9ð\ Ñ*¨QÑ.°9Ñ<€Kä ØØ
ØØô  ðùòK
ùòGùò 
sÌ>(RÎ
R
Ï(R#z/investors/{investor_id}Ú investor_idcóò|jt«jttj«ttj
«ttj «ttj««jtj|k(«j«}|s
tdd¬«t||j|j
|j |j¬«S)z2Get a specific investor by ID with all their fundsr;úInvestor not foundr=©rNrKrYrLrZ)
rSrrUrrKrYrLrZrWrBrXr r)rsr9rNs r-Ú
read_investorrwCð Óß Ü œ× œ× œ× œ× 
÷

× Ñ  KÑ/Ó 0ß ð
ñ ܨÐ4HÔ ØØ×× Ñ Øn‰nô  ðr,rNcó~tdi|j«¤Ž}|j|«|j«|j |«|j t«j
ttj«ttj«ttj«ttj««jtj|jk(«j«}t||j|j|j|j¬«S)zCreate a new investorrvr+)rÚdictÚaddÚcommitÚrefreshrSrUrrKrYrLrZrWrBrXr)rNr9Ú db_investorÚinvestor_with_relationss r-Úcreate_investorr_ô Ñ2 (§-¡-£/Ñ2€K؇FFˆ;ÔØ‡II„K؇JJˆ{Ôð Óß Ü œ× œ× œ× œ× 
÷

× Ñ  K§N¡NÑ2Ó 3ß ðô Ø,×'×%×  ðr,có(|jt«jtj|k(«j «}|s
t dd¬«|j
d¬«}|j«D]\}}t|||«Œ|j«|j|«|jt«jttj«ttj«ttj«ttj ««jtj|k(«j «}t#||j|j|j|j ¬«S)zUpdate an existing investorr;rur=T)Ú
exclude_unsetrv)rSrrWrBrXr ryrPÚsetattrr{r|rUrrKrYrLrZr)rsrNr9r}Ú update_dataÚfieldÚvaluer~s r-Úupdate_investorr†~s?ð Ó×&¤}×'7Ñ'7¸;Ñ'FÓG×ñ ܨÐ4HÔ—-‘-¨d3€KØ+‰ ˆˆuÜ ˜U EÕ‡II„K؇JJˆ{Ôð Óß Ü œ× œ× œ× œ× 
÷

× Ñ  KÑ/Ó 0ß ðô Ø,×'×%×  ðr,cóð|jt«jtj|k(«j «}|s
t dd¬«|j
|«|j«ddiS)zDelete an investorr;rur=ÚmessagezInvestor deleted successfully)rSrrWrBrXr Údeleter{)rsr9r}s r-Údelete_investorrЧshð Ó×&¤}×'7Ñ'7¸;Ñ'FÓG×ñ ܨÐ4HÔ‡IIˆkÔØ‡II„KØ Ð 7r,z /investors/{investor_id}/similarz-Maximum number of similar investors to returnr]c
óŠ|jt«jttj«ttj
«ttj «ttj«jtj«ttj«jtj ««jtj|k(«j«}|s
tdd¬«t«}t«}g}g} |jD}
|
j r3|j|
j D chc]} | jŒc} «|
jr3|j|
jD chc]} | jŒc} «|