diff --git a/.worktrees/bx-invoice-wallet/.cursor/mcp.json b/.worktrees/bx-invoice-wallet/.cursor/mcp.json new file mode 100644 index 000000000..346d180d0 --- /dev/null +++ b/.worktrees/bx-invoice-wallet/.cursor/mcp.json @@ -0,0 +1,20 @@ +{ + "mcpServers": { + "graphify-backend": { + "command": "/opt/anaconda3/bin/python", + "args": [ + "-m", + "graphify.serve", + "/Users/zlwu/work/00code/shanxia2.0/backend/graphify-out/graph.json" + ] + }, + "graphify-frontend": { + "command": "/opt/anaconda3/bin/python", + "args": [ + "-m", + "graphify.serve", + "/Users/zlwu/work/00code/shanxia2.0/web-admin/graphify-out/graph.json" + ] + } + } +} diff --git a/.worktrees/bx-invoice-wallet/web-admin/.vscode/extensions.json b/.worktrees/bx-invoice-wallet/web-admin/.vscode/extensions.json new file mode 100644 index 000000000..d7766fa44 --- /dev/null +++ b/.worktrees/bx-invoice-wallet/web-admin/.vscode/extensions.json @@ -0,0 +1,10 @@ +{ + "recommendations": [ + "vue.volar", + "dbaeumer.vscode-eslint", + "esbenp.prettier-vscode", + "stylelint.vscode-stylelint", + "lokalise.i18n-ally", + "bradlc.vscode-tailwindcss" + ] +} diff --git a/.worktrees/bx-invoice-wallet/web-admin/.vscode/settings.json b/.worktrees/bx-invoice-wallet/web-admin/.vscode/settings.json new file mode 100755 index 000000000..5268fc2ce --- /dev/null +++ b/.worktrees/bx-invoice-wallet/web-admin/.vscode/settings.json @@ -0,0 +1,12 @@ +{ + "volar.inlayHints.eventArgumentInInlineHandlers": true, + "css.lint.unknownAtRules": "ignore", + "i18n-ally.localesPaths": ["src/locales/langs", "src/locales"], + "i18n-ally.enabledParsers": ["json"], + "i18n-ally.sourceLanguage": "en", + "i18n-ally.displayLanguage": "zh", + "i18n-ally.enabledFrameworks": ["vue", "react"], + "i18n-ally.keystyle": "nested", + "i18n-ally.sortKeys": true, + "i18n-ally.namespace": true +} diff --git a/backend/graphify-out/cache/ast/098a1bad074d881e9efcb432aef70c5011262953c31f58de47fbe85f2df594f6.json b/backend/graphify-out/cache/ast/098a1bad074d881e9efcb432aef70c5011262953c31f58de47fbe85f2df594f6.json new file mode 100644 index 000000000..fd6921297 --- /dev/null +++ b/backend/graphify-out/cache/ast/098a1bad074d881e9efcb432aef70c5011262953c31f58de47fbe85f2df594f6.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_reimburseservice", "label": "ReimburseService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L45"}, {"id": "bx_reimburse_tenant_no", "label": "_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L47"}, {"id": "bx_reimburse_get_by_id", "label": "get_by_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L51"}, {"id": "bx_reimburse_get_paged", "label": "get_paged()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L64"}, {"id": "bx_reimburse_soft_delete", "label": "soft_delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L78"}, {"id": "bx_reimburse_workflow_nodes", "label": "_workflow_nodes()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L85"}, {"id": "bx_reimburse_pending_approval", "label": "pending_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L98"}, {"id": "bx_reimburse_approved_by_me", "label": "approved_by_me()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L164"}, {"id": "bx_reimburse_has_debit_reimburse", "label": "_has_debit_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L225"}, {"id": "bx_reimburse_sync_reimburse_invoices", "label": "sync_reimburse_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L239"}, {"id": "bx_reimburse_get_linked_invoice_ids", "label": "get_linked_invoice_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L303"}, {"id": "bx_reimburse_get_linked_invoices_brief", "label": "get_linked_invoices_brief()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L317"}, {"id": "bx_reimburse_get_linked_invoice_ids_map", "label": "get_linked_invoice_ids_map()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L348"}, {"id": "bx_reimburse_submit", "label": "submit()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L369"}, {"id": "bx_reimburse_approve", "label": "approve()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L411"}, {"id": "bx_reimburse_reject", "label": "reject()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L456"}, {"id": "bx_reimburse_withdraw", "label": "withdraw()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L496"}, {"id": "bx_reimburse_approval_record_dict", "label": "_approval_record_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L515"}, {"id": "bx_reimburse_latest_approval_per_node", "label": "_latest_approval_per_node()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L528"}, {"id": "bx_reimburse_query_approvals", "label": "_query_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L545"}, {"id": "bx_reimburse_get_approvals", "label": "get_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L557"}, {"id": "bx_reimburse_get_approval_history", "label": "get_approval_history()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L593"}, {"id": "bx_reimburse_create_with_details", "label": "create_with_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L612"}, {"id": "bx_reimburse_update_with_details", "label": "update_with_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L676"}, {"id": "bx_reimburse_get_details", "label": "get_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L755"}, {"id": "bx_reimburse_build_expense_name_condition", "label": "build_expense_name_condition()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L768"}, {"id": "bx_reimburse_get_details_map_by_reimburse_ids", "label": "get_details_map_by_reimburse_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L788"}, {"id": "bx_reimburse_out_rows_with_attachment_counts", "label": "out_rows_with_attachment_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L809"}, {"id": "bx_reimburse_out_one_with_attachment_counts", "label": "out_one_with_attachment_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L839"}, {"id": "bx_reimburse_build_apply_out_with_details", "label": "build_apply_out_with_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L845"}, {"id": "bx_reimburse_global_status_counts", "label": "global_status_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L856"}, {"id": "bx_reimburse_my_apply_base", "label": "_my_apply_base()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L865"}, {"id": "bx_reimburse_my_apply_stats", "label": "my_apply_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L877"}, {"id": "bx_reimburse_pending_approval_stats", "label": "pending_approval_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L935"}, {"id": "bx_reimburse_pay", "label": "pay()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L966"}, {"id": "bx_reimburse_offset", "label": "offset()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L989"}, {"id": "bx_reimburse_batch_offset", "label": "batch_offset()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1020"}, {"id": "bx_reimburse_finance_payment_stats", "label": "finance_payment_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1075"}, {"id": "bx_reimburse_rationale_531", "label": "\u540c\u4e00\u8282\u70b9\u591a\u6b21\u5ba1\u6279\u65f6\uff0c\u53d6 approval_time \u6700\u65b0\u7684\u4e00\u6761\u4f5c\u4e3a\u5f53\u524d\u8282\u70b9\u72b6\u6001\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L531"}, {"id": "bx_reimburse_rationale_596", "label": "\u8fd4\u56de\u5168\u90e8\u5ba1\u6279\u52a8\u4f5c\uff0c\u6309\u65f6\u95f4\u6b63\u5e8f\u6392\u5217\uff0c\u7528\u4e8e\u5c55\u793a\u5b8c\u6574\u5ba1\u6279\u5386\u53f2\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L596"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "sqlalchemy_exc", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_schemas_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L26", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_approval_cycle", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L27", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_attachment", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L29", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_invoice_ledger", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_data_scope", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_utils_bx_codegen", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L32", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_utils_bx_date_range", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L40", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_reimburseservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L45", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L47", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_by_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L51", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_paged", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L64", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_soft_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L78", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_workflow_nodes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L85", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_pending_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L98", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_approved_by_me", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L164", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_has_debit_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L225", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_sync_reimburse_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L239", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_linked_invoice_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L303", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_linked_invoices_brief", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L317", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_linked_invoice_ids_map", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L348", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_submit", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L369", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_approve", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L411", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_reject", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L456", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_withdraw", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L496", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_approval_record_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L515", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_latest_approval_per_node", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L528", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_query_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L545", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L557", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_approval_history", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L593", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_create_with_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L612", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_update_with_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L676", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L755", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_build_expense_name_condition", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L768", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_details_map_by_reimburse_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L788", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_out_rows_with_attachment_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L809", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_out_one_with_attachment_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L839", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_build_apply_out_with_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L845", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_global_status_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L856", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_my_apply_base", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L865", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_my_apply_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L877", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_pending_approval_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L935", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_pay", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L966", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_offset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L989", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_batch_offset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1020", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_finance_payment_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1075", "weight": 1.0}, {"source": "bx_reimburse_soft_delete", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L79", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_build_expense_name_condition", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L139", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_offset", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L154", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_build_expense_name_condition", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L202", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_offset", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L217", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L376", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L377", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_sync_reimburse_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L381", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_has_debit_reimburse", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L389", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L404", "weight": 1.0}, {"source": "bx_reimburse_approve", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L414", "weight": 1.0}, {"source": "bx_reimburse_approve", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L415", "weight": 1.0}, {"source": "bx_reimburse_approve", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L418", "weight": 1.0}, {"source": "bx_reimburse_reject", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L459", "weight": 1.0}, {"source": "bx_reimburse_reject", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L460", "weight": 1.0}, {"source": "bx_reimburse_reject", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L463", "weight": 1.0}, {"source": "bx_reimburse_withdraw", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L497", "weight": 1.0}, {"source": "bx_reimburse_withdraw", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L498", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L560", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L566", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_query_approvals", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L569", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_latest_approval_per_node", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L571", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_approval_record_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L576", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L597", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_approval_record_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L609", "weight": 1.0}, {"source": "bx_reimburse_create_with_details", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L619", "weight": 1.0}, {"source": "bx_reimburse_update_with_details", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L684", "weight": 1.0}, {"source": "bx_reimburse_update_with_details", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L685", "weight": 1.0}, {"source": "bx_reimburse_out_rows_with_attachment_counts", "target": "bx_reimburse_get_details_map_by_reimburse_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L818", "weight": 1.0}, {"source": "bx_reimburse_out_rows_with_attachment_counts", "target": "bx_reimburse_get_linked_invoice_ids_map", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L819", "weight": 1.0}, {"source": "bx_reimburse_out_one_with_attachment_counts", "target": "bx_reimburse_out_rows_with_attachment_counts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L842", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_out_one_with_attachment_counts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L848", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_get_details", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L849", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_get_linked_invoice_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L851", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_get_linked_invoices_brief", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L852", "weight": 1.0}, {"source": "bx_reimburse_my_apply_stats", "target": "bx_reimburse_my_apply_base", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L878", "weight": 1.0}, {"source": "bx_reimburse_pay", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L973", "weight": 1.0}, {"source": "bx_reimburse_pay", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L974", "weight": 1.0}, {"source": "bx_reimburse_offset", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L997", "weight": 1.0}, {"source": "bx_reimburse_offset", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L998", "weight": 1.0}, {"source": "bx_reimburse_batch_offset", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1028", "weight": 1.0}, {"source": "bx_reimburse_batch_offset", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1029", "weight": 1.0}, {"source": "bx_reimburse_rationale_531", "target": "bx_reimburse_reimburseservice_latest_approval_per_node", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L531", "weight": 1.0}, {"source": "bx_reimburse_rationale_596", "target": "bx_reimburse_reimburseservice_get_approval_history", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L596", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_tenant_no", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L48"}, {"caller_nid": "bx_reimburse_tenant_no", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L48"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L87"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L87"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L87"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L87"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L112"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L112"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L112"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L115"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L130"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L131"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L132"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L133"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L134"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L138"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L141"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "resolve_create_time_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L142"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L148"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L150"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L151"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L152"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L152"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L152"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L152"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L156"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L178"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "distinct", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L178"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L178"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L178"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L188"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L188"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L188"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L193"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L194"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L195"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L196"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L197"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L201"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L204"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "resolve_create_time_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L205"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L211"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L213"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L214"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L215"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L217"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L217"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L217"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L217"}, {"caller_nid": "bx_reimburse_has_debit_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L227"}, {"caller_nid": "bx_reimburse_has_debit_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L227"}, {"caller_nid": "bx_reimburse_has_debit_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L227"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L251"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L253"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L253"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L256"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L257"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L261"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L261"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L261"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L264"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L271"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L273"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L278"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L283"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L283"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L283"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L290"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "BxReimburseInvoice", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L291"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L292"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L300"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L305"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L305"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L305"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L305"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L311"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L321"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L321"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L321"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L321"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L321"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L324"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L335"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "ReimburseInvoiceBriefOut", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L339"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L341"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L354"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L354"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L354"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L354"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L356"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L360"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L365"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L365"}, {"caller_nid": "bx_reimburse_submit", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L390"}, {"caller_nid": "bx_reimburse_submit", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L390"}, {"caller_nid": "bx_reimburse_submit", "callee": "debit_reimburse", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L391"}, {"caller_nid": "bx_reimburse_submit", "callee": "generate_apply_code", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L401"}, {"caller_nid": "bx_reimburse_submit", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L407"}, {"caller_nid": "bx_reimburse_approve", "callee": "enumerate", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L422"}, {"caller_nid": "bx_reimburse_approve", "callee": "BxReimburseApproval", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L431"}, {"caller_nid": "bx_reimburse_approve", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L432"}, {"caller_nid": "bx_reimburse_approve", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L440"}, {"caller_nid": "bx_reimburse_approve", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L445"}, {"caller_nid": "bx_reimburse_approve", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L446"}, {"caller_nid": "bx_reimburse_approve", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L452"}, {"caller_nid": "bx_reimburse_reject", "callee": "BxReimburseApproval", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L471"}, {"caller_nid": "bx_reimburse_reject", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L472"}, {"caller_nid": "bx_reimburse_reject", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L480"}, {"caller_nid": "bx_reimburse_reject", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L485"}, {"caller_nid": "bx_reimburse_reject", "callee": "release_reimburse", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L489"}, {"caller_nid": "bx_reimburse_reject", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L492"}, {"caller_nid": "bx_reimburse_withdraw", "callee": "release_reimburse", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L508"}, {"caller_nid": "bx_reimburse_withdraw", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L511"}, {"caller_nid": "bx_reimburse_latest_approval_per_node", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L534"}, {"caller_nid": "bx_reimburse_query_approvals", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L547"}, {"caller_nid": "bx_reimburse_query_approvals", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L547"}, {"caller_nid": "bx_reimburse_query_approvals", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L547"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "filter_current_cycle_approvals", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L570"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L574"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L576"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L578"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L600"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L600"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L600"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L600"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L606"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L606"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L620"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L621"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L621"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L621"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "parse_reimburse_date", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L622"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L622"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L623"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "range", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L627"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "resolve_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L628"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "BxReimburseApply", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L631"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L632"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L637"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L637"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L638"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L646"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L648"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L651"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "RuntimeError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L657"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "BxReimburseDetail", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L660"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L661"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L663"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L666"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L671"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L672"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "parse_reimburse_date", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L692"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L692"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L695"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L697"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L698"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L704"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L704"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "is_auto_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L706"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "allocate_reimburse_title_seq", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L708"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "format_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L712"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "is_auto_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L715"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L719"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L719"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L719"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L725"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "enumerate", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L728"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "BxReimburseDetail", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L729"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L730"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L732"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L735"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L740"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L741"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L741"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L744"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L751"}, {"caller_nid": "bx_reimburse_get_details", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L757"}, {"caller_nid": "bx_reimburse_get_details", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L757"}, {"caller_nid": "bx_reimburse_get_details", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L757"}, {"caller_nid": "bx_reimburse_get_details", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L757"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L771"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L771"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L775"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L775"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L779"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L782"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L783"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L784"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L794"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L794"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L794"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L794"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L796"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L805"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L805"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "count_invoice_attach_by_biz_ids", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L815"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L822"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L823"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L824"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L825"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L826"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "model_copy", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L827"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L831"}, {"caller_nid": "bx_reimburse_build_apply_out_with_details", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L850"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L857"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L857"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L857"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L860"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L861"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "group_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L861"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L862"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L862"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L866"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L866"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L869"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L874"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L878"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L879"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L879"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L881"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L881"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L881"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L881"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L881"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L884"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L884"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L884"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L884"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L884"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L891"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L891"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L891"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L891"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L891"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L893"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L898"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L898"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L898"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L898"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L898"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L906"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "current_month_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L910"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L912"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L912"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L912"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L912"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L912"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L918"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L918"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L918"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L918"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L918"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L925"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L926"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L927"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L928"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L929"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L930"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L931"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L936"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L937"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L937"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L937"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L940"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L954"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L954"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L954"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L954"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "current_month_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L955"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L957"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L957"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L957"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L957"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L957"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L957"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L963"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L963"}, {"caller_nid": "bx_reimburse_pay", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L980"}, {"caller_nid": "bx_reimburse_pay", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L985"}, {"caller_nid": "bx_reimburse_offset", "callee": "BxReimburseOffset", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1005"}, {"caller_nid": "bx_reimburse_offset", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1006"}, {"caller_nid": "bx_reimburse_offset", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1015"}, {"caller_nid": "bx_reimburse_offset", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1016"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "bool", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1033"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1038"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1039"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "BxReimburseOffset", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1043"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1044"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1053"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1061"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1071"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1077"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1077"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1080"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1080"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1081"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1081"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1083"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1083"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1083"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1083"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1083"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "isnot", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1089"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1091"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1091"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1091"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1091"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1091"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1093"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1095"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1097"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1098"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1102"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1102"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1102"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1102"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1102"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "current_month_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1104"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1106"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1106"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1106"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1106"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1106"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1112"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1112"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1112"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1112"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1112"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1118"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1119"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1120"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1121"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1121"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/12619e8ae3e341e757e8696459241924d761161a629b2804d0e1c3611b4d6a67.json b/backend/graphify-out/cache/ast/12619e8ae3e341e757e8696459241924d761161a629b2804d0e1c3611b4d6a67.json new file mode 100644 index 000000000..5e137690b --- /dev/null +++ b/backend/graphify-out/cache/ast/12619e8ae3e341e757e8696459241924d761161a629b2804d0e1c3611b4d6a67.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "label": "post.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L1"}, {"id": "crud_post_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L16"}, {"id": "crud_post_list_posts", "label": "list_posts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L31"}, {"id": "crud_post_get_post", "label": "get_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L64"}, {"id": "crud_post_post_code_exists", "label": "post_code_exists()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L72"}, {"id": "crud_post_create_post", "label": "create_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L79"}, {"id": "crud_post_update_post", "label": "update_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L116"}, {"id": "crud_post_soft_delete_post", "label": "soft_delete_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L153"}, {"id": "crud_post_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L164"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_list_posts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_get_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L64", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_post_code_exists", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L72", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_create_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L79", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_update_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L116", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_soft_delete_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L153", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_post_py", "target": "crud_post_total_pages", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L164", "weight": 1.0}, {"source": "crud_post_list_posts", "target": "crud_post_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L61", "weight": 1.0}, {"source": "crud_post_create_post", "target": "crud_post_post_code_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L93", "weight": 1.0}, {"source": "crud_post_update_post", "target": "crud_post_get_post", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L127", "weight": 1.0}, {"source": "crud_post_update_post", "target": "crud_post_post_code_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L134", "weight": 1.0}, {"source": "crud_post_soft_delete_post", "target": "crud_post_get_post", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L154", "weight": 1.0}], "raw_calls": [{"caller_nid": "crud_post_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L26"}, {"caller_nid": "crud_post_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L27"}, {"caller_nid": "crud_post_list_posts", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L51"}, {"caller_nid": "crud_post_list_posts", "callee": "with_entities", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L51"}, {"caller_nid": "crud_post_list_posts", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L51"}, {"caller_nid": "crud_post_list_posts", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L51"}, {"caller_nid": "crud_post_list_posts", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L51"}, {"caller_nid": "crud_post_list_posts", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L52"}, {"caller_nid": "crud_post_list_posts", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L53"}, {"caller_nid": "crud_post_list_posts", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L53"}, {"caller_nid": "crud_post_list_posts", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L55"}, {"caller_nid": "crud_post_list_posts", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L55"}, {"caller_nid": "crud_post_list_posts", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L55"}, {"caller_nid": "crud_post_list_posts", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L55"}, {"caller_nid": "crud_post_list_posts", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L55"}, {"caller_nid": "crud_post_list_posts", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L56"}, {"caller_nid": "crud_post_list_posts", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L61"}, {"caller_nid": "crud_post_get_post", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L66"}, {"caller_nid": "crud_post_get_post", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L66"}, {"caller_nid": "crud_post_get_post", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L66"}, {"caller_nid": "crud_post_get_post", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L67"}, {"caller_nid": "crud_post_post_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L73"}, {"caller_nid": "crud_post_post_code_exists", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L73"}, {"caller_nid": "crud_post_post_code_exists", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L73"}, {"caller_nid": "crud_post_post_code_exists", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L73"}, {"caller_nid": "crud_post_post_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L75"}, {"caller_nid": "crud_post_post_code_exists", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L76"}, {"caller_nid": "crud_post_create_post", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L90"}, {"caller_nid": "crud_post_create_post", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L92"}, {"caller_nid": "crud_post_create_post", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L94"}, {"caller_nid": "crud_post_create_post", "callee": "SysPost", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L95"}, {"caller_nid": "crud_post_create_post", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L96"}, {"caller_nid": "crud_post_create_post", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L97"}, {"caller_nid": "crud_post_create_post", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L102"}, {"caller_nid": "crud_post_create_post", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L105"}, {"caller_nid": "crud_post_create_post", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L107"}, {"caller_nid": "crud_post_create_post", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L110"}, {"caller_nid": "crud_post_create_post", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L111"}, {"caller_nid": "crud_post_create_post", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L112"}, {"caller_nid": "crud_post_update_post", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L129"}, {"caller_nid": "crud_post_update_post", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L131"}, {"caller_nid": "crud_post_update_post", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L133"}, {"caller_nid": "crud_post_update_post", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L135"}, {"caller_nid": "crud_post_update_post", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L138"}, {"caller_nid": "crud_post_update_post", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L144"}, {"caller_nid": "crud_post_update_post", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L146"}, {"caller_nid": "crud_post_update_post", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L147"}, {"caller_nid": "crud_post_update_post", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L148"}, {"caller_nid": "crud_post_update_post", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L149"}, {"caller_nid": "crud_post_soft_delete_post", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L156"}, {"caller_nid": "crud_post_soft_delete_post", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L157"}, {"caller_nid": "crud_post_soft_delete_post", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L159"}, {"caller_nid": "crud_post_soft_delete_post", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L160"}, {"caller_nid": "crud_post_soft_delete_post", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L161"}, {"caller_nid": "crud_post_total_pages", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L167"}, {"caller_nid": "crud_post_total_pages", "callee": "ceil", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L167"}, {"caller_nid": "crud_post_total_pages", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/post.py", "source_location": "L167"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/16fd3ff8a3dde7397d55829d83c8541f6cbfb11145bfa8f2ae4e28fcaf4e2f60.json b/backend/graphify-out/cache/ast/16fd3ff8a3dde7397d55829d83c8541f6cbfb11145bfa8f2ae4e28fcaf4e2f60.json new file mode 100644 index 000000000..012d27a17 --- /dev/null +++ b/backend/graphify-out/cache/ast/16fd3ff8a3dde7397d55829d83c8541f6cbfb11145bfa8f2ae4e28fcaf4e2f60.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "label": "data_scope.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L1"}, {"id": "core_data_scope_get_user_dept_id", "label": "get_user_dept_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L28"}, {"id": "core_data_scope_get_child_dept_ids", "label": "_get_child_dept_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L38"}, {"id": "core_data_scope_resolve_user_role_scopes", "label": "_resolve_user_role_scopes()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L62"}, {"id": "core_data_scope_collect_scope_ids", "label": "_collect_scope_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L111"}, {"id": "core_data_scope_append_user_scope_conditions", "label": "_append_user_scope_conditions()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L147"}, {"id": "core_data_scope_apply_data_scope", "label": "apply_data_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L166"}, {"id": "core_data_scope_row_in_data_scope", "label": "row_in_data_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L233"}, {"id": "core_data_scope_assert_row_in_data_scope", "label": "assert_row_in_data_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L274"}, {"id": "core_data_scope_rationale_1", "label": "\u6570\u636e\u6743\u9650\u8fc7\u6ee4\uff08V0.3\uff1a\u57fa\u4e8e\u89d2\u8272 data_scope \u7684\u67e5\u8be2\u7ea7\u884c\u7ea7\u8fc7\u6ee4\uff09 data_scope \u503c\uff1a 1 = \u5168\u90e8\u6570\u636e 2 = \u672c\u90e8\u95e8\u6570\u636e 3", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L1"}, {"id": "core_data_scope_rationale_29", "label": "\u4ece SysUser \u8bfb\u53d6\u7528\u6237\u7684 dept_id\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L29"}, {"id": "core_data_scope_rationale_39", "label": "\u9012\u5f52\u83b7\u53d6 dept_id \u53ca\u5176\u6240\u6709\u5b50\u90e8\u95e8 ID\uff08\u542b\u81ea\u8eab\uff09\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L39"}, {"id": "core_data_scope_rationale_65", "label": "\u83b7\u53d6\u7528\u6237\u6240\u6709\u89d2\u8272\u7684\u6570\u636e\u6743\u9650\u914d\u7f6e\u3002 \u8fd4\u56de: [{\"data_scope\": str, \"details\": [SysRoleDataScopeDetai", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L65"}, {"id": "core_data_scope_rationale_118", "label": "\u5408\u5e76\u591a\u89d2\u8272\u6570\u636e\u8303\u56f4\u4e3a dept_ids / user_ids \u5e76\u96c6\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L118"}, {"id": "core_data_scope_rationale_174", "label": "\u6839\u636e\u7528\u6237\u89d2\u8272\u7684\u6570\u636e\u6743\u9650\u8fc7\u6ee4\u67e5\u8be2\u3002 \u9002\u7528\u4e8e\u4e1a\u52a1\u5355\u636e\u5217\u8868/\u8be6\u60c5\uff08\u62a5\u9500\u5355\u3001\u5ba2\u6237\u3001\u8fd0\u5355\u7b49\uff09\u3002 \u4ee5\u4e0b\u573a\u666f SHALL NOT \u8c03\u7528\u672c\u51fd\u6570\uff08\u4ec5\u79df\u6237\u9694\u79bb\u5373", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L174"}, {"id": "core_data_scope_rationale_240", "label": "\u5224\u65ad\u5355\u884c\u6570\u636e\u662f\u5426\u5728\u5f53\u524d\u7528\u6237\u6570\u636e\u6743\u9650\u8303\u56f4\u5185\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L240"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "app_core_config", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L19", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_get_user_dept_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_get_child_dept_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L38", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_resolve_user_role_scopes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L62", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_collect_scope_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L111", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_append_user_scope_conditions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L147", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_apply_data_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L166", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_row_in_data_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L233", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "target": "core_data_scope_assert_row_in_data_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L274", "weight": 1.0}, {"source": "core_data_scope_collect_scope_ids", "target": "core_data_scope_get_user_dept_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L121", "weight": 1.0}, {"source": "core_data_scope_collect_scope_ids", "target": "core_data_scope_get_child_dept_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L132", "weight": 1.0}, {"source": "core_data_scope_apply_data_scope", "target": "core_data_scope_resolve_user_role_scopes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L211", "weight": 1.0}, {"source": "core_data_scope_apply_data_scope", "target": "core_data_scope_collect_scope_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L218", "weight": 1.0}, {"source": "core_data_scope_apply_data_scope", "target": "core_data_scope_append_user_scope_conditions", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L223", "weight": 1.0}, {"source": "core_data_scope_row_in_data_scope", "target": "core_data_scope_resolve_user_role_scopes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L251", "weight": 1.0}, {"source": "core_data_scope_row_in_data_scope", "target": "core_data_scope_collect_scope_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L257", "weight": 1.0}, {"source": "core_data_scope_assert_row_in_data_scope", "target": "core_data_scope_row_in_data_scope", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L283", "weight": 1.0}, {"source": "core_data_scope_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_core_data_scope_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L1", "weight": 1.0}, {"source": "core_data_scope_rationale_29", "target": "core_data_scope_get_user_dept_id", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L29", "weight": 1.0}, {"source": "core_data_scope_rationale_39", "target": "core_data_scope_get_child_dept_ids", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L39", "weight": 1.0}, {"source": "core_data_scope_rationale_65", "target": "core_data_scope_resolve_user_role_scopes", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L65", "weight": 1.0}, {"source": "core_data_scope_rationale_118", "target": "core_data_scope_collect_scope_ids", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L118", "weight": 1.0}, {"source": "core_data_scope_rationale_174", "target": "core_data_scope_apply_data_scope", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L174", "weight": 1.0}, {"source": "core_data_scope_rationale_240", "target": "core_data_scope_row_in_data_scope", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L240", "weight": 1.0}], "raw_calls": [{"caller_nid": "core_data_scope_get_user_dept_id", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L31"}, {"caller_nid": "core_data_scope_get_user_dept_id", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L31"}, {"caller_nid": "core_data_scope_get_user_dept_id", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L31"}, {"caller_nid": "core_data_scope_get_child_dept_ids", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L46"}, {"caller_nid": "core_data_scope_get_child_dept_ids", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L46"}, {"caller_nid": "core_data_scope_get_child_dept_ids", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L46"}, {"caller_nid": "core_data_scope_get_child_dept_ids", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L48"}, {"caller_nid": "core_data_scope_get_child_dept_ids", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L57"}, {"caller_nid": "core_data_scope_get_child_dept_ids", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L58"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L70"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L70"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L70"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L70"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L89"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L89"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L89"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L91"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L99"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L99"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L102"}, {"caller_nid": "core_data_scope_resolve_user_role_scopes", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L105"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L119"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L120"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L121"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L121"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L129"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L132"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L134"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L137"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L141"}, {"caller_nid": "core_data_scope_collect_scope_ids", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L143"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L159"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L159"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L160"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L161"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L161"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L161"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L163"}, {"caller_nid": "core_data_scope_append_user_scope_conditions", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L163"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L197"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L200"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L206"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L207"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L213"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "any", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L215"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L222"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L222"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L228"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L230"}, {"caller_nid": "core_data_scope_apply_data_scope", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L230"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L243"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L246"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "any", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L254"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L259"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L259"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L260"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L260"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L262"}, {"caller_nid": "core_data_scope_row_in_data_scope", "callee": "getattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L262"}, {"caller_nid": "core_data_scope_assert_row_in_data_scope", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/core/data_scope.py", "source_location": "L284"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/1bfeff4b19b3e8020c12c31e337f4d5131170fdb3974bf3593f3bb77de10ddc1.json b/backend/graphify-out/cache/ast/1bfeff4b19b3e8020c12c31e337f4d5131170fdb3974bf3593f3bb77de10ddc1.json new file mode 100644 index 000000000..8652ba817 --- /dev/null +++ b/backend/graphify-out/cache/ast/1bfeff4b19b3e8020c12c31e337f4d5131170fdb3974bf3593f3bb77de10ddc1.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "label": "base_data.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1"}, {"id": "pl_base_data_list_carriers", "label": "list_carriers()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L74"}, {"id": "pl_base_data_create_carrier", "label": "create_carrier()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L118"}, {"id": "pl_base_data_get_carrier", "label": "get_carrier()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L148"}, {"id": "pl_base_data_update_carrier", "label": "update_carrier()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L159"}, {"id": "pl_base_data_delete_carrier", "label": "delete_carrier()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L188"}, {"id": "pl_base_data_approve_carrier", "label": "approve_carrier()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L202"}, {"id": "pl_base_data_reject_carrier", "label": "reject_carrier()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L211"}, {"id": "pl_base_data_vehicle_to_read", "label": "_vehicle_to_read()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L240"}, {"id": "pl_base_data_vehicle_to_detail", "label": "_vehicle_to_detail()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L257"}, {"id": "pl_base_data_list_vehicles", "label": "list_vehicles()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L275"}, {"id": "pl_base_data_create_vehicle", "label": "create_vehicle()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L380"}, {"id": "pl_base_data_get_vehicle", "label": "get_vehicle()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L456"}, {"id": "pl_base_data_update_vehicle", "label": "update_vehicle()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L467"}, {"id": "pl_base_data_delete_vehicle", "label": "delete_vehicle()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L541"}, {"id": "pl_base_data_personnel_to_read", "label": "_personnel_to_read()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L574"}, {"id": "pl_base_data_personnel_to_detail", "label": "_personnel_to_detail()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L589"}, {"id": "pl_base_data_list_personnel", "label": "list_personnel()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L603"}, {"id": "pl_base_data_create_personnel", "label": "create_personnel()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L659"}, {"id": "pl_base_data_get_personnel", "label": "get_personnel()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L710"}, {"id": "pl_base_data_update_personnel", "label": "update_personnel()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L721"}, {"id": "pl_base_data_delete_personnel", "label": "delete_personnel()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L777"}, {"id": "pl_base_data_personnel_to_driver_read", "label": "_personnel_to_driver_read()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L810"}, {"id": "pl_base_data_list_drivers", "label": "list_drivers()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L829"}, {"id": "pl_base_data_create_driver", "label": "create_driver()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L865"}, {"id": "pl_base_data_get_driver", "label": "get_driver()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L890"}, {"id": "pl_base_data_update_driver", "label": "update_driver()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L901"}, {"id": "pl_base_data_delete_driver", "label": "delete_driver()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L926"}, {"id": "pl_base_data_bind_vehicle_driver", "label": "bind_vehicle_driver()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L945"}, {"id": "pl_base_data_unbind_vehicle_driver", "label": "unbind_vehicle_driver()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L977"}, {"id": "pl_base_data_paste_recognize_commit", "label": "paste_recognize_commit()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1009"}, {"id": "pl_base_data_rationale_1", "label": "\u8fd0\u8f93\u8ba1\u5212\u7ba1\u7406 - \u57fa\u7840\u6570\u636e API\uff08\u627f\u8fd0\u5546\u3001\u8f66\u8f86\u3001\u4eba\u5458\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_core_db_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_models_pl_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_schemas_pl", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L21", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_services_pl_cert_service", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L45", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_services_pl_cert_required_service", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L52", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_services_pl_carrier_service", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L56", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_services_pl_personnel_service", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L57", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_schemas_pl_paste_recognize", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L62", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "app_services_pl_paste_recognize_service", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L63", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_list_carriers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L74", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_create_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L118", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L148", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_update_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L159", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_delete_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L188", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_approve_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L202", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_reject_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L211", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_carrier", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L220", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_vehicle_to_read", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L240", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_vehicle_to_detail", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L257", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_list_vehicles", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L275", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_create_vehicle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L380", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_vehicle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L456", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_update_vehicle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L467", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_delete_vehicle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L541", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_vehicle", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L554", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_personnel_to_read", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L574", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_personnel_to_detail", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L589", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_list_personnel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L603", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_create_personnel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L659", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_personnel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L710", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_update_personnel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L721", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_delete_personnel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L777", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_personnel", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L790", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_personnel_to_driver_read", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L810", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_list_drivers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L829", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_create_driver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L865", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_get_driver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L890", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_update_driver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L901", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_delete_driver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L926", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_bind_vehicle_driver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L945", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_unbind_vehicle_driver", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L977", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "target": "pl_base_data_paste_recognize_commit", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1009", "weight": 1.0}, {"source": "pl_base_data_vehicle_to_detail", "target": "pl_base_data_vehicle_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L266", "weight": 1.0}, {"source": "pl_base_data_list_vehicles", "target": "pl_base_data_vehicle_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L348", "weight": 1.0}, {"source": "pl_base_data_create_vehicle", "target": "pl_base_data_vehicle_to_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L452", "weight": 1.0}, {"source": "pl_base_data_get_vehicle", "target": "pl_base_data_vehicle_to_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L463", "weight": 1.0}, {"source": "pl_base_data_update_vehicle", "target": "pl_base_data_vehicle_to_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L537", "weight": 1.0}, {"source": "pl_base_data_personnel_to_detail", "target": "pl_base_data_personnel_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L592", "weight": 1.0}, {"source": "pl_base_data_list_personnel", "target": "pl_base_data_personnel_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L647", "weight": 1.0}, {"source": "pl_base_data_create_personnel", "target": "pl_base_data_personnel_to_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L706", "weight": 1.0}, {"source": "pl_base_data_get_personnel", "target": "pl_base_data_personnel_to_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L717", "weight": 1.0}, {"source": "pl_base_data_update_personnel", "target": "pl_base_data_personnel_to_detail", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L773", "weight": 1.0}, {"source": "pl_base_data_list_drivers", "target": "pl_base_data_personnel_to_driver_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L860", "weight": 1.0}, {"source": "pl_base_data_create_driver", "target": "pl_base_data_personnel_to_driver_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L886", "weight": 1.0}, {"source": "pl_base_data_get_driver", "target": "pl_base_data_personnel_to_driver_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L897", "weight": 1.0}, {"source": "pl_base_data_update_driver", "target": "pl_base_data_personnel_to_driver_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L922", "weight": 1.0}, {"source": "pl_base_data_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_base_data_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1", "weight": 1.0}], "raw_calls": [{"caller_nid": "pl_base_data_list_carriers", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L83"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L83"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L84"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L84"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L90"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L93"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L96"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L97"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L98"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L98"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L98"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L99"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L99"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L99"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L104"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L105"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "case", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L105"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L105"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L106"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L108"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L110"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L110"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L110"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "CarrierListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L111"}, {"caller_nid": "pl_base_data_list_carriers", "callee": "carrier_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L113"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L123"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L123"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "PlCarrier", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L125"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L126"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "normalize_carrier_urls", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L132"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "normalize_carrier_urls", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L133"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "normalize_carrier_urls", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L134"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L141"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L142"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L143"}, {"caller_nid": "pl_base_data_create_carrier", "callee": "carrier_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L144"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L153"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L153"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "_get_carrier", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L154"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "carrier_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L155"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L165"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L165"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "_get_carrier", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L166"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L168"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "normalize_carrier_urls", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L176"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L178"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L179"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L182"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L183"}, {"caller_nid": "pl_base_data_update_carrier", "callee": "carrier_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L184"}, {"caller_nid": "pl_base_data_delete_carrier", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L193"}, {"caller_nid": "pl_base_data_delete_carrier", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L193"}, {"caller_nid": "pl_base_data_delete_carrier", "callee": "_get_carrier", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L194"}, {"caller_nid": "pl_base_data_delete_carrier", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L195"}, {"caller_nid": "pl_base_data_delete_carrier", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L195"}, {"caller_nid": "pl_base_data_delete_carrier", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L198"}, {"caller_nid": "pl_base_data_approve_carrier", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L207"}, {"caller_nid": "pl_base_data_reject_carrier", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L217"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L222"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L222"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L222"}, {"caller_nid": "pl_base_data_get_carrier", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L231"}, {"caller_nid": "pl_base_data_vehicle_to_read", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L247"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "load_vehicle_personnel_summaries", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L260"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L261"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "load_vehicle_personnel_rows", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L262"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "certs_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L263"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "list_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L264"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "VehicleDetailRead", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L267"}, {"caller_nid": "pl_base_data_vehicle_to_detail", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L268"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L290"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L290"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L291"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L291"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L297"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L300"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L303"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L306"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L306"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L309"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L310"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "case", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L310"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L310"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L311"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L315"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L322"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L322"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L322"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L324"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "carrier_eligible_for_transport", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L338"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "load_vehicle_personnel_summaries", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L341"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "list_owner_certs_batch", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L344"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L350"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "certs_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L351"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L351"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "VehicleListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L355"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L355"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L357"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L359"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L359"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L359"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "load_vehicle_personnel_summaries", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L360"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "list_owner_certs_batch", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L363"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "VehicleListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L366"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L371"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "certs_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L372"}, {"caller_nid": "pl_base_data_list_vehicles", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L372"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L385"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L385"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L388"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L388"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L388"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L396"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "validate_vehicle_save_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L398"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "PlVehicle", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L407"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L408"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L421"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L422"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "save_vehicle_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L425"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "save_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L434"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L443"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L445"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L448"}, {"caller_nid": "pl_base_data_create_vehicle", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L451"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L461"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L461"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "_get_vehicle", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L462"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L473"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L473"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "_get_vehicle", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L474"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L478"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L482"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L483"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "list_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L487"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "load_vehicle_personnel_rows", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L491"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "validate_vehicle_save_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L493"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L502"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L503"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "save_vehicle_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L509"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "save_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L519"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L528"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L530"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L533"}, {"caller_nid": "pl_base_data_update_vehicle", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L536"}, {"caller_nid": "pl_base_data_delete_vehicle", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L546"}, {"caller_nid": "pl_base_data_delete_vehicle", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L546"}, {"caller_nid": "pl_base_data_delete_vehicle", "callee": "_get_vehicle", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L547"}, {"caller_nid": "pl_base_data_delete_vehicle", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L548"}, {"caller_nid": "pl_base_data_delete_vehicle", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L548"}, {"caller_nid": "pl_base_data_delete_vehicle", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L551"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L556"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L556"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L556"}, {"caller_nid": "pl_base_data_get_vehicle", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L565"}, {"caller_nid": "pl_base_data_personnel_to_read", "callee": "nearest_expire_date", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L581"}, {"caller_nid": "pl_base_data_personnel_to_read", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L582"}, {"caller_nid": "pl_base_data_personnel_to_detail", "callee": "certs_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L593"}, {"caller_nid": "pl_base_data_personnel_to_detail", "callee": "list_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L594"}, {"caller_nid": "pl_base_data_personnel_to_detail", "callee": "PersonnelDetailRead", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L596"}, {"caller_nid": "pl_base_data_personnel_to_detail", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L597"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L614"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L614"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L615"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L615"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L621"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L624"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L627"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L628"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L629"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L629"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L629"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L630"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L635"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L636"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "case", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L636"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L636"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L637"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L639"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L641"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L641"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L641"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "list_owner_certs_batch", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L643"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "PersonnelListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L644"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "certs_to_read", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L651"}, {"caller_nid": "pl_base_data_list_personnel", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L651"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L664"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L664"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "validate_personnel_required_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L666"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "PlPersonnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L673"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L674"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L687"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L688"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "save_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L691"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L700"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L702"}, {"caller_nid": "pl_base_data_create_personnel", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L705"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L715"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L715"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L716"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L727"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L727"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L728"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L731"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L733"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L734"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "list_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L740"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L742"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "validate_personnel_required_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L744"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L751"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L752"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "save_owner_certs", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L758"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L767"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L769"}, {"caller_nid": "pl_base_data_update_personnel", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L772"}, {"caller_nid": "pl_base_data_delete_personnel", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L782"}, {"caller_nid": "pl_base_data_delete_personnel", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L782"}, {"caller_nid": "pl_base_data_delete_personnel", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L783"}, {"caller_nid": "pl_base_data_delete_personnel", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L784"}, {"caller_nid": "pl_base_data_delete_personnel", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L784"}, {"caller_nid": "pl_base_data_delete_personnel", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L787"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L792"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L792"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L792"}, {"caller_nid": "pl_base_data_get_personnel", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L801"}, {"caller_nid": "pl_base_data_personnel_to_driver_read", "callee": "DriverRead", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L811"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L836"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L836"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L837"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L837"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L843"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L844"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L845"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L845"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L845"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L846"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L851"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L852"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "case", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L852"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L852"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L853"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L855"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L857"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L857"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L857"}, {"caller_nid": "pl_base_data_list_drivers", "callee": "DriverListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L858"}, {"caller_nid": "pl_base_data_create_driver", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L870"}, {"caller_nid": "pl_base_data_create_driver", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L870"}, {"caller_nid": "pl_base_data_create_driver", "callee": "PlPersonnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L872"}, {"caller_nid": "pl_base_data_create_driver", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L873"}, {"caller_nid": "pl_base_data_create_driver", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L883"}, {"caller_nid": "pl_base_data_create_driver", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L884"}, {"caller_nid": "pl_base_data_create_driver", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L885"}, {"caller_nid": "pl_base_data_get_driver", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L895"}, {"caller_nid": "pl_base_data_get_driver", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L895"}, {"caller_nid": "pl_base_data_get_driver", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L896"}, {"caller_nid": "pl_base_data_update_driver", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L907"}, {"caller_nid": "pl_base_data_update_driver", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L907"}, {"caller_nid": "pl_base_data_update_driver", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L908"}, {"caller_nid": "pl_base_data_update_driver", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L920"}, {"caller_nid": "pl_base_data_update_driver", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L921"}, {"caller_nid": "pl_base_data_delete_driver", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L931"}, {"caller_nid": "pl_base_data_delete_driver", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L931"}, {"caller_nid": "pl_base_data_delete_driver", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L932"}, {"caller_nid": "pl_base_data_delete_driver", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L933"}, {"caller_nid": "pl_base_data_delete_driver", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L933"}, {"caller_nid": "pl_base_data_delete_driver", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L936"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L950"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L950"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "_get_vehicle", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L951"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "_get_personnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L952"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L955"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L955"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L955"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "PlVehiclePersonnel", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L961"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L962"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L971"}, {"caller_nid": "pl_base_data_bind_vehicle_driver", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L972"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L982"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L982"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L984"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L984"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L984"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L994"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L994"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L994"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1003"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1003"}, {"caller_nid": "pl_base_data_unbind_vehicle_driver", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1005"}, {"caller_nid": "pl_base_data_paste_recognize_commit", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1014"}, {"caller_nid": "pl_base_data_paste_recognize_commit", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1014"}, {"caller_nid": "pl_base_data_paste_recognize_commit", "callee": "commit_paste_recognize", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1016"}, {"caller_nid": "pl_base_data_paste_recognize_commit", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1023"}, {"caller_nid": "pl_base_data_paste_recognize_commit", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1026"}, {"caller_nid": "pl_base_data_paste_recognize_commit", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/base_data.py", "source_location": "L1029"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/253d1780b023245f6c9a83c736721a4e72515adc256041f6b440d5703ee507b9.json b/backend/graphify-out/cache/ast/253d1780b023245f6c9a83c736721a4e72515adc256041f6b440d5703ee507b9.json new file mode 100644 index 000000000..fb45877e8 --- /dev/null +++ b/backend/graphify-out/cache/ast/253d1780b023245f6c9a83c736721a4e72515adc256041f6b440d5703ee507b9.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_tenant", "label": "_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L30"}, {"id": "bx_reimburse_build_details_data", "label": "_build_details_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L34"}, {"id": "bx_reimburse_get_generated_title", "label": "get_generated_title()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L63"}, {"id": "bx_reimburse_list_reimburses", "label": "list_reimburses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L80"}, {"id": "bx_reimburse_my_reimburses", "label": "my_reimburses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L126"}, {"id": "bx_reimburse_my_reimburse_stats", "label": "my_reimburse_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L171"}, {"id": "bx_reimburse_reimburse_status_counts", "label": "reimburse_status_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L181"}, {"id": "bx_reimburse_pending_approval", "label": "pending_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L190"}, {"id": "bx_reimburse_pending_approval_stats", "label": "pending_approval_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L222"}, {"id": "bx_reimburse_approved_by_me", "label": "approved_by_me()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L232"}, {"id": "bx_reimburse_get_reimburse", "label": "get_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L264"}, {"id": "bx_reimburse_get_approvals", "label": "get_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L278"}, {"id": "bx_reimburse_get_approval_history", "label": "get_approval_history()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L291"}, {"id": "bx_reimburse_create_reimburse", "label": "create_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L304"}, {"id": "bx_reimburse_update_reimburse", "label": "update_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L357"}, {"id": "bx_reimburse_submit_reimburse", "label": "submit_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L401"}, {"id": "bx_reimburse_approve_reimburse", "label": "approve_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L419"}, {"id": "bx_reimburse_reject_reimburse", "label": "reject_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L435"}, {"id": "bx_reimburse_withdraw_reimburse", "label": "withdraw_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L451"}, {"id": "bx_reimburse_delete_reimburse", "label": "delete_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L469"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_schemas_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_services_bx_expense_item", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L22", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_services_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_utils_bx_codegen", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_utils_bx_date_range", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L25", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_build_details_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L34", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_generated_title", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L63", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_list_reimburses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L80", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_my_reimburses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L126", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_my_reimburse_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L171", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_reimburse_status_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L181", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_pending_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L190", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_pending_approval_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L222", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_approved_by_me", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L232", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L264", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L278", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_approval_history", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L291", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_create_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L304", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_update_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L357", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_submit_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L401", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_approve_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L419", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_reject_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L435", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_withdraw_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L451", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_delete_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L469", "weight": 1.0}, {"source": "bx_reimburse_get_generated_title", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L70", "weight": 1.0}, {"source": "bx_reimburse_list_reimburses", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L94", "weight": 1.0}, {"source": "bx_reimburse_my_reimburses", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L138", "weight": 1.0}, {"source": "bx_reimburse_my_reimburse_stats", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L175", "weight": 1.0}, {"source": "bx_reimburse_reimburse_status_counts", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L185", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L202", "weight": 1.0}, {"source": "bx_reimburse_pending_approval_stats", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L226", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L244", "weight": 1.0}, {"source": "bx_reimburse_get_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L269", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L283", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L296", "weight": 1.0}, {"source": "bx_reimburse_create_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L309", "weight": 1.0}, {"source": "bx_reimburse_create_reimburse", "target": "bx_reimburse_build_details_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L310", "weight": 1.0}, {"source": "bx_reimburse_update_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L363", "weight": 1.0}, {"source": "bx_reimburse_update_reimburse", "target": "bx_reimburse_build_details_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L366", "weight": 1.0}, {"source": "bx_reimburse_submit_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L407", "weight": 1.0}, {"source": "bx_reimburse_approve_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L425", "weight": 1.0}, {"source": "bx_reimburse_reject_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L441", "weight": 1.0}, {"source": "bx_reimburse_withdraw_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L456", "weight": 1.0}, {"source": "bx_reimburse_delete_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L474", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_tenant", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L31"}, {"caller_nid": "bx_reimburse_tenant", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L31"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L43"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L47"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L51"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L71"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L71"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "resolve_applicant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L72"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "generate_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L75"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L76"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L97"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L99"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L100"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L101"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L102"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L103"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L107"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L107"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L107"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "build_expense_name_condition", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L108"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L110"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L112"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L112"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L112"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L113"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L120"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L121"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L121"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L122"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L122"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L140"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L146"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L148"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L149"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L150"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L151"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L152"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "build_expense_name_condition", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L155"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L157"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L158"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L165"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L166"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L166"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L167"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L167"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "my_apply_stats", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L176"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L177"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L177"}, {"caller_nid": "bx_reimburse_reimburse_status_counts", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L186"}, {"caller_nid": "bx_reimburse_reimburse_status_counts", "callee": "global_status_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L186"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L203"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L203"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L217"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L217"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L218"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L218"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L228"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L228"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L245"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L245"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L259"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L259"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L260"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L260"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L270"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L272"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L273"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L274"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L284"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L285"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L287"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L287"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L297"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L298"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L300"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L300"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "generate_apply_code", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L312"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L320"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L320"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L320"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "resolve_applicant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L330"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "create_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L333"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "sync_reimburse_invoices", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L342"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L350"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L351"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L352"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L353"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "resolve_applicant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L375"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "update_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L380"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L384"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "sync_reimburse_invoices", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L386"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L394"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L395"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L396"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L397"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "submit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L408"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L412"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L413"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L414"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L415"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L415"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "approve", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L426"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L428"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L429"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L430"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L431"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "out_one_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L431"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "reject", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L442"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L444"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L445"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L446"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L447"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "out_one_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L447"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "withdraw", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L457"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L459"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L463"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L464"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L465"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L465"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L475"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L476"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "soft_delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L477"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L478"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L479"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/2640940d1851d60e7ba515d759a0aa06843b764742ae1ea2fabb95b6a16136f9.json b/backend/graphify-out/cache/ast/2640940d1851d60e7ba515d759a0aa06843b764742ae1ea2fabb95b6a16136f9.json new file mode 100644 index 000000000..1643fdd93 --- /dev/null +++ b/backend/graphify-out/cache/ast/2640940d1851d60e7ba515d759a0aa06843b764742ae1ea2fabb95b6a16136f9.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "label": "expense_item.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L1"}, {"id": "bx_expense_item_expenseitemservice", "label": "ExpenseItemService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L13"}, {"id": "bx_expense_item_tenant_no", "label": "_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L15"}, {"id": "bx_expense_item_get_by_id", "label": "get_by_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L19"}, {"id": "bx_expense_item_create", "label": "create()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L33"}, {"id": "bx_expense_item_update", "label": "update()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L61"}, {"id": "bx_expense_item_soft_delete", "label": "soft_delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L91"}, {"id": "bx_expense_item_get_item_tree", "label": "get_item_tree()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L104"}, {"id": "bx_expense_item_build_tree", "label": "_build_tree()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L117"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "app_services_bx_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_expenseitemservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_get_by_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L19", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_create", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L33", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_update", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L61", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_soft_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L91", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_get_item_tree", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L104", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_expense_item_py", "target": "bx_expense_item_build_tree", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L117", "weight": 1.0}, {"source": "bx_expense_item_create", "target": "bx_expense_item_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L39", "weight": 1.0}, {"source": "bx_expense_item_create", "target": "bx_expense_item_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L44", "weight": 1.0}, {"source": "bx_expense_item_update", "target": "bx_expense_item_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L68", "weight": 1.0}, {"source": "bx_expense_item_update", "target": "bx_expense_item_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L76", "weight": 1.0}, {"source": "bx_expense_item_soft_delete", "target": "bx_expense_item_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L92", "weight": 1.0}, {"source": "bx_expense_item_get_item_tree", "target": "bx_expense_item_build_tree", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L114", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_expense_item_tenant_no", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L16"}, {"caller_nid": "bx_expense_item_tenant_no", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L16"}, {"caller_nid": "bx_expense_item_create", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L40"}, {"caller_nid": "bx_expense_item_create", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L41"}, {"caller_nid": "bx_expense_item_create", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L46"}, {"caller_nid": "bx_expense_item_create", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L47"}, {"caller_nid": "bx_expense_item_create", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L50"}, {"caller_nid": "bx_expense_item_update", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L69"}, {"caller_nid": "bx_expense_item_update", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L75"}, {"caller_nid": "bx_expense_item_update", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L78"}, {"caller_nid": "bx_expense_item_get_item_tree", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L108"}, {"caller_nid": "bx_expense_item_get_item_tree", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L108"}, {"caller_nid": "bx_expense_item_get_item_tree", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L111"}, {"caller_nid": "bx_expense_item_get_item_tree", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L111"}, {"caller_nid": "bx_expense_item_get_item_tree", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L112"}, {"caller_nid": "bx_expense_item_get_item_tree", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L112"}, {"caller_nid": "bx_expense_item_build_tree", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L123"}, {"caller_nid": "bx_expense_item_build_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L125"}, {"caller_nid": "bx_expense_item_build_tree", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L127"}, {"caller_nid": "bx_expense_item_build_tree", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L129"}, {"caller_nid": "bx_expense_item_build_tree", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L131"}, {"caller_nid": "bx_expense_item_build_tree", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/expense_item.py", "source_location": "L132"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/2b67dc7e5d7280235dbe594bc6a984747ceb3415a527c78516cd60ef3ebccf1f.json b/backend/graphify-out/cache/ast/2b67dc7e5d7280235dbe594bc6a984747ceb3415a527c78516cd60ef3ebccf1f.json new file mode 100644 index 000000000..03f4ba5e8 --- /dev/null +++ b/backend/graphify-out/cache/ast/2b67dc7e5d7280235dbe594bc6a984747ceb3415a527c78516cd60ef3ebccf1f.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "label": "invoice_ledger.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L1"}, {"id": "bx_invoice_ledger_summarize_entries", "label": "summarize_entries()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L22"}, {"id": "bx_invoice_ledger_should_skip_release", "label": "should_skip_release()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L47"}, {"id": "bx_invoice_ledger_invoiceledgerservice", "label": "InvoiceLedgerService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L53"}, {"id": "bx_invoice_ledger_list_entries", "label": "list_entries()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L55"}, {"id": "bx_invoice_ledger_calc_summary", "label": "calc_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L70"}, {"id": "bx_invoice_ledger_lock_summary", "label": "_lock_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L76"}, {"id": "bx_invoice_ledger_refresh_summary", "label": "refresh_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L123"}, {"id": "bx_invoice_ledger_add_entry", "label": "add_entry()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L170"}, {"id": "bx_invoice_ledger_debit_reimburse", "label": "debit_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L206"}, {"id": "bx_invoice_ledger_release_reimburse", "label": "release_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L254"}, {"id": "bx_invoice_ledger_assert_can_delete_invoice", "label": "assert_can_delete_invoice()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L315"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_summarize_entries", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L22", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_should_skip_release", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L47", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_invoiceledgerservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L53", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_list_entries", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L55", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_calc_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L70", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_lock_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L76", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_refresh_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L123", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_add_entry", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L170", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_debit_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L206", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_release_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L254", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_ledger_py", "target": "bx_invoice_ledger_assert_can_delete_invoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L315", "weight": 1.0}, {"source": "bx_invoice_ledger_calc_summary", "target": "bx_invoice_ledger_list_entries", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L71", "weight": 1.0}, {"source": "bx_invoice_ledger_calc_summary", "target": "bx_invoice_ledger_summarize_entries", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L73", "weight": 1.0}, {"source": "bx_invoice_ledger_refresh_summary", "target": "bx_invoice_ledger_calc_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L132", "weight": 1.0}, {"source": "bx_invoice_ledger_debit_reimburse", "target": "bx_invoice_ledger_lock_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L218", "weight": 1.0}, {"source": "bx_invoice_ledger_debit_reimburse", "target": "bx_invoice_ledger_calc_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L226", "weight": 1.0}, {"source": "bx_invoice_ledger_debit_reimburse", "target": "bx_invoice_ledger_add_entry", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L233", "weight": 1.0}, {"source": "bx_invoice_ledger_debit_reimburse", "target": "bx_invoice_ledger_refresh_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L242", "weight": 1.0}, {"source": "bx_invoice_ledger_release_reimburse", "target": "bx_invoice_ledger_should_skip_release", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L282", "weight": 1.0}, {"source": "bx_invoice_ledger_release_reimburse", "target": "bx_invoice_ledger_lock_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L284", "weight": 1.0}, {"source": "bx_invoice_ledger_release_reimburse", "target": "bx_invoice_ledger_add_entry", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L292", "weight": 1.0}, {"source": "bx_invoice_ledger_release_reimburse", "target": "bx_invoice_ledger_refresh_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L303", "weight": 1.0}, {"source": "bx_invoice_ledger_assert_can_delete_invoice", "target": "bx_invoice_ledger_calc_summary", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L322", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_invoice_ledger_summarize_entries", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L23"}, {"caller_nid": "bx_invoice_ledger_summarize_entries", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L24"}, {"caller_nid": "bx_invoice_ledger_summarize_entries", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L25"}, {"caller_nid": "bx_invoice_ledger_summarize_entries", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L26"}, {"caller_nid": "bx_invoice_ledger_summarize_entries", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L28"}, {"caller_nid": "bx_invoice_ledger_summarize_entries", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L28"}, {"caller_nid": "bx_invoice_ledger_list_entries", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L59"}, {"caller_nid": "bx_invoice_ledger_list_entries", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L59"}, {"caller_nid": "bx_invoice_ledger_list_entries", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L59"}, {"caller_nid": "bx_invoice_ledger_list_entries", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L59"}, {"caller_nid": "bx_invoice_ledger_list_entries", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L65"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "with_for_update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "BxInvoiceWalletSummary", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L97"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L98"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L102"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L103"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L104"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L110"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L111"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "one", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L113"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "with_for_update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L113"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L113"}, {"caller_nid": "bx_invoice_ledger_lock_summary", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L113"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L134"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L134"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L134"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "BxInvoiceWalletSummary", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L152"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L153"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L165"}, {"caller_nid": "bx_invoice_ledger_refresh_summary", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L166"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L183"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L183"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L185"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L187"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "BxInvoiceLedger", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L188"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L189"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L201"}, {"caller_nid": "bx_invoice_ledger_add_entry", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L202"}, {"caller_nid": "bx_invoice_ledger_debit_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L215"}, {"caller_nid": "bx_invoice_ledger_debit_reimburse", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L215"}, {"caller_nid": "bx_invoice_ledger_debit_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L217"}, {"caller_nid": "bx_invoice_ledger_debit_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L229"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L262"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L262"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L262"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L262"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L269"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L273"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L273"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L273"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L297"}, {"caller_nid": "bx_invoice_ledger_release_reimburse", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L297"}, {"caller_nid": "bx_invoice_ledger_assert_can_delete_invoice", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L321"}, {"caller_nid": "bx_invoice_ledger_assert_can_delete_invoice", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L321"}, {"caller_nid": "bx_invoice_ledger_assert_can_delete_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice_ledger.py", "source_location": "L324"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/514ea42e366fff44f1becbde6b5bfa219a224517e47dcdec25c8cf803a3ec0b5.json b/backend/graphify-out/cache/ast/514ea42e366fff44f1becbde6b5bfa219a224517e47dcdec25c8cf803a3ec0b5.json new file mode 100644 index 000000000..3c2086f32 --- /dev/null +++ b/backend/graphify-out/cache/ast/514ea42e366fff44f1becbde6b5bfa219a224517e47dcdec25c8cf803a3ec0b5.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "label": "workflow.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L1"}, {"id": "bx_workflow_workflowservice", "label": "WorkflowService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L26"}, {"id": "bx_workflow_tenant_no", "label": "_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L28"}, {"id": "bx_workflow_get_by_id", "label": "get_by_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L32"}, {"id": "bx_workflow_get_paged", "label": "get_paged()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L45"}, {"id": "bx_workflow_create", "label": "create()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L59"}, {"id": "bx_workflow_update", "label": "update()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L76"}, {"id": "bx_workflow_soft_delete", "label": "soft_delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L96"}, {"id": "bx_workflow_get_by_biz_type", "label": "get_by_biz_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L110"}, {"id": "bx_workflow_ensure_by_biz_type", "label": "ensure_by_biz_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L122"}, {"id": "bx_workflow_save_nodes", "label": "save_nodes()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L153"}, {"id": "bx_workflow_rationale_128", "label": "\u6309\u4e1a\u52a1\u7c7b\u578b\u83b7\u53d6\u5de5\u4f5c\u6d41\uff1b\u5df2\u77e5\u7c7b\u578b\u4e0d\u5b58\u5728\u65f6\u81ea\u52a8\u521b\u5efa\u7a7a\u5b9a\u4e49\uff08\u65e0\u8282\u70b9\uff09\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L128"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "app_services_bx_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_workflowservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L26", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_get_by_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L32", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_get_paged", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L45", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_create", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L59", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_update", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L76", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_soft_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L96", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_get_by_biz_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L110", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_ensure_by_biz_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L122", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_workflow_py", "target": "bx_workflow_save_nodes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L153", "weight": 1.0}, {"source": "bx_workflow_create", "target": "bx_workflow_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L65", "weight": 1.0}, {"source": "bx_workflow_update", "target": "bx_workflow_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L83", "weight": 1.0}, {"source": "bx_workflow_soft_delete", "target": "bx_workflow_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L97", "weight": 1.0}, {"source": "bx_workflow_soft_delete", "target": "bx_workflow_update", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L102", "weight": 1.0}, {"source": "bx_workflow_ensure_by_biz_type", "target": "bx_workflow_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L129", "weight": 1.0}, {"source": "bx_workflow_ensure_by_biz_type", "target": "bx_workflow_get_by_biz_type", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L130", "weight": 1.0}, {"source": "bx_workflow_ensure_by_biz_type", "target": "bx_workflow_create", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L138", "weight": 1.0}, {"source": "bx_workflow_save_nodes", "target": "bx_workflow_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L160", "weight": 1.0}, {"source": "bx_workflow_save_nodes", "target": "bx_workflow_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L161", "weight": 1.0}, {"source": "bx_workflow_rationale_128", "target": "bx_workflow_workflowservice_ensure_by_biz_type", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L128", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_workflow_tenant_no", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L29"}, {"caller_nid": "bx_workflow_tenant_no", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L29"}, {"caller_nid": "bx_workflow_soft_delete", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L102"}, {"caller_nid": "bx_workflow_soft_delete", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L102"}, {"caller_nid": "bx_workflow_soft_delete", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L106"}, {"caller_nid": "bx_workflow_get_by_biz_type", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L112"}, {"caller_nid": "bx_workflow_get_by_biz_type", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L112"}, {"caller_nid": "bx_workflow_get_by_biz_type", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L112"}, {"caller_nid": "bx_workflow_ensure_by_biz_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L134"}, {"caller_nid": "bx_workflow_ensure_by_biz_type", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L148"}, {"caller_nid": "bx_workflow_ensure_by_biz_type", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L149"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L163"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L165"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L165"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L165"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L172"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L173"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L178"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L179"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L179"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "BxWorkflowNode", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L180"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L181"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L182"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L183"}, {"caller_nid": "bx_workflow_save_nodes", "callee": "expire", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/workflow.py", "source_location": "L184"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/65eced0eea3c4f9567842be545d2eb042c24398d5ff5eeda2aff693fcff06ff2.json b/backend/graphify-out/cache/ast/65eced0eea3c4f9567842be545d2eb042c24398d5ff5eeda2aff693fcff06ff2.json new file mode 100644 index 000000000..3c82c301a --- /dev/null +++ b/backend/graphify-out/cache/ast/65eced0eea3c4f9567842be545d2eb042c24398d5ff5eeda2aff693fcff06ff2.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "label": "invoice.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L1"}, {"id": "bx_invoice_get_mine_wallet_summary", "label": "get_mine_wallet_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L18"}, {"id": "bx_invoice_list_invoice_wallets", "label": "list_invoice_wallets()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L28"}, {"id": "bx_invoice_list_invoices", "label": "list_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L43"}, {"id": "bx_invoice_create_invoice", "label": "create_invoice()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L66"}, {"id": "bx_invoice_delete_invoice", "label": "delete_invoice()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L145"}, {"id": "bx_invoice_list_invoice_ledgers", "label": "list_invoice_ledgers()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L160"}, {"id": "bx_invoice_rationale_71", "label": "\u4e00\u6b21\u4e0a\u4f20\u4e00\u6761\u53d1\u7968\uff1a\u591a\u6587\u4ef6\u6302\u540c\u4e00\u6863\u6848\uff0c\u91d1\u989d\u4e3a\u603b\u989d\uff0c\u53ea\u5199\u4e00\u6761\u989d\u5ea6\u6d41\u6c34\u3002 \u4f7f\u7528 request.form().getlist\uff0c\u517c\u5bb9\u53ea\u4f20 1 \u4e2a\u6587\u4ef6\u65f6 Fas", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L71"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "mimetypes", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "starlette_datastructures", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_schemas_bx_invoice", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_services_bx_invoice", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_get_mine_wallet_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_list_invoice_wallets", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_list_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L43", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_create_invoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L66", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_delete_invoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L145", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_list_invoice_ledgers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L160", "weight": 1.0}, {"source": "bx_invoice_rationale_71", "target": "bx_invoice_create_invoice", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L71", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_invoice_get_mine_wallet_summary", "callee": "get_mine_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L23"}, {"caller_nid": "bx_invoice_get_mine_wallet_summary", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L24"}, {"caller_nid": "bx_invoice_get_mine_wallet_summary", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L24"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "list_wallets", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L35"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L38"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "_summary_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L38"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L39"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L39"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "_tenant_no", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L50"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "out_rows_with_attachments", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L54"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L54"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L55"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L56"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L57"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "form", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L75"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L76"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L77"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L77"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L78"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L80"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L82"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L87"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L88"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L88"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L91"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "getlist", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L93"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L94"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "id", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L96"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L99"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L100"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L103"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "read", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L109"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "guess_type", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L112"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L115"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L117"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "create", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L120"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L128"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L129"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L131"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L134"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L135"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "_tenant_no", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L139"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "out_rows_with_attachments", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L140"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L141"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L141"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L151"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L152"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L154"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L156"}, {"caller_nid": "bx_invoice_list_invoice_ledgers", "callee": "list_ledgers", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L165"}, {"caller_nid": "bx_invoice_list_invoice_ledgers", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L166"}, {"caller_nid": "bx_invoice_list_invoice_ledgers", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L166"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/6b41f84fed5fe50011fc359ebbdf5453de2af06de485e1434023ba0ef0e70425.json b/backend/graphify-out/cache/ast/6b41f84fed5fe50011fc359ebbdf5453de2af06de485e1434023ba0ef0e70425.json new file mode 100644 index 000000000..51efdef22 --- /dev/null +++ b/backend/graphify-out/cache/ast/6b41f84fed5fe50011fc359ebbdf5453de2af06de485e1434023ba0ef0e70425.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "label": "invoice.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L1"}, {"id": "bx_invoice_invoiceservice", "label": "InvoiceService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L29"}, {"id": "bx_invoice_tenant_no", "label": "_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L31"}, {"id": "bx_invoice_is_wallet_admin", "label": "is_wallet_admin()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L35"}, {"id": "bx_invoice_require_wallet_admin", "label": "_require_wallet_admin()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L42"}, {"id": "bx_invoice_lookup_user_name", "label": "_lookup_user_name()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L47"}, {"id": "bx_invoice_resolve_owner", "label": "_resolve_owner()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L58"}, {"id": "bx_invoice_resolve_owner_for_query", "label": "_resolve_owner_for_query()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L70"}, {"id": "bx_invoice_count_invoices", "label": "_count_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L81"}, {"id": "bx_invoice_get_mine_summary", "label": "get_mine_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L93"}, {"id": "bx_invoice_list_wallets", "label": "list_wallets()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L121"}, {"id": "bx_invoice_list_invoices", "label": "list_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L153"}, {"id": "bx_invoice_list_ledgers", "label": "list_ledgers()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L176"}, {"id": "bx_invoice_create", "label": "create()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L188"}, {"id": "bx_invoice_delete", "label": "delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L264"}, {"id": "bx_invoice_summary_to_dict", "label": "_summary_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L312"}, {"id": "bx_invoice_out_rows_with_attachments", "label": "out_rows_with_attachments()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L327"}, {"id": "bx_invoice_rationale_197", "label": "\u4e00\u6b21\u4e0a\u4f20\u521b\u5efa\u4e00\u6761\u53d1\u7968\u6863\u6848\uff1a\u91d1\u989d\u4e3a\u603b\u989d\uff0cfiles \u5168\u90e8\u6302\u5230\u540c\u4e00 biz_id\uff0c\u53ea\u5199\u4e00\u6761 credit_upload\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L197"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "mimetypes", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_core_menu_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_attachment", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L17", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_invoice_ledger", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_storage", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_web_auth_roles", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_invoiceservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L29", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_is_wallet_admin", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L35", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_require_wallet_admin", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L42", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_lookup_user_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L47", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_resolve_owner", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L58", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_resolve_owner_for_query", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L70", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_count_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L81", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_get_mine_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L93", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_list_wallets", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L121", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_list_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L153", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_list_ledgers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L176", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_create", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L188", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L264", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_summary_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L312", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_out_rows_with_attachments", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L327", "weight": 1.0}, {"source": "bx_invoice_require_wallet_admin", "target": "bx_invoice_is_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L43", "weight": 1.0}, {"source": "bx_invoice_resolve_owner", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L66", "weight": 1.0}, {"source": "bx_invoice_resolve_owner", "target": "bx_invoice_lookup_user_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L67", "weight": 1.0}, {"source": "bx_invoice_resolve_owner_for_query", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L77", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L94", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_summary_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L105", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_count_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L114", "weight": 1.0}, {"source": "bx_invoice_list_wallets", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L129", "weight": 1.0}, {"source": "bx_invoice_list_wallets", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L130", "weight": 1.0}, {"source": "bx_invoice_list_invoices", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L161", "weight": 1.0}, {"source": "bx_invoice_list_invoices", "target": "bx_invoice_resolve_owner_for_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L162", "weight": 1.0}, {"source": "bx_invoice_list_ledgers", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L182", "weight": 1.0}, {"source": "bx_invoice_list_ledgers", "target": "bx_invoice_resolve_owner_for_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L183", "weight": 1.0}, {"source": "bx_invoice_create", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L198", "weight": 1.0}, {"source": "bx_invoice_create", "target": "bx_invoice_resolve_owner", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L199", "weight": 1.0}, {"source": "bx_invoice_create", "target": "bx_invoice_count_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L251", "weight": 1.0}, {"source": "bx_invoice_delete", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L265", "weight": 1.0}, {"source": "bx_invoice_delete", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L266", "weight": 1.0}, {"source": "bx_invoice_delete", "target": "bx_invoice_count_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L299", "weight": 1.0}, {"source": "bx_invoice_rationale_197", "target": "bx_invoice_invoiceservice_create", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L197", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_invoice_tenant_no", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L32"}, {"caller_nid": "bx_invoice_tenant_no", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L32"}, {"caller_nid": "bx_invoice_is_wallet_admin", "callee": "iter_user_menu_perm_codes", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L38"}, {"caller_nid": "bx_invoice_require_wallet_admin", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L44"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L49"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L49"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L49"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L54"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L55"}, {"caller_nid": "bx_invoice_resolve_owner", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L63"}, {"caller_nid": "bx_invoice_resolve_owner_for_query", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L75"}, {"caller_nid": "bx_invoice_count_invoices", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L83"}, {"caller_nid": "bx_invoice_count_invoices", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L83"}, {"caller_nid": "bx_invoice_count_invoices", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L83"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L96"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L96"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L96"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "calc_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L106"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L131"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L131"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L135"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L137"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L138"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L139"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L140"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L143"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L145"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L145"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L145"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L145"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L145"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L145"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L164"}, {"caller_nid": "bx_invoice_list_ledgers", "callee": "list_entries", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L184"}, {"caller_nid": "bx_invoice_list_ledgers", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L185"}, {"caller_nid": "bx_invoice_list_ledgers", "callee": "reversed", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L185"}, {"caller_nid": "bx_invoice_create", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L200"}, {"caller_nid": "bx_invoice_create", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L200"}, {"caller_nid": "bx_invoice_create", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L202"}, {"caller_nid": "bx_invoice_create", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L204"}, {"caller_nid": "bx_invoice_create", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L215"}, {"caller_nid": "bx_invoice_create", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L224"}, {"caller_nid": "bx_invoice_create", "callee": "guess_type", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L226"}, {"caller_nid": "bx_invoice_create", "callee": "upload_bx_file", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L227"}, {"caller_nid": "bx_invoice_create", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L236"}, {"caller_nid": "bx_invoice_create", "callee": "add_entry", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L242"}, {"caller_nid": "bx_invoice_create", "callee": "refresh_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L252"}, {"caller_nid": "bx_invoice_delete", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L267"}, {"caller_nid": "bx_invoice_delete", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L271"}, {"caller_nid": "bx_invoice_delete", "callee": "assert_can_delete_invoice", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L273"}, {"caller_nid": "bx_invoice_delete", "callee": "add_entry", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L276"}, {"caller_nid": "bx_invoice_delete", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L281"}, {"caller_nid": "bx_invoice_delete", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L281"}, {"caller_nid": "bx_invoice_delete", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L288"}, {"caller_nid": "bx_invoice_delete", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L288"}, {"caller_nid": "bx_invoice_delete", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L288"}, {"caller_nid": "bx_invoice_delete", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L297"}, {"caller_nid": "bx_invoice_delete", "callee": "refresh_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L300"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L334"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L334"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L334"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L334"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L337"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L341"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L346"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L346"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L350"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L352"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/73fcd16c685a920fadf7666f0486ddff19e14c9b9bafbe6f9ba3060ceb6b9995.json b/backend/graphify-out/cache/ast/73fcd16c685a920fadf7666f0486ddff19e14c9b9bafbe6f9ba3060ceb6b9995.json new file mode 100644 index 000000000..b858e6895 --- /dev/null +++ b/backend/graphify-out/cache/ast/73fcd16c685a920fadf7666f0486ddff19e14c9b9bafbe6f9ba3060ceb6b9995.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_reimburseservice", "label": "ReimburseService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L50"}, {"id": "bx_reimburse_tenant_no", "label": "_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L52"}, {"id": "bx_reimburse_can_change_applicant", "label": "can_change_applicant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L56"}, {"id": "bx_reimburse_resolve_applicant", "label": "resolve_applicant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L65"}, {"id": "bx_reimburse_get_by_id", "label": "get_by_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L103"}, {"id": "bx_reimburse_get_paged", "label": "get_paged()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L116"}, {"id": "bx_reimburse_soft_delete", "label": "soft_delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L130"}, {"id": "bx_reimburse_workflow_nodes", "label": "_workflow_nodes()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L137"}, {"id": "bx_reimburse_pending_approval", "label": "pending_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L150"}, {"id": "bx_reimburse_approved_by_me", "label": "approved_by_me()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L216"}, {"id": "bx_reimburse_has_debit_reimburse", "label": "_has_debit_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L277"}, {"id": "bx_reimburse_sync_reimburse_invoices", "label": "sync_reimburse_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L291"}, {"id": "bx_reimburse_get_linked_invoice_ids", "label": "get_linked_invoice_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L355"}, {"id": "bx_reimburse_get_linked_invoices_brief", "label": "get_linked_invoices_brief()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L369"}, {"id": "bx_reimburse_get_linked_invoice_ids_map", "label": "get_linked_invoice_ids_map()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L400"}, {"id": "bx_reimburse_submit", "label": "submit()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L421"}, {"id": "bx_reimburse_approve", "label": "approve()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L463"}, {"id": "bx_reimburse_reject", "label": "reject()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L508"}, {"id": "bx_reimburse_withdraw", "label": "withdraw()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L548"}, {"id": "bx_reimburse_approval_record_dict", "label": "_approval_record_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L567"}, {"id": "bx_reimburse_latest_approval_per_node", "label": "_latest_approval_per_node()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L580"}, {"id": "bx_reimburse_query_approvals", "label": "_query_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L597"}, {"id": "bx_reimburse_get_approvals", "label": "get_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L609"}, {"id": "bx_reimburse_get_approval_history", "label": "get_approval_history()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L645"}, {"id": "bx_reimburse_create_with_details", "label": "create_with_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L664"}, {"id": "bx_reimburse_update_with_details", "label": "update_with_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L732"}, {"id": "bx_reimburse_get_details", "label": "get_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L815"}, {"id": "bx_reimburse_build_expense_name_condition", "label": "build_expense_name_condition()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L828"}, {"id": "bx_reimburse_get_details_map_by_reimburse_ids", "label": "get_details_map_by_reimburse_ids()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L848"}, {"id": "bx_reimburse_out_rows_with_attachment_counts", "label": "out_rows_with_attachment_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L869"}, {"id": "bx_reimburse_out_one_with_attachment_counts", "label": "out_one_with_attachment_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L899"}, {"id": "bx_reimburse_build_apply_out_with_details", "label": "build_apply_out_with_details()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905"}, {"id": "bx_reimburse_global_status_counts", "label": "global_status_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L916"}, {"id": "bx_reimburse_my_apply_base", "label": "_my_apply_base()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L925"}, {"id": "bx_reimburse_my_apply_stats", "label": "my_apply_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L937"}, {"id": "bx_reimburse_pending_approval_stats", "label": "pending_approval_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L995"}, {"id": "bx_reimburse_pay", "label": "pay()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1026"}, {"id": "bx_reimburse_offset", "label": "offset()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1049"}, {"id": "bx_reimburse_batch_offset", "label": "batch_offset()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1080"}, {"id": "bx_reimburse_finance_payment_stats", "label": "finance_payment_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1135"}, {"id": "bx_reimburse_rationale_57", "label": "\u662f\u5426\u53ef\u9009\u62e9\u4ed6\u4eba\u4f5c\u4e3a\u62a5\u9500\u7533\u8bf7\u4eba\uff08\u8d85\u7ba1\u6216\u5177\u5907\u6309\u94ae\u6743\u9650\uff09\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L57"}, {"id": "bx_reimburse_rationale_72", "label": "\u89e3\u6790\u62a5\u9500\u7533\u8bf7\u4eba\u3002 \u65e0 changeApplicant \u6743\u9650\u65f6\u5ffd\u7565\u5ba2\u6237\u7aef\u6307\u5b9a\uff0c\u5f3a\u5236\u672c\u4eba\uff1b \u6709\u6743\u9650\u65f6\u53ef\u6307\u5b9a\u540c\u79df\u6237\u6709\u6548\u7528\u6237\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L72"}, {"id": "bx_reimburse_rationale_583", "label": "\u540c\u4e00\u8282\u70b9\u591a\u6b21\u5ba1\u6279\u65f6\uff0c\u53d6 approval_time \u6700\u65b0\u7684\u4e00\u6761\u4f5c\u4e3a\u5f53\u524d\u8282\u70b9\u72b6\u6001\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L583"}, {"id": "bx_reimburse_rationale_648", "label": "\u8fd4\u56de\u5168\u90e8\u5ba1\u6279\u52a8\u4f5c\uff0c\u6309\u65f6\u95f4\u6b63\u5e8f\u6392\u5217\uff0c\u7528\u4e8e\u5c55\u793a\u5b8c\u6574\u5ba1\u6279\u5386\u53f2\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L648"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "sqlalchemy_exc", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_menu_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L27", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_schemas_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_approval_cycle", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L29", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_attachment", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_invoice_ledger", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L32", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_bx_data_scope", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L33", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_services_web_auth_roles", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L34", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_utils_bx_codegen", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L35", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "app_utils_bx_date_range", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L43", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_reimburseservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L50", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L52", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_can_change_applicant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L56", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_resolve_applicant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L65", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_by_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L103", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_paged", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L116", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_soft_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L130", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_workflow_nodes", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L137", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_pending_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L150", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_approved_by_me", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L216", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_has_debit_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L277", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_sync_reimburse_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L291", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_linked_invoice_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L355", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_linked_invoices_brief", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L369", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_linked_invoice_ids_map", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L400", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_submit", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L421", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_approve", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L463", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_reject", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L508", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_withdraw", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L548", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_approval_record_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L567", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_latest_approval_per_node", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L580", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_query_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L597", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L609", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_approval_history", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L645", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_create_with_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L664", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_update_with_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L732", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L815", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_build_expense_name_condition", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L828", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_get_details_map_by_reimburse_ids", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L848", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_out_rows_with_attachment_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L869", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_out_one_with_attachment_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L899", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_build_apply_out_with_details", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L905", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_global_status_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L916", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_my_apply_base", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L925", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_my_apply_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L937", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_pending_approval_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L995", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_pay", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1026", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_offset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1049", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_batch_offset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1080", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_reimburse_py", "target": "bx_reimburse_finance_payment_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1135", "weight": 1.0}, {"source": "bx_reimburse_resolve_applicant", "target": "bx_reimburse_can_change_applicant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L82", "weight": 1.0}, {"source": "bx_reimburse_soft_delete", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L131", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_build_expense_name_condition", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L191", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_offset", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L206", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_build_expense_name_condition", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L254", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_offset", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L269", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L428", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L429", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_sync_reimburse_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L433", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_has_debit_reimburse", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L441", "weight": 1.0}, {"source": "bx_reimburse_submit", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L456", "weight": 1.0}, {"source": "bx_reimburse_approve", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L466", "weight": 1.0}, {"source": "bx_reimburse_approve", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L467", "weight": 1.0}, {"source": "bx_reimburse_approve", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L470", "weight": 1.0}, {"source": "bx_reimburse_reject", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L511", "weight": 1.0}, {"source": "bx_reimburse_reject", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L512", "weight": 1.0}, {"source": "bx_reimburse_reject", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L515", "weight": 1.0}, {"source": "bx_reimburse_withdraw", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L549", "weight": 1.0}, {"source": "bx_reimburse_withdraw", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L550", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L612", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_workflow_nodes", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L618", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_query_approvals", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L621", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_latest_approval_per_node", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L623", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_approval_record_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L628", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L649", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_approval_record_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L661", "weight": 1.0}, {"source": "bx_reimburse_create_with_details", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L673", "weight": 1.0}, {"source": "bx_reimburse_update_with_details", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L740", "weight": 1.0}, {"source": "bx_reimburse_update_with_details", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L741", "weight": 1.0}, {"source": "bx_reimburse_out_rows_with_attachment_counts", "target": "bx_reimburse_get_details_map_by_reimburse_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L878", "weight": 1.0}, {"source": "bx_reimburse_out_rows_with_attachment_counts", "target": "bx_reimburse_get_linked_invoice_ids_map", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L879", "weight": 1.0}, {"source": "bx_reimburse_out_one_with_attachment_counts", "target": "bx_reimburse_out_rows_with_attachment_counts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L902", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_out_one_with_attachment_counts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L908", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_get_details", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L909", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_get_linked_invoice_ids", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L911", "weight": 1.0}, {"source": "bx_reimburse_build_apply_out_with_details", "target": "bx_reimburse_get_linked_invoices_brief", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L912", "weight": 1.0}, {"source": "bx_reimburse_my_apply_stats", "target": "bx_reimburse_my_apply_base", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L938", "weight": 1.0}, {"source": "bx_reimburse_pay", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1033", "weight": 1.0}, {"source": "bx_reimburse_pay", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1034", "weight": 1.0}, {"source": "bx_reimburse_offset", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1057", "weight": 1.0}, {"source": "bx_reimburse_offset", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1058", "weight": 1.0}, {"source": "bx_reimburse_batch_offset", "target": "bx_reimburse_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1088", "weight": 1.0}, {"source": "bx_reimburse_batch_offset", "target": "bx_reimburse_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1089", "weight": 1.0}, {"source": "bx_reimburse_rationale_57", "target": "bx_reimburse_reimburseservice_can_change_applicant", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L57", "weight": 1.0}, {"source": "bx_reimburse_rationale_72", "target": "bx_reimburse_reimburseservice_resolve_applicant", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L72", "weight": 1.0}, {"source": "bx_reimburse_rationale_583", "target": "bx_reimburse_reimburseservice_latest_approval_per_node", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L583", "weight": 1.0}, {"source": "bx_reimburse_rationale_648", "target": "bx_reimburse_reimburseservice_get_approval_history", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L648", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_tenant_no", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L53"}, {"caller_nid": "bx_reimburse_tenant_no", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L53"}, {"caller_nid": "bx_reimburse_can_change_applicant", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L60"}, {"caller_nid": "bx_reimburse_can_change_applicant", "callee": "iter_user_menu_perm_codes", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L61"}, {"caller_nid": "bx_reimburse_resolve_applicant", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L78"}, {"caller_nid": "bx_reimburse_resolve_applicant", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L86"}, {"caller_nid": "bx_reimburse_resolve_applicant", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L86"}, {"caller_nid": "bx_reimburse_resolve_applicant", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L86"}, {"caller_nid": "bx_reimburse_resolve_applicant", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L96"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L139"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L139"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L139"}, {"caller_nid": "bx_reimburse_workflow_nodes", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L139"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L164"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L164"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L164"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L167"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L182"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L183"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L184"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L185"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L186"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L190"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L193"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "resolve_create_time_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L194"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L200"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L202"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L203"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L204"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L204"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L204"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L204"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L208"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L230"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "distinct", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L230"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L230"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L230"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L240"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L240"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L240"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L245"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L246"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L247"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L248"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L249"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L253"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L256"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "resolve_create_time_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L257"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L263"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L265"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L266"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L267"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L269"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L269"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L269"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L269"}, {"caller_nid": "bx_reimburse_has_debit_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L279"}, {"caller_nid": "bx_reimburse_has_debit_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L279"}, {"caller_nid": "bx_reimburse_has_debit_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L279"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L303"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L305"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L305"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L308"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L309"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L313"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L313"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L313"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L316"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L323"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L325"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L330"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L335"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L335"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L335"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L342"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "BxReimburseInvoice", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L343"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L344"}, {"caller_nid": "bx_reimburse_sync_reimburse_invoices", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L352"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L357"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L357"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L357"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L357"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L363"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L373"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L373"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L373"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L373"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L373"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L376"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L387"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "ReimburseInvoiceBriefOut", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L391"}, {"caller_nid": "bx_reimburse_get_linked_invoices_brief", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L393"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L406"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L406"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L406"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L406"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L408"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L412"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L417"}, {"caller_nid": "bx_reimburse_get_linked_invoice_ids_map", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L417"}, {"caller_nid": "bx_reimburse_submit", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L442"}, {"caller_nid": "bx_reimburse_submit", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L442"}, {"caller_nid": "bx_reimburse_submit", "callee": "debit_reimburse", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L443"}, {"caller_nid": "bx_reimburse_submit", "callee": "generate_apply_code", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L453"}, {"caller_nid": "bx_reimburse_submit", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L459"}, {"caller_nid": "bx_reimburse_approve", "callee": "enumerate", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L474"}, {"caller_nid": "bx_reimburse_approve", "callee": "BxReimburseApproval", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L483"}, {"caller_nid": "bx_reimburse_approve", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L484"}, {"caller_nid": "bx_reimburse_approve", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L492"}, {"caller_nid": "bx_reimburse_approve", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L497"}, {"caller_nid": "bx_reimburse_approve", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L498"}, {"caller_nid": "bx_reimburse_approve", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L504"}, {"caller_nid": "bx_reimburse_reject", "callee": "BxReimburseApproval", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L523"}, {"caller_nid": "bx_reimburse_reject", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L524"}, {"caller_nid": "bx_reimburse_reject", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L532"}, {"caller_nid": "bx_reimburse_reject", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L537"}, {"caller_nid": "bx_reimburse_reject", "callee": "release_reimburse", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L541"}, {"caller_nid": "bx_reimburse_reject", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L544"}, {"caller_nid": "bx_reimburse_withdraw", "callee": "release_reimburse", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L560"}, {"caller_nid": "bx_reimburse_withdraw", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L563"}, {"caller_nid": "bx_reimburse_latest_approval_per_node", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L586"}, {"caller_nid": "bx_reimburse_query_approvals", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L599"}, {"caller_nid": "bx_reimburse_query_approvals", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L599"}, {"caller_nid": "bx_reimburse_query_approvals", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L599"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "filter_current_cycle_approvals", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L622"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L626"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L628"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L630"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L652"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L652"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L652"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L652"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L658"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L658"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L674"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "sum", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L675"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L675"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L675"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "parse_reimburse_date", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L676"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L676"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L677"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "range", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L683"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "resolve_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L684"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "BxReimburseApply", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L687"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L688"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L693"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L693"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L694"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L702"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L704"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L707"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "RuntimeError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L713"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "BxReimburseDetail", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L716"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L717"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L719"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L722"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L727"}, {"caller_nid": "bx_reimburse_create_with_details", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L728"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "parse_reimburse_date", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L748"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L748"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "pop", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L751"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L754"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L755"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L761"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L761"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "is_auto_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L764"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "allocate_reimburse_title_seq", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L768"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "format_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L772"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "is_auto_reimburse_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L775"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L779"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L779"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L779"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L785"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "enumerate", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L788"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "BxReimburseDetail", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L789"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L790"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L792"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L795"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L800"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L801"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L801"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L804"}, {"caller_nid": "bx_reimburse_update_with_details", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L811"}, {"caller_nid": "bx_reimburse_get_details", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L817"}, {"caller_nid": "bx_reimburse_get_details", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L817"}, {"caller_nid": "bx_reimburse_get_details", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L817"}, {"caller_nid": "bx_reimburse_get_details", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L817"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L831"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L831"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L835"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L835"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L839"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L842"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L843"}, {"caller_nid": "bx_reimburse_build_expense_name_condition", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L844"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L854"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L854"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L854"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L854"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L856"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L865"}, {"caller_nid": "bx_reimburse_get_details_map_by_reimburse_ids", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L865"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "count_invoice_attach_by_biz_ids", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L875"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L882"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L883"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L884"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L885"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L886"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "model_copy", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L887"}, {"caller_nid": "bx_reimburse_out_rows_with_attachment_counts", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L891"}, {"caller_nid": "bx_reimburse_build_apply_out_with_details", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L910"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L917"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L917"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L917"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L920"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L921"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "group_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L921"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L922"}, {"caller_nid": "bx_reimburse_global_status_counts", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L922"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L926"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L926"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L929"}, {"caller_nid": "bx_reimburse_my_apply_base", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L934"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L938"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L939"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L939"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L941"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L941"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L941"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L941"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L941"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L944"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L944"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L944"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L944"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L944"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L951"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L951"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L951"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L951"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L951"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L953"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L958"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L958"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L958"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L958"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L958"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L965"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L965"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L965"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L965"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L965"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L966"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "current_month_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L970"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L972"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L972"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L972"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L972"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L972"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L978"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L978"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L978"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L978"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L978"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L985"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L986"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L987"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L988"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L989"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L990"}, {"caller_nid": "bx_reimburse_my_apply_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L991"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L996"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L997"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L997"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L997"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1000"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1014"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1014"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1014"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1014"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "current_month_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1015"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1017"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1017"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "join", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1017"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1017"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1017"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1017"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1023"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1023"}, {"caller_nid": "bx_reimburse_pay", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1040"}, {"caller_nid": "bx_reimburse_pay", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1045"}, {"caller_nid": "bx_reimburse_offset", "callee": "BxReimburseOffset", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1065"}, {"caller_nid": "bx_reimburse_offset", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1066"}, {"caller_nid": "bx_reimburse_offset", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1075"}, {"caller_nid": "bx_reimburse_offset", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1076"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "bool", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1093"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1098"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1099"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "BxReimburseOffset", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1103"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1104"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1113"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1121"}, {"caller_nid": "bx_reimburse_batch_offset", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1131"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1137"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1137"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "subquery", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1140"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1140"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1141"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1141"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1143"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1143"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1143"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1143"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1143"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "isnot", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1149"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1151"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1151"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1151"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1151"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1151"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1153"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1155"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1157"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1158"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1162"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1162"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "select_from", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1162"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1162"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1162"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "current_month_bounds", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1164"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1166"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1166"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1166"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1166"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1166"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1172"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1172"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1172"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1172"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "sum", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1172"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1178"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1179"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1180"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1181"}, {"caller_nid": "bx_reimburse_finance_payment_stats", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/reimburse.py", "source_location": "L1181"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/750a883eb752a96e26f22267171a941345201afa9d2ff243c4c4569d02a735ea.json b/backend/graphify-out/cache/ast/750a883eb752a96e26f22267171a941345201afa9d2ff243c4c4569d02a735ea.json new file mode 100644 index 000000000..96453eaf1 --- /dev/null +++ b/backend/graphify-out/cache/ast/750a883eb752a96e26f22267171a941345201afa9d2ff243c4c4569d02a735ea.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "label": "dict_data.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L1"}, {"id": "crud_dict_data_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L16"}, {"id": "crud_dict_data_list_dict_data", "label": "list_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L32"}, {"id": "crud_dict_data_get_dict_data", "label": "get_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L68"}, {"id": "crud_dict_data_create_dict_data", "label": "create_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L76"}, {"id": "crud_dict_data_update_dict_data", "label": "update_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L110"}, {"id": "crud_dict_data_soft_delete_dict_data", "label": "soft_delete_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L142"}, {"id": "crud_dict_data_list_dict_data_options", "label": "list_dict_data_options()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L153"}, {"id": "crud_dict_data_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L171"}, {"id": "crud_dict_data_rationale_1", "label": "\u5b57\u5178\u6570\u636e CRUD\uff08sys_dict_data\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L1"}, {"id": "crud_dict_data_rationale_160", "label": "\u5b57\u5178\u4e0b\u62c9\u9009\u9879\uff1a\u79df\u6237\u4e3b\u6570\u636e\uff0c\u5ffd\u7565\u6570\u636e\u8303\u56f4\uff08user_info \u4fdd\u7559\u517c\u5bb9\u8c03\u7528\u65b9\uff0c\u4e0d\u53c2\u4e0e\u8fc7\u6ee4\uff09\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L160"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_list_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L32", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_get_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L68", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_create_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L76", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_update_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L110", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_soft_delete_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L142", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_list_dict_data_options", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L153", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "target": "crud_dict_data_total_pages", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L171", "weight": 1.0}, {"source": "crud_dict_data_list_dict_data", "target": "crud_dict_data_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L65", "weight": 1.0}, {"source": "crud_dict_data_update_dict_data", "target": "crud_dict_data_get_dict_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L121", "weight": 1.0}, {"source": "crud_dict_data_soft_delete_dict_data", "target": "crud_dict_data_get_dict_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L143", "weight": 1.0}, {"source": "crud_dict_data_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_data_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L1", "weight": 1.0}, {"source": "crud_dict_data_rationale_160", "target": "crud_dict_data_list_dict_data_options", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L160", "weight": 1.0}], "raw_calls": [{"caller_nid": "crud_dict_data_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L27"}, {"caller_nid": "crud_dict_data_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L28"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L55"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "with_entities", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L55"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L55"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L55"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L55"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L56"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L57"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L57"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L59"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L59"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L59"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L59"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L59"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L60"}, {"caller_nid": "crud_dict_data_list_dict_data", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L65"}, {"caller_nid": "crud_dict_data_get_dict_data", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L70"}, {"caller_nid": "crud_dict_data_get_dict_data", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L70"}, {"caller_nid": "crud_dict_data_get_dict_data", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L70"}, {"caller_nid": "crud_dict_data_get_dict_data", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L71"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "SysDictData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L88"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L89"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L90"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L91"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L92"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L93"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L96"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L99"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L101"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L104"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L105"}, {"caller_nid": "crud_dict_data_create_dict_data", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L106"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L123"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L125"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L127"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L129"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L133"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L135"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L136"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L137"}, {"caller_nid": "crud_dict_data_update_dict_data", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L138"}, {"caller_nid": "crud_dict_data_soft_delete_dict_data", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L145"}, {"caller_nid": "crud_dict_data_soft_delete_dict_data", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L146"}, {"caller_nid": "crud_dict_data_soft_delete_dict_data", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L148"}, {"caller_nid": "crud_dict_data_soft_delete_dict_data", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L149"}, {"caller_nid": "crud_dict_data_soft_delete_dict_data", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L150"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L162"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L162"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L163"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L166"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L167"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L167"}, {"caller_nid": "crud_dict_data_list_dict_data_options", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L167"}, {"caller_nid": "crud_dict_data_total_pages", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L174"}, {"caller_nid": "crud_dict_data_total_pages", "callee": "ceil", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L174"}, {"caller_nid": "crud_dict_data_total_pages", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_data.py", "source_location": "L174"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/7ff22a68735b0c3e4f61831239c07debef46f4d68822a0c76ff0c9b482422628.json b/backend/graphify-out/cache/ast/7ff22a68735b0c3e4f61831239c07debef46f4d68822a0c76ff0c9b482422628.json new file mode 100644 index 000000000..b84c9b59d --- /dev/null +++ b/backend/graphify-out/cache/ast/7ff22a68735b0c3e4f61831239c07debef46f4d68822a0c76ff0c9b482422628.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "label": "admin.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1"}, {"id": "api_admin_list_roles_for_select", "label": "list_roles_for_select()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L42"}, {"id": "api_admin_list_users_for_select", "label": "list_users_for_select()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L74"}, {"id": "api_admin_list_roles_for_designer", "label": "list_roles_for_designer()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L100"}, {"id": "api_admin_tenantcreatebody", "label": "TenantCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L121"}, {"id": "basemodel", "label": "BaseModel", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "api_admin_tenantupdatebody", "label": "TenantUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L132"}, {"id": "api_admin_list_tenants", "label": "list_tenants()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L144"}, {"id": "api_admin_create_tenant", "label": "create_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L165"}, {"id": "api_admin_update_tenant", "label": "update_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L187"}, {"id": "api_admin_delete_tenant", "label": "delete_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L212"}, {"id": "api_admin_get_tenant_no", "label": "_get_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L229"}, {"id": "api_admin_usercreatebody", "label": "UserCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L242"}, {"id": "api_admin_userupdatebody", "label": "UserUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L259"}, {"id": "api_admin_list_users", "label": "list_users()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L275"}, {"id": "api_admin_get_user_by_id", "label": "get_user_by_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L319"}, {"id": "api_admin_create_user", "label": "create_user()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L339"}, {"id": "api_admin_update_user", "label": "update_user()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L372"}, {"id": "api_admin_delete_user", "label": "delete_user()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L402"}, {"id": "api_admin_reset_user_password", "label": "reset_user_password()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L415"}, {"id": "api_admin_dicttypecreatebody", "label": "DictTypeCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L432"}, {"id": "api_admin_dicttypeupdatebody", "label": "DictTypeUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L441"}, {"id": "api_admin_list_dict_types", "label": "list_dict_types()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L451"}, {"id": "api_admin_create_dict_type", "label": "create_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L467"}, {"id": "api_admin_update_dict_type", "label": "update_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L489"}, {"id": "api_admin_delete_dict_type", "label": "delete_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L514"}, {"id": "api_admin_dictdatacreatebody", "label": "DictDataCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L531"}, {"id": "api_admin_dictdataupdatebody", "label": "DictDataUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L542"}, {"id": "api_admin_list_dict_data", "label": "list_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L553"}, {"id": "api_admin_create_dict_data", "label": "create_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L570"}, {"id": "api_admin_update_dict_data", "label": "update_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L594"}, {"id": "api_admin_delete_dict_data", "label": "delete_dict_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L618"}, {"id": "api_admin_dict_data_options", "label": "dict_data_options()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L631"}, {"id": "api_admin_dict_data_all", "label": "dict_data_all()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L645"}, {"id": "api_admin_deptcreatebody", "label": "DeptCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L672"}, {"id": "api_admin_deptupdatebody", "label": "DeptUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L685"}, {"id": "api_admin_list_depts", "label": "list_depts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L698"}, {"id": "api_admin_create_dept", "label": "create_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L709"}, {"id": "api_admin_update_dept", "label": "update_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L735"}, {"id": "api_admin_delete_dept", "label": "delete_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L761"}, {"id": "api_admin_sitecreatebody", "label": "SiteCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L778"}, {"id": "api_admin_siteupdatebody", "label": "SiteUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L793"}, {"id": "api_admin_list_sites", "label": "list_sites()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L809"}, {"id": "api_admin_create_site", "label": "create_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L823"}, {"id": "api_admin_update_site", "label": "update_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L851"}, {"id": "api_admin_delete_site", "label": "delete_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L880"}, {"id": "api_admin_postcreatebody", "label": "PostCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L897"}, {"id": "api_admin_postupdatebody", "label": "PostUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L907"}, {"id": "api_admin_list_posts", "label": "list_posts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L918"}, {"id": "api_admin_create_post", "label": "create_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L932"}, {"id": "api_admin_update_post", "label": "update_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L955"}, {"id": "api_admin_delete_post", "label": "delete_post()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L979"}, {"id": "api_admin_postusersupdatebody", "label": "PostUsersUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L991"}, {"id": "api_admin_list_post_bound_users", "label": "list_post_bound_users()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L998"}, {"id": "api_admin_update_post_bound_users", "label": "update_post_bound_users()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1012"}, {"id": "api_admin_menucreatebody", "label": "MenuCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1036"}, {"id": "api_admin_menuupdatebody", "label": "MenuUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1052"}, {"id": "api_admin_list_menus", "label": "list_menus()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1069"}, {"id": "api_admin_create_menu", "label": "create_menu()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1080"}, {"id": "api_admin_update_menu", "label": "update_menu()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1109"}, {"id": "api_admin_delete_menu", "label": "delete_menu()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1139"}, {"id": "api_admin_rolecreatebody", "label": "RoleCreateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1156"}, {"id": "api_admin_roleupdatebody", "label": "RoleUpdateBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1166"}, {"id": "api_admin_rolemenubody", "label": "RoleMenuBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1176"}, {"id": "api_admin_roledatascopebody", "label": "RoleDataScopeBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1180"}, {"id": "api_admin_list_role_management", "label": "list_role_management()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1188"}, {"id": "api_admin_create_role_management", "label": "create_role_management()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1202"}, {"id": "api_admin_update_role_management", "label": "update_role_management()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1225"}, {"id": "api_admin_delete_role_management", "label": "delete_role_management()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1249"}, {"id": "api_admin_get_role_menus", "label": "get_role_menus()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1262"}, {"id": "api_admin_update_role_menus", "label": "update_role_menus()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1272"}, {"id": "api_admin_get_role_data_scope", "label": "get_role_data_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1287"}, {"id": "api_admin_update_role_data_scope", "label": "update_role_data_scope()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1300"}, {"id": "api_admin_format_file_size", "label": "_format_file_size()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1326"}, {"id": "api_admin_upload_attachment", "label": "upload_attachment()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1336"}, {"id": "api_admin_attachmentdownloadurlbody", "label": "AttachmentDownloadUrlBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1386"}, {"id": "api_admin_attachment_download_url", "label": "attachment_download_url()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1393"}, {"id": "api_admin_attachment_preview_url", "label": "attachment_preview_url()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1417"}, {"id": "api_admin_rationale_46", "label": "\u8fd4\u56de\u8fd0\u8425\u7aef\u89d2\u8272\u4e0b\u62c9\u9009\u9879\uff08label=\u5e93\u4e2d\u89d2\u8272\u540d\uff0cvalue=Web \u89d2\u8272\u7801\uff09\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L46"}, {"id": "api_admin_rationale_78", "label": "\u8fd4\u56de\u7528\u6237\u4e0b\u62c9\u9009\u9879\uff08label=\u6635\u79f0\uff0cvalue=\u7528\u6237ID\uff0c\u9644\u5e26 nickName/userNo\uff09\u3002 \u4f9b\u7533\u8bf7\u4eba/\u5ba1\u6279\u4eba\u7b49\u9009\u62e9\u573a\u666f\u4f7f\u7528\uff0c\u8fd4\u56de\u672c\u79df\u6237\u5168\u90e8\u6709\u6548", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L78"}, {"id": "api_admin_rationale_104", "label": "\u8fd4\u56de\u89d2\u8272\u4e0b\u62c9\u9009\u9879\uff08label=\u89d2\u8272\u540d\uff0cvalue=\u89d2\u8272ID UUID\uff09\uff0c\u4f9b\u6d41\u7a0b\u8bbe\u8ba1\u5668\u5ba1\u6279\u4eba\u9009\u62e9\u4f7f\u7528\u3002 \u4e0e /roles \u4e0d\u540c\uff0c\u6b64\u7aef\u70b9\u8fd4\u56de\u89d2\u8272 UUID", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L104"}, {"id": "api_admin_rationale_1398", "label": "\u8fd4\u56de\u5e26 Content-Disposition \u7684\u4e0b\u8f7d URL\uff0c\u4fdd\u8bc1\u6d4f\u89c8\u5668\u4f7f\u7528\u539f\u59cb\u6587\u4ef6\u540d\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1398"}, {"id": "api_admin_rationale_1422", "label": "\u8fd4\u56de\u7528\u4e8e\u6d4f\u89c8\u5668\u5185\u8054\u9884\u89c8\u7684 URL\uff08PDF iframe \u7b49\uff09\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1422"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "os", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "uuid", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "pydantic", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_config", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_data_scope", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_menu_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_response", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_attachment_biz", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_core_storage", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L17", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L19", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L20", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L21", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L22", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L25", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L26", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L27", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_crud", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L29", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "app_services_web_auth_roles", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_roles_for_select", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L42", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_users_for_select", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L74", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_roles_for_designer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L100", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_tenantcreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L121", "weight": 1.0}, {"source": "api_admin_tenantcreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L121", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_tenantupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L132", "weight": 1.0}, {"source": "api_admin_tenantupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L132", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_tenants", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L144", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L165", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L187", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L212", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_get_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L229", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_usercreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L242", "weight": 1.0}, {"source": "api_admin_usercreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L242", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_userupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L259", "weight": 1.0}, {"source": "api_admin_userupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L259", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_users", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L275", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_get_user_by_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L319", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_user", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L339", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_user", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L372", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_user", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L402", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_reset_user_password", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L415", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_dicttypecreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L432", "weight": 1.0}, {"source": "api_admin_dicttypecreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L432", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_dicttypeupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L441", "weight": 1.0}, {"source": "api_admin_dicttypeupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L441", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_dict_types", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L451", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L467", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L489", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L514", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_dictdatacreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L531", "weight": 1.0}, {"source": "api_admin_dictdatacreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L531", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_dictdataupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L542", "weight": 1.0}, {"source": "api_admin_dictdataupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L542", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L553", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L570", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L594", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_dict_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L618", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_dict_data_options", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L631", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_dict_data_all", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L645", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_deptcreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L672", "weight": 1.0}, {"source": "api_admin_deptcreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L672", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_deptupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L685", "weight": 1.0}, {"source": "api_admin_deptupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L685", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_depts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L698", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L709", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L735", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L761", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_sitecreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L778", "weight": 1.0}, {"source": "api_admin_sitecreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L778", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_siteupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L793", "weight": 1.0}, {"source": "api_admin_siteupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L793", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_sites", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L809", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L823", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L851", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L880", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_postcreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L897", "weight": 1.0}, {"source": "api_admin_postcreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L897", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_postupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L907", "weight": 1.0}, {"source": "api_admin_postupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L907", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_posts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L918", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L932", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L955", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_post", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L979", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_postusersupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L991", "weight": 1.0}, {"source": "api_admin_postusersupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L991", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_post_bound_users", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L998", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_post_bound_users", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1012", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_menucreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1036", "weight": 1.0}, {"source": "api_admin_menucreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1036", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_menuupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1052", "weight": 1.0}, {"source": "api_admin_menuupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1052", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_menus", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1069", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_menu", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1080", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_menu", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1109", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_menu", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1139", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_rolecreatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1156", "weight": 1.0}, {"source": "api_admin_rolecreatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1156", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_roleupdatebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1166", "weight": 1.0}, {"source": "api_admin_roleupdatebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1166", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_rolemenubody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1176", "weight": 1.0}, {"source": "api_admin_rolemenubody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1176", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_roledatascopebody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1180", "weight": 1.0}, {"source": "api_admin_roledatascopebody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1180", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_list_role_management", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1188", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_create_role_management", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1202", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_role_management", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1225", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_delete_role_management", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1249", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_get_role_menus", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1262", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_role_menus", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1272", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_get_role_data_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1287", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_update_role_data_scope", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1300", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_format_file_size", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1326", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_upload_attachment", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1336", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_attachmentdownloadurlbody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1386", "weight": 1.0}, {"source": "api_admin_attachmentdownloadurlbody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1386", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_attachment_download_url", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1393", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_admin_py", "target": "api_admin_attachment_preview_url", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1417", "weight": 1.0}, {"source": "api_admin_list_users_for_select", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L83", "weight": 1.0}, {"source": "api_admin_list_roles_for_designer", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L108", "weight": 1.0}, {"source": "api_admin_list_users", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L284", "weight": 1.0}, {"source": "api_admin_get_user_by_id", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L324", "weight": 1.0}, {"source": "api_admin_create_user", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L345", "weight": 1.0}, {"source": "api_admin_list_dict_types", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L458", "weight": 1.0}, {"source": "api_admin_create_dict_type", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L473", "weight": 1.0}, {"source": "api_admin_update_dict_type", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L496", "weight": 1.0}, {"source": "api_admin_list_dict_data", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L561", "weight": 1.0}, {"source": "api_admin_create_dict_data", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L576", "weight": 1.0}, {"source": "api_admin_dict_data_options", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L636", "weight": 1.0}, {"source": "api_admin_dict_data_all", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L649", "weight": 1.0}, {"source": "api_admin_list_depts", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L703", "weight": 1.0}, {"source": "api_admin_create_dept", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L715", "weight": 1.0}, {"source": "api_admin_list_sites", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L816", "weight": 1.0}, {"source": "api_admin_create_site", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L829", "weight": 1.0}, {"source": "api_admin_list_posts", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L925", "weight": 1.0}, {"source": "api_admin_create_post", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L938", "weight": 1.0}, {"source": "api_admin_list_post_bound_users", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1003", "weight": 1.0}, {"source": "api_admin_update_post_bound_users", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1018", "weight": 1.0}, {"source": "api_admin_list_menus", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1074", "weight": 1.0}, {"source": "api_admin_create_menu", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1086", "weight": 1.0}, {"source": "api_admin_list_role_management", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1195", "weight": 1.0}, {"source": "api_admin_create_role_management", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1208", "weight": 1.0}, {"source": "api_admin_update_role_menus", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1279", "weight": 1.0}, {"source": "api_admin_update_role_data_scope", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1307", "weight": 1.0}, {"source": "api_admin_upload_attachment", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1359", "weight": 1.0}, {"source": "api_admin_upload_attachment", "target": "api_admin_format_file_size", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1377", "weight": 1.0}, {"source": "api_admin_attachment_download_url", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1402", "weight": 1.0}, {"source": "api_admin_attachment_preview_url", "target": "api_admin_get_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1426", "weight": 1.0}, {"source": "api_admin_rationale_46", "target": "api_admin_list_roles_for_select", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L46", "weight": 1.0}, {"source": "api_admin_rationale_78", "target": "api_admin_list_users_for_select", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L78", "weight": 1.0}, {"source": "api_admin_rationale_104", "target": "api_admin_list_roles_for_designer", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L104", "weight": 1.0}, {"source": "api_admin_rationale_1398", "target": "api_admin_attachment_download_url", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1398", "weight": 1.0}, {"source": "api_admin_rationale_1422", "target": "api_admin_attachment_preview_url", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1422", "weight": 1.0}], "raw_calls": [{"caller_nid": "api_admin_list_roles_for_select", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L48"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L48"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L48"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L48"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L50"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L53"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L56"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "_map_role_name_to_web", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L59"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L63"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L64"}, {"caller_nid": "api_admin_list_roles_for_select", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L70"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L84"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L84"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L85"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L86"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L86"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L86"}, {"caller_nid": "api_admin_list_users_for_select", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L96"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L109"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L109"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L110"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L111"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L111"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L111"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L112"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L112"}, {"caller_nid": "api_admin_list_roles_for_designer", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L113"}, {"caller_nid": "api_admin_list_tenants", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L152"}, {"caller_nid": "api_admin_list_tenants", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L153"}, {"caller_nid": "api_admin_create_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L179"}, {"caller_nid": "api_admin_create_tenant", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L181"}, {"caller_nid": "api_admin_create_tenant", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L181"}, {"caller_nid": "api_admin_create_tenant", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L183"}, {"caller_nid": "api_admin_create_tenant", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L183"}, {"caller_nid": "api_admin_update_tenant", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L194"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L198"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L199"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L200"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L201"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L202"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L203"}, {"caller_nid": "api_admin_update_tenant", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L204"}, {"caller_nid": "api_admin_update_tenant", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L206"}, {"caller_nid": "api_admin_update_tenant", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L206"}, {"caller_nid": "api_admin_update_tenant", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L208"}, {"caller_nid": "api_admin_update_tenant", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L208"}, {"caller_nid": "api_admin_delete_tenant", "callee": "soft_delete_tenant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L218"}, {"caller_nid": "api_admin_delete_tenant", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L219"}, {"caller_nid": "api_admin_delete_tenant", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L221"}, {"caller_nid": "api_admin_delete_tenant", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L221"}, {"caller_nid": "api_admin_get_tenant_no", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L230"}, {"caller_nid": "api_admin_get_tenant_no", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L233"}, {"caller_nid": "api_admin_get_tenant_no", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L233"}, {"caller_nid": "api_admin_get_tenant_no", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L233"}, {"caller_nid": "api_admin_list_users", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L285"}, {"caller_nid": "api_admin_list_users", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L285"}, {"caller_nid": "api_admin_list_users", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L289"}, {"caller_nid": "api_admin_list_users", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L292"}, {"caller_nid": "api_admin_list_users", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L293"}, {"caller_nid": "api_admin_list_users", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L294"}, {"caller_nid": "api_admin_list_users", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L295"}, {"caller_nid": "api_admin_list_users", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L296"}, {"caller_nid": "api_admin_list_users", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L300"}, {"caller_nid": "api_admin_list_users", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L302"}, {"caller_nid": "api_admin_list_users", "callee": "apply_data_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L303"}, {"caller_nid": "api_admin_list_users", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L304"}, {"caller_nid": "api_admin_list_users", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L305"}, {"caller_nid": "api_admin_list_users", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L305"}, {"caller_nid": "api_admin_list_users", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L305"}, {"caller_nid": "api_admin_list_users", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L305"}, {"caller_nid": "api_admin_list_users", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L305"}, {"caller_nid": "api_admin_list_users", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L306"}, {"caller_nid": "api_admin_list_users", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L309"}, {"caller_nid": "api_admin_list_users", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L309"}, {"caller_nid": "api_admin_list_users", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L309"}, {"caller_nid": "api_admin_list_users", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L309"}, {"caller_nid": "api_admin_list_users", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L312"}, {"caller_nid": "api_admin_list_users", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L312"}, {"caller_nid": "api_admin_list_users", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L314"}, {"caller_nid": "api_admin_list_users", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L315"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "get_user", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L325"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L327"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L328"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L329"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "assert_row_in_data_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L331"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L333"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "get_user_with_relations", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L334"}, {"caller_nid": "api_admin_get_user_by_id", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L335"}, {"caller_nid": "api_admin_create_user", "callee": "user_no_exists", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L346"}, {"caller_nid": "api_admin_create_user", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L347"}, {"caller_nid": "api_admin_create_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L362"}, {"caller_nid": "api_admin_create_user", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L366"}, {"caller_nid": "api_admin_create_user", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L366"}, {"caller_nid": "api_admin_create_user", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L368"}, {"caller_nid": "api_admin_create_user", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L368"}, {"caller_nid": "api_admin_update_user", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L379"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L383"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L384"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L385"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L386"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L387"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L388"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L389"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L390"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L391"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L392"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L393"}, {"caller_nid": "api_admin_update_user", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L394"}, {"caller_nid": "api_admin_update_user", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L396"}, {"caller_nid": "api_admin_update_user", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L396"}, {"caller_nid": "api_admin_update_user", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L398"}, {"caller_nid": "api_admin_update_user", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L398"}, {"caller_nid": "api_admin_delete_user", "callee": "soft_delete_user", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L408"}, {"caller_nid": "api_admin_delete_user", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L409"}, {"caller_nid": "api_admin_delete_user", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L411"}, {"caller_nid": "api_admin_delete_user", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L411"}, {"caller_nid": "api_admin_reset_user_password", "callee": "reset_password", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L421"}, {"caller_nid": "api_admin_reset_user_password", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L422"}, {"caller_nid": "api_admin_reset_user_password", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L424"}, {"caller_nid": "api_admin_reset_user_password", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L424"}, {"caller_nid": "api_admin_list_dict_types", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L462"}, {"caller_nid": "api_admin_list_dict_types", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L463"}, {"caller_nid": "api_admin_create_dict_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L481"}, {"caller_nid": "api_admin_create_dict_type", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L483"}, {"caller_nid": "api_admin_create_dict_type", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L483"}, {"caller_nid": "api_admin_create_dict_type", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L485"}, {"caller_nid": "api_admin_create_dict_type", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L485"}, {"caller_nid": "api_admin_update_dict_type", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L497"}, {"caller_nid": "api_admin_update_dict_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L501"}, {"caller_nid": "api_admin_update_dict_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L502"}, {"caller_nid": "api_admin_update_dict_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L503"}, {"caller_nid": "api_admin_update_dict_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L504"}, {"caller_nid": "api_admin_update_dict_type", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L505"}, {"caller_nid": "api_admin_update_dict_type", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L508"}, {"caller_nid": "api_admin_update_dict_type", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L508"}, {"caller_nid": "api_admin_update_dict_type", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L510"}, {"caller_nid": "api_admin_update_dict_type", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L510"}, {"caller_nid": "api_admin_delete_dict_type", "callee": "soft_delete_dict_type", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L520"}, {"caller_nid": "api_admin_delete_dict_type", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L521"}, {"caller_nid": "api_admin_delete_dict_type", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L523"}, {"caller_nid": "api_admin_delete_dict_type", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L523"}, {"caller_nid": "api_admin_list_dict_data", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L565"}, {"caller_nid": "api_admin_list_dict_data", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L566"}, {"caller_nid": "api_admin_create_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L586"}, {"caller_nid": "api_admin_create_dict_data", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L588"}, {"caller_nid": "api_admin_create_dict_data", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L588"}, {"caller_nid": "api_admin_create_dict_data", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L590"}, {"caller_nid": "api_admin_create_dict_data", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L590"}, {"caller_nid": "api_admin_update_dict_data", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L601"}, {"caller_nid": "api_admin_update_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L605"}, {"caller_nid": "api_admin_update_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L606"}, {"caller_nid": "api_admin_update_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L607"}, {"caller_nid": "api_admin_update_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L608"}, {"caller_nid": "api_admin_update_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L609"}, {"caller_nid": "api_admin_update_dict_data", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L610"}, {"caller_nid": "api_admin_update_dict_data", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L612"}, {"caller_nid": "api_admin_update_dict_data", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L612"}, {"caller_nid": "api_admin_update_dict_data", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L614"}, {"caller_nid": "api_admin_update_dict_data", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L614"}, {"caller_nid": "api_admin_delete_dict_data", "callee": "soft_delete_dict_data", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L624"}, {"caller_nid": "api_admin_delete_dict_data", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L625"}, {"caller_nid": "api_admin_delete_dict_data", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L627"}, {"caller_nid": "api_admin_delete_dict_data", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L627"}, {"caller_nid": "api_admin_dict_data_options", "callee": "list_dict_data_options", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L638"}, {"caller_nid": "api_admin_dict_data_options", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L641"}, {"caller_nid": "api_admin_dict_data_all", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L650"}, {"caller_nid": "api_admin_dict_data_all", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L650"}, {"caller_nid": "api_admin_dict_data_all", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L651"}, {"caller_nid": "api_admin_dict_data_all", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L653"}, {"caller_nid": "api_admin_dict_data_all", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L653"}, {"caller_nid": "api_admin_dict_data_all", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L653"}, {"caller_nid": "api_admin_dict_data_all", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L659"}, {"caller_nid": "api_admin_dict_data_all", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L664"}, {"caller_nid": "api_admin_list_depts", "callee": "list_depts_tree", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L704"}, {"caller_nid": "api_admin_list_depts", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L705"}, {"caller_nid": "api_admin_create_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L727"}, {"caller_nid": "api_admin_create_dept", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L729"}, {"caller_nid": "api_admin_create_dept", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L729"}, {"caller_nid": "api_admin_create_dept", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L731"}, {"caller_nid": "api_admin_create_dept", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L731"}, {"caller_nid": "api_admin_update_dept", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L742"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L746"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L747"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L748"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L749"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L750"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L751"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L752"}, {"caller_nid": "api_admin_update_dept", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L753"}, {"caller_nid": "api_admin_update_dept", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L755"}, {"caller_nid": "api_admin_update_dept", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L755"}, {"caller_nid": "api_admin_update_dept", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L757"}, {"caller_nid": "api_admin_update_dept", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L757"}, {"caller_nid": "api_admin_delete_dept", "callee": "soft_delete_dept", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L767"}, {"caller_nid": "api_admin_delete_dept", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L768"}, {"caller_nid": "api_admin_delete_dept", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L770"}, {"caller_nid": "api_admin_delete_dept", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L770"}, {"caller_nid": "api_admin_list_sites", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L818"}, {"caller_nid": "api_admin_list_sites", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L819"}, {"caller_nid": "api_admin_create_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L843"}, {"caller_nid": "api_admin_create_site", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L845"}, {"caller_nid": "api_admin_create_site", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L845"}, {"caller_nid": "api_admin_create_site", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L847"}, {"caller_nid": "api_admin_create_site", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L847"}, {"caller_nid": "api_admin_update_site", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L858"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L862"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L863"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L864"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L865"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L866"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L867"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L868"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L869"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L870"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L871"}, {"caller_nid": "api_admin_update_site", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L872"}, {"caller_nid": "api_admin_update_site", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L874"}, {"caller_nid": "api_admin_update_site", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L874"}, {"caller_nid": "api_admin_update_site", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L876"}, {"caller_nid": "api_admin_update_site", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L876"}, {"caller_nid": "api_admin_delete_site", "callee": "soft_delete_site", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L886"}, {"caller_nid": "api_admin_delete_site", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L887"}, {"caller_nid": "api_admin_delete_site", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L889"}, {"caller_nid": "api_admin_delete_site", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L889"}, {"caller_nid": "api_admin_list_posts", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L927"}, {"caller_nid": "api_admin_list_posts", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L928"}, {"caller_nid": "api_admin_create_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L947"}, {"caller_nid": "api_admin_create_post", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L949"}, {"caller_nid": "api_admin_create_post", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L949"}, {"caller_nid": "api_admin_create_post", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L951"}, {"caller_nid": "api_admin_create_post", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L951"}, {"caller_nid": "api_admin_update_post", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L962"}, {"caller_nid": "api_admin_update_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L966"}, {"caller_nid": "api_admin_update_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L967"}, {"caller_nid": "api_admin_update_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L968"}, {"caller_nid": "api_admin_update_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L969"}, {"caller_nid": "api_admin_update_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L970"}, {"caller_nid": "api_admin_update_post", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L971"}, {"caller_nid": "api_admin_update_post", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L973"}, {"caller_nid": "api_admin_update_post", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L973"}, {"caller_nid": "api_admin_update_post", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L975"}, {"caller_nid": "api_admin_update_post", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L975"}, {"caller_nid": "api_admin_delete_post", "callee": "soft_delete_post", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L985"}, {"caller_nid": "api_admin_delete_post", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L986"}, {"caller_nid": "api_admin_delete_post", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L988"}, {"caller_nid": "api_admin_delete_post", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L988"}, {"caller_nid": "api_admin_list_post_bound_users", "callee": "get_post", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1004"}, {"caller_nid": "api_admin_list_post_bound_users", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1006"}, {"caller_nid": "api_admin_list_post_bound_users", "callee": "list_user_ids_bound_to_post", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1007"}, {"caller_nid": "api_admin_list_post_bound_users", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1008"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "get_post", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1019"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1021"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "sync_post_user_bindings", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1023"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1024"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1026"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1028"}, {"caller_nid": "api_admin_update_post_bound_users", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1028"}, {"caller_nid": "api_admin_list_menus", "callee": "list_menus_tree", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1075"}, {"caller_nid": "api_admin_list_menus", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1076"}, {"caller_nid": "api_admin_create_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1101"}, {"caller_nid": "api_admin_create_menu", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1103"}, {"caller_nid": "api_admin_create_menu", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1103"}, {"caller_nid": "api_admin_create_menu", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1105"}, {"caller_nid": "api_admin_create_menu", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1105"}, {"caller_nid": "api_admin_update_menu", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1116"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1120"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1121"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1122"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1123"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1124"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1125"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1126"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1127"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1128"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1129"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1130"}, {"caller_nid": "api_admin_update_menu", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1131"}, {"caller_nid": "api_admin_update_menu", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1133"}, {"caller_nid": "api_admin_update_menu", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1133"}, {"caller_nid": "api_admin_update_menu", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1135"}, {"caller_nid": "api_admin_update_menu", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1135"}, {"caller_nid": "api_admin_delete_menu", "callee": "soft_delete_menu", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1145"}, {"caller_nid": "api_admin_delete_menu", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1146"}, {"caller_nid": "api_admin_delete_menu", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1148"}, {"caller_nid": "api_admin_delete_menu", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1148"}, {"caller_nid": "api_admin_list_role_management", "callee": "list_roles", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1196"}, {"caller_nid": "api_admin_list_role_management", "callee": "total_pages", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1197"}, {"caller_nid": "api_admin_list_role_management", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1198"}, {"caller_nid": "api_admin_create_role_management", "callee": "create_role", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1209"}, {"caller_nid": "api_admin_create_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1217"}, {"caller_nid": "api_admin_create_role_management", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1219"}, {"caller_nid": "api_admin_create_role_management", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1219"}, {"caller_nid": "api_admin_create_role_management", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1221"}, {"caller_nid": "api_admin_create_role_management", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1221"}, {"caller_nid": "api_admin_update_role_management", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1232"}, {"caller_nid": "api_admin_update_role_management", "callee": "update_role", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1233"}, {"caller_nid": "api_admin_update_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1236"}, {"caller_nid": "api_admin_update_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1237"}, {"caller_nid": "api_admin_update_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1238"}, {"caller_nid": "api_admin_update_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1239"}, {"caller_nid": "api_admin_update_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1240"}, {"caller_nid": "api_admin_update_role_management", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1241"}, {"caller_nid": "api_admin_update_role_management", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1243"}, {"caller_nid": "api_admin_update_role_management", "callee": "_row_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1243"}, {"caller_nid": "api_admin_update_role_management", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1245"}, {"caller_nid": "api_admin_update_role_management", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1245"}, {"caller_nid": "api_admin_delete_role_management", "callee": "soft_delete_role", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1255"}, {"caller_nid": "api_admin_delete_role_management", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1256"}, {"caller_nid": "api_admin_delete_role_management", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1258"}, {"caller_nid": "api_admin_delete_role_management", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1258"}, {"caller_nid": "api_admin_get_role_menus", "callee": "get_role_menu_ids", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1267"}, {"caller_nid": "api_admin_get_role_menus", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1268"}, {"caller_nid": "api_admin_update_role_menus", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1280"}, {"caller_nid": "api_admin_update_role_menus", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1281"}, {"caller_nid": "api_admin_update_role_menus", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1283"}, {"caller_nid": "api_admin_update_role_menus", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1283"}, {"caller_nid": "api_admin_get_role_data_scope", "callee": "get_role", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1292"}, {"caller_nid": "api_admin_get_role_data_scope", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1294"}, {"caller_nid": "api_admin_get_role_data_scope", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1296"}, {"caller_nid": "api_admin_update_role_data_scope", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1314"}, {"caller_nid": "api_admin_update_role_data_scope", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1316"}, {"caller_nid": "api_admin_update_role_data_scope", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1318"}, {"caller_nid": "api_admin_update_role_data_scope", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1318"}, {"caller_nid": "api_admin_upload_attachment", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1344"}, {"caller_nid": "api_admin_upload_attachment", "callee": "resolve_upload_folder", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1346"}, {"caller_nid": "api_admin_upload_attachment", "callee": "read", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1349"}, {"caller_nid": "api_admin_upload_attachment", "callee": "upload_file", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1350"}, {"caller_nid": "api_admin_upload_attachment", "callee": "rstrip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1351"}, {"caller_nid": "api_admin_upload_attachment", "callee": "startswith", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1352"}, {"caller_nid": "api_admin_upload_attachment", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1353"}, {"caller_nid": "api_admin_upload_attachment", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1356"}, {"caller_nid": "api_admin_upload_attachment", "callee": "lstrip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1357"}, {"caller_nid": "api_admin_upload_attachment", "callee": "splitext", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1357"}, {"caller_nid": "api_admin_upload_attachment", "callee": "create_oss", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1360"}, {"caller_nid": "api_admin_upload_attachment", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1368"}, {"caller_nid": "api_admin_upload_attachment", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1369"}, {"caller_nid": "api_admin_upload_attachment", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1372"}, {"caller_nid": "api_admin_upload_attachment", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1382"}, {"caller_nid": "api_admin_upload_attachment", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1383"}, {"caller_nid": "api_admin_upload_attachment", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1383"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1399"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1401"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "get_oss_by_url", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1403"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1404"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1406"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "rsplit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1408"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "presigned_download_url", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1410"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1411"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1413"}, {"caller_nid": "api_admin_attachment_download_url", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1413"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1423"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1425"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "get_oss_by_url", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1427"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "presigned_preview_url", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1429"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "success_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1430"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "error_response", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1432"}, {"caller_nid": "api_admin_attachment_preview_url", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/admin.py", "source_location": "L1432"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/8bd7939017216a2b3c9ea7ed910167f7baf5c02cf724c10b392f6f286f6368a5.json b/backend/graphify-out/cache/ast/8bd7939017216a2b3c9ea7ed910167f7baf5c02cf724c10b392f6f286f6368a5.json new file mode 100644 index 000000000..4db9000a1 --- /dev/null +++ b/backend/graphify-out/cache/ast/8bd7939017216a2b3c9ea7ed910167f7baf5c02cf724c10b392f6f286f6368a5.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_init_py", "label": "__init__.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L1"}, {"id": "bx_init_bx_health", "label": "bx_health()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L18"}, {"id": "bx_init_rationale_1", "label": "\u62a5\u9500\uff08bx\uff09API \u8def\u7531\u805a\u5408 \u2014 REST \u98ce\u683c\uff0c\u534f\u8bae\u5bf9\u9f50 bx \u539f\u7cfb\u7edf\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L1"}, {"id": "bx_init_rationale_19", "label": "P0 \u5065\u5eb7\u68c0\u67e5\uff1a\u9a8c\u8bc1 bx \u8def\u7531\u5df2\u6302\u8f7d\u4e14\u54cd\u5e94\u534f\u8bae\u4e3a code=0\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L19"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_init_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_init_py", "target": "app_api_bx", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_init_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_init_py", "target": "bx_init_bx_health", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L18", "weight": 1.0}, {"source": "bx_init_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_init_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L1", "weight": 1.0}, {"source": "bx_init_rationale_19", "target": "bx_init_bx_health", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L19", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_init_bx_health", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/__init__.py", "source_location": "L20"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/909460b2883e85110e15a56d5755748e1bcb3e26dffac89684440813788e8668.json b/backend/graphify-out/cache/ast/909460b2883e85110e15a56d5755748e1bcb3e26dffac89684440813788e8668.json new file mode 100644 index 000000000..341260bf2 --- /dev/null +++ b/backend/graphify-out/cache/ast/909460b2883e85110e15a56d5755748e1bcb3e26dffac89684440813788e8668.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "label": "invoice.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L1"}, {"id": "bx_invoice_walletsummaryout", "label": "WalletSummaryOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L9"}, {"id": "basemodel", "label": "BaseModel", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "bx_invoice_ledgerout", "label": "LedgerOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L24"}, {"id": "bx_invoice_invoiceattachmentout", "label": "InvoiceAttachmentOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L38"}, {"id": "bx_invoice_invoiceout", "label": "InvoiceOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L47"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "pydantic", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "pydantic_alias_generators", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "bx_invoice_walletsummaryout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L9", "weight": 1.0}, {"source": "bx_invoice_walletsummaryout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "bx_invoice_ledgerout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L24", "weight": 1.0}, {"source": "bx_invoice_ledgerout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "bx_invoice_invoiceattachmentout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L38", "weight": 1.0}, {"source": "bx_invoice_invoiceattachmentout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L38", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_invoice_py", "target": "bx_invoice_invoiceout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L47", "weight": 1.0}, {"source": "bx_invoice_invoiceout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/invoice.py", "source_location": "L47", "weight": 1.0}], "raw_calls": []} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/97dd8ca7155c99ca464e90f878c39f61fb8bf93eb213dc5759bbf5694ae40484.json b/backend/graphify-out/cache/ast/97dd8ca7155c99ca464e90f878c39f61fb8bf93eb213dc5759bbf5694ae40484.json new file mode 100644 index 000000000..a4af4b3ab --- /dev/null +++ b/backend/graphify-out/cache/ast/97dd8ca7155c99ca464e90f878c39f61fb8bf93eb213dc5759bbf5694ae40484.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_tenant", "label": "_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L30"}, {"id": "bx_reimburse_build_details_data", "label": "_build_details_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L34"}, {"id": "bx_reimburse_get_generated_title", "label": "get_generated_title()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L55"}, {"id": "bx_reimburse_list_reimburses", "label": "list_reimburses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L68"}, {"id": "bx_reimburse_my_reimburses", "label": "my_reimburses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L114"}, {"id": "bx_reimburse_my_reimburse_stats", "label": "my_reimburse_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L159"}, {"id": "bx_reimburse_reimburse_status_counts", "label": "reimburse_status_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L169"}, {"id": "bx_reimburse_pending_approval", "label": "pending_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L178"}, {"id": "bx_reimburse_pending_approval_stats", "label": "pending_approval_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L210"}, {"id": "bx_reimburse_approved_by_me", "label": "approved_by_me()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L220"}, {"id": "bx_reimburse_get_reimburse", "label": "get_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L252"}, {"id": "bx_reimburse_get_approvals", "label": "get_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L266"}, {"id": "bx_reimburse_get_approval_history", "label": "get_approval_history()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L279"}, {"id": "bx_reimburse_create_reimburse", "label": "create_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L292"}, {"id": "bx_reimburse_update_reimburse", "label": "update_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L335"}, {"id": "bx_reimburse_submit_reimburse", "label": "submit_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L373"}, {"id": "bx_reimburse_approve_reimburse", "label": "approve_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L391"}, {"id": "bx_reimburse_reject_reimburse", "label": "reject_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L407"}, {"id": "bx_reimburse_withdraw_reimburse", "label": "withdraw_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L423"}, {"id": "bx_reimburse_delete_reimburse", "label": "delete_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L441"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_schemas_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_services_bx_expense_item", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L22", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_services_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_utils_bx_codegen", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_utils_bx_date_range", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L25", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_build_details_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L34", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_generated_title", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L55", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_list_reimburses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L68", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_my_reimburses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L114", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_my_reimburse_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L159", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_reimburse_status_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L169", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_pending_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L178", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_pending_approval_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L210", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_approved_by_me", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L220", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L252", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L266", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_approval_history", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L279", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_create_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L292", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_update_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L335", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_submit_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L373", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_approve_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L391", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_reject_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L407", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_withdraw_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L423", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_delete_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L441", "weight": 1.0}, {"source": "bx_reimburse_get_generated_title", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L61", "weight": 1.0}, {"source": "bx_reimburse_list_reimburses", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L82", "weight": 1.0}, {"source": "bx_reimburse_my_reimburses", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L126", "weight": 1.0}, {"source": "bx_reimburse_my_reimburse_stats", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L163", "weight": 1.0}, {"source": "bx_reimburse_reimburse_status_counts", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L173", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L190", "weight": 1.0}, {"source": "bx_reimburse_pending_approval_stats", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L214", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L232", "weight": 1.0}, {"source": "bx_reimburse_get_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L257", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L271", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L284", "weight": 1.0}, {"source": "bx_reimburse_create_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L297", "weight": 1.0}, {"source": "bx_reimburse_create_reimburse", "target": "bx_reimburse_build_details_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L298", "weight": 1.0}, {"source": "bx_reimburse_update_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L341", "weight": 1.0}, {"source": "bx_reimburse_update_reimburse", "target": "bx_reimburse_build_details_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L344", "weight": 1.0}, {"source": "bx_reimburse_submit_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L379", "weight": 1.0}, {"source": "bx_reimburse_approve_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L397", "weight": 1.0}, {"source": "bx_reimburse_reject_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L413", "weight": 1.0}, {"source": "bx_reimburse_withdraw_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L428", "weight": 1.0}, {"source": "bx_reimburse_delete_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L446", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_tenant", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L31"}, {"caller_nid": "bx_reimburse_tenant", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L31"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L37"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L39"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L43"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L62"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L62"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "generate_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L63"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L64"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L85"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L87"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L88"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L89"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L90"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L91"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L95"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L95"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L95"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "build_expense_name_condition", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L96"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L98"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L100"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L100"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L100"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L101"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L108"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L109"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L109"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L110"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L110"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L128"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L134"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L136"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L137"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L138"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L139"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L140"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "build_expense_name_condition", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L143"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L145"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L146"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L153"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L154"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L155"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L155"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "my_apply_stats", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L164"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L165"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L165"}, {"caller_nid": "bx_reimburse_reimburse_status_counts", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L174"}, {"caller_nid": "bx_reimburse_reimburse_status_counts", "callee": "global_status_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L174"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L191"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L191"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L205"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L205"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L206"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L216"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L216"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L233"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L233"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L247"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L247"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L248"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L248"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L258"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L260"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L261"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L262"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L272"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L273"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L275"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L275"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L285"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L286"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L288"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L288"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "generate_apply_code", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L300"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L308"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L308"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L308"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "create_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L318"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "sync_reimburse_invoices", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L320"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L328"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L329"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L330"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L331"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "update_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L352"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L356"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "sync_reimburse_invoices", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L358"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L366"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L367"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L368"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L369"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "submit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L380"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L384"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L385"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L386"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L387"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L387"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "approve", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L398"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L400"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L401"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L402"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L403"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "out_one_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L403"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "reject", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L414"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L416"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L417"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L418"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L419"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "out_one_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L419"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "withdraw", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L429"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L431"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L435"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L436"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L437"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L437"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L447"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L448"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "soft_delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L449"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L450"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L451"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/990bf999ecdfba7858819daa9c2f8790fbfcba6482ff3c6dd02629eadb837e2b.json b/backend/graphify-out/cache/ast/990bf999ecdfba7858819daa9c2f8790fbfcba6482ff3c6dd02629eadb837e2b.json new file mode 100644 index 000000000..87a0300a7 --- /dev/null +++ b/backend/graphify-out/cache/ast/990bf999ecdfba7858819daa9c2f8790fbfcba6482ff3c6dd02629eadb837e2b.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_coerce_id", "label": "_coerce_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L9"}, {"id": "bx_reimburse_reimbursedetailcreate", "label": "ReimburseDetailCreate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L15"}, {"id": "basemodel", "label": "BaseModel", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "bx_reimburse_validate_expense_item_id", "label": "validate_expense_item_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L24"}, {"id": "bx_reimburse_reimbursedetailout", "label": "ReimburseDetailOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L31"}, {"id": "bx_reimburse_reimburseinvoicebriefout", "label": "ReimburseInvoiceBriefOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L41"}, {"id": "bx_reimburse_reimburseapplycreate", "label": "ReimburseApplyCreate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L49"}, {"id": "bx_reimburse_details_must_not_be_empty", "label": "details_must_not_be_empty()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L61"}, {"id": "bx_reimburse_coerce_applicant_id", "label": "coerce_applicant_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L68"}, {"id": "bx_reimburse_reimburseapplyupdate", "label": "ReimburseApplyUpdate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L72"}, {"id": "bx_reimburse_reimbursesubmitbody", "label": "ReimburseSubmitBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L88"}, {"id": "bx_reimburse_reimburseapplyout", "label": "ReimburseApplyOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L94"}, {"id": "bx_reimburse_reimburseapprovalcreate", "label": "ReimburseApprovalCreate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L124"}, {"id": "bx_reimburse_reimburseapprovalout", "label": "ReimburseApprovalOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L131"}, {"id": "bx_reimburse_reimbursemystatsout", "label": "ReimburseMyStatsOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L144"}, {"id": "bx_reimburse_reimburseapproverpendingstatsout", "label": "ReimburseApproverPendingStatsOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L156"}, {"id": "bx_reimburse_payrequest", "label": "PayRequest", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L163"}, {"id": "bx_reimburse_offsetrequest", "label": "OffsetRequest", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L170"}, {"id": "bx_reimburse_validate_advance_id", "label": "validate_advance_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L179"}, {"id": "bx_reimburse_offsetitem", "label": "OffsetItem", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L186"}, {"id": "bx_reimburse_batchoffsetrequest", "label": "BatchOffsetRequest", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L201"}, {"id": "bx_reimburse_reimburseoffsetrecordout", "label": "ReimburseOffsetRecordOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L209"}, {"id": "bx_reimburse_paymentfinancestatsout", "label": "PaymentFinanceStatsOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L222"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "pydantic", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "pydantic_alias_generators", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_coerce_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursedetailcreate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L15", "weight": 1.0}, {"source": "bx_reimburse_reimbursedetailcreate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_validate_expense_item_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursedetailout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L31", "weight": 1.0}, {"source": "bx_reimburse_reimbursedetailout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseinvoicebriefout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L41", "weight": 1.0}, {"source": "bx_reimburse_reimburseinvoicebriefout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L41", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapplycreate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L49", "weight": 1.0}, {"source": "bx_reimburse_reimburseapplycreate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L49", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_details_must_not_be_empty", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L61", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_coerce_applicant_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L68", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapplyupdate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L72", "weight": 1.0}, {"source": "bx_reimburse_reimburseapplyupdate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L72", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_coerce_applicant_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L84", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursesubmitbody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L88", "weight": 1.0}, {"source": "bx_reimburse_reimbursesubmitbody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L88", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapplyout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L94", "weight": 1.0}, {"source": "bx_reimburse_reimburseapplyout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L94", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapprovalcreate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L124", "weight": 1.0}, {"source": "bx_reimburse_reimburseapprovalcreate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L124", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapprovalout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L131", "weight": 1.0}, {"source": "bx_reimburse_reimburseapprovalout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L131", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursemystatsout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L144", "weight": 1.0}, {"source": "bx_reimburse_reimbursemystatsout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L144", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapproverpendingstatsout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L156", "weight": 1.0}, {"source": "bx_reimburse_reimburseapproverpendingstatsout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L156", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_payrequest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L163", "weight": 1.0}, {"source": "bx_reimburse_payrequest", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L163", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_offsetrequest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L170", "weight": 1.0}, {"source": "bx_reimburse_offsetrequest", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L170", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_validate_advance_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L179", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_offsetitem", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L186", "weight": 1.0}, {"source": "bx_reimburse_offsetitem", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L186", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_validate_advance_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L194", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_batchoffsetrequest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L201", "weight": 1.0}, {"source": "bx_reimburse_batchoffsetrequest", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L201", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseoffsetrecordout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L209", "weight": 1.0}, {"source": "bx_reimburse_reimburseoffsetrecordout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L209", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_paymentfinancestatsout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L222", "weight": 1.0}, {"source": "bx_reimburse_paymentfinancestatsout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L222", "weight": 1.0}, {"source": "bx_reimburse_validate_expense_item_id", "target": "bx_reimburse_coerce_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L25", "weight": 1.0}, {"source": "bx_reimburse_coerce_applicant_id", "target": "bx_reimburse_coerce_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L69", "weight": 1.0}, {"source": "bx_reimburse_validate_advance_id", "target": "bx_reimburse_coerce_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L180", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_coerce_id", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L12"}, {"caller_nid": "bx_reimburse_coerce_id", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L12"}, {"caller_nid": "bx_reimburse_validate_expense_item_id", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L27"}, {"caller_nid": "bx_reimburse_details_must_not_be_empty", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L62"}, {"caller_nid": "bx_reimburse_details_must_not_be_empty", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L63"}, {"caller_nid": "bx_reimburse_validate_advance_id", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L182"}, {"caller_nid": "bx_reimburse_validate_advance_id", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L197"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/993e5876f6d600a890954de7b80cf36d9f8db8d8dccd61644a8dcc2d4ebefcf5.json b/backend/graphify-out/cache/ast/993e5876f6d600a890954de7b80cf36d9f8db8d8dccd61644a8dcc2d4ebefcf5.json new file mode 100644 index 000000000..9a8afba3e --- /dev/null +++ b/backend/graphify-out/cache/ast/993e5876f6d600a890954de7b80cf36d9f8db8d8dccd61644a8dcc2d4ebefcf5.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "label": "invoice.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L1"}, {"id": "bx_invoice_get_mine_wallet_summary", "label": "get_mine_wallet_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L17"}, {"id": "bx_invoice_list_invoice_wallets", "label": "list_invoice_wallets()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L26"}, {"id": "bx_invoice_list_invoices", "label": "list_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L41"}, {"id": "bx_invoice_create_invoice", "label": "create_invoice()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L64"}, {"id": "bx_invoice_delete_invoice", "label": "delete_invoice()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L123"}, {"id": "bx_invoice_list_invoice_ledgers", "label": "list_invoice_ledgers()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L138"}, {"id": "bx_invoice_rationale_73", "label": "\u4e00\u6b21\u4e0a\u4f20\u4e00\u6761\u53d1\u7968\uff1a\u591a\u6587\u4ef6\u6302\u540c\u4e00\u6863\u6848\uff0c\u91d1\u989d\u4e3a\u603b\u989d\uff0c\u53ea\u5199\u4e00\u6761\u989d\u5ea6\u6d41\u6c34\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L73"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "mimetypes", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_schemas_bx_invoice", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "app_services_bx_invoice", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_get_mine_wallet_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L17", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_list_invoice_wallets", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L26", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_list_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L41", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_create_invoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L64", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_delete_invoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L123", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_invoice_py", "target": "bx_invoice_list_invoice_ledgers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L138", "weight": 1.0}, {"source": "bx_invoice_rationale_73", "target": "bx_invoice_create_invoice", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L73", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_invoice_get_mine_wallet_summary", "callee": "get_mine_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L21"}, {"caller_nid": "bx_invoice_get_mine_wallet_summary", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L22"}, {"caller_nid": "bx_invoice_get_mine_wallet_summary", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L22"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "list_wallets", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L33"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L36"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "_summary_to_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L36"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L37"}, {"caller_nid": "bx_invoice_list_invoice_wallets", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L37"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "_tenant_no", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L48"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "out_rows_with_attachments", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L52"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L52"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L53"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L54"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L55"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "extend", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L76"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L78"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L81"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "read", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L87"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "guess_type", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L90"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L93"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L95"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "create", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L98"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L106"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L107"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L109"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L112"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L113"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "_tenant_no", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L117"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "out_rows_with_attachments", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L118"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L119"}, {"caller_nid": "bx_invoice_create_invoice", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L119"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L129"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L130"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "rollback", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L132"}, {"caller_nid": "bx_invoice_delete_invoice", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L134"}, {"caller_nid": "bx_invoice_list_invoice_ledgers", "callee": "list_ledgers", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L143"}, {"caller_nid": "bx_invoice_list_invoice_ledgers", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L144"}, {"caller_nid": "bx_invoice_list_invoice_ledgers", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/invoice.py", "source_location": "L144"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/9fc702e7becd491b05b730b711ea911f393f2d15509bc5f03f4e70edf7770a9b.json b/backend/graphify-out/cache/ast/9fc702e7becd491b05b730b711ea911f393f2d15509bc5f03f4e70edf7770a9b.json new file mode 100644 index 000000000..2ca1a5e85 --- /dev/null +++ b/backend/graphify-out/cache/ast/9fc702e7becd491b05b730b711ea911f393f2d15509bc5f03f4e70edf7770a9b.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_tests_test_bx_invoice_ledger_py", "label": "test_bx_invoice_ledger.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L1"}, {"id": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "label": "test_summarize_upload_and_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L14"}, {"id": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "label": "test_summarize_delete_and_release()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L25"}, {"id": "tests_test_bx_invoice_ledger_test_release_idempotent_guard", "label": "test_release_idempotent_guard()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L38"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_tests_test_bx_invoice_ledger_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_tests_test_bx_invoice_ledger_py", "target": "app_services_bx_invoice_ledger", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_tests_test_bx_invoice_ledger_py", "target": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_tests_test_bx_invoice_ledger_py", "target": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L25", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_tests_test_bx_invoice_ledger_py", "target": "tests_test_bx_invoice_ledger_test_release_idempotent_guard", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L38", "weight": 1.0}], "raw_calls": [{"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L16"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L17"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "callee": "summarize_entries", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L19"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L20"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L21"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_upload_and_reimburse", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L22"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L27"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L28"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L29"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L30"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "summarize_entries", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L32"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L33"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L34"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_summarize_delete_and_release", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L35"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_release_idempotent_guard", "callee": "should_skip_release", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L39"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_release_idempotent_guard", "callee": "should_skip_release", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L40"}, {"caller_nid": "tests_test_bx_invoice_ledger_test_release_idempotent_guard", "callee": "should_skip_release", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/tests/test_bx_invoice_ledger.py", "source_location": "L41"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/a5f9e5ab9008186c0001c480bd702e6217946eedc17b2e35eb25ad06edcfccca.json b/backend/graphify-out/cache/ast/a5f9e5ab9008186c0001c480bd702e6217946eedc17b2e35eb25ad06edcfccca.json new file mode 100644 index 000000000..7ebcedbd7 --- /dev/null +++ b/backend/graphify-out/cache/ast/a5f9e5ab9008186c0001c480bd702e6217946eedc17b2e35eb25ad06edcfccca.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "label": "site.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L1"}, {"id": "crud_site_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L16"}, {"id": "crud_site_list_sites", "label": "list_sites()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L36"}, {"id": "crud_site_get_site", "label": "get_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L69"}, {"id": "crud_site_site_code_exists", "label": "site_code_exists()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L77"}, {"id": "crud_site_create_site", "label": "create_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L84"}, {"id": "crud_site_update_site", "label": "update_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L131"}, {"id": "crud_site_soft_delete_site", "label": "soft_delete_site()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L183"}, {"id": "crud_site_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L194"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_list_sites", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L36", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_get_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L69", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_site_code_exists", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L77", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_create_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L84", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_update_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L131", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_soft_delete_site", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L183", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_site_py", "target": "crud_site_total_pages", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L194", "weight": 1.0}, {"source": "crud_site_list_sites", "target": "crud_site_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L66", "weight": 1.0}, {"source": "crud_site_create_site", "target": "crud_site_site_code_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L103", "weight": 1.0}, {"source": "crud_site_update_site", "target": "crud_site_get_site", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L147", "weight": 1.0}, {"source": "crud_site_update_site", "target": "crud_site_site_code_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L154", "weight": 1.0}, {"source": "crud_site_soft_delete_site", "target": "crud_site_get_site", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L184", "weight": 1.0}], "raw_calls": [{"caller_nid": "crud_site_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L31"}, {"caller_nid": "crud_site_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L32"}, {"caller_nid": "crud_site_list_sites", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L56"}, {"caller_nid": "crud_site_list_sites", "callee": "with_entities", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L56"}, {"caller_nid": "crud_site_list_sites", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L56"}, {"caller_nid": "crud_site_list_sites", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L56"}, {"caller_nid": "crud_site_list_sites", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L56"}, {"caller_nid": "crud_site_list_sites", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L57"}, {"caller_nid": "crud_site_list_sites", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L58"}, {"caller_nid": "crud_site_list_sites", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L58"}, {"caller_nid": "crud_site_list_sites", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L60"}, {"caller_nid": "crud_site_list_sites", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L60"}, {"caller_nid": "crud_site_list_sites", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L60"}, {"caller_nid": "crud_site_list_sites", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L60"}, {"caller_nid": "crud_site_list_sites", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L60"}, {"caller_nid": "crud_site_list_sites", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L61"}, {"caller_nid": "crud_site_list_sites", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L66"}, {"caller_nid": "crud_site_get_site", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L71"}, {"caller_nid": "crud_site_get_site", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L71"}, {"caller_nid": "crud_site_get_site", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L71"}, {"caller_nid": "crud_site_get_site", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L72"}, {"caller_nid": "crud_site_site_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L78"}, {"caller_nid": "crud_site_site_code_exists", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L78"}, {"caller_nid": "crud_site_site_code_exists", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L78"}, {"caller_nid": "crud_site_site_code_exists", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L78"}, {"caller_nid": "crud_site_site_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L80"}, {"caller_nid": "crud_site_site_code_exists", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L81"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L100"}, {"caller_nid": "crud_site_create_site", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L102"}, {"caller_nid": "crud_site_create_site", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L104"}, {"caller_nid": "crud_site_create_site", "callee": "SysSite", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L105"}, {"caller_nid": "crud_site_create_site", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L106"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L107"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L109"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L111"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L112"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L113"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L114"}, {"caller_nid": "crud_site_create_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L117"}, {"caller_nid": "crud_site_create_site", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L120"}, {"caller_nid": "crud_site_create_site", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L122"}, {"caller_nid": "crud_site_create_site", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L125"}, {"caller_nid": "crud_site_create_site", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L126"}, {"caller_nid": "crud_site_create_site", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L127"}, {"caller_nid": "crud_site_update_site", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L149"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L151"}, {"caller_nid": "crud_site_update_site", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L153"}, {"caller_nid": "crud_site_update_site", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L155"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L158"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L160"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L164"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L166"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L168"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L170"}, {"caller_nid": "crud_site_update_site", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L174"}, {"caller_nid": "crud_site_update_site", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L176"}, {"caller_nid": "crud_site_update_site", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L177"}, {"caller_nid": "crud_site_update_site", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L178"}, {"caller_nid": "crud_site_update_site", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L179"}, {"caller_nid": "crud_site_soft_delete_site", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L186"}, {"caller_nid": "crud_site_soft_delete_site", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L187"}, {"caller_nid": "crud_site_soft_delete_site", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L189"}, {"caller_nid": "crud_site_soft_delete_site", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L190"}, {"caller_nid": "crud_site_soft_delete_site", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L191"}, {"caller_nid": "crud_site_total_pages", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L197"}, {"caller_nid": "crud_site_total_pages", "callee": "ceil", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L197"}, {"caller_nid": "crud_site_total_pages", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/site.py", "source_location": "L197"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/a636f1c45bd0dd0b2e6c337061f3d1ce4119b130d444d6b31bf7f1be4782fa67.json b/backend/graphify-out/cache/ast/a636f1c45bd0dd0b2e6c337061f3d1ce4119b130d444d6b31bf7f1be4782fa67.json new file mode 100644 index 000000000..985841f2b --- /dev/null +++ b/backend/graphify-out/cache/ast/a636f1c45bd0dd0b2e6c337061f3d1ce4119b130d444d6b31bf7f1be4782fa67.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "label": "dept.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L1"}, {"id": "crud_dept_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L14"}, {"id": "crud_dept_build_tree", "label": "_build_tree()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L32"}, {"id": "crud_dept_collect_with_ancestors", "label": "_collect_with_ancestors()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L40"}, {"id": "crud_dept_list_depts", "label": "list_depts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L56"}, {"id": "crud_dept_list_depts_tree", "label": "list_depts_tree()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L76"}, {"id": "crud_dept_get_dept", "label": "get_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L98"}, {"id": "crud_dept_create_dept", "label": "create_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L106"}, {"id": "crud_dept_update_dept", "label": "update_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L147"}, {"id": "crud_dept_cascade_soft_delete", "label": "_cascade_soft_delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L185"}, {"id": "crud_dept_soft_delete_dept", "label": "soft_delete_dept()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L198"}, {"id": "crud_dept_rationale_43", "label": "\u4fdd\u7559\u5339\u914d\u8282\u70b9\u53ca\u5176\u5168\u90e8\u4e0a\u7ea7\uff0c\u4f9b\u5173\u952e\u8bcd\u68c0\u7d22\u540e\u4ecd\u80fd\u6b63\u786e\u7ec4\u6811\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L43"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_build_tree", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L32", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_collect_with_ancestors", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L40", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_list_depts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L56", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_list_depts_tree", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L76", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_get_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L98", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_create_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L106", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_update_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L147", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_cascade_soft_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L185", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dept_py", "target": "crud_dept_soft_delete_dept", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L198", "weight": 1.0}, {"source": "crud_dept_list_depts", "target": "crud_dept_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L73", "weight": 1.0}, {"source": "crud_dept_list_depts_tree", "target": "crud_dept_list_depts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L85", "weight": 1.0}, {"source": "crud_dept_list_depts_tree", "target": "crud_dept_build_tree", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L86", "weight": 1.0}, {"source": "crud_dept_list_depts_tree", "target": "crud_dept_collect_with_ancestors", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L94", "weight": 1.0}, {"source": "crud_dept_update_dept", "target": "crud_dept_get_dept", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L160", "weight": 1.0}, {"source": "crud_dept_soft_delete_dept", "target": "crud_dept_get_dept", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L199", "weight": 1.0}, {"source": "crud_dept_soft_delete_dept", "target": "crud_dept_cascade_soft_delete", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L203", "weight": 1.0}, {"source": "crud_dept_rationale_43", "target": "crud_dept_collect_with_ancestors", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L43", "weight": 1.0}], "raw_calls": [{"caller_nid": "crud_dept_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L27"}, {"caller_nid": "crud_dept_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L28"}, {"caller_nid": "crud_dept_build_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L33"}, {"caller_nid": "crud_dept_build_tree", "callee": "sort", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L36"}, {"caller_nid": "crud_dept_build_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L36"}, {"caller_nid": "crud_dept_collect_with_ancestors", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L44"}, {"caller_nid": "crud_dept_collect_with_ancestors", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L45"}, {"caller_nid": "crud_dept_collect_with_ancestors", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L47"}, {"caller_nid": "crud_dept_collect_with_ancestors", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L51"}, {"caller_nid": "crud_dept_collect_with_ancestors", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L52"}, {"caller_nid": "crud_dept_collect_with_ancestors", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L52"}, {"caller_nid": "crud_dept_list_depts", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L63"}, {"caller_nid": "crud_dept_list_depts", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L63"}, {"caller_nid": "crud_dept_list_depts", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L65"}, {"caller_nid": "crud_dept_list_depts", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L66"}, {"caller_nid": "crud_dept_list_depts", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L69"}, {"caller_nid": "crud_dept_list_depts", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L69"}, {"caller_nid": "crud_dept_list_depts", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L72"}, {"caller_nid": "crud_dept_list_depts", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L72"}, {"caller_nid": "crud_dept_list_depts", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L72"}, {"caller_nid": "crud_dept_list_depts_tree", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L83"}, {"caller_nid": "crud_dept_list_depts_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L93"}, {"caller_nid": "crud_dept_get_dept", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L100"}, {"caller_nid": "crud_dept_get_dept", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L100"}, {"caller_nid": "crud_dept_get_dept", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L100"}, {"caller_nid": "crud_dept_get_dept", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L101"}, {"caller_nid": "crud_dept_create_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L120"}, {"caller_nid": "crud_dept_create_dept", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L122"}, {"caller_nid": "crud_dept_create_dept", "callee": "SysDept", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L123"}, {"caller_nid": "crud_dept_create_dept", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L124"}, {"caller_nid": "crud_dept_create_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L125"}, {"caller_nid": "crud_dept_create_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L127"}, {"caller_nid": "crud_dept_create_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L129"}, {"caller_nid": "crud_dept_create_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L130"}, {"caller_nid": "crud_dept_create_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L133"}, {"caller_nid": "crud_dept_create_dept", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L136"}, {"caller_nid": "crud_dept_create_dept", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L138"}, {"caller_nid": "crud_dept_create_dept", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L141"}, {"caller_nid": "crud_dept_create_dept", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L142"}, {"caller_nid": "crud_dept_create_dept", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L143"}, {"caller_nid": "crud_dept_update_dept", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L162"}, {"caller_nid": "crud_dept_update_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L164"}, {"caller_nid": "crud_dept_update_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L166"}, {"caller_nid": "crud_dept_update_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L170"}, {"caller_nid": "crud_dept_update_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L172"}, {"caller_nid": "crud_dept_update_dept", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L176"}, {"caller_nid": "crud_dept_update_dept", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L178"}, {"caller_nid": "crud_dept_update_dept", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L179"}, {"caller_nid": "crud_dept_update_dept", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L180"}, {"caller_nid": "crud_dept_update_dept", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L181"}, {"caller_nid": "crud_dept_cascade_soft_delete", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L187"}, {"caller_nid": "crud_dept_cascade_soft_delete", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L187"}, {"caller_nid": "crud_dept_cascade_soft_delete", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L187"}, {"caller_nid": "crud_dept_cascade_soft_delete", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L188"}, {"caller_nid": "crud_dept_cascade_soft_delete", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L194"}, {"caller_nid": "crud_dept_cascade_soft_delete", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L195"}, {"caller_nid": "crud_dept_soft_delete_dept", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L201"}, {"caller_nid": "crud_dept_soft_delete_dept", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L202"}, {"caller_nid": "crud_dept_soft_delete_dept", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L205"}, {"caller_nid": "crud_dept_soft_delete_dept", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L206"}, {"caller_nid": "crud_dept_soft_delete_dept", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dept.py", "source_location": "L207"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/ab6d74b02f749bfdc42ff3b000ba56a87db7acf6d41f8c49780ded11ee9492db.json b/backend/graphify-out/cache/ast/ab6d74b02f749bfdc42ff3b000ba56a87db7acf6d41f8c49780ded11ee9492db.json new file mode 100644 index 000000000..826b2d79b --- /dev/null +++ b/backend/graphify-out/cache/ast/ab6d74b02f749bfdc42ff3b000ba56a87db7acf6d41f8c49780ded11ee9492db.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_tenant", "label": "_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L30"}, {"id": "bx_reimburse_build_details_data", "label": "_build_details_data()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L34"}, {"id": "bx_reimburse_get_generated_title", "label": "get_generated_title()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L61"}, {"id": "bx_reimburse_list_reimburses", "label": "list_reimburses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L78"}, {"id": "bx_reimburse_my_reimburses", "label": "my_reimburses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L124"}, {"id": "bx_reimburse_my_reimburse_stats", "label": "my_reimburse_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L169"}, {"id": "bx_reimburse_reimburse_status_counts", "label": "reimburse_status_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L179"}, {"id": "bx_reimburse_pending_approval", "label": "pending_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L188"}, {"id": "bx_reimburse_pending_approval_stats", "label": "pending_approval_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L220"}, {"id": "bx_reimburse_approved_by_me", "label": "approved_by_me()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L230"}, {"id": "bx_reimburse_get_reimburse", "label": "get_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L262"}, {"id": "bx_reimburse_get_approvals", "label": "get_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L276"}, {"id": "bx_reimburse_get_approval_history", "label": "get_approval_history()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L289"}, {"id": "bx_reimburse_create_reimburse", "label": "create_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L302"}, {"id": "bx_reimburse_update_reimburse", "label": "update_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L355"}, {"id": "bx_reimburse_submit_reimburse", "label": "submit_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L399"}, {"id": "bx_reimburse_approve_reimburse", "label": "approve_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L417"}, {"id": "bx_reimburse_reject_reimburse", "label": "reject_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L433"}, {"id": "bx_reimburse_withdraw_reimburse", "label": "withdraw_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L449"}, {"id": "bx_reimburse_delete_reimburse", "label": "delete_reimburse()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L467"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_schemas_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_services_bx_expense_item", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L22", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_services_bx_reimburse", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_utils_bx_codegen", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "app_utils_bx_date_range", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L25", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_build_details_data", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L34", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_generated_title", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L61", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_list_reimburses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L78", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_my_reimburses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L124", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_my_reimburse_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L169", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_reimburse_status_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L179", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_pending_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L188", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_pending_approval_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L220", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_approved_by_me", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L230", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L262", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L276", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_get_approval_history", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L289", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_create_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L302", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_update_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L355", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_submit_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L399", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_approve_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L417", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_reject_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L433", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_withdraw_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L449", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_reimburse_py", "target": "bx_reimburse_delete_reimburse", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L467", "weight": 1.0}, {"source": "bx_reimburse_get_generated_title", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L68", "weight": 1.0}, {"source": "bx_reimburse_list_reimburses", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L92", "weight": 1.0}, {"source": "bx_reimburse_my_reimburses", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L136", "weight": 1.0}, {"source": "bx_reimburse_my_reimburse_stats", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L173", "weight": 1.0}, {"source": "bx_reimburse_reimburse_status_counts", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L183", "weight": 1.0}, {"source": "bx_reimburse_pending_approval", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L200", "weight": 1.0}, {"source": "bx_reimburse_pending_approval_stats", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L224", "weight": 1.0}, {"source": "bx_reimburse_approved_by_me", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L242", "weight": 1.0}, {"source": "bx_reimburse_get_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L267", "weight": 1.0}, {"source": "bx_reimburse_get_approvals", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L281", "weight": 1.0}, {"source": "bx_reimburse_get_approval_history", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L294", "weight": 1.0}, {"source": "bx_reimburse_create_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L307", "weight": 1.0}, {"source": "bx_reimburse_create_reimburse", "target": "bx_reimburse_build_details_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L308", "weight": 1.0}, {"source": "bx_reimburse_update_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L361", "weight": 1.0}, {"source": "bx_reimburse_update_reimburse", "target": "bx_reimburse_build_details_data", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L364", "weight": 1.0}, {"source": "bx_reimburse_submit_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L405", "weight": 1.0}, {"source": "bx_reimburse_approve_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L423", "weight": 1.0}, {"source": "bx_reimburse_reject_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L439", "weight": 1.0}, {"source": "bx_reimburse_withdraw_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L454", "weight": 1.0}, {"source": "bx_reimburse_delete_reimburse", "target": "bx_reimburse_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L472", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_tenant", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L31"}, {"caller_nid": "bx_reimburse_tenant", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L31"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L43"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L45"}, {"caller_nid": "bx_reimburse_build_details_data", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L49"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L69"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L69"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "resolve_applicant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L70"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "generate_title", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L73"}, {"caller_nid": "bx_reimburse_get_generated_title", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L74"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L95"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L97"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L98"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L99"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L100"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L101"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L105"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L105"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L105"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "build_expense_name_condition", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L106"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L108"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L110"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L110"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L110"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L111"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L118"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L119"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L119"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L120"}, {"caller_nid": "bx_reimburse_list_reimburses", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L120"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L138"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L144"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L146"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L147"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L148"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L149"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L150"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "build_expense_name_condition", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L153"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L155"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L156"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L163"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L164"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L164"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L165"}, {"caller_nid": "bx_reimburse_my_reimburses", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L165"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "my_apply_stats", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L174"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L175"}, {"caller_nid": "bx_reimburse_my_reimburse_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L175"}, {"caller_nid": "bx_reimburse_reimburse_status_counts", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L184"}, {"caller_nid": "bx_reimburse_reimburse_status_counts", "callee": "global_status_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L184"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L201"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L201"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L215"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L215"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L216"}, {"caller_nid": "bx_reimburse_pending_approval", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L216"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L226"}, {"caller_nid": "bx_reimburse_pending_approval_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L226"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L243"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L243"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "out_rows_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L257"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L257"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L258"}, {"caller_nid": "bx_reimburse_approved_by_me", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L258"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L268"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L270"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L271"}, {"caller_nid": "bx_reimburse_get_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L272"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L282"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L283"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L285"}, {"caller_nid": "bx_reimburse_get_approvals", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L285"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L295"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L296"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L298"}, {"caller_nid": "bx_reimburse_get_approval_history", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L298"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "generate_apply_code", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L310"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L318"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L318"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L318"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "resolve_applicant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L328"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "create_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L331"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "sync_reimburse_invoices", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L340"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L348"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L349"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L350"}, {"caller_nid": "bx_reimburse_create_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L351"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "resolve_applicant", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L373"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "update_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L378"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L382"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "sync_reimburse_invoices", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L384"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L392"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L393"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L394"}, {"caller_nid": "bx_reimburse_update_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L395"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "submit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L406"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L410"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L411"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L412"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L413"}, {"caller_nid": "bx_reimburse_submit_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L413"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "approve", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L424"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L426"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L427"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L428"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L429"}, {"caller_nid": "bx_reimburse_approve_reimburse", "callee": "out_one_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L429"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "reject", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L440"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L442"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L443"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L444"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L445"}, {"caller_nid": "bx_reimburse_reject_reimburse", "callee": "out_one_with_attachment_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L445"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "withdraw", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L455"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L457"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L461"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L462"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L463"}, {"caller_nid": "bx_reimburse_withdraw_reimburse", "callee": "build_apply_out_with_details", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L463"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L473"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L474"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "soft_delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L475"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L476"}, {"caller_nid": "bx_reimburse_delete_reimburse", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/reimburse.py", "source_location": "L477"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/ba2c043bc078010880031293f6e2f0f01e9b820d191ff6989bf65983903f063c.json b/backend/graphify-out/cache/ast/ba2c043bc078010880031293f6e2f0f01e9b820d191ff6989bf65983903f063c.json new file mode 100644 index 000000000..18ba2c959 --- /dev/null +++ b/backend/graphify-out/cache/ast/ba2c043bc078010880031293f6e2f0f01e9b820d191ff6989bf65983903f063c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "label": "ethnic.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L1"}, {"id": "crud_ethnic_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L9"}, {"id": "crud_ethnic_list_ethnics", "label": "list_ethnics()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L18"}, {"id": "crud_ethnic_rationale_1", "label": "\u6c11\u65cf\u7801\u8868 CRUD\uff08\u5168\u5c40 sys_ethnic\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L1"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "target": "crud_ethnic_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "target": "crud_ethnic_list_ethnics", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L18", "weight": 1.0}, {"source": "crud_ethnic_list_ethnics", "target": "crud_ethnic_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L33", "weight": 1.0}, {"source": "crud_ethnic_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_ethnic_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L1", "weight": 1.0}], "raw_calls": [{"caller_nid": "crud_ethnic_list_ethnics", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L25"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L25"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L26"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L29"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L29"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}, {"caller_nid": "crud_ethnic_list_ethnics", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/ethnic.py", "source_location": "L32"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/d7f64d813e31ed3751b6399245ba502f953644569c75dce0a98598d38b0efde2.json b/backend/graphify-out/cache/ast/d7f64d813e31ed3751b6399245ba502f953644569c75dce0a98598d38b0efde2.json new file mode 100644 index 000000000..1d7dde49c --- /dev/null +++ b/backend/graphify-out/cache/ast/d7f64d813e31ed3751b6399245ba502f953644569c75dce0a98598d38b0efde2.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "label": "dict_type.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L1"}, {"id": "crud_dict_type_row_to_dict", "label": "_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L16"}, {"id": "crud_dict_type_list_dict_types", "label": "list_dict_types()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L30"}, {"id": "crud_dict_type_get_dict_type", "label": "get_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L63"}, {"id": "crud_dict_type_dict_type_code_exists", "label": "dict_type_code_exists()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L71"}, {"id": "crud_dict_type_create_dict_type", "label": "create_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L82"}, {"id": "crud_dict_type_update_dict_type", "label": "update_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L117"}, {"id": "crud_dict_type_soft_delete_dict_type", "label": "soft_delete_dict_type()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L153"}, {"id": "crud_dict_type_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L167"}, {"id": "crud_dict_type_rationale_1", "label": "\u5b57\u5178\u7c7b\u578b CRUD\uff08sys_dict_type\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L1"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_list_dict_types", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_get_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L63", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_dict_type_code_exists", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L71", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_create_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L82", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_update_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L117", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_soft_delete_dict_type", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L153", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "target": "crud_dict_type_total_pages", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L167", "weight": 1.0}, {"source": "crud_dict_type_list_dict_types", "target": "crud_dict_type_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L60", "weight": 1.0}, {"source": "crud_dict_type_create_dict_type", "target": "crud_dict_type_dict_type_code_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L95", "weight": 1.0}, {"source": "crud_dict_type_update_dict_type", "target": "crud_dict_type_get_dict_type", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L128", "weight": 1.0}, {"source": "crud_dict_type_update_dict_type", "target": "crud_dict_type_dict_type_code_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L138", "weight": 1.0}, {"source": "crud_dict_type_soft_delete_dict_type", "target": "crud_dict_type_get_dict_type", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L154", "weight": 1.0}, {"source": "crud_dict_type_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_dict_type_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L1", "weight": 1.0}], "raw_calls": [{"caller_nid": "crud_dict_type_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L25"}, {"caller_nid": "crud_dict_type_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L26"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L50"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "with_entities", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L50"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L50"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L50"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L50"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L51"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L52"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L52"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L54"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L54"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L54"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L54"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "_filtered", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L54"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L55"}, {"caller_nid": "crud_dict_type_list_dict_types", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L60"}, {"caller_nid": "crud_dict_type_get_dict_type", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L65"}, {"caller_nid": "crud_dict_type_get_dict_type", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L65"}, {"caller_nid": "crud_dict_type_get_dict_type", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L65"}, {"caller_nid": "crud_dict_type_get_dict_type", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L66"}, {"caller_nid": "crud_dict_type_dict_type_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L74"}, {"caller_nid": "crud_dict_type_dict_type_code_exists", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L74"}, {"caller_nid": "crud_dict_type_dict_type_code_exists", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L75"}, {"caller_nid": "crud_dict_type_dict_type_code_exists", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L75"}, {"caller_nid": "crud_dict_type_dict_type_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L78"}, {"caller_nid": "crud_dict_type_dict_type_code_exists", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L79"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L92"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L94"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L96"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "SysDictType", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L97"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L98"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L99"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L103"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L106"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L108"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L111"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L112"}, {"caller_nid": "crud_dict_type_create_dict_type", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L113"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L130"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L132"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L134"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L136"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L139"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L144"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L146"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L147"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L148"}, {"caller_nid": "crud_dict_type_update_dict_type", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L149"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L156"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L157"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L159"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L160"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L161"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L161"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L161"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "and_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L162"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L163"}, {"caller_nid": "crud_dict_type_soft_delete_dict_type", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L164"}, {"caller_nid": "crud_dict_type_total_pages", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L170"}, {"caller_nid": "crud_dict_type_total_pages", "callee": "ceil", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L170"}, {"caller_nid": "crud_dict_type_total_pages", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/dict_type.py", "source_location": "L170"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/d84b39b29736cea73cae80fb56ab619809632fc9cb65c8a3e6a64fb4fe418e88.json b/backend/graphify-out/cache/ast/d84b39b29736cea73cae80fb56ab619809632fc9cb65c8a3e6a64fb4fe418e88.json new file mode 100644 index 000000000..9f166c72b --- /dev/null +++ b/backend/graphify-out/cache/ast/d84b39b29736cea73cae80fb56ab619809632fc9cb65c8a3e6a64fb4fe418e88.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "label": "bx_models.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L1"}, {"id": "models_bx_models_bxexpenseitem", "label": "BxExpenseItem", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L10"}, {"id": "base", "label": "Base", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "models_bx_models_bxworkflowdef", "label": "BxWorkflowDef", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L33"}, {"id": "models_bx_models_bxworkflownode", "label": "BxWorkflowNode", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L62"}, {"id": "models_bx_models_bxadvanceapply", "label": "BxAdvanceApply", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L95"}, {"id": "models_bx_models_bxadvanceapproval", "label": "BxAdvanceApproval", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L128"}, {"id": "models_bx_models_bxreimburseapply", "label": "BxReimburseApply", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L151"}, {"id": "models_bx_models_bxreimbursedetail", "label": "BxReimburseDetail", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L189"}, {"id": "models_bx_models_bxreimburseapproval", "label": "BxReimburseApproval", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L210"}, {"id": "models_bx_models_bxreimburseoffset", "label": "BxReimburseOffset", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L233"}, {"id": "models_bx_models_bxattachment", "label": "BxAttachment", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L251"}, {"id": "models_bx_models_bxinvoice", "label": "BxInvoice", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L274"}, {"id": "models_bx_models_bxinvoiceledger", "label": "BxInvoiceLedger", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L296"}, {"id": "models_bx_models_bxreimburseinvoice", "label": "BxReimburseInvoice", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L321"}, {"id": "models_bx_models_bxinvoicewalletsummary", "label": "BxInvoiceWalletSummary", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L338"}, {"id": "models_bx_models_rationale_1", "label": "\u62a5\u9500\uff08bx\uff09\u6a21\u5757\u6570\u636e\u6a21\u578b \u2014 \u5bf9\u9f50 docs/sql/20260606_bx_tables.sql", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L1"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxexpenseitem", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L10", "weight": 1.0}, {"source": "models_bx_models_bxexpenseitem", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxworkflowdef", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L33", "weight": 1.0}, {"source": "models_bx_models_bxworkflowdef", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L33", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxworkflownode", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L62", "weight": 1.0}, {"source": "models_bx_models_bxworkflownode", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L62", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxadvanceapply", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L95", "weight": 1.0}, {"source": "models_bx_models_bxadvanceapply", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L95", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxadvanceapproval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L128", "weight": 1.0}, {"source": "models_bx_models_bxadvanceapproval", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L128", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxreimburseapply", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L151", "weight": 1.0}, {"source": "models_bx_models_bxreimburseapply", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L151", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxreimbursedetail", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L189", "weight": 1.0}, {"source": "models_bx_models_bxreimbursedetail", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L189", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxreimburseapproval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L210", "weight": 1.0}, {"source": "models_bx_models_bxreimburseapproval", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L210", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxreimburseoffset", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L233", "weight": 1.0}, {"source": "models_bx_models_bxreimburseoffset", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L233", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxattachment", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L251", "weight": 1.0}, {"source": "models_bx_models_bxattachment", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L251", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxinvoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L274", "weight": 1.0}, {"source": "models_bx_models_bxinvoice", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L274", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxinvoiceledger", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L296", "weight": 1.0}, {"source": "models_bx_models_bxinvoiceledger", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L296", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxreimburseinvoice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L321", "weight": 1.0}, {"source": "models_bx_models_bxreimburseinvoice", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L321", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "target": "models_bx_models_bxinvoicewalletsummary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L338", "weight": 1.0}, {"source": "models_bx_models_bxinvoicewalletsummary", "target": "base", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L338", "weight": 1.0}, {"source": "models_bx_models_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_models_bx_models_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/models/bx_models.py", "source_location": "L1", "weight": 1.0}], "raw_calls": []} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/dd56d9197b4cddc60570bf5eb1851d4a426ab226858beb95bccb33a839471ea5.json b/backend/graphify-out/cache/ast/dd56d9197b4cddc60570bf5eb1851d4a426ab226858beb95bccb33a839471ea5.json new file mode 100644 index 000000000..f5202e5c9 --- /dev/null +++ b/backend/graphify-out/cache/ast/dd56d9197b4cddc60570bf5eb1851d4a426ab226858beb95bccb33a839471ea5.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "label": "base.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L1"}, {"id": "bx_base_bxcrudservice", "label": "BxCrudService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L18"}, {"id": "bx_base_get_by_id", "label": "get_by_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L20"}, {"id": "bx_base_get_paged", "label": "get_paged()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L38"}, {"id": "bx_base_create", "label": "create()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L65"}, {"id": "bx_base_update", "label": "update()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L85"}, {"id": "bx_base_soft_delete", "label": "soft_delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L109"}, {"id": "bx_base_rationale_1", "label": "\u62a5\u9500\u6a21\u5757 Service \u57fa\u7c7b \u2014 \u79df\u6237\u9694\u79bb + UUID + \u8f6f\u5220\u9664\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L1"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "app_services_bx_data_scope", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "bx_base_bxcrudservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "bx_base_get_by_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L20", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "bx_base_get_paged", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L38", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "bx_base_create", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L65", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "bx_base_update", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L85", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "target": "bx_base_soft_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L109", "weight": 1.0}, {"source": "bx_base_update", "target": "bx_base_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L96", "weight": 1.0}, {"source": "bx_base_soft_delete", "target": "bx_base_get_by_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L119", "weight": 1.0}, {"source": "bx_base_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_base_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L1", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_base_get_by_id", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L29"}, {"caller_nid": "bx_base_get_by_id", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L29"}, {"caller_nid": "bx_base_get_by_id", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L30"}, {"caller_nid": "bx_base_get_by_id", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L31"}, {"caller_nid": "bx_base_get_by_id", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L32"}, {"caller_nid": "bx_base_get_by_id", "callee": "assert_bx_row_in_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L34"}, {"caller_nid": "bx_base_get_paged", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L49"}, {"caller_nid": "bx_base_get_paged", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L49"}, {"caller_nid": "bx_base_get_paged", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L50"}, {"caller_nid": "bx_base_get_paged", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L51"}, {"caller_nid": "bx_base_get_paged", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L53"}, {"caller_nid": "bx_base_get_paged", "callee": "apply_bx_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L55"}, {"caller_nid": "bx_base_get_paged", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L56"}, {"caller_nid": "bx_base_get_paged", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L57"}, {"caller_nid": "bx_base_get_paged", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L58"}, {"caller_nid": "bx_base_get_paged", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L58"}, {"caller_nid": "bx_base_get_paged", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L58"}, {"caller_nid": "bx_base_get_paged", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L60"}, {"caller_nid": "bx_base_get_paged", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L60"}, {"caller_nid": "bx_base_get_paged", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L61"}, {"caller_nid": "bx_base_get_paged", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L61"}, {"caller_nid": "bx_base_get_paged", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L61"}, {"caller_nid": "bx_base_create", "callee": "dict", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L74"}, {"caller_nid": "bx_base_create", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L75"}, {"caller_nid": "bx_base_create", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L75"}, {"caller_nid": "bx_base_create", "callee": "model", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L79"}, {"caller_nid": "bx_base_create", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L80"}, {"caller_nid": "bx_base_create", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L81"}, {"caller_nid": "bx_base_update", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L101"}, {"caller_nid": "bx_base_update", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L102"}, {"caller_nid": "bx_base_update", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L103"}, {"caller_nid": "bx_base_update", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L105"}, {"caller_nid": "bx_base_soft_delete", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L125"}, {"caller_nid": "bx_base_soft_delete", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L125"}, {"caller_nid": "bx_base_soft_delete", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L127"}, {"caller_nid": "bx_base_soft_delete", "callee": "hasattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L129"}, {"caller_nid": "bx_base_soft_delete", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/base.py", "source_location": "L131"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/dd7cc267214e6d158c33d910726c23cca28396fafb5fc6c4f118482de9f86843.json b/backend/graphify-out/cache/ast/dd7cc267214e6d158c33d910726c23cca28396fafb5fc6c4f118482de9f86843.json new file mode 100644 index 000000000..744001c34 --- /dev/null +++ b/backend/graphify-out/cache/ast/dd7cc267214e6d158c33d910726c23cca28396fafb5fc6c4f118482de9f86843.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "label": "reimburse.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L1"}, {"id": "bx_reimburse_coerce_id", "label": "_coerce_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L9"}, {"id": "bx_reimburse_reimbursedetailcreate", "label": "ReimburseDetailCreate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L15"}, {"id": "basemodel", "label": "BaseModel", "file_type": "code", "source_file": "", "source_location": ""}, {"id": "bx_reimburse_validate_expense_item_id", "label": "validate_expense_item_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L24"}, {"id": "bx_reimburse_reimbursedetailout", "label": "ReimburseDetailOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L31"}, {"id": "bx_reimburse_reimburseinvoicebriefout", "label": "ReimburseInvoiceBriefOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L41"}, {"id": "bx_reimburse_reimburseapplycreate", "label": "ReimburseApplyCreate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L49"}, {"id": "bx_reimburse_details_must_not_be_empty", "label": "details_must_not_be_empty()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L60"}, {"id": "bx_reimburse_reimburseapplyupdate", "label": "ReimburseApplyUpdate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L66"}, {"id": "bx_reimburse_reimbursesubmitbody", "label": "ReimburseSubmitBody", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L76"}, {"id": "bx_reimburse_reimburseapplyout", "label": "ReimburseApplyOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L82"}, {"id": "bx_reimburse_reimburseapprovalcreate", "label": "ReimburseApprovalCreate", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L112"}, {"id": "bx_reimburse_reimburseapprovalout", "label": "ReimburseApprovalOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L119"}, {"id": "bx_reimburse_reimbursemystatsout", "label": "ReimburseMyStatsOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L132"}, {"id": "bx_reimburse_reimburseapproverpendingstatsout", "label": "ReimburseApproverPendingStatsOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L144"}, {"id": "bx_reimburse_payrequest", "label": "PayRequest", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L151"}, {"id": "bx_reimburse_offsetrequest", "label": "OffsetRequest", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L158"}, {"id": "bx_reimburse_validate_advance_id", "label": "validate_advance_id()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L167"}, {"id": "bx_reimburse_offsetitem", "label": "OffsetItem", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L174"}, {"id": "bx_reimburse_batchoffsetrequest", "label": "BatchOffsetRequest", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L189"}, {"id": "bx_reimburse_reimburseoffsetrecordout", "label": "ReimburseOffsetRecordOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L197"}, {"id": "bx_reimburse_paymentfinancestatsout", "label": "PaymentFinanceStatsOut", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L210"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "pydantic", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "pydantic_alias_generators", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_coerce_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursedetailcreate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L15", "weight": 1.0}, {"source": "bx_reimburse_reimbursedetailcreate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_validate_expense_item_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursedetailout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L31", "weight": 1.0}, {"source": "bx_reimburse_reimbursedetailout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L31", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseinvoicebriefout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L41", "weight": 1.0}, {"source": "bx_reimburse_reimburseinvoicebriefout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L41", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapplycreate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L49", "weight": 1.0}, {"source": "bx_reimburse_reimburseapplycreate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L49", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_details_must_not_be_empty", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L60", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapplyupdate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L66", "weight": 1.0}, {"source": "bx_reimburse_reimburseapplyupdate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L66", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursesubmitbody", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L76", "weight": 1.0}, {"source": "bx_reimburse_reimbursesubmitbody", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L76", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapplyout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L82", "weight": 1.0}, {"source": "bx_reimburse_reimburseapplyout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L82", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapprovalcreate", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L112", "weight": 1.0}, {"source": "bx_reimburse_reimburseapprovalcreate", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L112", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapprovalout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L119", "weight": 1.0}, {"source": "bx_reimburse_reimburseapprovalout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L119", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimbursemystatsout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L132", "weight": 1.0}, {"source": "bx_reimburse_reimbursemystatsout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L132", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseapproverpendingstatsout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L144", "weight": 1.0}, {"source": "bx_reimburse_reimburseapproverpendingstatsout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L144", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_payrequest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L151", "weight": 1.0}, {"source": "bx_reimburse_payrequest", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L151", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_offsetrequest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L158", "weight": 1.0}, {"source": "bx_reimburse_offsetrequest", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L158", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_validate_advance_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L167", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_offsetitem", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L174", "weight": 1.0}, {"source": "bx_reimburse_offsetitem", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L174", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_validate_advance_id", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L182", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_batchoffsetrequest", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L189", "weight": 1.0}, {"source": "bx_reimburse_batchoffsetrequest", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L189", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_reimburseoffsetrecordout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L197", "weight": 1.0}, {"source": "bx_reimburse_reimburseoffsetrecordout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L197", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_schemas_bx_reimburse_py", "target": "bx_reimburse_paymentfinancestatsout", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L210", "weight": 1.0}, {"source": "bx_reimburse_paymentfinancestatsout", "target": "basemodel", "relation": "inherits", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L210", "weight": 1.0}, {"source": "bx_reimburse_validate_expense_item_id", "target": "bx_reimburse_coerce_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L25", "weight": 1.0}, {"source": "bx_reimburse_validate_advance_id", "target": "bx_reimburse_coerce_id", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L168", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_reimburse_coerce_id", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L12"}, {"caller_nid": "bx_reimburse_coerce_id", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L12"}, {"caller_nid": "bx_reimburse_validate_expense_item_id", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L27"}, {"caller_nid": "bx_reimburse_details_must_not_be_empty", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L61"}, {"caller_nid": "bx_reimburse_details_must_not_be_empty", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L62"}, {"caller_nid": "bx_reimburse_validate_advance_id", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L170"}, {"caller_nid": "bx_reimburse_validate_advance_id", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/schemas/bx/reimburse.py", "source_location": "L185"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/e07af5f6c024eaecfabe5a2adbba0d83929b5568f155a9633f59a1720263dc6f.json b/backend/graphify-out/cache/ast/e07af5f6c024eaecfabe5a2adbba0d83929b5568f155a9633f59a1720263dc6f.json new file mode 100644 index 000000000..44b9dd8e4 --- /dev/null +++ b/backend/graphify-out/cache/ast/e07af5f6c024eaecfabe5a2adbba0d83929b5568f155a9633f59a1720263dc6f.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "label": "product.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L1"}, {"id": "crm_product_total_pages", "label": "total_pages()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L24"}, {"id": "crm_product_category_row_to_dict", "label": "_category_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L34"}, {"id": "crm_product_list_categories", "label": "list_categories()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L50"}, {"id": "crm_product_build_category_tree", "label": "_build_category_tree()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L77"}, {"id": "crm_product_collect_category_with_ancestors", "label": "_collect_category_with_ancestors()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L88"}, {"id": "crm_product_list_category_tree", "label": "list_category_tree()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L104"}, {"id": "crm_product_get_category", "label": "get_category()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L137"}, {"id": "crm_product_create_category", "label": "create_category()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L149"}, {"id": "crm_product_update_category", "label": "update_category()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L186"}, {"id": "crm_product_soft_delete_category", "label": "soft_delete_category()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L225"}, {"id": "crm_product_category_code_exists", "label": "category_code_exists()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L265"}, {"id": "crm_product_product_row_to_dict", "label": "_product_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L285"}, {"id": "crm_product_list_products", "label": "list_products()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L316"}, {"id": "crm_product_get_product", "label": "get_product()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L362"}, {"id": "crm_product_get_product_by_no", "label": "get_product_by_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L374"}, {"id": "crm_product_max_sxwl_product_seq", "label": "_max_sxwl_product_seq()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L393"}, {"id": "crm_product_generate_product_no", "label": "generate_product_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L414"}, {"id": "crm_product_generate_barcode", "label": "generate_barcode()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L427"}, {"id": "crm_product_create_product", "label": "create_product()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L455"}, {"id": "crm_product_update_product", "label": "update_product()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L514"}, {"id": "crm_product_soft_delete_product", "label": "soft_delete_product()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L576"}, {"id": "crm_product_product_no_exists", "label": "product_no_exists()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L589"}, {"id": "crm_product_barcode_exists", "label": "barcode_exists()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L606"}, {"id": "crm_product_list_product_options", "label": "list_product_options()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L623"}, {"id": "crm_product_oss_row_to_dict", "label": "_oss_row_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L660"}, {"id": "crm_product_list_oss_by_biz", "label": "list_oss_by_biz()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L678"}, {"id": "crm_product_create_oss", "label": "create_oss()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L694"}, {"id": "crm_product_soft_delete_oss", "label": "soft_delete_oss()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L726"}, {"id": "crm_product_normalize_text", "label": "_normalize_text()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L737"}, {"id": "crm_product_get_quote_item_field", "label": "_get_quote_item_field()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L744"}, {"id": "crm_product_generate_auto_product_no", "label": "generate_auto_product_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L751"}, {"id": "crm_product_resolve_product_id_for_quote_item", "label": "resolve_product_id_for_quote_item()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L756"}, {"id": "crm_product_rationale_1", "label": "CRM \u4ea7\u54c1\u6a21\u5757 CRUD\uff08\u4ea7\u54c1\u5206\u7c7b + \u4ea7\u54c1 + \u9644\u4ef6\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L1"}, {"id": "crm_product_rationale_35", "label": "\u5206\u7c7b ORM \u5bf9\u8c61\u8f6c dict\uff08camelCase \u952e\u540d\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L35"}, {"id": "crm_product_rationale_58", "label": "\u83b7\u53d6\u5206\u7c7b\uff08\u6241\u5e73\u5217\u8868\uff0c\u652f\u6301\u540d\u79f0\u6a21\u7cca\u4e0e\u72b6\u6001\u7b5b\u9009\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L58"}, {"id": "crm_product_rationale_80", "label": "\u6309 parentId \u5c06\u6241\u5e73\u5206\u7c7b\u5217\u8868\u7ec4\u88c5\u4e3a\u5d4c\u5957\u6811", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L80"}, {"id": "crm_product_rationale_91", "label": "\u4fdd\u7559\u5339\u914d\u8282\u70b9\u53ca\u5176\u5168\u90e8\u4e0a\u7ea7\uff0c\u4f9b\u68c0\u7d22\u540e\u4ecd\u80fd\u6b63\u786e\u7ec4\u6811\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L91"}, {"id": "crm_product_rationale_112", "label": "\u83b7\u53d6\u4ea7\u54c1\u5206\u7c7b\u6811\uff08\u5d4c\u5957 children\uff0c\u4f9b\u6811\u5f62\u8868\u683c/\u6811\u9009\u62e9\u5668\u4f7f\u7528\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L112"}, {"id": "crm_product_rationale_286", "label": "\u4ea7\u54c1 ORM \u5bf9\u8c61\u8f6c dict\uff08camelCase \u952e\u540d\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L286"}, {"id": "crm_product_rationale_394", "label": "\u53d6\u5f53\u524d\u79df\u6237\u4e0b SXWL \u524d\u7f00\u4e14\u540e\u7f00\u4e3a\u7eaf\u6570\u5b57\u7684\u4ea7\u54c1\u7f16\u53f7\u6700\u5927\u6d41\u6c34\u503c", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L394"}, {"id": "crm_product_rationale_415", "label": "\u751f\u6210\u4ea7\u54c1\u7f16\u53f7\uff08\u683c\u5f0f\uff1aSXWL + 6\u4f4d\u9012\u589e\u6d41\u6c34\u53f7\uff0c\u5982 SXWL000001\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L415"}, {"id": "crm_product_rationale_428", "label": "\u751f\u6210\u552f\u4e00\u6761\u7801\uff08\u7eaf\u6570\u5b57\uff1ayyyyMMdd + 6\u4f4d\u5e8f\u53f7\uff0c\u5982 20260606000001\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L428"}, {"id": "crm_product_rationale_752", "label": "\u62a5\u4ef7\u81ea\u52a8\u5efa\u6863\u65f6\u751f\u6210\u4ea7\u54c1\u7f16\u53f7\uff08\u4e0e\u4ea7\u54c1\u7ba1\u7406\u65b0\u589e\u89c4\u5219\u4e00\u81f4\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L752"}, {"id": "crm_product_rationale_763", "label": "Java: resolveProductIdForQuoteItem\uff08CrmProduct \u65e0 tax_rate\uff0c\u8df3\u8fc7\u7a0e\u7387\u5339\u914d\uff09", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L763"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "math", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "datetime", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_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/product.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_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/product.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_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/product.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_total_pages", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_category_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L34", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_list_categories", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L50", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_build_category_tree", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L77", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_collect_category_with_ancestors", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L88", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_list_category_tree", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L104", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_get_category", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L137", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_create_category", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L149", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_update_category", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L186", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_soft_delete_category", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L225", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_category_code_exists", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L265", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_product_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L285", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_list_products", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L316", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_get_product", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L362", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_get_product_by_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L374", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_max_sxwl_product_seq", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L393", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_generate_product_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L414", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_generate_barcode", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L427", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_create_product", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L455", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_update_product", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L514", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_soft_delete_product", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L576", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_product_no_exists", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L589", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_barcode_exists", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L606", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_list_product_options", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L623", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_oss_row_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L660", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_list_oss_by_biz", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L678", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_create_oss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L694", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_soft_delete_oss", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L726", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_normalize_text", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L737", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_get_quote_item_field", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L744", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_generate_auto_product_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L751", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "target": "crm_product_resolve_product_id_for_quote_item", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L756", "weight": 1.0}, {"source": "crm_product_list_categories", "target": "crm_product_category_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L74", "weight": 1.0}, {"source": "crm_product_list_category_tree", "target": "crm_product_list_categories", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L118", "weight": 1.0}, {"source": "crm_product_list_category_tree", "target": "crm_product_build_category_tree", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L119", "weight": 1.0}, {"source": "crm_product_list_category_tree", "target": "crm_product_collect_category_with_ancestors", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L133", "weight": 1.0}, {"source": "crm_product_create_category", "target": "crm_product_get_category", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L162", "weight": 1.0}, {"source": "crm_product_update_category", "target": "crm_product_get_category", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L195", "weight": 1.0}, {"source": "crm_product_soft_delete_category", "target": "crm_product_get_category", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L227", "weight": 1.0}, {"source": "crm_product_list_products", "target": "crm_product_product_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L359", "weight": 1.0}, {"source": "crm_product_generate_product_no", "target": "crm_product_max_sxwl_product_seq", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L416", "weight": 1.0}, {"source": "crm_product_generate_product_no", "target": "crm_product_product_no_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L421", "weight": 1.0}, {"source": "crm_product_create_product", "target": "crm_product_generate_product_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L465", "weight": 1.0}, {"source": "crm_product_create_product", "target": "crm_product_normalize_text", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L467", "weight": 1.0}, {"source": "crm_product_create_product", "target": "crm_product_generate_barcode", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L469", "weight": 1.0}, {"source": "crm_product_create_product", "target": "crm_product_barcode_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L470", "weight": 1.0}, {"source": "crm_product_create_product", "target": "crm_product_get_category", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L477", "weight": 1.0}, {"source": "crm_product_update_product", "target": "crm_product_get_product", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L523", "weight": 1.0}, {"source": "crm_product_update_product", "target": "crm_product_normalize_text", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L554", "weight": 1.0}, {"source": "crm_product_update_product", "target": "crm_product_barcode_exists", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L555", "weight": 1.0}, {"source": "crm_product_update_product", "target": "crm_product_get_category", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L564", "weight": 1.0}, {"source": "crm_product_soft_delete_product", "target": "crm_product_get_product", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L578", "weight": 1.0}, {"source": "crm_product_list_oss_by_biz", "target": "crm_product_oss_row_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L691", "weight": 1.0}, {"source": "crm_product_generate_auto_product_no", "target": "crm_product_generate_product_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L753", "weight": 1.0}, {"source": "crm_product_resolve_product_id_for_quote_item", "target": "crm_product_get_quote_item_field", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L767", "weight": 1.0}, {"source": "crm_product_resolve_product_id_for_quote_item", "target": "crm_product_get_product", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L769", "weight": 1.0}, {"source": "crm_product_resolve_product_id_for_quote_item", "target": "crm_product_normalize_text", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L773", "weight": 1.0}, {"source": "crm_product_resolve_product_id_for_quote_item", "target": "crm_product_generate_auto_product_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L805", "weight": 1.0}, {"source": "crm_product_resolve_product_id_for_quote_item", "target": "crm_product_get_category", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L808", "weight": 1.0}, {"source": "crm_product_rationale_1", "target": "users_zlwu_work_00code_shanxia2_0_backend_app_crud_crm_product_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L1", "weight": 1.0}, {"source": "crm_product_rationale_35", "target": "crm_product_category_row_to_dict", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L35", "weight": 1.0}, {"source": "crm_product_rationale_58", "target": "crm_product_list_categories", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L58", "weight": 1.0}, {"source": "crm_product_rationale_80", "target": "crm_product_build_category_tree", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L80", "weight": 1.0}, {"source": "crm_product_rationale_91", "target": "crm_product_collect_category_with_ancestors", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L91", "weight": 1.0}, {"source": "crm_product_rationale_112", "target": "crm_product_list_category_tree", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L112", "weight": 1.0}, {"source": "crm_product_rationale_286", "target": "crm_product_product_row_to_dict", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L286", "weight": 1.0}, {"source": "crm_product_rationale_394", "target": "crm_product_max_sxwl_product_seq", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L394", "weight": 1.0}, {"source": "crm_product_rationale_415", "target": "crm_product_generate_product_no", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L415", "weight": 1.0}, {"source": "crm_product_rationale_428", "target": "crm_product_generate_barcode", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L428", "weight": 1.0}, {"source": "crm_product_rationale_752", "target": "crm_product_generate_auto_product_no", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L752", "weight": 1.0}, {"source": "crm_product_rationale_763", "target": "crm_product_resolve_product_id_for_quote_item", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L763", "weight": 1.0}], "raw_calls": [{"caller_nid": "crm_product_total_pages", "callee": "ceil", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L28"}, {"caller_nid": "crm_product_category_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L45"}, {"caller_nid": "crm_product_category_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L46"}, {"caller_nid": "crm_product_list_categories", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L59"}, {"caller_nid": "crm_product_list_categories", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L59"}, {"caller_nid": "crm_product_list_categories", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L65"}, {"caller_nid": "crm_product_list_categories", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L67"}, {"caller_nid": "crm_product_list_categories", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L67"}, {"caller_nid": "crm_product_list_categories", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L68"}, {"caller_nid": "crm_product_list_categories", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L68"}, {"caller_nid": "crm_product_list_categories", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L69"}, {"caller_nid": "crm_product_list_categories", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L69"}, {"caller_nid": "crm_product_list_categories", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L69"}, {"caller_nid": "crm_product_list_categories", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L70"}, {"caller_nid": "crm_product_list_categories", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L70"}, {"caller_nid": "crm_product_list_categories", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L71"}, {"caller_nid": "crm_product_list_categories", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L72"}, {"caller_nid": "crm_product_build_category_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L81"}, {"caller_nid": "crm_product_build_category_tree", "callee": "sort", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L84"}, {"caller_nid": "crm_product_build_category_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L84"}, {"caller_nid": "crm_product_collect_category_with_ancestors", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L92"}, {"caller_nid": "crm_product_collect_category_with_ancestors", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L93"}, {"caller_nid": "crm_product_collect_category_with_ancestors", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L95"}, {"caller_nid": "crm_product_collect_category_with_ancestors", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L99"}, {"caller_nid": "crm_product_collect_category_with_ancestors", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L100"}, {"caller_nid": "crm_product_collect_category_with_ancestors", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L100"}, {"caller_nid": "crm_product_list_category_tree", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L113"}, {"caller_nid": "crm_product_list_category_tree", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L114"}, {"caller_nid": "crm_product_list_category_tree", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L114"}, {"caller_nid": "crm_product_list_category_tree", "callee": "bool", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L115"}, {"caller_nid": "crm_product_list_category_tree", "callee": "bool", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L115"}, {"caller_nid": "crm_product_list_category_tree", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L132"}, {"caller_nid": "crm_product_get_category", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L140"}, {"caller_nid": "crm_product_get_category", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L140"}, {"caller_nid": "crm_product_get_category", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L140"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L157"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L158"}, {"caller_nid": "crm_product_create_category", "callee": "CrmProductCategory", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L166"}, {"caller_nid": "crm_product_create_category", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L167"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L169"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L170"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L172"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L174"}, {"caller_nid": "crm_product_create_category", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L175"}, {"caller_nid": "crm_product_create_category", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L180"}, {"caller_nid": "crm_product_create_category", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L181"}, {"caller_nid": "crm_product_create_category", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L182"}, {"caller_nid": "crm_product_update_category", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L197"}, {"caller_nid": "crm_product_update_category", "callee": "ensure_crm_create_by_row_in_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L198"}, {"caller_nid": "crm_product_update_category", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L205"}, {"caller_nid": "crm_product_update_category", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L219"}, {"caller_nid": "crm_product_update_category", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L220"}, {"caller_nid": "crm_product_update_category", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L221"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L229"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "ensure_crm_create_by_row_in_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L230"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L236"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L236"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L236"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L245"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L249"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L249"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L249"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L258"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L260"}, {"caller_nid": "crm_product_soft_delete_category", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L262"}, {"caller_nid": "crm_product_category_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L272"}, {"caller_nid": "crm_product_category_code_exists", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L272"}, {"caller_nid": "crm_product_category_code_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L278"}, {"caller_nid": "crm_product_category_code_exists", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L279"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L287"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L297"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L298"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L299"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L302"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L303"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L304"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L311"}, {"caller_nid": "crm_product_product_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L312"}, {"caller_nid": "crm_product_list_products", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L328"}, {"caller_nid": "crm_product_list_products", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L328"}, {"caller_nid": "crm_product_list_products", "callee": "apply_crm_create_by_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L333"}, {"caller_nid": "crm_product_list_products", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L336"}, {"caller_nid": "crm_product_list_products", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L339"}, {"caller_nid": "crm_product_list_products", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L339"}, {"caller_nid": "crm_product_list_products", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L339"}, {"caller_nid": "crm_product_list_products", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L339"}, {"caller_nid": "crm_product_list_products", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L343"}, {"caller_nid": "crm_product_list_products", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L347"}, {"caller_nid": "crm_product_list_products", "callee": "scalar", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L349"}, {"caller_nid": "crm_product_list_products", "callee": "with_entities", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L349"}, {"caller_nid": "crm_product_list_products", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L349"}, {"caller_nid": "crm_product_list_products", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L349"}, {"caller_nid": "crm_product_list_products", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L350"}, {"caller_nid": "crm_product_list_products", "callee": "min", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L351"}, {"caller_nid": "crm_product_list_products", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L351"}, {"caller_nid": "crm_product_list_products", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L354"}, {"caller_nid": "crm_product_list_products", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L354"}, {"caller_nid": "crm_product_list_products", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L354"}, {"caller_nid": "crm_product_list_products", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L354"}, {"caller_nid": "crm_product_list_products", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L354"}, {"caller_nid": "crm_product_list_products", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L359"}, {"caller_nid": "crm_product_get_product", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L365"}, {"caller_nid": "crm_product_get_product", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L365"}, {"caller_nid": "crm_product_get_product", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L365"}, {"caller_nid": "crm_product_get_product_by_no", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L377"}, {"caller_nid": "crm_product_get_product_by_no", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L377"}, {"caller_nid": "crm_product_get_product_by_no", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L377"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L395"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L397"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L397"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L397"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L399"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L406"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "isdigit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L409"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "max", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L410"}, {"caller_nid": "crm_product_max_sxwl_product_seq", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L410"}, {"caller_nid": "crm_product_generate_product_no", "callee": "range", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L417"}, {"caller_nid": "crm_product_generate_product_no", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L419"}, {"caller_nid": "crm_product_generate_product_no", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L424"}, {"caller_nid": "crm_product_generate_barcode", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L429"}, {"caller_nid": "crm_product_generate_barcode", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L429"}, {"caller_nid": "crm_product_generate_barcode", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L433"}, {"caller_nid": "crm_product_generate_barcode", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L433"}, {"caller_nid": "crm_product_generate_barcode", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L433"}, {"caller_nid": "crm_product_generate_barcode", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L433"}, {"caller_nid": "crm_product_generate_barcode", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L435"}, {"caller_nid": "crm_product_generate_barcode", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L439"}, {"caller_nid": "crm_product_generate_barcode", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L444"}, {"caller_nid": "crm_product_generate_barcode", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L446"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L463"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L467"}, {"caller_nid": "crm_product_create_product", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L471"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L474"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L475"}, {"caller_nid": "crm_product_create_product", "callee": "CrmProduct", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L481"}, {"caller_nid": "crm_product_create_product", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L482"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L484"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L487"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L488"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L490"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L491"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L492"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L493"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L494"}, {"caller_nid": "crm_product_create_product", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L494"}, {"caller_nid": "crm_product_create_product", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L495"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L495"}, {"caller_nid": "crm_product_create_product", "callee": "int", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L496"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L496"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L497"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L498"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L499"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L500"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L502"}, {"caller_nid": "crm_product_create_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L503"}, {"caller_nid": "crm_product_create_product", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L508"}, {"caller_nid": "crm_product_create_product", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L509"}, {"caller_nid": "crm_product_create_product", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L510"}, {"caller_nid": "crm_product_update_product", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L525"}, {"caller_nid": "crm_product_update_product", "callee": "ensure_crm_create_by_row_in_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L526"}, {"caller_nid": "crm_product_update_product", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L551"}, {"caller_nid": "crm_product_update_product", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L554"}, {"caller_nid": "crm_product_update_product", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L556"}, {"caller_nid": "crm_product_update_product", "callee": "now", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L570"}, {"caller_nid": "crm_product_update_product", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L571"}, {"caller_nid": "crm_product_update_product", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L572"}, {"caller_nid": "crm_product_soft_delete_product", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L580"}, {"caller_nid": "crm_product_soft_delete_product", "callee": "ensure_crm_create_by_row_in_scope", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L581"}, {"caller_nid": "crm_product_soft_delete_product", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L584"}, {"caller_nid": "crm_product_soft_delete_product", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L586"}, {"caller_nid": "crm_product_product_no_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L596"}, {"caller_nid": "crm_product_product_no_exists", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L596"}, {"caller_nid": "crm_product_product_no_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L602"}, {"caller_nid": "crm_product_product_no_exists", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L603"}, {"caller_nid": "crm_product_barcode_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L613"}, {"caller_nid": "crm_product_barcode_exists", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L613"}, {"caller_nid": "crm_product_barcode_exists", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L619"}, {"caller_nid": "crm_product_barcode_exists", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L620"}, {"caller_nid": "crm_product_list_product_options", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L632"}, {"caller_nid": "crm_product_list_product_options", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L632"}, {"caller_nid": "crm_product_list_product_options", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L641"}, {"caller_nid": "crm_product_list_product_options", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L641"}, {"caller_nid": "crm_product_list_product_options", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L641"}, {"caller_nid": "crm_product_list_product_options", "callee": "like", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L641"}, {"caller_nid": "crm_product_list_product_options", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L643"}, {"caller_nid": "crm_product_list_product_options", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L644"}, {"caller_nid": "crm_product_list_product_options", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L644"}, {"caller_nid": "crm_product_list_product_options", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L644"}, {"caller_nid": "crm_product_list_product_options", "callee": "float", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L651"}, {"caller_nid": "crm_product_oss_row_to_dict", "callee": "strftime", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L674"}, {"caller_nid": "crm_product_list_oss_by_biz", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L681"}, {"caller_nid": "crm_product_list_oss_by_biz", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L681"}, {"caller_nid": "crm_product_list_oss_by_biz", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L681"}, {"caller_nid": "crm_product_list_oss_by_biz", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L681"}, {"caller_nid": "crm_product_list_oss_by_biz", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L688"}, {"caller_nid": "crm_product_create_oss", "callee": "SysOss", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L702"}, {"caller_nid": "crm_product_create_oss", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L703"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L705"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L706"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L707"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L708"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L709"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L710"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L711"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L712"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L713"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L714"}, {"caller_nid": "crm_product_create_oss", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L715"}, {"caller_nid": "crm_product_create_oss", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L720"}, {"caller_nid": "crm_product_create_oss", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L721"}, {"caller_nid": "crm_product_create_oss", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L722"}, {"caller_nid": "crm_product_soft_delete_oss", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L728"}, {"caller_nid": "crm_product_soft_delete_oss", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L728"}, {"caller_nid": "crm_product_soft_delete_oss", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L728"}, {"caller_nid": "crm_product_soft_delete_oss", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L731"}, {"caller_nid": "crm_product_normalize_text", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L740"}, {"caller_nid": "crm_product_normalize_text", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L740"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L765"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L767"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "ValueError", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L775"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L778"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L780"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L781"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L782"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L785"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L785"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L785"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L785"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L789"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "trim", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L789"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L789"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L790"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "trim", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L790"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L790"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L791"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "trim", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L791"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "coalesce", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L791"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L793"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "CrmProduct", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L812"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L813"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L827"}, {"caller_nid": "crm_product_resolve_product_id_for_quote_item", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/crud/crm/product.py", "source_location": "L828"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/e09d555bad6b1a0ab289d045dda5a4231a54316e34616f60b03f724f9152e73c.json b/backend/graphify-out/cache/ast/e09d555bad6b1a0ab289d045dda5a4231a54316e34616f60b03f724f9152e73c.json new file mode 100644 index 000000000..b9f33bad2 --- /dev/null +++ b/backend/graphify-out/cache/ast/e09d555bad6b1a0ab289d045dda5a4231a54316e34616f60b03f724f9152e73c.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "label": "advance.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L1"}, {"id": "bx_advance_tenant", "label": "_tenant()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L29"}, {"id": "bx_advance_fill_offset_amounts", "label": "_fill_offset_amounts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L33"}, {"id": "bx_advance_list_advances", "label": "list_advances()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L42"}, {"id": "bx_advance_my_advances", "label": "my_advances()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L81"}, {"id": "bx_advance_my_advance_stats", "label": "my_advance_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L122"}, {"id": "bx_advance_advance_status_counts", "label": "advance_status_counts()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L132"}, {"id": "bx_advance_pending_approval", "label": "pending_approval()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L141"}, {"id": "bx_advance_advance_pending_approval_stats", "label": "advance_pending_approval_stats()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L171"}, {"id": "bx_advance_approved_by_me", "label": "approved_by_me()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L181"}, {"id": "bx_advance_get_advance", "label": "get_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L211"}, {"id": "bx_advance_get_approvals", "label": "get_approvals()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L227"}, {"id": "bx_advance_get_approval_history", "label": "get_approval_history()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L240"}, {"id": "bx_advance_create_advance", "label": "create_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L253"}, {"id": "bx_advance_update_advance", "label": "update_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L286"}, {"id": "bx_advance_submit_advance", "label": "submit_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L307"}, {"id": "bx_advance_approve_advance", "label": "approve_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L321"}, {"id": "bx_advance_reject_advance", "label": "reject_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L336"}, {"id": "bx_advance_delete_advance", "label": "delete_advance()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L351"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L1", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_schemas_bx_advance", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_schemas_bx_common", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L20", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_services_bx_advance", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L21", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_services_bx_expense_item", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L22", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_utils_bx_codegen", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "app_utils_bx_date_range", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_tenant", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L29", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_fill_offset_amounts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L33", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_list_advances", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L42", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_my_advances", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L81", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_my_advance_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L122", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_advance_status_counts", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L132", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_pending_approval", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L141", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_advance_pending_approval_stats", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L171", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_approved_by_me", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L181", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_get_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L211", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_get_approvals", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L227", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_get_approval_history", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L240", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_create_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L253", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_update_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L286", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_submit_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L307", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_approve_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L321", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_reject_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L336", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_bx_advance_py", "target": "bx_advance_delete_advance", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L351", "weight": 1.0}, {"source": "bx_advance_list_advances", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L54", "weight": 1.0}, {"source": "bx_advance_list_advances", "target": "bx_advance_fill_offset_amounts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L76", "weight": 1.0}, {"source": "bx_advance_my_advances", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L92", "weight": 1.0}, {"source": "bx_advance_my_advances", "target": "bx_advance_fill_offset_amounts", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L117", "weight": 1.0}, {"source": "bx_advance_my_advance_stats", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L126", "weight": 1.0}, {"source": "bx_advance_advance_status_counts", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L136", "weight": 1.0}, {"source": "bx_advance_pending_approval", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L152", "weight": 1.0}, {"source": "bx_advance_advance_pending_approval_stats", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L175", "weight": 1.0}, {"source": "bx_advance_approved_by_me", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L192", "weight": 1.0}, {"source": "bx_advance_get_advance", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L216", "weight": 1.0}, {"source": "bx_advance_get_approvals", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L232", "weight": 1.0}, {"source": "bx_advance_get_approval_history", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L245", "weight": 1.0}, {"source": "bx_advance_create_advance", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L258", "weight": 1.0}, {"source": "bx_advance_update_advance", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L292", "weight": 1.0}, {"source": "bx_advance_delete_advance", "target": "bx_advance_tenant", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L356", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_advance_tenant", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L30"}, {"caller_nid": "bx_advance_tenant", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L30"}, {"caller_nid": "bx_advance_fill_offset_amounts", "callee": "offset_amount_map", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L36"}, {"caller_nid": "bx_advance_fill_offset_amounts", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L38"}, {"caller_nid": "bx_advance_list_advances", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L57"}, {"caller_nid": "bx_advance_list_advances", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L59"}, {"caller_nid": "bx_advance_list_advances", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L60"}, {"caller_nid": "bx_advance_list_advances", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L61"}, {"caller_nid": "bx_advance_list_advances", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L62"}, {"caller_nid": "bx_advance_list_advances", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L66"}, {"caller_nid": "bx_advance_list_advances", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L66"}, {"caller_nid": "bx_advance_list_advances", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L66"}, {"caller_nid": "bx_advance_list_advances", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L67"}, {"caller_nid": "bx_advance_list_advances", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L74"}, {"caller_nid": "bx_advance_list_advances", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L75"}, {"caller_nid": "bx_advance_list_advances", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L77"}, {"caller_nid": "bx_advance_list_advances", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L77"}, {"caller_nid": "bx_advance_my_advances", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L94"}, {"caller_nid": "bx_advance_my_advances", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L100"}, {"caller_nid": "bx_advance_my_advances", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L102"}, {"caller_nid": "bx_advance_my_advances", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L103"}, {"caller_nid": "bx_advance_my_advances", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L104"}, {"caller_nid": "bx_advance_my_advances", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L105"}, {"caller_nid": "bx_advance_my_advances", "callee": "append_create_time_filters", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L108"}, {"caller_nid": "bx_advance_my_advances", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L115"}, {"caller_nid": "bx_advance_my_advances", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L116"}, {"caller_nid": "bx_advance_my_advances", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L118"}, {"caller_nid": "bx_advance_my_advances", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L118"}, {"caller_nid": "bx_advance_my_advance_stats", "callee": "my_apply_stats", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L127"}, {"caller_nid": "bx_advance_my_advance_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L128"}, {"caller_nid": "bx_advance_my_advance_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L128"}, {"caller_nid": "bx_advance_advance_status_counts", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L137"}, {"caller_nid": "bx_advance_advance_status_counts", "callee": "global_status_counts", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L137"}, {"caller_nid": "bx_advance_pending_approval", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L153"}, {"caller_nid": "bx_advance_pending_approval", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L153"}, {"caller_nid": "bx_advance_pending_approval", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L166"}, {"caller_nid": "bx_advance_pending_approval", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L167"}, {"caller_nid": "bx_advance_pending_approval", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L167"}, {"caller_nid": "bx_advance_advance_pending_approval_stats", "callee": "pending_approval_stats", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L176"}, {"caller_nid": "bx_advance_advance_pending_approval_stats", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L177"}, {"caller_nid": "bx_advance_advance_pending_approval_stats", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L177"}, {"caller_nid": "bx_advance_approved_by_me", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L193"}, {"caller_nid": "bx_advance_approved_by_me", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L193"}, {"caller_nid": "bx_advance_approved_by_me", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L206"}, {"caller_nid": "bx_advance_approved_by_me", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L207"}, {"caller_nid": "bx_advance_approved_by_me", "callee": "PagedData", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L207"}, {"caller_nid": "bx_advance_get_advance", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L217"}, {"caller_nid": "bx_advance_get_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L219"}, {"caller_nid": "bx_advance_get_advance", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L220"}, {"caller_nid": "bx_advance_get_advance", "callee": "offset_amount_map", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L221"}, {"caller_nid": "bx_advance_get_advance", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L222"}, {"caller_nid": "bx_advance_get_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L223"}, {"caller_nid": "bx_advance_get_approvals", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L233"}, {"caller_nid": "bx_advance_get_approvals", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L234"}, {"caller_nid": "bx_advance_get_approvals", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L236"}, {"caller_nid": "bx_advance_get_approvals", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L236"}, {"caller_nid": "bx_advance_get_approval_history", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L246"}, {"caller_nid": "bx_advance_get_approval_history", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L247"}, {"caller_nid": "bx_advance_get_approval_history", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L249"}, {"caller_nid": "bx_advance_get_approval_history", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L249"}, {"caller_nid": "bx_advance_create_advance", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L259"}, {"caller_nid": "bx_advance_create_advance", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L260"}, {"caller_nid": "bx_advance_create_advance", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L262"}, {"caller_nid": "bx_advance_create_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L263"}, {"caller_nid": "bx_advance_create_advance", "callee": "generate_apply_code", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L266"}, {"caller_nid": "bx_advance_create_advance", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L269"}, {"caller_nid": "bx_advance_create_advance", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L269"}, {"caller_nid": "bx_advance_create_advance", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L269"}, {"caller_nid": "bx_advance_create_advance", "callee": "create", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L279"}, {"caller_nid": "bx_advance_create_advance", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L280"}, {"caller_nid": "bx_advance_create_advance", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L281"}, {"caller_nid": "bx_advance_create_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L282"}, {"caller_nid": "bx_advance_create_advance", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L282"}, {"caller_nid": "bx_advance_update_advance", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L293"}, {"caller_nid": "bx_advance_update_advance", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L294"}, {"caller_nid": "bx_advance_update_advance", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L296"}, {"caller_nid": "bx_advance_update_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L297"}, {"caller_nid": "bx_advance_update_advance", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L298"}, {"caller_nid": "bx_advance_update_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L300"}, {"caller_nid": "bx_advance_update_advance", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L301"}, {"caller_nid": "bx_advance_update_advance", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L302"}, {"caller_nid": "bx_advance_update_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L303"}, {"caller_nid": "bx_advance_update_advance", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L303"}, {"caller_nid": "bx_advance_submit_advance", "callee": "submit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L312"}, {"caller_nid": "bx_advance_submit_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L314"}, {"caller_nid": "bx_advance_submit_advance", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L315"}, {"caller_nid": "bx_advance_submit_advance", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L316"}, {"caller_nid": "bx_advance_submit_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L317"}, {"caller_nid": "bx_advance_submit_advance", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L317"}, {"caller_nid": "bx_advance_approve_advance", "callee": "approve", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L327"}, {"caller_nid": "bx_advance_approve_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L329"}, {"caller_nid": "bx_advance_approve_advance", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L330"}, {"caller_nid": "bx_advance_approve_advance", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L331"}, {"caller_nid": "bx_advance_approve_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L332"}, {"caller_nid": "bx_advance_approve_advance", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L332"}, {"caller_nid": "bx_advance_reject_advance", "callee": "reject", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L342"}, {"caller_nid": "bx_advance_reject_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L344"}, {"caller_nid": "bx_advance_reject_advance", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L345"}, {"caller_nid": "bx_advance_reject_advance", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L346"}, {"caller_nid": "bx_advance_reject_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L347"}, {"caller_nid": "bx_advance_reject_advance", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L347"}, {"caller_nid": "bx_advance_delete_advance", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L357"}, {"caller_nid": "bx_advance_delete_advance", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L358"}, {"caller_nid": "bx_advance_delete_advance", "callee": "soft_delete", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L359"}, {"caller_nid": "bx_advance_delete_advance", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L360"}, {"caller_nid": "bx_advance_delete_advance", "callee": "ApiResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/bx/advance.py", "source_location": "L361"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/e7cc69318bb266a6fb28a9e8163b16e459b879e6041b226d9870477d3bf1c378.json b/backend/graphify-out/cache/ast/e7cc69318bb266a6fb28a9e8163b16e459b879e6041b226d9870477d3bf1c378.json new file mode 100644 index 000000000..7a5b7ae0c --- /dev/null +++ b/backend/graphify-out/cache/ast/e7cc69318bb266a6fb28a9e8163b16e459b879e6041b226d9870477d3bf1c378.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "label": "transport_address.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L1"}, {"id": "pl_transport_address_address_to_read", "label": "_address_to_read()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L24"}, {"id": "pl_transport_address_get_address", "label": "_get_address()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L28"}, {"id": "pl_transport_address_build_address_query", "label": "_build_address_query()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L45"}, {"id": "pl_transport_address_list_transport_addresses", "label": "list_transport_addresses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L56"}, {"id": "pl_transport_address_list_all_transport_addresses", "label": "list_all_transport_addresses()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L96"}, {"id": "pl_transport_address_create_transport_address", "label": "create_transport_address()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L123"}, {"id": "pl_transport_address_get_transport_address", "label": "get_transport_address()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L150"}, {"id": "pl_transport_address_update_transport_address", "label": "update_transport_address()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L161"}, {"id": "pl_transport_address_delete_transport_address", "label": "delete_transport_address()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L182"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L2", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L6", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_core_database", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_core_db_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_core_delete_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L10", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_core_utils", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_models_pl_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "app_schemas_pl_transport_address", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_address_to_read", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_get_address", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L28", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_build_address_query", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L45", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_list_transport_addresses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L56", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_list_all_transport_addresses", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L96", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_create_transport_address", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L123", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_get_transport_address", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L150", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_update_transport_address", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L161", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_api_pl_transport_address_py", "target": "pl_transport_address_delete_transport_address", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L182", "weight": 1.0}, {"source": "pl_transport_address_list_transport_addresses", "target": "pl_transport_address_build_address_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L65", "weight": 1.0}, {"source": "pl_transport_address_list_transport_addresses", "target": "pl_transport_address_address_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L91", "weight": 1.0}, {"source": "pl_transport_address_list_all_transport_addresses", "target": "pl_transport_address_build_address_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L103", "weight": 1.0}, {"source": "pl_transport_address_list_all_transport_addresses", "target": "pl_transport_address_address_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L119", "weight": 1.0}, {"source": "pl_transport_address_create_transport_address", "target": "pl_transport_address_address_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L146", "weight": 1.0}, {"source": "pl_transport_address_get_transport_address", "target": "pl_transport_address_get_address", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L156", "weight": 1.0}, {"source": "pl_transport_address_get_transport_address", "target": "pl_transport_address_address_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L157", "weight": 1.0}, {"source": "pl_transport_address_update_transport_address", "target": "pl_transport_address_get_address", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L168", "weight": 1.0}, {"source": "pl_transport_address_update_transport_address", "target": "pl_transport_address_address_to_read", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L178", "weight": 1.0}, {"source": "pl_transport_address_delete_transport_address", "target": "pl_transport_address_get_address", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L188", "weight": 1.0}], "raw_calls": [{"caller_nid": "pl_transport_address_address_to_read", "callee": "model_validate", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L25"}, {"caller_nid": "pl_transport_address_get_address", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L32"}, {"caller_nid": "pl_transport_address_get_address", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L32"}, {"caller_nid": "pl_transport_address_get_address", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L32"}, {"caller_nid": "pl_transport_address_get_address", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L41"}, {"caller_nid": "pl_transport_address_build_address_query", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L48"}, {"caller_nid": "pl_transport_address_build_address_query", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L48"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L64"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L64"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L68"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L71"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L71"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L72"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L73"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L74"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L74"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L75"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L75"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L76"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L76"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L77"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L77"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L81"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L82"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "case", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L82"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L82"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L83"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L86"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L88"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L88"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L88"}, {"caller_nid": "pl_transport_address_list_transport_addresses", "callee": "TransportAddressListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L89"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L102"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L102"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L103"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L106"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L106"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L107"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L108"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L109"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L109"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L110"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "lower", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L110"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L114"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L115"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "case", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L115"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "is_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L115"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L116"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L118"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L118"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "TransportAddressListResponse", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L119"}, {"caller_nid": "pl_transport_address_list_all_transport_addresses", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L119"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L128"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L128"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "PlTransportAddress", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L129"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "generate_uuid", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L130"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L132"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L133"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "add", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L143"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L144"}, {"caller_nid": "pl_transport_address_create_transport_address", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L145"}, {"caller_nid": "pl_transport_address_get_transport_address", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L155"}, {"caller_nid": "pl_transport_address_get_transport_address", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L155"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L167"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L167"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "items", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L170"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "model_dump", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L170"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "isinstance", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L171"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L172"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "setattr", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L173"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L176"}, {"caller_nid": "pl_transport_address_update_transport_address", "callee": "refresh", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L177"}, {"caller_nid": "pl_transport_address_delete_transport_address", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L187"}, {"caller_nid": "pl_transport_address_delete_transport_address", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L187"}, {"caller_nid": "pl_transport_address_delete_transport_address", "callee": "assert_row_deletable_by_creator", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L189"}, {"caller_nid": "pl_transport_address_delete_transport_address", "callee": "user_info_from_context", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L189"}, {"caller_nid": "pl_transport_address_delete_transport_address", "callee": "commit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/api/pl/transport_address.py", "source_location": "L192"}]} \ No newline at end of file diff --git a/backend/graphify-out/cache/ast/fb3fac6667d415b032880fde5ef3413dfac150686b738d6b644ea07d0fc96412.json b/backend/graphify-out/cache/ast/fb3fac6667d415b032880fde5ef3413dfac150686b738d6b644ea07d0fc96412.json new file mode 100644 index 000000000..edc6b6120 --- /dev/null +++ b/backend/graphify-out/cache/ast/fb3fac6667d415b032880fde5ef3413dfac150686b738d6b644ea07d0fc96412.json @@ -0,0 +1 @@ +{"nodes": [{"id": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "label": "invoice.py", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L1"}, {"id": "bx_invoice_invoiceservice", "label": "InvoiceService", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L30"}, {"id": "bx_invoice_tenant_no", "label": "_tenant_no()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L32"}, {"id": "bx_invoice_is_wallet_admin", "label": "is_wallet_admin()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L36"}, {"id": "bx_invoice_can_query_others_wallet", "label": "can_query_others_wallet()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L43"}, {"id": "bx_invoice_require_wallet_admin", "label": "_require_wallet_admin()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L51"}, {"id": "bx_invoice_lookup_user_name", "label": "_lookup_user_name()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L56"}, {"id": "bx_invoice_resolve_owner", "label": "_resolve_owner()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L67"}, {"id": "bx_invoice_resolve_owner_for_query", "label": "_resolve_owner_for_query()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L79"}, {"id": "bx_invoice_count_invoices", "label": "_count_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L93"}, {"id": "bx_invoice_get_mine_summary", "label": "get_mine_summary()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L105"}, {"id": "bx_invoice_list_wallets", "label": "list_wallets()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L144"}, {"id": "bx_invoice_list_invoices", "label": "list_invoices()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L176"}, {"id": "bx_invoice_list_ledgers", "label": "list_ledgers()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L199"}, {"id": "bx_invoice_create", "label": "create()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L211"}, {"id": "bx_invoice_delete", "label": "delete()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L287"}, {"id": "bx_invoice_summary_to_dict", "label": "_summary_to_dict()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L335"}, {"id": "bx_invoice_out_rows_with_attachments", "label": "out_rows_with_attachments()", "file_type": "code", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L350"}, {"id": "bx_invoice_rationale_44", "label": "\u53d1\u7968\u5939\u7ba1\u7406 \u6216 \u62a5\u9500\u6539\u9009\u7533\u8bf7\u4eba \u6743\u9650\u53ef\u67e5\u8be2\u4ed6\u4eba\u53d1\u7968/\u4f59\u989d\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L44"}, {"id": "bx_invoice_rationale_220", "label": "\u4e00\u6b21\u4e0a\u4f20\u521b\u5efa\u4e00\u6761\u53d1\u7968\u6863\u6848\uff1a\u91d1\u989d\u4e3a\u603b\u989d\uff0cfiles \u5168\u90e8\u6302\u5230\u540c\u4e00 biz_id\uff0c\u53ea\u5199\u4e00\u6761 credit_upload\u3002", "file_type": "rationale", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L220"}], "edges": [{"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "mimetypes", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L3", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "decimal", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L4", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "typing", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L5", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "fastapi", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L7", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "sqlalchemy", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L8", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "sqlalchemy_orm", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L9", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_core_bx_auth", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L11", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_core_menu_guard", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L12", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_core_tenant_context", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L13", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_models_bx_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L14", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_models_models", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L15", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_attachment", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L16", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_base", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L17", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_invoice_ledger", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L18", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_bx_storage", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L23", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "app_services_web_auth_roles", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L24", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_invoiceservice", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L30", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_tenant_no", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L32", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_is_wallet_admin", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L36", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_can_query_others_wallet", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L43", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_require_wallet_admin", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L51", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_lookup_user_name", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L56", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_resolve_owner", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L67", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_resolve_owner_for_query", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L79", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_count_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L93", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_get_mine_summary", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L105", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_list_wallets", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L144", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_list_invoices", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L176", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_list_ledgers", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L199", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_create", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L211", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_delete", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L287", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_summary_to_dict", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L335", "weight": 1.0}, {"source": "users_zlwu_work_00code_shanxia2_0_backend_app_services_bx_invoice_py", "target": "bx_invoice_out_rows_with_attachments", "relation": "contains", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L350", "weight": 1.0}, {"source": "bx_invoice_can_query_others_wallet", "target": "bx_invoice_is_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L45", "weight": 1.0}, {"source": "bx_invoice_require_wallet_admin", "target": "bx_invoice_is_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L52", "weight": 1.0}, {"source": "bx_invoice_resolve_owner", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L75", "weight": 1.0}, {"source": "bx_invoice_resolve_owner", "target": "bx_invoice_lookup_user_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L76", "weight": 1.0}, {"source": "bx_invoice_resolve_owner_for_query", "target": "bx_invoice_can_query_others_wallet", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L85", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L111", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_resolve_owner_for_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L112", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_lookup_user_name", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L116", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_summary_to_dict", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L128", "weight": 1.0}, {"source": "bx_invoice_get_mine_summary", "target": "bx_invoice_count_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L137", "weight": 1.0}, {"source": "bx_invoice_list_wallets", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L152", "weight": 1.0}, {"source": "bx_invoice_list_wallets", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L153", "weight": 1.0}, {"source": "bx_invoice_list_invoices", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L184", "weight": 1.0}, {"source": "bx_invoice_list_invoices", "target": "bx_invoice_resolve_owner_for_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L185", "weight": 1.0}, {"source": "bx_invoice_list_ledgers", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L205", "weight": 1.0}, {"source": "bx_invoice_list_ledgers", "target": "bx_invoice_resolve_owner_for_query", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L206", "weight": 1.0}, {"source": "bx_invoice_create", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L221", "weight": 1.0}, {"source": "bx_invoice_create", "target": "bx_invoice_resolve_owner", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L222", "weight": 1.0}, {"source": "bx_invoice_create", "target": "bx_invoice_count_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L274", "weight": 1.0}, {"source": "bx_invoice_delete", "target": "bx_invoice_require_wallet_admin", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L288", "weight": 1.0}, {"source": "bx_invoice_delete", "target": "bx_invoice_tenant_no", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L289", "weight": 1.0}, {"source": "bx_invoice_delete", "target": "bx_invoice_count_invoices", "relation": "calls", "context": "call", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L322", "weight": 1.0}, {"source": "bx_invoice_rationale_44", "target": "bx_invoice_invoiceservice_can_query_others_wallet", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L44", "weight": 1.0}, {"source": "bx_invoice_rationale_220", "target": "bx_invoice_invoiceservice_create", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L220", "weight": 1.0}], "raw_calls": [{"caller_nid": "bx_invoice_tenant_no", "callee": "get_tenant_no", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L33"}, {"caller_nid": "bx_invoice_tenant_no", "callee": "to_tenant_user_dict", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L33"}, {"caller_nid": "bx_invoice_is_wallet_admin", "callee": "iter_user_menu_perm_codes", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L39"}, {"caller_nid": "bx_invoice_can_query_others_wallet", "callee": "iter_user_menu_perm_codes", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L47"}, {"caller_nid": "bx_invoice_can_query_others_wallet", "callee": "set", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L48"}, {"caller_nid": "bx_invoice_require_wallet_admin", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L53"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L58"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L58"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L58"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L63"}, {"caller_nid": "bx_invoice_lookup_user_name", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L64"}, {"caller_nid": "bx_invoice_resolve_owner", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L72"}, {"caller_nid": "bx_invoice_resolve_owner_for_query", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L84"}, {"caller_nid": "bx_invoice_resolve_owner_for_query", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L86"}, {"caller_nid": "bx_invoice_count_invoices", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L95"}, {"caller_nid": "bx_invoice_count_invoices", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L95"}, {"caller_nid": "bx_invoice_count_invoices", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L95"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "first", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L119"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L119"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L119"}, {"caller_nid": "bx_invoice_get_mine_summary", "callee": "calc_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L129"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L154"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L154"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L158"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L160"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "or_", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L161"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L162"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "contains", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L163"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "count", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L166"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L168"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "limit", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L168"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "offset", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L168"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L168"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L168"}, {"caller_nid": "bx_invoice_list_wallets", "callee": "desc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L168"}, {"caller_nid": "bx_invoice_list_invoices", "callee": "get_paged", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L187"}, {"caller_nid": "bx_invoice_list_ledgers", "callee": "list_entries", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L207"}, {"caller_nid": "bx_invoice_list_ledgers", "callee": "list", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L208"}, {"caller_nid": "bx_invoice_list_ledgers", "callee": "reversed", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L208"}, {"caller_nid": "bx_invoice_create", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L223"}, {"caller_nid": "bx_invoice_create", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L223"}, {"caller_nid": "bx_invoice_create", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L225"}, {"caller_nid": "bx_invoice_create", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L227"}, {"caller_nid": "bx_invoice_create", "callee": "strip", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L238"}, {"caller_nid": "bx_invoice_create", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L247"}, {"caller_nid": "bx_invoice_create", "callee": "guess_type", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L249"}, {"caller_nid": "bx_invoice_create", "callee": "upload_bx_file", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L250"}, {"caller_nid": "bx_invoice_create", "callee": "len", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L259"}, {"caller_nid": "bx_invoice_create", "callee": "add_entry", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L265"}, {"caller_nid": "bx_invoice_create", "callee": "refresh_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L275"}, {"caller_nid": "bx_invoice_delete", "callee": "get_by_id", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L290"}, {"caller_nid": "bx_invoice_delete", "callee": "HTTPException", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L294"}, {"caller_nid": "bx_invoice_delete", "callee": "assert_can_delete_invoice", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L296"}, {"caller_nid": "bx_invoice_delete", "callee": "add_entry", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L299"}, {"caller_nid": "bx_invoice_delete", "callee": "Decimal", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L304"}, {"caller_nid": "bx_invoice_delete", "callee": "str", "is_member_call": false, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L304"}, {"caller_nid": "bx_invoice_delete", "callee": "update", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L311"}, {"caller_nid": "bx_invoice_delete", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L311"}, {"caller_nid": "bx_invoice_delete", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L311"}, {"caller_nid": "bx_invoice_delete", "callee": "flush", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L320"}, {"caller_nid": "bx_invoice_delete", "callee": "refresh_summary", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L323"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "all", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L357"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "order_by", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L357"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "filter", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L357"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "query", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L357"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "in_", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L360"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "asc", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L364"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L369"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "setdefault", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L369"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "get", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L373"}, {"caller_nid": "bx_invoice_out_rows_with_attachments", "callee": "append", "is_member_call": true, "source_file": "/Users/zlwu/work/00code/shanxia2.0/backend/app/services/bx/invoice.py", "source_location": "L375"}]} \ No newline at end of file