66from sqlalchemy .orm import Session
77
88from crud .company import CompanyExistException
9- from crud .contact import ContactExistException
109from dependencies .dependencies import get_db
1110from schemas import schema
1211from hubspot_api import utils
1312from crud import company as _company
14- from crud import contact as _contact
1513from routes import email
14+ from routes import contact
1615
1716app = FastAPI ()
1817app .include_router (email .router )
19-
18+ app . include_router ( contact . router )
2019templates = Jinja2Templates (directory = "templates" )
2120
2221
@@ -27,24 +26,6 @@ def read_root(request: Request):
2726 )
2827
2928
30- @app .post ("/contacts" )
31- def create_contact (contact : schema .CreateContact , db : Session = Depends (get_db )):
32- db_contact = None
33- hubspot_contact = None
34- try :
35- org_name = contact .company_name
36- db_org = _company .filter_company_by_name (db , org_name )
37- if db_org :
38- org = db_org .all ()[0 ]
39- db_contact = _contact .create_contact (db , contact , org .id )
40- hubspot_contact = utils .create_contact (data = contact .dict ())
41- except (utils .ContactException , ContactExistException ) as exc :
42- if isinstance (exc , utils .ContactException ) and db_contact :
43- _contact .delete_contact (db , db_contact .id )
44- raise HTTPException (status_code = 200 , detail = str (exc ))
45- return hubspot_contact
46-
47-
4829@app .post ("/companies" )
4930def create_company (company : schema .CreateCompany , db : Session = Depends (get_db )):
5031 db_company = None
@@ -65,12 +46,3 @@ def get_company(company_name):
6546 except utils .CompanyException as exc :
6647 raise HTTPException (status_code = 200 , detail = str (exc ))
6748 return company
68-
69-
70- @app .get ("/contact/{email}/" )
71- def get_contact (email ):
72- try :
73- contact = utils .get_contact_by_email (email )
74- except utils .ContactException as exc :
75- raise HTTPException (status_code = 200 , detail = str (exc ))
76- return contact
0 commit comments