| 1 |
- {"nodes": [{"id": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "label": "contact.py", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L1"}, {"id": "crm_contact_contact_to_dict", "label": "_contact_to_dict()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L21"}, {"id": "crm_contact_fill_create_fields", "label": "_fill_create_fields()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L47"}, {"id": "crm_contact_fill_update_fields", "label": "_fill_update_fields()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L56"}, {"id": "crm_contact_parse_date", "label": "_parse_date()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L61"}, {"id": "crm_contact_contactquery", "label": "ContactQuery", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L75"}, {"id": "pagequery", "label": "PageQuery", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "crm_contact_contactform", "label": "ContactForm", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L86"}, {"id": "camelmodel", "label": "CamelModel", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "crm_contact_list_contacts", "label": "list_contacts()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L112"}, {"id": "crm_contact_list_by_customer", "label": "list_by_customer()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L141"}, {"id": "crm_contact_list_decision_makers", "label": "list_decision_makers()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L161"}, {"id": "crm_contact_list_primary_contacts", "label": "list_primary_contacts()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L180"}, {"id": "crm_contact_list_birthday_contacts", "label": "list_birthday_contacts()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L199"}, {"id": "crm_contact_get_contact", "label": "get_contact()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L224"}, {"id": "crm_contact_add_contact", "label": "add_contact()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L241"}, {"id": "crm_contact_update_contact", "label": "update_contact()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L280"}, {"id": "crm_contact_set_primary", "label": "set_primary()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L333"}, {"id": "crm_contact_delete_contacts", "label": "delete_contacts()", "file_type": "code", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L360"}], "edges": [{"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "datetime", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L1", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "typing", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L2", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "fastapi", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L4", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "pydantic", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L5", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "pydantic_alias_generators", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L6", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "sqlalchemy_orm", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L7", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "app_database", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L9", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "app_models_crm_contact", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L10", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "app_models_system", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L11", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "app_schemas", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L12", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "app_middleware", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L13", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "app_utils", "relation": "imports_from", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L14", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_contact_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L21", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_fill_create_fields", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L47", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_fill_update_fields", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L56", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_parse_date", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L61", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_contactquery", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L75", "weight": 1.0}, {"source": "crm_contact_contactquery", "target": "pagequery", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L75", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_contactform", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L86", "weight": 1.0}, {"source": "crm_contact_contactform", "target": "camelmodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L86", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_list_contacts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L112", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_list_by_customer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L141", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_list_decision_makers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L161", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_list_primary_contacts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L180", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_list_birthday_contacts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L199", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_get_contact", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L224", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_add_contact", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L241", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_update_contact", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L280", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_set_primary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L333", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia_crm_py_backend_app_routers_crm_contact_py", "target": "crm_contact_delete_contacts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L360", "weight": 1.0}, {"source": "crm_contact_list_contacts", "target": "crm_contact_contact_to_dict", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L137", "weight": 1.0}, {"source": "crm_contact_list_by_customer", "target": "crm_contact_contact_to_dict", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L157", "weight": 1.0}, {"source": "crm_contact_list_decision_makers", "target": "crm_contact_contact_to_dict", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L176", "weight": 1.0}, {"source": "crm_contact_list_primary_contacts", "target": "crm_contact_contact_to_dict", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L195", "weight": 1.0}, {"source": "crm_contact_list_birthday_contacts", "target": "crm_contact_contact_to_dict", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L220", "weight": 1.0}, {"source": "crm_contact_get_contact", "target": "crm_contact_contact_to_dict", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L237", "weight": 1.0}, {"source": "crm_contact_add_contact", "target": "crm_contact_parse_date", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L259", "weight": 1.0}, {"source": "crm_contact_add_contact", "target": "crm_contact_fill_create_fields", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L273", "weight": 1.0}, {"source": "crm_contact_update_contact", "target": "crm_contact_parse_date", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L317", "weight": 1.0}, {"source": "crm_contact_update_contact", "target": "crm_contact_fill_update_fields", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L327", "weight": 1.0}, {"source": "crm_contact_set_primary", "target": "crm_contact_fill_update_fields", "relation": "calls", "confidence": "EXTRACTED", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L354", "weight": 1.0}], "raw_calls": [{"caller_nid": "crm_contact_contact_to_dict", "callee": "strftime", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L36"}, {"caller_nid": "crm_contact_contact_to_dict", "callee": "strftime", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L41"}, {"caller_nid": "crm_contact_contact_to_dict", "callee": "strftime", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L42"}, {"caller_nid": "crm_contact_fill_create_fields", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L48"}, {"caller_nid": "crm_contact_fill_create_fields", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L49"}, {"caller_nid": "crm_contact_fill_create_fields", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L50"}, {"caller_nid": "crm_contact_fill_create_fields", "callee": "now", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L51"}, {"caller_nid": "crm_contact_fill_create_fields", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L52"}, {"caller_nid": "crm_contact_fill_create_fields", "callee": "now", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L53"}, {"caller_nid": "crm_contact_fill_update_fields", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L57"}, {"caller_nid": "crm_contact_fill_update_fields", "callee": "now", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L58"}, {"caller_nid": "crm_contact_parse_date", "callee": "strptime", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L66"}, {"caller_nid": "crm_contact_parse_date", "callee": "date", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L67"}, {"caller_nid": "crm_contact_list_contacts", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L117"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L118"}, {"caller_nid": "crm_contact_list_contacts", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L118"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L123"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L125"}, {"caller_nid": "crm_contact_list_contacts", "callee": "like", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L125"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L127"}, {"caller_nid": "crm_contact_list_contacts", "callee": "like", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L127"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L129"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L131"}, {"caller_nid": "crm_contact_list_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L133"}, {"caller_nid": "crm_contact_list_contacts", "callee": "count", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L135"}, {"caller_nid": "crm_contact_list_contacts", "callee": "all", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L136"}, {"caller_nid": "crm_contact_list_contacts", "callee": "limit", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L136"}, {"caller_nid": "crm_contact_list_contacts", "callee": "offset", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L136"}, {"caller_nid": "crm_contact_list_contacts", "callee": "order_by", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L136"}, {"caller_nid": "crm_contact_list_contacts", "callee": "desc", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L136"}, {"caller_nid": "crm_contact_list_contacts", "callee": "build", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L137"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L146"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "all", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L148"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "order_by", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L148"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L148"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L148"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "desc", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L154"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "desc", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L154"}, {"caller_nid": "crm_contact_list_by_customer", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L157"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L165"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "all", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L167"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "order_by", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L167"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L167"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L167"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "desc", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L173"}, {"caller_nid": "crm_contact_list_decision_makers", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L176"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L184"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "all", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L186"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "order_by", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L186"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L186"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L186"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "desc", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L192"}, {"caller_nid": "crm_contact_list_primary_contacts", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L195"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L203"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "date", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L204"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "now", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L204"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "all", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L209"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "order_by", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L209"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L209"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L209"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "extract", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L214"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "extract", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L215"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "desc", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L217"}, {"caller_nid": "crm_contact_list_birthday_contacts", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L220"}, {"caller_nid": "crm_contact_get_contact", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L229"}, {"caller_nid": "crm_contact_get_contact", "callee": "first", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L230"}, {"caller_nid": "crm_contact_get_contact", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L230"}, {"caller_nid": "crm_contact_get_contact", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L230"}, {"caller_nid": "crm_contact_get_contact", "callee": "fail", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L236"}, {"caller_nid": "crm_contact_get_contact", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L237"}, {"caller_nid": "crm_contact_add_contact", "callee": "CrmContact", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L246"}, {"caller_nid": "crm_contact_add_contact", "callee": "next_id", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L247"}, {"caller_nid": "crm_contact_add_contact", "callee": "first", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L269"}, {"caller_nid": "crm_contact_add_contact", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L269"}, {"caller_nid": "crm_contact_add_contact", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L269"}, {"caller_nid": "crm_contact_add_contact", "callee": "add", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L274"}, {"caller_nid": "crm_contact_add_contact", "callee": "flush", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L275"}, {"caller_nid": "crm_contact_add_contact", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L276"}, {"caller_nid": "crm_contact_update_contact", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L285"}, {"caller_nid": "crm_contact_update_contact", "callee": "fail", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L287"}, {"caller_nid": "crm_contact_update_contact", "callee": "first", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L288"}, {"caller_nid": "crm_contact_update_contact", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L288"}, {"caller_nid": "crm_contact_update_contact", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L288"}, {"caller_nid": "crm_contact_update_contact", "callee": "fail", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L294"}, {"caller_nid": "crm_contact_update_contact", "callee": "flush", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L328"}, {"caller_nid": "crm_contact_update_contact", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L329"}, {"caller_nid": "crm_contact_set_primary", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L338"}, {"caller_nid": "crm_contact_set_primary", "callee": "first", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L339"}, {"caller_nid": "crm_contact_set_primary", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L339"}, {"caller_nid": "crm_contact_set_primary", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L339"}, {"caller_nid": "crm_contact_set_primary", "callee": "fail", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L345"}, {"caller_nid": "crm_contact_set_primary", "callee": "update", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L347"}, {"caller_nid": "crm_contact_set_primary", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L347"}, {"caller_nid": "crm_contact_set_primary", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L347"}, {"caller_nid": "crm_contact_set_primary", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L351"}, {"caller_nid": "crm_contact_set_primary", "callee": "now", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L351"}, {"caller_nid": "crm_contact_set_primary", "callee": "flush", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L355"}, {"caller_nid": "crm_contact_set_primary", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L356"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L365"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "get", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L366"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "int", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L367"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "strip", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L367"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "split", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L367"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "strip", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L367"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "fail", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L369"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "update", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L371"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "filter", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L371"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "query", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L371"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "in_", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L373"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "now", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L377"}, {"caller_nid": "crm_contact_delete_contacts", "callee": "ok", "source_file": "/Users/wuzilong/work/00code/shanxia/crm/py-backend/app/routers/crm/contact.py", "source_location": "L379"}]}
|