| 1 |
- {"nodes": [{"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_md", "label": "ref-lessons-learned.md", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L1"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u53c2\u8003_\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "label": "\u53c2\u8003\uff1a\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L1"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "label": "\u524d\u7aef\u7ecf\u9a8c", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L7"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_1_\u9644\u4ef6\u4e0a\u4f20\u5fc5\u987b\u9075\u5faa\u95e8\u6237\u6807\u51c6", "label": "1. \u9644\u4ef6\u4e0a\u4f20\u5fc5\u987b\u9075\u5faa\u95e8\u6237\u6807\u51c6", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L9"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_2_\u5f39\u7a97\u7edf\u4e00\u7528_el_dialog_\u7981\u6b62_el_drawer", "label": "2. \u5f39\u7a97\u7edf\u4e00\u7528 el-dialog\uff0c\u7981\u6b62 el-drawer", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L14"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_3_\u8be6\u60c5\u67e5\u770b\u5f39\u7a97\u6309_openspec_\u6807\u51c6\u6837\u5f0f", "label": "3. \u8be6\u60c5\u67e5\u770b\u5f39\u7a97\u6309 OpenSpec \u6807\u51c6\u6837\u5f0f", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L20"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_4_\u8868\u5355\u5b57\u6bb5\u6ce8\u91ca\u653e\u5728_label_\u540e\u9762", "label": "4. \u8868\u5355\u5b57\u6bb5\u6ce8\u91ca\u653e\u5728 label \u540e\u9762", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L24"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_5_element_plus_\u7ec4\u4ef6\u4e0d\u8981\u624b\u52a8_import", "label": "5. Element Plus \u7ec4\u4ef6\u4e0d\u8981\u624b\u52a8 import", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L29"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_6_\u89c6\u56fe\u5207\u6362\u4fdd\u7559\u539f_crm_\u7ec4\u4ef6", "label": "6. \u89c6\u56fe\u5207\u6362\u4fdd\u7559\u539f CRM \u7ec4\u4ef6", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L32"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_13_api_\u54cd\u5e94\u89e3\u5305\u7528\u517c\u5bb9\u5199\u6cd5", "label": "13. API \u54cd\u5e94\u89e3\u5305\u7528\u517c\u5bb9\u5199\u6cd5", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L35"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_14_\u5b57\u5178\u7c7b\u578b\u540d\u5fc5\u987b\u5339\u914d_api_\u5b9e\u9645\u8fd4\u56de\u503c", "label": "14. \u5b57\u5178\u7c7b\u578b\u540d\u5fc5\u987b\u5339\u914d API \u5b9e\u9645\u8fd4\u56de\u503c", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L45"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_15_\u8de8\u6a21\u5757\u7ec4\u4ef6\u76f4\u63a5\u5f15\u7528_\u4e0d\u8981\u91cd\u65b0\u5b9e\u73b0", "label": "15. \u8de8\u6a21\u5757\u7ec4\u4ef6\u76f4\u63a5\u5f15\u7528\uff0c\u4e0d\u8981\u91cd\u65b0\u5b9e\u73b0", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L52"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_16_\u4e0b\u62c9\u9009\u62e9\u5668\u52a0\u8f7d\u5168\u91cf\u7528\u6237\u65f6\u6ce8\u610f_pagesize_\u4e0a\u9650", "label": "16. \u4e0b\u62c9\u9009\u62e9\u5668\u52a0\u8f7d\u5168\u91cf\u7528\u6237\u65f6\u6ce8\u610f pageSize \u4e0a\u9650", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L57"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "label": "\u540e\u7aef\u7ecf\u9a8c", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L62"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_7_\u7f16\u53f7\u81ea\u52a8\u751f\u6210", "label": "7. \u7f16\u53f7\u81ea\u52a8\u751f\u6210", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L64"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_8_\u552f\u4e00\u6027\u6821\u9a8c\u6392\u9664\u8f6f\u5220\u9664", "label": "8. \u552f\u4e00\u6027\u6821\u9a8c\u6392\u9664\u8f6f\u5220\u9664", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L67"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_9_\u5173\u8054\u7edf\u8ba1\u5b57\u6bb5\u540c\u6b65\u66f4\u65b0", "label": "9. \u5173\u8054\u7edf\u8ba1\u5b57\u6bb5\u540c\u6b65\u66f4\u65b0", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L70"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_10_\u5148\u7406\u89e3_java_\u518d\u5199_python", "label": "10. \u5148\u7406\u89e3 Java \u518d\u5199 Python", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L73"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_17_\u72b6\u6001\u53d8\u66f4\u65f6\u5fc5\u987b\u4fdd\u7559\u5173\u8054\u5c55\u793a\u5b57\u6bb5", "label": "17. \u72b6\u6001\u53d8\u66f4\u65f6\u5fc5\u987b\u4fdd\u7559\u5173\u8054\u5c55\u793a\u5b57\u6bb5", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L79"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_18_\u5386\u53f2\u6570\u636e\u4fee\u590d\u5fc5\u987b\u914d\u5957_sql", "label": "18. \u5386\u53f2\u6570\u636e\u4fee\u590d\u5fc5\u987b\u914d\u5957 SQL", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L85"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u6570\u636e\u5e93\u7ecf\u9a8c", "label": "\u6570\u636e\u5e93\u7ecf\u9a8c", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L90"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_11_ddl_\u4e0e_orm_\u5b57\u6bb5\u987a\u5e8f\u4e00\u81f4", "label": "11. DDL \u4e0e ORM \u5b57\u6bb5\u987a\u5e8f\u4e00\u81f4", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L92"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_12_sql_\u589e\u91cf\u811a\u672c\u5fc5\u987b\u4fdd\u5b58", "label": "12. SQL \u589e\u91cf\u811a\u672c\u5fc5\u987b\u4fdd\u5b58", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L95"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "label": "\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c\uff082026-05-31 \u65b0\u589e\uff09", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L100"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_19_\u8f6c\u5316\u903b\u8f91\u5fc5\u987b\u5728\u4e8b\u52a1\u4e2d\u6267\u884c", "label": "19. \u8f6c\u5316\u903b\u8f91\u5fc5\u987b\u5728\u4e8b\u52a1\u4e2d\u6267\u884c", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L102"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_20_\u8ddf\u8fdb\u8bb0\u5f55\u7ea7\u8054\u66f4\u65b0\u7ebf\u7d22_4_\u4e2a\u5b57\u6bb5", "label": "20. \u8ddf\u8fdb\u8bb0\u5f55\u7ea7\u8054\u66f4\u65b0\u7ebf\u7d22 4 \u4e2a\u5b57\u6bb5", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L108"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_21_\u524d\u7aef\u9002\u914d\u5148\u62f7\u8d1d\u518d\u9010\u884c\u4fee\u6539_\u4e0d\u8981\u76f4\u63a5\u65b0\u5199", "label": "21. \u524d\u7aef\u9002\u914d\u5148\u62f7\u8d1d\u518d\u9010\u884c\u4fee\u6539\uff0c\u4e0d\u8981\u76f4\u63a5\u65b0\u5199", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L113"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_22_el_drawer_el_dialog_\u5e03\u5c40\u9700\u8c03\u6574", "label": "22. el-drawer\u2192el-dialog \u5e03\u5c40\u9700\u8c03\u6574", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L118"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_23_\u591a\u89c6\u56fe_tab_\u5217\u8868\u9875\u5171\u7528\u540c\u4e00\u4e2a\u67e5\u8be2\u51fd\u6570", "label": "23. \u591a\u89c6\u56fe Tab \u5217\u8868\u9875\u5171\u7528\u540c\u4e00\u4e2a\u67e5\u8be2\u51fd\u6570", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L123"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_24_\u9644\u4ef6\u4e0a\u4f20\u7528_attachmentuploadfield_\u7ec4\u4ef6", "label": "24. \u9644\u4ef6\u4e0a\u4f20\u7528 AttachmentUploadField \u7ec4\u4ef6", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L128"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_25_\u64cd\u4f5c\u65e5\u5fd7_tab_\u6682\u4e0d\u8fc1\u79fb", "label": "25. \u64cd\u4f5c\u65e5\u5fd7 Tab \u6682\u4e0d\u8fc1\u79fb", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L133"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_26_\u7ebf\u7d22\u6a21\u5757_\u5feb\u901f\u641c\u7d22\u52ff\u7528\u591a\u5b57\u6bb5_and", "label": "26. \u7ebf\u7d22\u6a21\u5757 \u2014 \u5feb\u901f\u641c\u7d22\u52ff\u7528\u591a\u5b57\u6bb5 AND", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L138"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_27_\u7ebf\u7d22\u6a21\u5757_\u6279\u91cf\u64cd\u4f5c\u8981\u5904\u7406_failitems", "label": "27. \u7ebf\u7d22\u6a21\u5757 \u2014 \u6279\u91cf\u64cd\u4f5c\u8981\u5904\u7406 failItems", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L142"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_28_\u7ebf\u7d22\u6309\u94ae\u6743\u9650\u7528_menucodes_\u800c\u975e_v_auth", "label": "28. \u7ebf\u7d22\u6309\u94ae\u6743\u9650\u7528 menuCodes \u800c\u975e v-auth", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L146"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_29_excel_\u5bfc\u51fa\u5fc5\u987b\u96c6\u4e2d\u505a\u5b57\u5178_code_label_\u5bf9\u9f50_java_exceldictconvert", "label": "29. Excel \u5bfc\u51fa\u5fc5\u987b\u96c6\u4e2d\u505a\u5b57\u5178 code\u2192label\uff08\u5bf9\u9f50 Java ExcelDictConvert\uff09", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L150"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_30_\u5bfc\u51fa\u4f9d\u8d56_openpyxl_venv_\u987b\u663e\u5f0f\u5b89\u88c5", "label": "30. \u5bfc\u51fa\u4f9d\u8d56 openpyxl\uff0cvenv \u987b\u663e\u5f0f\u5b89\u88c5", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L158"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_31_\u524d\u7aef_blob_\u5bfc\u51fa\u987b\u9002\u914d_http_\u62e6\u622a\u5668", "label": "31. \u524d\u7aef Blob \u5bfc\u51fa\u987b\u9002\u914d http \u62e6\u622a\u5668", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L163"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_32_crm_\u67e5\u770b\u8be6\u60c5\u7edf\u4e00_systemviewdialog_\u5546\u673a_\u7ebf\u7d22\u5df2\u6539", "label": "32. CRM \u67e5\u770b\u8be6\u60c5\u7edf\u4e00 SystemViewDialog\uff08\u5546\u673a/\u7ebf\u7d22\u5df2\u6539\uff09", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L170"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_33_\u8d1f\u8d23\u4eba_\u7528\u6237\u4e0b\u62c9\u5b57\u6bb5\u540d\u5bf9\u9f50_fetchuseroptions", "label": "33. \u8d1f\u8d23\u4eba/\u7528\u6237\u4e0b\u62c9\u5b57\u6bb5\u540d\u5bf9\u9f50 fetchUserOptions", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L175"}, {"id": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_34_\u5546\u673a\u6a21\u5757\u8865\u5145", "label": "34. \u5546\u673a\u6a21\u5757\u8865\u5145", "file_type": "document", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L180"}], "edges": [{"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_md", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u53c2\u8003_\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L1", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u53c2\u8003_\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L7", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_1_\u9644\u4ef6\u4e0a\u4f20\u5fc5\u987b\u9075\u5faa\u95e8\u6237\u6807\u51c6", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L9", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_2_\u5f39\u7a97\u7edf\u4e00\u7528_el_dialog_\u7981\u6b62_el_drawer", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L14", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_3_\u8be6\u60c5\u67e5\u770b\u5f39\u7a97\u6309_openspec_\u6807\u51c6\u6837\u5f0f", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L20", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_4_\u8868\u5355\u5b57\u6bb5\u6ce8\u91ca\u653e\u5728_label_\u540e\u9762", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L24", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_5_element_plus_\u7ec4\u4ef6\u4e0d\u8981\u624b\u52a8_import", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L29", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_6_\u89c6\u56fe\u5207\u6362\u4fdd\u7559\u539f_crm_\u7ec4\u4ef6", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L32", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_13_api_\u54cd\u5e94\u89e3\u5305\u7528\u517c\u5bb9\u5199\u6cd5", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L35", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_14_\u5b57\u5178\u7c7b\u578b\u540d\u5fc5\u987b\u5339\u914d_api_\u5b9e\u9645\u8fd4\u56de\u503c", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L45", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_15_\u8de8\u6a21\u5757\u7ec4\u4ef6\u76f4\u63a5\u5f15\u7528_\u4e0d\u8981\u91cd\u65b0\u5b9e\u73b0", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L52", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u524d\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_16_\u4e0b\u62c9\u9009\u62e9\u5668\u52a0\u8f7d\u5168\u91cf\u7528\u6237\u65f6\u6ce8\u610f_pagesize_\u4e0a\u9650", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L57", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u53c2\u8003_\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L62", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_7_\u7f16\u53f7\u81ea\u52a8\u751f\u6210", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L64", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_8_\u552f\u4e00\u6027\u6821\u9a8c\u6392\u9664\u8f6f\u5220\u9664", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L67", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_9_\u5173\u8054\u7edf\u8ba1\u5b57\u6bb5\u540c\u6b65\u66f4\u65b0", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L70", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_10_\u5148\u7406\u89e3_java_\u518d\u5199_python", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L73", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_17_\u72b6\u6001\u53d8\u66f4\u65f6\u5fc5\u987b\u4fdd\u7559\u5173\u8054\u5c55\u793a\u5b57\u6bb5", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L79", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u540e\u7aef\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_18_\u5386\u53f2\u6570\u636e\u4fee\u590d\u5fc5\u987b\u914d\u5957_sql", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L85", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u53c2\u8003_\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u6570\u636e\u5e93\u7ecf\u9a8c", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L90", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u6570\u636e\u5e93\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_11_ddl_\u4e0e_orm_\u5b57\u6bb5\u987a\u5e8f\u4e00\u81f4", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L92", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u6570\u636e\u5e93\u7ecf\u9a8c", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_12_sql_\u589e\u91cf\u811a\u672c\u5fc5\u987b\u4fdd\u5b58", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L95", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u53c2\u8003_\u79fb\u690d\u7ecf\u9a8c\u4e0e\u8e29\u5751\u8bb0\u5f55", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L100", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_19_\u8f6c\u5316\u903b\u8f91\u5fc5\u987b\u5728\u4e8b\u52a1\u4e2d\u6267\u884c", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L102", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_20_\u8ddf\u8fdb\u8bb0\u5f55\u7ea7\u8054\u66f4\u65b0\u7ebf\u7d22_4_\u4e2a\u5b57\u6bb5", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L108", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_21_\u524d\u7aef\u9002\u914d\u5148\u62f7\u8d1d\u518d\u9010\u884c\u4fee\u6539_\u4e0d\u8981\u76f4\u63a5\u65b0\u5199", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L113", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_22_el_drawer_el_dialog_\u5e03\u5c40\u9700\u8c03\u6574", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L118", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_23_\u591a\u89c6\u56fe_tab_\u5217\u8868\u9875\u5171\u7528\u540c\u4e00\u4e2a\u67e5\u8be2\u51fd\u6570", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L123", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_24_\u9644\u4ef6\u4e0a\u4f20\u7528_attachmentuploadfield_\u7ec4\u4ef6", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L128", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_25_\u64cd\u4f5c\u65e5\u5fd7_tab_\u6682\u4e0d\u8fc1\u79fb", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L133", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_26_\u7ebf\u7d22\u6a21\u5757_\u5feb\u901f\u641c\u7d22\u52ff\u7528\u591a\u5b57\u6bb5_and", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L138", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_27_\u7ebf\u7d22\u6a21\u5757_\u6279\u91cf\u64cd\u4f5c\u8981\u5904\u7406_failitems", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L142", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_28_\u7ebf\u7d22\u6309\u94ae\u6743\u9650\u7528_menucodes_\u800c\u975e_v_auth", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L146", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_29_excel_\u5bfc\u51fa\u5fc5\u987b\u96c6\u4e2d\u505a\u5b57\u5178_code_label_\u5bf9\u9f50_java_exceldictconvert", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L150", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_30_\u5bfc\u51fa\u4f9d\u8d56_openpyxl_venv_\u987b\u663e\u5f0f\u5b89\u88c5", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L158", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_31_\u524d\u7aef_blob_\u5bfc\u51fa\u987b\u9002\u914d_http_\u62e6\u622a\u5668", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L163", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_32_crm_\u67e5\u770b\u8be6\u60c5\u7edf\u4e00_systemviewdialog_\u5546\u673a_\u7ebf\u7d22\u5df2\u6539", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L170", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_33_\u8d1f\u8d23\u4eba_\u7528\u6237\u4e0b\u62c9\u5b57\u6bb5\u540d\u5bf9\u9f50_fetchuseroptions", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L175", "weight": 1.0}, {"source": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_\u7ebf\u7d22\u7ba1\u7406\u6a21\u5757\u7ecf\u9a8c_2026_05_31_\u65b0\u589e", "target": "users_wuzilong_work_00code_shanxia2_0_docs_crm_migration_ref_lessons_learned_34_\u5546\u673a\u6a21\u5757\u8865\u5145", "relation": "contains", "confidence": "EXTRACTED", "source_file": "docs/crm-migration/ref-lessons-learned.md", "source_location": "L180", "weight": 1.0}], "input_tokens": 0, "output_tokens": 0}
|