| 1 |
- {"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "label": "quote.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1"}, {"id": "crm_quote_ensure_quote_in_scope", "label": "_ensure_quote_in_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L44"}, {"id": "crm_quote_get_quote_in_scope", "label": "_get_quote_in_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L48"}, {"id": "crm_quote_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L62"}, {"id": "crm_quote_decimal_value", "label": "_decimal_value()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L68"}, {"id": "crm_quote_parse_optional_date", "label": "_parse_optional_date()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L76"}, {"id": "crm_quote_parse_optional_datetime", "label": "_parse_optional_datetime()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L94"}, {"id": "crm_quote_get_field", "label": "_get_field()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L110"}, {"id": "crm_quote_resolve_user_display_name", "label": "_resolve_user_display_name()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L117"}, {"id": "crm_quote_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L127"}, {"id": "crm_quote_quote_row_to_dict", "label": "quote_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L184"}, {"id": "crm_quote_build_quote_filters", "label": "_build_quote_filters()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L188"}, {"id": "crm_quote_fill_contract_linked_count", "label": "_fill_contract_linked_count()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L376"}, {"id": "crm_quote_calculate_quote_amount", "label": "calculate_quote_amount()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L398"}, {"id": "crm_quote_resolve_quote_product_ids", "label": "_resolve_quote_product_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L424"}, {"id": "crm_quote_generate_quote_no", "label": "generate_quote_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L446"}, {"id": "crm_quote_generate_quote_title", "label": "generate_quote_title()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L496"}, {"id": "crm_quote_get_supplier_short_name", "label": "_get_supplier_short_name()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L508"}, {"id": "crm_quote_enrich_contact_fields", "label": "_enrich_contact_fields()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L521"}, {"id": "crm_quote_enrich_supplier_name", "label": "_enrich_supplier_name()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L532"}, {"id": "crm_quote_get_quote", "label": "get_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L540"}, {"id": "crm_quote_get_quote_detail", "label": "get_quote_detail()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L552"}, {"id": "crm_quote_list_quotes", "label": "list_quotes()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L597"}, {"id": "crm_quote_create_quote", "label": "create_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L634"}, {"id": "crm_quote_assert_quote_editable_for_update", "label": "assert_quote_editable_for_update()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L750"}, {"id": "crm_quote_update_quote", "label": "update_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L756"}, {"id": "crm_quote_soft_delete_quotes", "label": "soft_delete_quotes()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L904"}, {"id": "crm_quote_submit_quote", "label": "submit_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L931"}, {"id": "crm_quote_save_template", "label": "save_template()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L977"}, {"id": "crm_quote_get_template", "label": "get_template()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L995"}, {"id": "crm_quote_generate_pdf", "label": "generate_pdf()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1009"}, {"id": "crm_quote_generate_share", "label": "generate_share()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1029"}, {"id": "crm_quote_view_by_share_code", "label": "view_by_share_code()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1058"}, {"id": "crm_quote_accept_quote", "label": "accept_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1110"}, {"id": "crm_quote_reject_quote", "label": "reject_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1130"}, {"id": "crm_quote_to_contract", "label": "to_contract()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1152"}, {"id": "crm_quote_create_new_version", "label": "create_new_version()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1219"}, {"id": "crm_quote_query_versions", "label": "query_versions()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1300"}, {"id": "crm_quote_withdraw_quote_approval", "label": "withdraw_quote_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1321"}, {"id": "crm_quote_invalid_quote", "label": "invalid_quote()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1348"}, {"id": "crm_quote_statistics_overview", "label": "statistics_overview()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1378"}, {"id": "crm_quote_statistics_status", "label": "statistics_status()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1437"}, {"id": "crm_quote_period_key", "label": "_period_key()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1470"}, {"id": "crm_quote_statistics_trend", "label": "statistics_trend()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1479"}, {"id": "crm_quote_list_quote_column_facet_values", "label": "list_quote_column_facet_values()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1541"}, {"id": "crm_quote_rationale_1", "label": "CRM \u62a5\u4ef7\u5355 CRUD \u2014 \u5bf9\u7167 CrmQuoteServiceImpl.java\uff08P2 \u5168\u91cf\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1"}, {"id": "crm_quote_rationale_128", "label": "ORM \u2192 camelCase\uff08\u5355\u70b9\u771f\u76f8\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L128"}, {"id": "crm_quote_rationale_195", "label": "Java: buildQueryWrapper", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L195"}, {"id": "crm_quote_rationale_377", "label": "Java: fillContractLinkedCount", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L377"}, {"id": "crm_quote_rationale_402", "label": "Java: calculateAmount", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L402"}, {"id": "crm_quote_rationale_431", "label": "Java: resolveQuoteProductIds", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L431"}, {"id": "crm_quote_rationale_453", "label": "Java: generateQuoteNo \u2014 {\u4f9b\u65b9\u7f16\u7801}DD-yyyyMMdd + 3\u4f4d\u5e8f\u53f7", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L453"}, {"id": "crm_quote_rationale_912", "label": "Java: deleteWithValidByIds", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L912"}, {"id": "crm_quote_rationale_1066", "label": "Java: viewByShareCode", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1066"}, {"id": "crm_quote_rationale_1166", "label": "Java: toContract \u2014 \u8fd4\u56de contractId", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1166"}, {"id": "crm_quote_rationale_1230", "label": "Java: createNewVersion \u2014 \u8fd4\u56de\u65b0\u62a5\u4ef7\u5355 id", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1230"}, {"id": "crm_quote_rationale_1330", "label": "Java: CrmQuoteServiceImpl.withdrawApproval\uff08\u6821\u9a8c\u521b\u5efa\u4eba\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1330"}, {"id": "crm_quote_rationale_1357", "label": "\u4f5c\u5e9f\u62a5\u4ef7\u5355\uff1a\u5199\u5165 invalid_*\uff08\u539f\u56e0\u53ef\u9009\uff09\uff1b\u4e0d\u518d\u62fc remark\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1357"}, {"id": "crm_quote_rationale_1387", "label": "Java: statisticsOverview", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1387"}, {"id": "crm_quote_rationale_1442", "label": "Java: statisticsStatus", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1442"}, {"id": "crm_quote_rationale_1488", "label": "Java: statisticsTrend", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1488"}, {"id": "crm_quote_rationale_1551", "label": "\u62a5\u4ef7\u5217\u8868\u5217\u5934\u53ef\u9009\u503c\uff1a\u590d\u7528\u5217\u8868\u7b5b\u9009\uff0c\u5305\u542b\u5f85\u6211\u5ba1\u6279 / \u5df2\u5ba1\u6279\u8303\u56f4\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1551"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "secrets", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "collections", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_contact", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_customer", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L17", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_opportunity", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_product", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L19", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_services_crm_supplier_hazard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L20", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_quote_approval", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L21", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_quote_product", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L27", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_quote_share_log", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L33", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_supplier_info", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L34", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_models_crm_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L35", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L36", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_services_crm_quote_pdf", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L37", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_services_crm_list_sort", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L38", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "app_crud_crm_data_scope_helpers", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L39", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_ensure_quote_in_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L44", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_get_quote_in_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L48", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_total_pages", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L62", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_decimal_value", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L68", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_parse_optional_date", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L76", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_parse_optional_datetime", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L94", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_get_field", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L110", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_resolve_user_display_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L117", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L127", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_quote_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L184", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_build_quote_filters", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L188", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_fill_contract_linked_count", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L376", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_calculate_quote_amount", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L398", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_resolve_quote_product_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L424", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_generate_quote_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L446", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_generate_quote_title", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L496", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_get_supplier_short_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L508", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_enrich_contact_fields", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L521", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_enrich_supplier_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L532", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_get_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L540", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_get_quote_detail", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L552", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_list_quotes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L597", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_create_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L634", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_assert_quote_editable_for_update", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L750", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_update_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L756", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_soft_delete_quotes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L904", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_submit_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L931", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_save_template", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L977", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_get_template", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L995", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_generate_pdf", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1009", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_generate_share", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1029", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_view_by_share_code", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1058", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_accept_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1110", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_reject_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1130", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_to_contract", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1152", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_create_new_version", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1219", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_query_versions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1300", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_withdraw_quote_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1321", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_invalid_quote", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1348", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_statistics_overview", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1378", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_statistics_status", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1437", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_period_key", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1470", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_statistics_trend", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1479", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "target": "crm_quote_list_quote_column_facet_values", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1541", "weight": 1.0}, {"source": "crm_quote_get_quote_in_scope", "target": "crm_quote_get_quote", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L55", "weight": 1.0}, {"source": "crm_quote_get_quote_in_scope", "target": "crm_quote_ensure_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L58", "weight": 1.0}, {"source": "crm_quote_quote_row_to_dict", "target": "crm_quote_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L185", "weight": 1.0}, {"source": "crm_quote_build_quote_filters", "target": "crm_quote_get_field", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L200", "weight": 1.0}, {"source": "crm_quote_calculate_quote_amount", "target": "crm_quote_decimal_value", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L411", "weight": 1.0}, {"source": "crm_quote_calculate_quote_amount", "target": "crm_quote_get_field", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L411", "weight": 1.0}, {"source": "crm_quote_get_quote_detail", "target": "crm_quote_get_quote", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L560", "weight": 1.0}, {"source": "crm_quote_get_quote_detail", "target": "crm_quote_ensure_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L563", "weight": 1.0}, {"source": "crm_quote_get_quote_detail", "target": "crm_quote_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L565", "weight": 1.0}, {"source": "crm_quote_list_quotes", "target": "crm_quote_build_quote_filters", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L609", "weight": 1.0}, {"source": "crm_quote_list_quotes", "target": "crm_quote_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L616", "weight": 1.0}, {"source": "crm_quote_list_quotes", "target": "crm_quote_fill_contract_linked_count", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L630", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_get_field", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L643", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_get_supplier_short_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L657", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_parse_optional_date", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L666", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_generate_quote_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L672", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_generate_quote_title", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L679", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_resolve_user_display_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L682", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_decimal_value", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L698", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_enrich_contact_fields", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L723", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_enrich_supplier_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L724", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_resolve_quote_product_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L725", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_calculate_quote_amount", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L726", "weight": 1.0}, {"source": "crm_quote_create_quote", "target": "crm_quote_get_quote_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L743", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L767", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_assert_quote_editable_for_update", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L771", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_get_field", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L776", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_decimal_value", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L804", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_parse_optional_date", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L812", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_get_supplier_short_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L828", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_generate_quote_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L831", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_generate_quote_title", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L835", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_enrich_contact_fields", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L856", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_enrich_supplier_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L857", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_resolve_quote_product_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L875", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_calculate_quote_amount", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L876", "weight": 1.0}, {"source": "crm_quote_update_quote", "target": "crm_quote_get_quote_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L901", "weight": 1.0}, {"source": "crm_quote_soft_delete_quotes", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L915", "weight": 1.0}, {"source": "crm_quote_submit_quote", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L943", "weight": 1.0}, {"source": "crm_quote_submit_quote", "target": "crm_quote_get_quote_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L966", "weight": 1.0}, {"source": "crm_quote_save_template", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L986", "weight": 1.0}, {"source": "crm_quote_get_template", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1003", "weight": 1.0}, {"source": "crm_quote_generate_pdf", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1017", "weight": 1.0}, {"source": "crm_quote_generate_pdf", "target": "crm_quote_get_quote_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1020", "weight": 1.0}, {"source": "crm_quote_generate_share", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1039", "weight": 1.0}, {"source": "crm_quote_view_by_share_code", "target": "crm_quote_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1105", "weight": 1.0}, {"source": "crm_quote_accept_quote", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1119", "weight": 1.0}, {"source": "crm_quote_reject_quote", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1140", "weight": 1.0}, {"source": "crm_quote_to_contract", "target": "crm_quote_parse_optional_date", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1167", "weight": 1.0}, {"source": "crm_quote_to_contract", "target": "crm_quote_get_quote", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1171", "weight": 1.0}, {"source": "crm_quote_create_new_version", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1231", "weight": 1.0}, {"source": "crm_quote_create_new_version", "target": "crm_quote_calculate_quote_amount", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1281", "weight": 1.0}, {"source": "crm_quote_query_versions", "target": "crm_quote_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1318", "weight": 1.0}, {"source": "crm_quote_withdraw_quote_approval", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1331", "weight": 1.0}, {"source": "crm_quote_invalid_quote", "target": "crm_quote_get_quote_in_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1358", "weight": 1.0}, {"source": "crm_quote_statistics_overview", "target": "crm_quote_parse_optional_datetime", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1391", "weight": 1.0}, {"source": "crm_quote_statistics_overview", "target": "crm_quote_decimal_value", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1412", "weight": 1.0}, {"source": "crm_quote_statistics_status", "target": "crm_quote_decimal_value", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1456", "weight": 1.0}, {"source": "crm_quote_statistics_trend", "target": "crm_quote_parse_optional_datetime", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1490", "weight": 1.0}, {"source": "crm_quote_statistics_trend", "target": "crm_quote_period_key", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1508", "weight": 1.0}, {"source": "crm_quote_statistics_trend", "target": "crm_quote_decimal_value", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1515", "weight": 1.0}, {"source": "crm_quote_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_quote_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1", "weight": 1.0}, {"source": "crm_quote_rationale_128", "target": "crm_quote_row_to_dict", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L128", "weight": 1.0}, {"source": "crm_quote_rationale_195", "target": "crm_quote_build_quote_filters", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L195", "weight": 1.0}, {"source": "crm_quote_rationale_377", "target": "crm_quote_fill_contract_linked_count", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L377", "weight": 1.0}, {"source": "crm_quote_rationale_402", "target": "crm_quote_calculate_quote_amount", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L402", "weight": 1.0}, {"source": "crm_quote_rationale_431", "target": "crm_quote_resolve_quote_product_ids", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L431", "weight": 1.0}, {"source": "crm_quote_rationale_453", "target": "crm_quote_generate_quote_no", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L453", "weight": 1.0}, {"source": "crm_quote_rationale_912", "target": "crm_quote_soft_delete_quotes", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L912", "weight": 1.0}, {"source": "crm_quote_rationale_1066", "target": "crm_quote_view_by_share_code", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1066", "weight": 1.0}, {"source": "crm_quote_rationale_1166", "target": "crm_quote_to_contract", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1166", "weight": 1.0}, {"source": "crm_quote_rationale_1230", "target": "crm_quote_create_new_version", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1230", "weight": 1.0}, {"source": "crm_quote_rationale_1330", "target": "crm_quote_withdraw_quote_approval", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1330", "weight": 1.0}, {"source": "crm_quote_rationale_1357", "target": "crm_quote_invalid_quote", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1357", "weight": 1.0}, {"source": "crm_quote_rationale_1387", "target": "crm_quote_statistics_overview", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1387", "weight": 1.0}, {"source": "crm_quote_rationale_1442", "target": "crm_quote_statistics_status", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1442", "weight": 1.0}, {"source": "crm_quote_rationale_1488", "target": "crm_quote_statistics_trend", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1488", "weight": 1.0}, {"source": "crm_quote_rationale_1551", "target": "crm_quote_list_quote_column_facet_values", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1551", "weight": 1.0}], "raw_calls": [{"caller_nid": "crm_quote_ensure_quote_in_scope", "callee": "ensure_crm_owner_row_in_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L45"}, {"caller_nid": "crm_quote_get_quote_in_scope", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L57"}, {"caller_nid": "crm_quote_total_pages", "callee": "ceil", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L65"}, {"caller_nid": "crm_quote_decimal_value", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L71"}, {"caller_nid": "crm_quote_decimal_value", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L73"}, {"caller_nid": "crm_quote_decimal_value", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L73"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L79"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L79"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L81"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "date", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L82"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L83"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L83"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "date", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L88"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "strptime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L88"}, {"caller_nid": "crm_quote_parse_optional_date", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L91"}, {"caller_nid": "crm_quote_parse_optional_datetime", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L97"}, {"caller_nid": "crm_quote_parse_optional_datetime", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L99"}, {"caller_nid": "crm_quote_parse_optional_datetime", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L99"}, {"caller_nid": "crm_quote_parse_optional_datetime", "callee": "strptime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L104"}, {"caller_nid": "crm_quote_parse_optional_datetime", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L107"}, {"caller_nid": "crm_quote_resolve_user_display_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L118"}, {"caller_nid": "crm_quote_resolve_user_display_name", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L121"}, {"caller_nid": "crm_quote_resolve_user_display_name", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L121"}, {"caller_nid": "crm_quote_resolve_user_display_name", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L121"}, {"caller_nid": "crm_quote_resolve_user_display_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L124"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L144"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L145"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L146"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L147"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L149"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L150"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L153"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L154"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L155"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L157"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L163"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L165"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L173"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L174"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L174"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L178"}, {"caller_nid": "crm_quote_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L179"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L198"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L200"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L201"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L202"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L207"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "where", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L208"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "exists", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L208"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L212"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L212"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L212"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L214"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L215"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L216"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L217"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L218"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L223"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L224"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L225"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L226"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L232"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L234"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L236"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L238"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L240"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L242"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L246"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L246"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "build_quote_column_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L306"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L307"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L309"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L315"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "aliased", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L316"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "aliased", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L317"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "aliased", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L318"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "scalar_subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L320"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "correlate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L320"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L320"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L320"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "min", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L320"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L329"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "where", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L330"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "exists", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L330"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "where", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L335"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "exists", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L335"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L345"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L348"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L348"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L349"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L350"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "distinct", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L351"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L351"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L351"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L354"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L361"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L371"}, {"caller_nid": "crm_quote_build_quote_filters", "callee": "resolve_datetime_order_by", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L372"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L378"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L378"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L378"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L378"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "discard", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L379"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L383"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L383"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L383"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L385"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "defaultdict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L390"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L395"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L395"}, {"caller_nid": "crm_quote_fill_contract_linked_count", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L395"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L404"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L405"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L406"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L409"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L413"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L414"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L414"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L418"}, {"caller_nid": "crm_quote_calculate_quote_amount", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L419"}, {"caller_nid": "crm_quote_resolve_quote_product_ids", "callee": "enumerate", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L434"}, {"caller_nid": "crm_quote_resolve_quote_product_ids", "callee": "resolve_product_id_for_quote_item", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L435"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "get_supplier_info", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L456"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L457"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L458"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "today", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L460"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L461"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L465"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L465"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L465"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L465"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L469"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L472"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L477"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L477"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L479"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L479"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "range", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L483"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L486"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L486"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L486"}, {"caller_nid": "crm_quote_generate_quote_no", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L493"}, {"caller_nid": "crm_quote_get_supplier_short_name", "callee": "get_supplier_info", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L511"}, {"caller_nid": "crm_quote_get_supplier_short_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L514"}, {"caller_nid": "crm_quote_get_supplier_short_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L515"}, {"caller_nid": "crm_quote_get_supplier_short_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L516"}, {"caller_nid": "crm_quote_get_supplier_short_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L517"}, {"caller_nid": "crm_quote_enrich_contact_fields", "callee": "get_contact", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L524"}, {"caller_nid": "crm_quote_enrich_supplier_name", "callee": "get_supplier_info", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L535"}, {"caller_nid": "crm_quote_get_quote", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L546"}, {"caller_nid": "crm_quote_get_quote", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L546"}, {"caller_nid": "crm_quote_get_quote", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L548"}, {"caller_nid": "crm_quote_get_quote", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L549"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L562"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "list_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L566"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get_opportunity", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L569"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L571"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L573"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L573"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get_contact", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L574"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L576"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L578"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L581"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L582"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L582"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L582"}, {"caller_nid": "crm_quote_get_quote_detail", "callee": "get_supplier_info", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L587"}, {"caller_nid": "crm_quote_list_quotes", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L608"}, {"caller_nid": "crm_quote_list_quotes", "callee": "apply_crm_owner_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L611"}, {"caller_nid": "crm_quote_list_quotes", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L612"}, {"caller_nid": "crm_quote_list_quotes", "callee": "with_entities", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L612"}, {"caller_nid": "crm_quote_list_quotes", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L612"}, {"caller_nid": "crm_quote_list_quotes", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L612"}, {"caller_nid": "crm_quote_list_quotes", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L613"}, {"caller_nid": "crm_quote_list_quotes", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L614"}, {"caller_nid": "crm_quote_list_quotes", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L614"}, {"caller_nid": "crm_quote_list_quotes", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L615"}, {"caller_nid": "crm_quote_list_quotes", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L615"}, {"caller_nid": "crm_quote_list_quotes", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L615"}, {"caller_nid": "crm_quote_list_quotes", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L619"}, {"caller_nid": "crm_quote_list_quotes", "callee": "can_user_approve", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L620"}, {"caller_nid": "crm_quote_list_quotes", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L625"}, {"caller_nid": "crm_quote_list_quotes", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L625"}, {"caller_nid": "crm_quote_list_quotes", "callee": "list_products_by_quote_ids", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L626"}, {"caller_nid": "crm_quote_list_quotes", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L628"}, {"caller_nid": "crm_quote_list_quotes", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L628"}, {"caller_nid": "crm_quote_list_quotes", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L628"}, {"caller_nid": "crm_quote_list_quotes", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L631"}, {"caller_nid": "crm_quote_create_quote", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L644"}, {"caller_nid": "crm_quote_create_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L645"}, {"caller_nid": "crm_quote_create_quote", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L646"}, {"caller_nid": "crm_quote_create_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L648"}, {"caller_nid": "crm_quote_create_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L650"}, {"caller_nid": "crm_quote_create_quote", "callee": "get_customer", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L652"}, {"caller_nid": "crm_quote_create_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L654"}, {"caller_nid": "crm_quote_create_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L656"}, {"caller_nid": "crm_quote_create_quote", "callee": "assert_products_allowed_for_supplier", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L659"}, {"caller_nid": "crm_quote_create_quote", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L662"}, {"caller_nid": "crm_quote_create_quote", "callee": "today", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L666"}, {"caller_nid": "crm_quote_create_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L667"}, {"caller_nid": "crm_quote_create_quote", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L668"}, {"caller_nid": "crm_quote_create_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L670"}, {"caller_nid": "crm_quote_create_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L677"}, {"caller_nid": "crm_quote_create_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L681"}, {"caller_nid": "crm_quote_create_quote", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L684"}, {"caller_nid": "crm_quote_create_quote", "callee": "CrmQuote", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L685"}, {"caller_nid": "crm_quote_create_quote", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L686"}, {"caller_nid": "crm_quote_create_quote", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L697"}, {"caller_nid": "crm_quote_create_quote", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L698"}, {"caller_nid": "crm_quote_create_quote", "callee": "timedelta", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L701"}, {"caller_nid": "crm_quote_create_quote", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L709"}, {"caller_nid": "crm_quote_create_quote", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L710"}, {"caller_nid": "crm_quote_create_quote", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L728"}, {"caller_nid": "crm_quote_create_quote", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L729"}, {"caller_nid": "crm_quote_create_quote", "callee": "batch_insert_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L732"}, {"caller_nid": "crm_quote_create_quote", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L741"}, {"caller_nid": "crm_quote_create_quote", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L742"}, {"caller_nid": "crm_quote_assert_quote_editable_for_update", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L751"}, {"caller_nid": "crm_quote_assert_quote_editable_for_update", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L753"}, {"caller_nid": "crm_quote_update_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L769"}, {"caller_nid": "crm_quote_update_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L770"}, {"caller_nid": "crm_quote_update_quote", "callee": "invalidate_all_approvals", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L774"}, {"caller_nid": "crm_quote_update_quote", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L777"}, {"caller_nid": "crm_quote_update_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L779"}, {"caller_nid": "crm_quote_update_quote", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L801"}, {"caller_nid": "crm_quote_update_quote", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L806"}, {"caller_nid": "crm_quote_update_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L818"}, {"caller_nid": "crm_quote_update_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L821"}, {"caller_nid": "crm_quote_update_quote", "callee": "get_customer", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L827"}, {"caller_nid": "crm_quote_update_quote", "callee": "index", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L839"}, {"caller_nid": "crm_quote_update_quote", "callee": "get_supplier_info", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L843"}, {"caller_nid": "crm_quote_update_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L844"}, {"caller_nid": "crm_quote_update_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L845"}, {"caller_nid": "crm_quote_update_quote", "callee": "timedelta", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L854"}, {"caller_nid": "crm_quote_update_quote", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L854"}, {"caller_nid": "crm_quote_update_quote", "callee": "list_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L865"}, {"caller_nid": "crm_quote_update_quote", "callee": "assert_products_allowed_for_supplier", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L867"}, {"caller_nid": "crm_quote_update_quote", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L870"}, {"caller_nid": "crm_quote_update_quote", "callee": "list_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L878"}, {"caller_nid": "crm_quote_update_quote", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L882"}, {"caller_nid": "crm_quote_update_quote", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L885"}, {"caller_nid": "crm_quote_update_quote", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L886"}, {"caller_nid": "crm_quote_update_quote", "callee": "delete_products_by_quote_id", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L889"}, {"caller_nid": "crm_quote_update_quote", "callee": "batch_insert_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L891"}, {"caller_nid": "crm_quote_update_quote", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L900"}, {"caller_nid": "crm_quote_soft_delete_quotes", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L920"}, {"caller_nid": "crm_quote_soft_delete_quotes", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L922"}, {"caller_nid": "crm_quote_soft_delete_quotes", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L923"}, {"caller_nid": "crm_quote_soft_delete_quotes", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L925"}, {"caller_nid": "crm_quote_soft_delete_quotes", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L927"}, {"caller_nid": "crm_quote_submit_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L945"}, {"caller_nid": "crm_quote_submit_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L947"}, {"caller_nid": "crm_quote_submit_quote", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L950"}, {"caller_nid": "crm_quote_submit_quote", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L951"}, {"caller_nid": "crm_quote_submit_quote", "callee": "invalidate_all_approvals", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L955"}, {"caller_nid": "crm_quote_submit_quote", "callee": "create_approval_records", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L956"}, {"caller_nid": "crm_quote_submit_quote", "callee": "generate_quote_pdf", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L967"}, {"caller_nid": "crm_quote_submit_quote", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L967"}, {"caller_nid": "crm_quote_submit_quote", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L973"}, {"caller_nid": "crm_quote_save_template", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L988"}, {"caller_nid": "crm_quote_save_template", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L990"}, {"caller_nid": "crm_quote_save_template", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L991"}, {"caller_nid": "crm_quote_get_template", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1005"}, {"caller_nid": "crm_quote_generate_pdf", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1019"}, {"caller_nid": "crm_quote_generate_pdf", "callee": "generate_quote_pdf", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1021"}, {"caller_nid": "crm_quote_generate_pdf", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1021"}, {"caller_nid": "crm_quote_generate_pdf", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1024"}, {"caller_nid": "crm_quote_generate_pdf", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1025"}, {"caller_nid": "crm_quote_generate_share", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1041"}, {"caller_nid": "crm_quote_generate_share", "callee": "token_hex", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1043"}, {"caller_nid": "crm_quote_generate_share", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1046"}, {"caller_nid": "crm_quote_generate_share", "callee": "timedelta", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1046"}, {"caller_nid": "crm_quote_generate_share", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1053"}, {"caller_nid": "crm_quote_generate_share", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1054"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1068"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1068"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1068"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1073"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1075"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1076"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1078"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1080"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "today", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1082"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1086"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1089"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1090"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "record_visit", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1093"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1104"}, {"caller_nid": "crm_quote_view_by_share_code", "callee": "list_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1106"}, {"caller_nid": "crm_quote_accept_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1121"}, {"caller_nid": "crm_quote_accept_quote", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1125"}, {"caller_nid": "crm_quote_accept_quote", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1126"}, {"caller_nid": "crm_quote_reject_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1142"}, {"caller_nid": "crm_quote_reject_quote", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1147"}, {"caller_nid": "crm_quote_reject_quote", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1148"}, {"caller_nid": "crm_quote_to_contract", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1173"}, {"caller_nid": "crm_quote_to_contract", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1175"}, {"caller_nid": "crm_quote_to_contract", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1177"}, {"caller_nid": "crm_quote_to_contract", "callee": "list_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1179"}, {"caller_nid": "crm_quote_to_contract", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1181"}, {"caller_nid": "crm_quote_to_contract", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1189"}, {"caller_nid": "crm_quote_to_contract", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1200"}, {"caller_nid": "crm_quote_to_contract", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1202"}, {"caller_nid": "crm_quote_to_contract", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1204"}, {"caller_nid": "crm_quote_to_contract", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1206"}, {"caller_nid": "crm_quote_to_contract", "callee": "create_from_quote", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1209"}, {"caller_nid": "crm_quote_create_new_version", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1233"}, {"caller_nid": "crm_quote_create_new_version", "callee": "today", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1236"}, {"caller_nid": "crm_quote_create_new_version", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1237"}, {"caller_nid": "crm_quote_create_new_version", "callee": "CrmQuote", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1239"}, {"caller_nid": "crm_quote_create_new_version", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1240"}, {"caller_nid": "crm_quote_create_new_version", "callee": "timedelta", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1257"}, {"caller_nid": "crm_quote_create_new_version", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1266"}, {"caller_nid": "crm_quote_create_new_version", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1266"}, {"caller_nid": "crm_quote_create_new_version", "callee": "list_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1280"}, {"caller_nid": "crm_quote_create_new_version", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1283"}, {"caller_nid": "crm_quote_create_new_version", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1284"}, {"caller_nid": "crm_quote_create_new_version", "callee": "batch_insert_quote_products", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1287"}, {"caller_nid": "crm_quote_create_new_version", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1296"}, {"caller_nid": "crm_quote_query_versions", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1309"}, {"caller_nid": "crm_quote_query_versions", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1309"}, {"caller_nid": "crm_quote_query_versions", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1309"}, {"caller_nid": "crm_quote_query_versions", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1309"}, {"caller_nid": "crm_quote_query_versions", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1315"}, {"caller_nid": "crm_quote_withdraw_quote_approval", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1333"}, {"caller_nid": "crm_quote_withdraw_quote_approval", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1335"}, {"caller_nid": "crm_quote_withdraw_quote_approval", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1337"}, {"caller_nid": "crm_quote_withdraw_quote_approval", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1340"}, {"caller_nid": "crm_quote_withdraw_quote_approval", "callee": "delete_pending_approvals", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1343"}, {"caller_nid": "crm_quote_withdraw_quote_approval", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1344"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1360"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1362"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1364"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1366"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1367"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1367"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1367"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1368"}, {"caller_nid": "crm_quote_invalid_quote", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1374"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1388"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1388"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1390"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1394"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1396"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "apply_crm_owner_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1398"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1400"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1401"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "_count_status", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1406"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "_count_status", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1407"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "_count_status", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1408"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "_count_status", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1409"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "_count_status", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1410"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1412"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1413"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "quantize", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1418"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1418"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1418"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1420"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1430"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1431"}, {"caller_nid": "crm_quote_statistics_overview", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1433"}, {"caller_nid": "crm_quote_statistics_status", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1446"}, {"caller_nid": "crm_quote_statistics_status", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1446"}, {"caller_nid": "crm_quote_statistics_status", "callee": "apply_crm_owner_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1448"}, {"caller_nid": "crm_quote_statistics_status", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1449"}, {"caller_nid": "crm_quote_statistics_status", "callee": "zip", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1452"}, {"caller_nid": "crm_quote_statistics_status", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1453"}, {"caller_nid": "crm_quote_statistics_status", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1454"}, {"caller_nid": "crm_quote_statistics_status", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1455"}, {"caller_nid": "crm_quote_statistics_status", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1456"}, {"caller_nid": "crm_quote_statistics_status", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1458"}, {"caller_nid": "crm_quote_statistics_status", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1463"}, {"caller_nid": "crm_quote_period_key", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1471"}, {"caller_nid": "crm_quote_period_key", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1472"}, {"caller_nid": "crm_quote_period_key", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1473"}, {"caller_nid": "crm_quote_period_key", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1476"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1489"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1489"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1493"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1495"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "apply_crm_owner_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1497"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1499"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "defaultdict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1503"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1505"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "combine", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1507"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "time", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1507"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1508"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1511"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1512"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1515"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1516"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1521"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1522"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1525"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1527"}, {"caller_nid": "crm_quote_statistics_trend", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1528"}, {"caller_nid": "crm_quote_list_quote_column_facet_values", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1554"}, {"caller_nid": "crm_quote_list_quote_column_facet_values", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1554"}, {"caller_nid": "crm_quote_list_quote_column_facet_values", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1554"}, {"caller_nid": "crm_quote_list_quote_column_facet_values", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1556"}, {"caller_nid": "crm_quote_list_quote_column_facet_values", "callee": "list_column_facet_values", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/quote.py", "source_location": "L1568"}]}
|