1 line
672 KiB
JSON
1 line
672 KiB
JSON
{"knowledge_relations":[{"id":61,"source_id":"e55d96fb-1cdc-444e-956e-9fe82a885fff","target_id":"a6e66269-cdbd-441a-82b5-a14aa3bb3bb2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e55d96fb-1cdc-444e-956e-9fe82a885fff -\u003e a6e66269-cdbd-441a-82b5-a14aa3bb3bb2","gmt_create":"2026-01-04T17:37:23.3404598+08:00","gmt_modified":"2026-01-04T17:37:23.3404598+08:00"},{"id":62,"source_id":"e55d96fb-1cdc-444e-956e-9fe82a885fff","target_id":"49b4ae80-281a-447a-9199-b08e31be92ae","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: e55d96fb-1cdc-444e-956e-9fe82a885fff -\u003e 49b4ae80-281a-447a-9199-b08e31be92ae","gmt_create":"2026-01-04T17:37:23.3412341+08:00","gmt_modified":"2026-01-04T17:37:23.3412341+08:00"},{"id":63,"source_id":"f5daf4d5-df45-4dcf-b442-91eabc17b3a2","target_id":"3290128f-7ce1-4374-b5d9-3435fd15fbff","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f5daf4d5-df45-4dcf-b442-91eabc17b3a2 -\u003e 3290128f-7ce1-4374-b5d9-3435fd15fbff","gmt_create":"2026-01-04T17:37:23.3418586+08:00","gmt_modified":"2026-01-04T17:37:23.3418586+08:00"},{"id":64,"source_id":"7a0c4eaf-3a93-4d8f-8a82-4087fb69a400","target_id":"4e02285b-87c7-42f6-ad5e-0910c01e4fc5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 7a0c4eaf-3a93-4d8f-8a82-4087fb69a400 -\u003e 4e02285b-87c7-42f6-ad5e-0910c01e4fc5","gmt_create":"2026-01-04T17:37:23.3418586+08:00","gmt_modified":"2026-01-04T17:37:23.3418586+08:00"},{"id":65,"source_id":"508b03ce-941c-418d-b949-5dbb3c6fb6eb","target_id":"44b120f3-5bfa-469f-9710-51701ff521da","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 508b03ce-941c-418d-b949-5dbb3c6fb6eb -\u003e 44b120f3-5bfa-469f-9710-51701ff521da","gmt_create":"2026-01-04T17:37:23.342455+08:00","gmt_modified":"2026-01-04T17:37:23.342455+08:00"},{"id":66,"source_id":"44b120f3-5bfa-469f-9710-51701ff521da","target_id":"bc528def-9b23-4e4d-81dc-d309bc7aff9f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 44b120f3-5bfa-469f-9710-51701ff521da -\u003e bc528def-9b23-4e4d-81dc-d309bc7aff9f","gmt_create":"2026-01-04T17:37:23.342455+08:00","gmt_modified":"2026-01-04T17:37:23.342455+08:00"},{"id":67,"source_id":"44b120f3-5bfa-469f-9710-51701ff521da","target_id":"4cbe9628-e104-4b39-b871-81f1305cb751","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 44b120f3-5bfa-469f-9710-51701ff521da -\u003e 4cbe9628-e104-4b39-b871-81f1305cb751","gmt_create":"2026-01-04T17:37:23.3430635+08:00","gmt_modified":"2026-01-04T17:37:23.3430635+08:00"},{"id":68,"source_id":"44b120f3-5bfa-469f-9710-51701ff521da","target_id":"03b6cb3a-1e67-44b5-90d0-80ac63b4b73a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 44b120f3-5bfa-469f-9710-51701ff521da -\u003e 03b6cb3a-1e67-44b5-90d0-80ac63b4b73a","gmt_create":"2026-01-04T17:37:23.3430635+08:00","gmt_modified":"2026-01-04T17:37:23.3430635+08:00"},{"id":69,"source_id":"49b4ae80-281a-447a-9199-b08e31be92ae","target_id":"1b20ed67-b65a-4c2f-8ce5-8110ae05492d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 49b4ae80-281a-447a-9199-b08e31be92ae -\u003e 1b20ed67-b65a-4c2f-8ce5-8110ae05492d","gmt_create":"2026-01-04T17:37:23.3436758+08:00","gmt_modified":"2026-01-04T17:37:23.3436758+08:00"},{"id":70,"source_id":"9d460989-9038-4886-b930-75fde703b85a","target_id":"194b2363-a70e-488e-bd91-f3ec216738f6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d460989-9038-4886-b930-75fde703b85a -\u003e 194b2363-a70e-488e-bd91-f3ec216738f6","gmt_create":"2026-01-04T17:37:23.3442804+08:00","gmt_modified":"2026-01-04T17:37:23.3442804+08:00"},{"id":71,"source_id":"f5daf4d5-df45-4dcf-b442-91eabc17b3a2","target_id":"5512dcf7-1cba-4a41-b479-8e1ad308a133","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f5daf4d5-df45-4dcf-b442-91eabc17b3a2 -\u003e 5512dcf7-1cba-4a41-b479-8e1ad308a133","gmt_create":"2026-01-04T17:37:23.3442804+08:00","gmt_modified":"2026-01-04T17:37:23.3442804+08:00"},{"id":72,"source_id":"efebf330-1aec-4357-8dda-3aa55f72e750","target_id":"2968124d-2baf-4f33-94ed-36050431a0b1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: efebf330-1aec-4357-8dda-3aa55f72e750 -\u003e 2968124d-2baf-4f33-94ed-36050431a0b1","gmt_create":"2026-01-04T17:37:23.3448894+08:00","gmt_modified":"2026-01-04T17:37:23.3448894+08:00"},{"id":73,"source_id":"5ffeacb4-cd43-436e-9e69-02e8b057b817","target_id":"830d8319-572c-4fff-ae66-26b437e2ffd1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5ffeacb4-cd43-436e-9e69-02e8b057b817 -\u003e 830d8319-572c-4fff-ae66-26b437e2ffd1","gmt_create":"2026-01-04T17:37:23.3448894+08:00","gmt_modified":"2026-01-04T17:37:23.3448894+08:00"},{"id":74,"source_id":"b8832f40-0232-41b8-b6fb-833ff21b1e1e","target_id":"a6c92c92-db5f-4e00-8e76-b1e97c6359f1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b8832f40-0232-41b8-b6fb-833ff21b1e1e -\u003e a6c92c92-db5f-4e00-8e76-b1e97c6359f1","gmt_create":"2026-01-04T17:37:23.3454942+08:00","gmt_modified":"2026-01-04T17:37:23.3454942+08:00"},{"id":75,"source_id":"a6c92c92-db5f-4e00-8e76-b1e97c6359f1","target_id":"da35bd27-ab52-4591-9d00-4a2ec468ec82","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a6c92c92-db5f-4e00-8e76-b1e97c6359f1 -\u003e da35bd27-ab52-4591-9d00-4a2ec468ec82","gmt_create":"2026-01-04T17:37:23.3454942+08:00","gmt_modified":"2026-01-04T17:37:23.3454942+08:00"},{"id":77,"source_id":"a6c92c92-db5f-4e00-8e76-b1e97c6359f1","target_id":"54ceab12-6f7d-41fa-aff5-4b48a2cc6763","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a6c92c92-db5f-4e00-8e76-b1e97c6359f1 -\u003e 54ceab12-6f7d-41fa-aff5-4b48a2cc6763","gmt_create":"2026-01-04T17:37:23.3461+08:00","gmt_modified":"2026-01-04T17:37:23.3461+08:00"},{"id":78,"source_id":"34f4b73d-9fbd-48b6-ab21-2a7efb710d60","target_id":"0c24c1ea-5d3c-4182-be00-c608f90a6d50","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 34f4b73d-9fbd-48b6-ab21-2a7efb710d60 -\u003e 0c24c1ea-5d3c-4182-be00-c608f90a6d50","gmt_create":"2026-01-04T17:37:23.3467057+08:00","gmt_modified":"2026-01-04T17:37:23.3467057+08:00"},{"id":79,"source_id":"a7884509-aa98-4d4d-8ba9-735aa7f72b58","target_id":"34164858-a3f0-4468-a9e0-e728668bd665","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a7884509-aa98-4d4d-8ba9-735aa7f72b58 -\u003e 34164858-a3f0-4468-a9e0-e728668bd665","gmt_create":"2026-01-04T17:37:23.3467057+08:00","gmt_modified":"2026-01-04T17:37:23.3467057+08:00"},{"id":80,"source_id":"0a5c205d-20df-49a3-b446-06bddc0b1680","target_id":"bfdf2edf-9cdf-4b76-bfaa-1866d8c2f007","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 0a5c205d-20df-49a3-b446-06bddc0b1680 -\u003e bfdf2edf-9cdf-4b76-bfaa-1866d8c2f007","gmt_create":"2026-01-04T17:37:23.3473091+08:00","gmt_modified":"2026-01-04T17:37:23.3473091+08:00"},{"id":81,"source_id":"1c800fc3-a71b-4132-ae76-6e656ac7a3a4","target_id":"42536e87-e738-4305-ad94-dcf254053c6f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1c800fc3-a71b-4132-ae76-6e656ac7a3a4 -\u003e 42536e87-e738-4305-ad94-dcf254053c6f","gmt_create":"2026-01-04T17:37:23.3482141+08:00","gmt_modified":"2026-01-04T17:37:23.3482141+08:00"},{"id":82,"source_id":"2e081472-bd7b-425a-b185-cf33bd4b2254","target_id":"41147acf-42b0-46ae-8539-adea6b760731","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2e081472-bd7b-425a-b185-cf33bd4b2254 -\u003e 41147acf-42b0-46ae-8539-adea6b760731","gmt_create":"2026-01-04T17:37:23.3739236+08:00","gmt_modified":"2026-01-04T17:37:23.3739236+08:00"},{"id":83,"source_id":"5d223f35-36cd-4c64-bbe1-36addb8970d1","target_id":"21b7c707-1e62-43ad-a3b0-bafaa0f099c5","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5d223f35-36cd-4c64-bbe1-36addb8970d1 -\u003e 21b7c707-1e62-43ad-a3b0-bafaa0f099c5","gmt_create":"2026-01-04T17:37:23.3757289+08:00","gmt_modified":"2026-01-04T17:37:23.3757289+08:00"},{"id":84,"source_id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","target_id":"5f30dd4e-5a55-40e9-86b2-7b46ae90ea83","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d308dd10-246d-4a3d-9604-be2f9e0c65de -\u003e 5f30dd4e-5a55-40e9-86b2-7b46ae90ea83","gmt_create":"2026-01-04T17:37:23.3757289+08:00","gmt_modified":"2026-01-04T17:37:23.3757289+08:00"},{"id":85,"source_id":"49b4ae80-281a-447a-9199-b08e31be92ae","target_id":"af766158-e2ea-4a79-b166-d3eb06923126","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 49b4ae80-281a-447a-9199-b08e31be92ae -\u003e af766158-e2ea-4a79-b166-d3eb06923126","gmt_create":"2026-01-04T17:37:23.3757289+08:00","gmt_modified":"2026-01-04T17:37:23.3757289+08:00"},{"id":86,"source_id":"58e7e03d-a930-4dbf-aefb-0c384cdc6533","target_id":"03fcc407-58e1-4d77-9b9f-82ced34810c8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 58e7e03d-a930-4dbf-aefb-0c384cdc6533 -\u003e 03fcc407-58e1-4d77-9b9f-82ced34810c8","gmt_create":"2026-01-04T17:37:23.3757289+08:00","gmt_modified":"2026-01-04T17:37:23.3757289+08:00"},{"id":87,"source_id":"03fcc407-58e1-4d77-9b9f-82ced34810c8","target_id":"e3810dc4-620f-4ca2-bbd1-52d00dd43335","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03fcc407-58e1-4d77-9b9f-82ced34810c8 -\u003e e3810dc4-620f-4ca2-bbd1-52d00dd43335","gmt_create":"2026-01-04T17:37:23.3773589+08:00","gmt_modified":"2026-01-04T17:37:23.3773589+08:00"},{"id":88,"source_id":"03fcc407-58e1-4d77-9b9f-82ced34810c8","target_id":"90c0915c-61db-4f1a-b61c-712e0eaead6d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03fcc407-58e1-4d77-9b9f-82ced34810c8 -\u003e 90c0915c-61db-4f1a-b61c-712e0eaead6d","gmt_create":"2026-01-04T17:37:23.37787+08:00","gmt_modified":"2026-01-04T17:37:23.37787+08:00"},{"id":89,"source_id":"03fcc407-58e1-4d77-9b9f-82ced34810c8","target_id":"26792b5c-e78b-4c25-8c10-09afaebfc4b3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 03fcc407-58e1-4d77-9b9f-82ced34810c8 -\u003e 26792b5c-e78b-4c25-8c10-09afaebfc4b3","gmt_create":"2026-01-04T17:37:23.3781974+08:00","gmt_modified":"2026-01-04T17:37:23.3781974+08:00"},{"id":90,"source_id":"efebf330-1aec-4357-8dda-3aa55f72e750","target_id":"cd71c744-210f-4cbb-97da-3ff4edd7bad6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: efebf330-1aec-4357-8dda-3aa55f72e750 -\u003e cd71c744-210f-4cbb-97da-3ff4edd7bad6","gmt_create":"2026-01-04T17:37:23.3781974+08:00","gmt_modified":"2026-01-04T17:37:23.3781974+08:00"},{"id":91,"source_id":"9d460989-9038-4886-b930-75fde703b85a","target_id":"2b8988a1-e54d-421f-9f91-c36d0469d870","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d460989-9038-4886-b930-75fde703b85a -\u003e 2b8988a1-e54d-421f-9f91-c36d0469d870","gmt_create":"2026-01-04T17:37:23.3788788+08:00","gmt_modified":"2026-01-04T17:37:23.3788788+08:00"},{"id":92,"source_id":"5ffeacb4-cd43-436e-9e69-02e8b057b817","target_id":"28edbcc1-150b-4bc3-bf0b-dae3bd54b4bd","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5ffeacb4-cd43-436e-9e69-02e8b057b817 -\u003e 28edbcc1-150b-4bc3-bf0b-dae3bd54b4bd","gmt_create":"2026-01-04T17:37:23.3793872+08:00","gmt_modified":"2026-01-04T17:37:23.3793872+08:00"},{"id":93,"source_id":"0a5c205d-20df-49a3-b446-06bddc0b1680","target_id":"ed265c88-2627-4571-b65a-b21d7c73bf4f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 0a5c205d-20df-49a3-b446-06bddc0b1680 -\u003e ed265c88-2627-4571-b65a-b21d7c73bf4f","gmt_create":"2026-01-04T17:37:23.3800573+08:00","gmt_modified":"2026-01-04T17:37:23.3800573+08:00"},{"id":94,"source_id":"b8832f40-0232-41b8-b6fb-833ff21b1e1e","target_id":"a09fe212-b526-4bb5-9f17-32f70fef711c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b8832f40-0232-41b8-b6fb-833ff21b1e1e -\u003e a09fe212-b526-4bb5-9f17-32f70fef711c","gmt_create":"2026-01-04T17:37:23.3806415+08:00","gmt_modified":"2026-01-04T17:37:23.3806415+08:00"},{"id":95,"source_id":"a09fe212-b526-4bb5-9f17-32f70fef711c","target_id":"7dd50439-0077-4163-9185-954769e5fc4e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a09fe212-b526-4bb5-9f17-32f70fef711c -\u003e 7dd50439-0077-4163-9185-954769e5fc4e","gmt_create":"2026-01-04T17:37:23.3812507+08:00","gmt_modified":"2026-01-04T17:37:23.3812507+08:00"},{"id":96,"source_id":"a09fe212-b526-4bb5-9f17-32f70fef711c","target_id":"1588dacf-8dcb-4ed8-a818-c069c0e0b263","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a09fe212-b526-4bb5-9f17-32f70fef711c -\u003e 1588dacf-8dcb-4ed8-a818-c069c0e0b263","gmt_create":"2026-01-04T17:37:23.3812507+08:00","gmt_modified":"2026-01-04T17:37:23.3812507+08:00"},{"id":97,"source_id":"a09fe212-b526-4bb5-9f17-32f70fef711c","target_id":"c8ff3f38-ba57-42d8-bdfe-e2c660c1be67","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a09fe212-b526-4bb5-9f17-32f70fef711c -\u003e c8ff3f38-ba57-42d8-bdfe-e2c660c1be67","gmt_create":"2026-01-04T17:37:23.38198+08:00","gmt_modified":"2026-01-04T17:37:23.38198+08:00"},{"id":98,"source_id":"a7884509-aa98-4d4d-8ba9-735aa7f72b58","target_id":"54b78dd4-75c4-431c-bf8a-3642f04da851","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a7884509-aa98-4d4d-8ba9-735aa7f72b58 -\u003e 54b78dd4-75c4-431c-bf8a-3642f04da851","gmt_create":"2026-01-04T17:37:23.38198+08:00","gmt_modified":"2026-01-04T17:37:23.38198+08:00"},{"id":99,"source_id":"2e081472-bd7b-425a-b185-cf33bd4b2254","target_id":"39214adc-213f-438c-aef7-de90b0a644b6","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2e081472-bd7b-425a-b185-cf33bd4b2254 -\u003e 39214adc-213f-438c-aef7-de90b0a644b6","gmt_create":"2026-01-04T17:37:23.3825557+08:00","gmt_modified":"2026-01-04T17:37:23.3825557+08:00"},{"id":100,"source_id":"34f4b73d-9fbd-48b6-ab21-2a7efb710d60","target_id":"08b092eb-c308-467c-8280-2b5e2555f625","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 34f4b73d-9fbd-48b6-ab21-2a7efb710d60 -\u003e 08b092eb-c308-467c-8280-2b5e2555f625","gmt_create":"2026-01-04T17:37:23.3825557+08:00","gmt_modified":"2026-01-04T17:37:23.3825557+08:00"},{"id":101,"source_id":"08b092eb-c308-467c-8280-2b5e2555f625","target_id":"97c68b5c-2e5d-4bbb-a1b2-7273fff28d30","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 08b092eb-c308-467c-8280-2b5e2555f625 -\u003e 97c68b5c-2e5d-4bbb-a1b2-7273fff28d30","gmt_create":"2026-01-04T17:37:23.3831171+08:00","gmt_modified":"2026-01-04T17:37:23.3831171+08:00"},{"id":102,"source_id":"08b092eb-c308-467c-8280-2b5e2555f625","target_id":"0dfb3525-0a00-4ae0-96a5-4b78f0facf7a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 08b092eb-c308-467c-8280-2b5e2555f625 -\u003e 0dfb3525-0a00-4ae0-96a5-4b78f0facf7a","gmt_create":"2026-01-04T17:37:23.3836856+08:00","gmt_modified":"2026-01-04T17:37:23.3836856+08:00"},{"id":103,"source_id":"5d223f35-36cd-4c64-bbe1-36addb8970d1","target_id":"6a5613fc-0aed-4f09-9abc-d31faec1ec0f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5d223f35-36cd-4c64-bbe1-36addb8970d1 -\u003e 6a5613fc-0aed-4f09-9abc-d31faec1ec0f","gmt_create":"2026-01-04T17:37:23.3836856+08:00","gmt_modified":"2026-01-04T17:37:23.3836856+08:00"},{"id":104,"source_id":"1c800fc3-a71b-4132-ae76-6e656ac7a3a4","target_id":"28a6b715-04da-4a95-a1c9-4fe4f3d796d1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1c800fc3-a71b-4132-ae76-6e656ac7a3a4 -\u003e 28a6b715-04da-4a95-a1c9-4fe4f3d796d1","gmt_create":"2026-01-04T17:37:23.3842888+08:00","gmt_modified":"2026-01-04T17:37:23.3842888+08:00"},{"id":105,"source_id":"9d460989-9038-4886-b930-75fde703b85a","target_id":"cdc0f7f6-27bd-4b95-b7e0-641be3079f6a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d460989-9038-4886-b930-75fde703b85a -\u003e cdc0f7f6-27bd-4b95-b7e0-641be3079f6a","gmt_create":"2026-01-04T17:37:23.3849532+08:00","gmt_modified":"2026-01-04T17:37:23.3849532+08:00"},{"id":106,"source_id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","target_id":"b69bdfa1-26c5-46c6-8250-089b2f901453","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d308dd10-246d-4a3d-9604-be2f9e0c65de -\u003e b69bdfa1-26c5-46c6-8250-089b2f901453","gmt_create":"2026-01-04T17:37:23.3849532+08:00","gmt_modified":"2026-01-04T17:37:23.3849532+08:00"},{"id":107,"source_id":"b69bdfa1-26c5-46c6-8250-089b2f901453","target_id":"ba4bc18c-e67e-41c8-92f1-e7f835bbc63b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b69bdfa1-26c5-46c6-8250-089b2f901453 -\u003e ba4bc18c-e67e-41c8-92f1-e7f835bbc63b","gmt_create":"2026-01-04T17:37:23.3855897+08:00","gmt_modified":"2026-01-04T17:37:23.3855897+08:00"},{"id":108,"source_id":"b69bdfa1-26c5-46c6-8250-089b2f901453","target_id":"a4b8ab09-7206-4926-a713-2e693507f5f2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b69bdfa1-26c5-46c6-8250-089b2f901453 -\u003e a4b8ab09-7206-4926-a713-2e693507f5f2","gmt_create":"2026-01-04T17:37:23.3855897+08:00","gmt_modified":"2026-01-04T17:37:23.3855897+08:00"},{"id":109,"source_id":"b69bdfa1-26c5-46c6-8250-089b2f901453","target_id":"0a3669c7-8091-4868-a036-07bd5faa35e1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b69bdfa1-26c5-46c6-8250-089b2f901453 -\u003e 0a3669c7-8091-4868-a036-07bd5faa35e1","gmt_create":"2026-01-04T17:37:23.386213+08:00","gmt_modified":"2026-01-04T17:37:23.386213+08:00"},{"id":110,"source_id":"b69bdfa1-26c5-46c6-8250-089b2f901453","target_id":"d60f4422-6a7c-4c58-828d-653626df5ee1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b69bdfa1-26c5-46c6-8250-089b2f901453 -\u003e d60f4422-6a7c-4c58-828d-653626df5ee1","gmt_create":"2026-01-04T17:37:23.386213+08:00","gmt_modified":"2026-01-04T17:37:23.386213+08:00"},{"id":111,"source_id":"b69bdfa1-26c5-46c6-8250-089b2f901453","target_id":"211d358b-1eb1-49c0-a1b1-b45debfa9a97","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b69bdfa1-26c5-46c6-8250-089b2f901453 -\u003e 211d358b-1eb1-49c0-a1b1-b45debfa9a97","gmt_create":"2026-01-04T17:37:23.3868191+08:00","gmt_modified":"2026-01-04T17:37:23.3868191+08:00"},{"id":112,"source_id":"58e7e03d-a930-4dbf-aefb-0c384cdc6533","target_id":"32727227-23cc-409f-8721-d8b7df03f284","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 58e7e03d-a930-4dbf-aefb-0c384cdc6533 -\u003e 32727227-23cc-409f-8721-d8b7df03f284","gmt_create":"2026-01-04T17:37:23.3868191+08:00","gmt_modified":"2026-01-04T17:37:23.3868191+08:00"},{"id":113,"source_id":"32727227-23cc-409f-8721-d8b7df03f284","target_id":"ab08ae93-d0d8-4e58-9629-eb8595a7517f","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 32727227-23cc-409f-8721-d8b7df03f284 -\u003e ab08ae93-d0d8-4e58-9629-eb8595a7517f","gmt_create":"2026-01-04T17:37:23.387431+08:00","gmt_modified":"2026-01-04T17:37:23.387431+08:00"},{"id":114,"source_id":"32727227-23cc-409f-8721-d8b7df03f284","target_id":"2ab3832e-d677-42d3-83a8-c3168d885b78","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 32727227-23cc-409f-8721-d8b7df03f284 -\u003e 2ab3832e-d677-42d3-83a8-c3168d885b78","gmt_create":"2026-01-04T17:37:23.387431+08:00","gmt_modified":"2026-01-04T17:37:23.387431+08:00"},{"id":115,"source_id":"32727227-23cc-409f-8721-d8b7df03f284","target_id":"546c538a-6c32-4b97-b822-33b24ba7eccf","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 32727227-23cc-409f-8721-d8b7df03f284 -\u003e 546c538a-6c32-4b97-b822-33b24ba7eccf","gmt_create":"2026-01-04T17:37:23.388021+08:00","gmt_modified":"2026-01-04T17:37:23.388021+08:00"},{"id":116,"source_id":"5ffeacb4-cd43-436e-9e69-02e8b057b817","target_id":"a35834ac-9d23-4233-a3b8-a2940dbc45bd","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5ffeacb4-cd43-436e-9e69-02e8b057b817 -\u003e a35834ac-9d23-4233-a3b8-a2940dbc45bd","gmt_create":"2026-01-04T17:37:23.388021+08:00","gmt_modified":"2026-01-04T17:37:23.388021+08:00"},{"id":117,"source_id":"efebf330-1aec-4357-8dda-3aa55f72e750","target_id":"55941e22-3991-463b-a404-9f41204a54d3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: efebf330-1aec-4357-8dda-3aa55f72e750 -\u003e 55941e22-3991-463b-a404-9f41204a54d3","gmt_create":"2026-01-04T17:37:23.3886271+08:00","gmt_modified":"2026-01-04T17:37:23.3886271+08:00"},{"id":118,"source_id":"b8832f40-0232-41b8-b6fb-833ff21b1e1e","target_id":"2c2f0671-cc51-4c25-aac5-53872cc7ebac","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: b8832f40-0232-41b8-b6fb-833ff21b1e1e -\u003e 2c2f0671-cc51-4c25-aac5-53872cc7ebac","gmt_create":"2026-01-04T17:37:23.3892258+08:00","gmt_modified":"2026-01-04T17:37:23.3892258+08:00"},{"id":119,"source_id":"0a5c205d-20df-49a3-b446-06bddc0b1680","target_id":"b696a9e8-93b2-4b4d-81b0-3004fa072762","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 0a5c205d-20df-49a3-b446-06bddc0b1680 -\u003e b696a9e8-93b2-4b4d-81b0-3004fa072762","gmt_create":"2026-01-04T17:37:23.3892258+08:00","gmt_modified":"2026-01-04T17:37:23.3892258+08:00"},{"id":120,"source_id":"a7884509-aa98-4d4d-8ba9-735aa7f72b58","target_id":"94cf9244-f24f-4d7d-8d20-f4f1d1ea0645","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a7884509-aa98-4d4d-8ba9-735aa7f72b58 -\u003e 94cf9244-f24f-4d7d-8d20-f4f1d1ea0645","gmt_create":"2026-01-04T17:37:23.3898305+08:00","gmt_modified":"2026-01-04T17:37:23.3898305+08:00"},{"id":121,"source_id":"34f4b73d-9fbd-48b6-ab21-2a7efb710d60","target_id":"83402f3f-753e-4155-bcec-91d7fdb39b8c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 34f4b73d-9fbd-48b6-ab21-2a7efb710d60 -\u003e 83402f3f-753e-4155-bcec-91d7fdb39b8c","gmt_create":"2026-01-04T17:37:23.3898305+08:00","gmt_modified":"2026-01-04T17:37:23.3898305+08:00"},{"id":122,"source_id":"83402f3f-753e-4155-bcec-91d7fdb39b8c","target_id":"ff3cd976-4777-4323-8934-a01fe742ae28","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 83402f3f-753e-4155-bcec-91d7fdb39b8c -\u003e ff3cd976-4777-4323-8934-a01fe742ae28","gmt_create":"2026-01-04T17:37:23.3904681+08:00","gmt_modified":"2026-01-04T17:37:23.3904681+08:00"},{"id":123,"source_id":"83402f3f-753e-4155-bcec-91d7fdb39b8c","target_id":"8d9fdd45-2485-47d4-bfdf-49df81439d77","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 83402f3f-753e-4155-bcec-91d7fdb39b8c -\u003e 8d9fdd45-2485-47d4-bfdf-49df81439d77","gmt_create":"2026-01-04T17:37:23.3904681+08:00","gmt_modified":"2026-01-04T17:37:23.3904681+08:00"},{"id":124,"source_id":"1c800fc3-a71b-4132-ae76-6e656ac7a3a4","target_id":"68f776e5-ec90-4d3d-9259-1822b956e64c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1c800fc3-a71b-4132-ae76-6e656ac7a3a4 -\u003e 68f776e5-ec90-4d3d-9259-1822b956e64c","gmt_create":"2026-01-04T17:37:23.3910827+08:00","gmt_modified":"2026-01-04T17:37:23.3910827+08:00"},{"id":125,"source_id":"efebf330-1aec-4357-8dda-3aa55f72e750","target_id":"4bf8fe55-b927-4050-bf77-1795eaeec888","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: efebf330-1aec-4357-8dda-3aa55f72e750 -\u003e 4bf8fe55-b927-4050-bf77-1795eaeec888","gmt_create":"2026-01-04T17:37:23.391666+08:00","gmt_modified":"2026-01-04T17:37:23.391666+08:00"},{"id":126,"source_id":"5d223f35-36cd-4c64-bbe1-36addb8970d1","target_id":"73ef0a81-f49e-45b0-88ac-46a2c2e377c4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5d223f35-36cd-4c64-bbe1-36addb8970d1 -\u003e 73ef0a81-f49e-45b0-88ac-46a2c2e377c4","gmt_create":"2026-01-04T17:37:23.391666+08:00","gmt_modified":"2026-01-04T17:37:23.391666+08:00"},{"id":127,"source_id":"58e7e03d-a930-4dbf-aefb-0c384cdc6533","target_id":"030507d0-1ac1-489f-8bf4-212596428ea2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 58e7e03d-a930-4dbf-aefb-0c384cdc6533 -\u003e 030507d0-1ac1-489f-8bf4-212596428ea2","gmt_create":"2026-01-04T17:37:23.3922705+08:00","gmt_modified":"2026-01-04T17:37:23.3922705+08:00"},{"id":128,"source_id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","target_id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d308dd10-246d-4a3d-9604-be2f9e0c65de -\u003e 43b1de20-62e3-42c3-bb1c-e5531b157f77","gmt_create":"2026-01-04T17:37:23.3922705+08:00","gmt_modified":"2026-01-04T17:37:23.3922705+08:00"},{"id":129,"source_id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","target_id":"66bc7430-a11e-4ce2-9c9b-9cf26fdcf822","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 43b1de20-62e3-42c3-bb1c-e5531b157f77 -\u003e 66bc7430-a11e-4ce2-9c9b-9cf26fdcf822","gmt_create":"2026-01-04T17:37:23.3928738+08:00","gmt_modified":"2026-01-04T17:37:23.3928738+08:00"},{"id":130,"source_id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","target_id":"eaeb293e-72f0-422d-aecb-3eb16c57cdad","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 43b1de20-62e3-42c3-bb1c-e5531b157f77 -\u003e eaeb293e-72f0-422d-aecb-3eb16c57cdad","gmt_create":"2026-01-04T17:37:23.3928738+08:00","gmt_modified":"2026-01-04T17:37:23.3928738+08:00"},{"id":131,"source_id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","target_id":"a263d410-4bc9-4284-91d4-c0918983317e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 43b1de20-62e3-42c3-bb1c-e5531b157f77 -\u003e a263d410-4bc9-4284-91d4-c0918983317e","gmt_create":"2026-01-04T17:37:23.393486+08:00","gmt_modified":"2026-01-04T17:37:23.393486+08:00"},{"id":132,"source_id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","target_id":"fecd00a7-0d57-4b20-85d1-4ea48c050c87","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 43b1de20-62e3-42c3-bb1c-e5531b157f77 -\u003e fecd00a7-0d57-4b20-85d1-4ea48c050c87","gmt_create":"2026-01-04T17:37:23.393486+08:00","gmt_modified":"2026-01-04T17:37:23.393486+08:00"},{"id":133,"source_id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","target_id":"4552baab-4a8e-4d35-a142-817d4c675e87","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 43b1de20-62e3-42c3-bb1c-e5531b157f77 -\u003e 4552baab-4a8e-4d35-a142-817d4c675e87","gmt_create":"2026-01-04T17:37:23.3941416+08:00","gmt_modified":"2026-01-04T17:37:23.3941416+08:00"},{"id":134,"source_id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","target_id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d308dd10-246d-4a3d-9604-be2f9e0c65de -\u003e 69a7c0a4-5638-4ecf-ad1f-f5122209f26a","gmt_create":"2026-01-04T17:37:23.3946523+08:00","gmt_modified":"2026-01-04T17:37:23.3946523+08:00"},{"id":135,"source_id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","target_id":"13cb9dd8-c308-4147-a221-96fc1c55615a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 69a7c0a4-5638-4ecf-ad1f-f5122209f26a -\u003e 13cb9dd8-c308-4147-a221-96fc1c55615a","gmt_create":"2026-01-04T17:37:23.3952109+08:00","gmt_modified":"2026-01-04T17:37:23.3952109+08:00"},{"id":136,"source_id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","target_id":"758e1963-e3b8-499a-994b-6673ddeb7f0b","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 69a7c0a4-5638-4ecf-ad1f-f5122209f26a -\u003e 758e1963-e3b8-499a-994b-6673ddeb7f0b","gmt_create":"2026-01-04T17:37:23.3952109+08:00","gmt_modified":"2026-01-04T17:37:23.3952109+08:00"},{"id":137,"source_id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","target_id":"c882e5a7-9823-4486-9618-3a0d08a3e2d3","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 69a7c0a4-5638-4ecf-ad1f-f5122209f26a -\u003e c882e5a7-9823-4486-9618-3a0d08a3e2d3","gmt_create":"2026-01-04T17:37:23.395773+08:00","gmt_modified":"2026-01-04T17:37:23.395773+08:00"},{"id":138,"source_id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","target_id":"b8b1d5bb-dd11-411c-8083-69420141a0da","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 69a7c0a4-5638-4ecf-ad1f-f5122209f26a -\u003e b8b1d5bb-dd11-411c-8083-69420141a0da","gmt_create":"2026-01-04T17:37:23.3963482+08:00","gmt_modified":"2026-01-04T17:37:23.3963482+08:00"},{"id":139,"source_id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","target_id":"f618e5ce-f7b7-4862-86f1-ce86b294f51c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 69a7c0a4-5638-4ecf-ad1f-f5122209f26a -\u003e f618e5ce-f7b7-4862-86f1-ce86b294f51c","gmt_create":"2026-01-04T17:37:23.3968941+08:00","gmt_modified":"2026-01-04T17:37:23.3968941+08:00"},{"id":140,"source_id":"7dd50439-0077-4163-9185-954769e5fc4e","target_id":"9e82fc88-a74c-45d7-9161-b740db781b7c","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 7dd50439-0077-4163-9185-954769e5fc4e -\u003e 9e82fc88-a74c-45d7-9161-b740db781b7c","gmt_create":"2026-01-04T17:37:23.3974475+08:00","gmt_modified":"2026-01-04T17:37:23.3974475+08:00"},{"id":141,"source_id":"7dd50439-0077-4163-9185-954769e5fc4e","target_id":"c8ebf039-e8e5-441e-b90e-5dde835984d1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 7dd50439-0077-4163-9185-954769e5fc4e -\u003e c8ebf039-e8e5-441e-b90e-5dde835984d1","gmt_create":"2026-01-04T17:37:23.3980262+08:00","gmt_modified":"2026-01-04T17:37:23.3980262+08:00"},{"id":142,"source_id":"63e2568f-ba26-4a7e-8834-bbabf6065da4","target_id":"1351096d-a234-4c62-9007-b6c321211bd2","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 63e2568f-ba26-4a7e-8834-bbabf6065da4 -\u003e 1351096d-a234-4c62-9007-b6c321211bd2","gmt_create":"2026-01-04T17:37:23.3986302+08:00","gmt_modified":"2026-01-04T17:37:23.3986302+08:00"},{"id":143,"source_id":"68e7e5ce-cd49-4b4c-8b4f-59594f4a256d","target_id":"184ff123-ea1e-4b4f-a7ef-962056e4f110","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 68e7e5ce-cd49-4b4c-8b4f-59594f4a256d -\u003e 184ff123-ea1e-4b4f-a7ef-962056e4f110","gmt_create":"2026-01-04T17:37:23.3992393+08:00","gmt_modified":"2026-01-04T17:37:23.3992393+08:00"},{"id":144,"source_id":"68e7e5ce-cd49-4b4c-8b4f-59594f4a256d","target_id":"5ffeacb4-cd43-436e-9e69-02e8b057b817","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 68e7e5ce-cd49-4b4c-8b4f-59594f4a256d -\u003e 5ffeacb4-cd43-436e-9e69-02e8b057b817","gmt_create":"2026-01-04T17:37:23.3998458+08:00","gmt_modified":"2026-01-04T17:37:23.3998458+08:00"},{"id":145,"source_id":"68e7e5ce-cd49-4b4c-8b4f-59594f4a256d","target_id":"b8832f40-0232-41b8-b6fb-833ff21b1e1e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 68e7e5ce-cd49-4b4c-8b4f-59594f4a256d -\u003e b8832f40-0232-41b8-b6fb-833ff21b1e1e","gmt_create":"2026-01-04T17:37:23.3998458+08:00","gmt_modified":"2026-01-04T17:37:23.3998458+08:00"},{"id":146,"source_id":"68e7e5ce-cd49-4b4c-8b4f-59594f4a256d","target_id":"a7884509-aa98-4d4d-8ba9-735aa7f72b58","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 68e7e5ce-cd49-4b4c-8b4f-59594f4a256d -\u003e a7884509-aa98-4d4d-8ba9-735aa7f72b58","gmt_create":"2026-01-04T17:37:23.4004556+08:00","gmt_modified":"2026-01-04T17:37:23.4004556+08:00"},{"id":147,"source_id":"508b03ce-941c-418d-b949-5dbb3c6fb6eb","target_id":"0a5c205d-20df-49a3-b446-06bddc0b1680","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 508b03ce-941c-418d-b949-5dbb3c6fb6eb -\u003e 0a5c205d-20df-49a3-b446-06bddc0b1680","gmt_create":"2026-01-04T17:37:23.4010632+08:00","gmt_modified":"2026-01-04T17:37:23.4010632+08:00"},{"id":148,"source_id":"508b03ce-941c-418d-b949-5dbb3c6fb6eb","target_id":"34f4b73d-9fbd-48b6-ab21-2a7efb710d60","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 508b03ce-941c-418d-b949-5dbb3c6fb6eb -\u003e 34f4b73d-9fbd-48b6-ab21-2a7efb710d60","gmt_create":"2026-01-04T17:37:23.4010632+08:00","gmt_modified":"2026-01-04T17:37:23.4010632+08:00"},{"id":149,"source_id":"508b03ce-941c-418d-b949-5dbb3c6fb6eb","target_id":"1c800fc3-a71b-4132-ae76-6e656ac7a3a4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 508b03ce-941c-418d-b949-5dbb3c6fb6eb -\u003e 1c800fc3-a71b-4132-ae76-6e656ac7a3a4","gmt_create":"2026-01-04T17:37:23.4017108+08:00","gmt_modified":"2026-01-04T17:37:23.4017108+08:00"},{"id":150,"source_id":"508b03ce-941c-418d-b949-5dbb3c6fb6eb","target_id":"2e081472-bd7b-425a-b185-cf33bd4b2254","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 508b03ce-941c-418d-b949-5dbb3c6fb6eb -\u003e 2e081472-bd7b-425a-b185-cf33bd4b2254","gmt_create":"2026-01-04T17:37:23.4017108+08:00","gmt_modified":"2026-01-04T17:37:23.4017108+08:00"},{"id":151,"source_id":"dd454307-3f7d-40b7-87fb-dd4c6f0c3e2d","target_id":"9d460989-9038-4886-b930-75fde703b85a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dd454307-3f7d-40b7-87fb-dd4c6f0c3e2d -\u003e 9d460989-9038-4886-b930-75fde703b85a","gmt_create":"2026-01-04T17:37:23.4023208+08:00","gmt_modified":"2026-01-04T17:37:23.4023208+08:00"},{"id":152,"source_id":"dd454307-3f7d-40b7-87fb-dd4c6f0c3e2d","target_id":"efebf330-1aec-4357-8dda-3aa55f72e750","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: dd454307-3f7d-40b7-87fb-dd4c6f0c3e2d -\u003e efebf330-1aec-4357-8dda-3aa55f72e750","gmt_create":"2026-01-04T17:37:23.4023208+08:00","gmt_modified":"2026-01-04T17:37:23.4023208+08:00"},{"id":153,"source_id":"c001c1c1-cf27-45c4-a1b0-9093c96616ea","target_id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c001c1c1-cf27-45c4-a1b0-9093c96616ea -\u003e d308dd10-246d-4a3d-9604-be2f9e0c65de","gmt_create":"2026-01-04T17:37:23.4029325+08:00","gmt_modified":"2026-01-04T17:37:23.4029325+08:00"},{"id":154,"source_id":"c001c1c1-cf27-45c4-a1b0-9093c96616ea","target_id":"5d223f35-36cd-4c64-bbe1-36addb8970d1","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c001c1c1-cf27-45c4-a1b0-9093c96616ea -\u003e 5d223f35-36cd-4c64-bbe1-36addb8970d1","gmt_create":"2026-01-04T17:37:23.4029325+08:00","gmt_modified":"2026-01-04T17:37:23.4029325+08:00"},{"id":155,"source_id":"c001c1c1-cf27-45c4-a1b0-9093c96616ea","target_id":"58e7e03d-a930-4dbf-aefb-0c384cdc6533","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c001c1c1-cf27-45c4-a1b0-9093c96616ea -\u003e 58e7e03d-a930-4dbf-aefb-0c384cdc6533","gmt_create":"2026-01-04T17:37:23.4035462+08:00","gmt_modified":"2026-01-04T17:37:23.4035462+08:00"},{"id":156,"source_id":"f5daf4d5-df45-4dcf-b442-91eabc17b3a2","target_id":"856a8ca3-0575-4faa-81a2-21f81a064bdc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f5daf4d5-df45-4dcf-b442-91eabc17b3a2 -\u003e 856a8ca3-0575-4faa-81a2-21f81a064bdc","gmt_create":"2026-01-04T17:37:23.4041534+08:00","gmt_modified":"2026-01-04T17:37:23.4041534+08:00"},{"id":157,"source_id":"f5daf4d5-df45-4dcf-b442-91eabc17b3a2","target_id":"37354c44-be31-4252-85d7-fef333a2d166","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f5daf4d5-df45-4dcf-b442-91eabc17b3a2 -\u003e 37354c44-be31-4252-85d7-fef333a2d166","gmt_create":"2026-01-04T17:37:23.4041534+08:00","gmt_modified":"2026-01-04T17:37:23.4041534+08:00"},{"id":158,"source_id":"f5daf4d5-df45-4dcf-b442-91eabc17b3a2","target_id":"6f1b93ab-54ca-455a-ac44-2448554ce0bb","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: f5daf4d5-df45-4dcf-b442-91eabc17b3a2 -\u003e 6f1b93ab-54ca-455a-ac44-2448554ce0bb","gmt_create":"2026-01-04T17:37:23.404762+08:00","gmt_modified":"2026-01-04T17:37:23.404762+08:00"},{"id":159,"source_id":"7a0c4eaf-3a93-4d8f-8a82-4087fb69a400","target_id":"dc63ba9a-7889-47b6-97ea-89f9a9d91c77","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 7a0c4eaf-3a93-4d8f-8a82-4087fb69a400 -\u003e dc63ba9a-7889-47b6-97ea-89f9a9d91c77","gmt_create":"2026-01-04T17:37:23.404762+08:00","gmt_modified":"2026-01-04T17:37:23.404762+08:00"},{"id":160,"source_id":"7a0c4eaf-3a93-4d8f-8a82-4087fb69a400","target_id":"89fdf1ab-0f40-4603-8378-8bb1da2edf32","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 7a0c4eaf-3a93-4d8f-8a82-4087fb69a400 -\u003e 89fdf1ab-0f40-4603-8378-8bb1da2edf32","gmt_create":"2026-01-04T17:37:23.4053761+08:00","gmt_modified":"2026-01-04T17:37:23.4053761+08:00"},{"id":161,"source_id":"7a0c4eaf-3a93-4d8f-8a82-4087fb69a400","target_id":"ec52034d-9596-4a5e-8513-a053065d113a","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 7a0c4eaf-3a93-4d8f-8a82-4087fb69a400 -\u003e ec52034d-9596-4a5e-8513-a053065d113a","gmt_create":"2026-01-04T17:37:23.4053761+08:00","gmt_modified":"2026-01-04T17:37:23.4053761+08:00"},{"id":162,"source_id":"9d460989-9038-4886-b930-75fde703b85a","target_id":"3e1c3c6c-c0c3-4789-ac2b-a550797c9b49","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 9d460989-9038-4886-b930-75fde703b85a -\u003e 3e1c3c6c-c0c3-4789-ac2b-a550797c9b49","gmt_create":"2026-01-04T17:37:23.4065179+08:00","gmt_modified":"2026-01-04T17:37:23.4065179+08:00"},{"id":163,"source_id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","target_id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: d308dd10-246d-4a3d-9604-be2f9e0c65de -\u003e cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","gmt_create":"2026-01-04T17:37:23.4077319+08:00","gmt_modified":"2026-01-04T17:37:23.4077319+08:00"},{"id":164,"source_id":"5d223f35-36cd-4c64-bbe1-36addb8970d1","target_id":"8538c109-b882-4b9b-afe6-c1d3bd3c99bc","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 5d223f35-36cd-4c64-bbe1-36addb8970d1 -\u003e 8538c109-b882-4b9b-afe6-c1d3bd3c99bc","gmt_create":"2026-01-04T17:37:23.4098522+08:00","gmt_modified":"2026-01-04T17:37:23.4098522+08:00"},{"id":165,"source_id":"1c800fc3-a71b-4132-ae76-6e656ac7a3a4","target_id":"152af444-d80c-479d-bf39-d83bb428c8e7","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 1c800fc3-a71b-4132-ae76-6e656ac7a3a4 -\u003e 152af444-d80c-479d-bf39-d83bb428c8e7","gmt_create":"2026-01-04T17:37:23.4118798+08:00","gmt_modified":"2026-01-04T17:37:23.4118798+08:00"},{"id":166,"source_id":"58e7e03d-a930-4dbf-aefb-0c384cdc6533","target_id":"63e2568f-ba26-4a7e-8834-bbabf6065da4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 58e7e03d-a930-4dbf-aefb-0c384cdc6533 -\u003e 63e2568f-ba26-4a7e-8834-bbabf6065da4","gmt_create":"2026-01-04T17:37:23.4203811+08:00","gmt_modified":"2026-01-04T17:37:23.4203811+08:00"},{"id":167,"source_id":"2e081472-bd7b-425a-b185-cf33bd4b2254","target_id":"189ec6c4-80c6-48e4-998e-fe40432907c4","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 2e081472-bd7b-425a-b185-cf33bd4b2254 -\u003e 189ec6c4-80c6-48e4-998e-fe40432907c4","gmt_create":"2026-01-04T17:37:23.4212989+08:00","gmt_modified":"2026-01-04T17:37:23.4212989+08:00"},{"id":168,"source_id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","target_id":"36ba229f-4152-49df-86e3-69f5133f51cd","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e -\u003e 36ba229f-4152-49df-86e3-69f5133f51cd","gmt_create":"2026-01-04T17:37:23.426159+08:00","gmt_modified":"2026-01-04T17:37:23.426159+08:00"},{"id":169,"source_id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","target_id":"b70cc4b8-a276-40b1-a93a-4fa9b63c6ad0","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e -\u003e b70cc4b8-a276-40b1-a93a-4fa9b63c6ad0","gmt_create":"2026-01-04T17:37:23.4362396+08:00","gmt_modified":"2026-01-04T17:37:23.4362396+08:00"},{"id":170,"source_id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","target_id":"73d8e147-3a76-4527-8eb1-1a264c1bea90","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e -\u003e 73d8e147-3a76-4527-8eb1-1a264c1bea90","gmt_create":"2026-01-04T17:37:23.4362396+08:00","gmt_modified":"2026-01-04T17:37:23.4362396+08:00"},{"id":171,"source_id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","target_id":"d11b5848-8ffc-4270-bdd2-6ca10f3bb1a7","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e -\u003e d11b5848-8ffc-4270-bdd2-6ca10f3bb1a7","gmt_create":"2026-01-04T17:37:23.4362396+08:00","gmt_modified":"2026-01-04T17:37:23.4362396+08:00"},{"id":172,"source_id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","target_id":"3d5c53d3-53d1-486f-a8c6-e7aa5f4604a8","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e -\u003e 3d5c53d3-53d1-486f-a8c6-e7aa5f4604a8","gmt_create":"2026-01-04T17:37:23.4362396+08:00","gmt_modified":"2026-01-04T17:37:23.4362396+08:00"},{"id":173,"source_id":"63e2568f-ba26-4a7e-8834-bbabf6065da4","target_id":"bd855fa5-c959-46a3-840c-79732c1e4a01","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 63e2568f-ba26-4a7e-8834-bbabf6065da4 -\u003e bd855fa5-c959-46a3-840c-79732c1e4a01","gmt_create":"2026-01-04T17:37:23.4413788+08:00","gmt_modified":"2026-01-04T17:37:23.4413788+08:00"},{"id":174,"source_id":"63e2568f-ba26-4a7e-8834-bbabf6065da4","target_id":"a6397422-6628-4fed-a83c-1c02c5809368","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: 63e2568f-ba26-4a7e-8834-bbabf6065da4 -\u003e a6397422-6628-4fed-a83c-1c02c5809368","gmt_create":"2026-01-04T17:37:23.4413788+08:00","gmt_modified":"2026-01-04T17:37:23.4413788+08:00"},{"id":175,"source_id":"c8ff3f38-ba57-42d8-bdfe-e2c660c1be67","target_id":"ba47f361-afaa-4385-a2d0-fb7d3de10703","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c8ff3f38-ba57-42d8-bdfe-e2c660c1be67 -\u003e ba47f361-afaa-4385-a2d0-fb7d3de10703","gmt_create":"2026-01-04T17:37:23.4466174+08:00","gmt_modified":"2026-01-04T17:37:23.4466174+08:00"},{"id":176,"source_id":"c8ff3f38-ba57-42d8-bdfe-e2c660c1be67","target_id":"f5f0bc43-c0c7-4dee-968a-5974054b7be7","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c8ff3f38-ba57-42d8-bdfe-e2c660c1be67 -\u003e f5f0bc43-c0c7-4dee-968a-5974054b7be7","gmt_create":"2026-01-04T17:37:23.4466174+08:00","gmt_modified":"2026-01-04T17:37:23.4466174+08:00"},{"id":177,"source_id":"c8ff3f38-ba57-42d8-bdfe-e2c660c1be67","target_id":"086cc09f-1d09-438d-8014-bd2d7436f399","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: c8ff3f38-ba57-42d8-bdfe-e2c660c1be67 -\u003e 086cc09f-1d09-438d-8014-bd2d7436f399","gmt_create":"2026-01-04T17:37:23.4515784+08:00","gmt_modified":"2026-01-04T17:37:23.4515784+08:00"},{"id":178,"source_id":"a263d410-4bc9-4284-91d4-c0918983317e","target_id":"b918729d-c599-4160-bcf9-75d8c7baf8ec","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a263d410-4bc9-4284-91d4-c0918983317e -\u003e b918729d-c599-4160-bcf9-75d8c7baf8ec","gmt_create":"2026-01-04T17:37:23.4515784+08:00","gmt_modified":"2026-01-04T17:37:23.4515784+08:00"},{"id":179,"source_id":"a263d410-4bc9-4284-91d4-c0918983317e","target_id":"73d7b0b8-bcb0-4cdc-bc2c-6c4268188a32","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a263d410-4bc9-4284-91d4-c0918983317e -\u003e 73d7b0b8-bcb0-4cdc-bc2c-6c4268188a32","gmt_create":"2026-01-04T17:37:23.4515784+08:00","gmt_modified":"2026-01-04T17:37:23.4515784+08:00"},{"id":180,"source_id":"a263d410-4bc9-4284-91d4-c0918983317e","target_id":"6225325f-0332-4dfe-9948-5f46ddf4ee8d","source_type":"WIKI_ITEM","target_type":"WIKI_ITEM","relationship_type":"PARENT_CHILD","extra":"Wiki parent-child relationship: a263d410-4bc9-4284-91d4-c0918983317e -\u003e 6225325f-0332-4dfe-9948-5f46ddf4ee8d","gmt_create":"2026-01-04T17:37:23.4515784+08:00","gmt_modified":"2026-01-04T17:37:23.4515784+08:00"}],"wiki_catalogs":[{"id":"a5409405-24c2-4b50-b5d7-00efa99fbe8c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目概述","description":"project-overview","prompt":"创建关于GeomativeStudio项目的全面概述内容。解释该项目作为地球物理勘探设备管理与数据处理专业桌面应用程序的定位和核心目标。阐述其基于MFC框架和C++语言构建的技术背景,描述主要功能模块(设备管理、项目管理、脚本生成、数据采集与分析)之间的关系。介绍系统整体架构风格,包括MVC模式的应用和核心组件间的交互流程。为初学者提供高层次的理解,同时为开发者提供技术背景,包括ADO数据库访问、串口通信和XML配置处理等关键技术点。结合README.md和版本信息文件说明项目的发展状态和主要用途。","progress_status":"completed","dependent_files":"README.md,GeoMative.cpp,version_info.txt","gmt_create":"2026-01-04T14:37:17.8867047+08:00","gmt_modified":"2026-01-04T16:24:20.6168994+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn/+8FdvqrJ62ianMLvZj02elJtBUgH0Ns0veIx1WPtM9wwkxI+/XAqHLxJLlHB8wV7ojrH0+b4JMz5OewwhBN1H6yDfnWBbaPsNqK0Q4w4bqbZQ2QlR6pTJ9fpAhA6Emnnz1txQFlt9hcn77onGEUF7brZ69qbkQapR1FLCItCkc91wZ6gBXiUikb9iGZPsaOwrNrX9sVCbqUPGurkcw758lN+YcK9/LTEBHC06FkXf0VAxEEfI9u4/ywYIj/yFGwlAvVxAwrIXYMYpet3k76OCCB8PibEPXhigOFPfTdfyPNud6fKKS9aFbIvkOBnKc8kJgzvFwfOlwvHgtJclpdE0FwgyOhA48tshNXro8X+TwBf53kEsq4iWv8dpfGjFSRvl/E3CxCy2wGwwBM3BQh1gWR5diJjuyDu1B61cOVc+dJbAIvo3GNIRs8fGV8bPGajVwkMzAxDwNn8wdG8FU4ap+HRBjl8tlsab80/leGHaLvwKZUDREXTKDnK7IFgaIq/VPfY3K/fzhHGUHKOdjyvZW5DWVcsLc67Teqk8E2L/AYNW7rfqsxDn2gDG8dtU0lzJWg+MM0dHOAWZt93YvqJuVjRbSUW5tRXfoRA44b8kaM1sQqkFu/SDtFc6YOKSDoLW1EzDbshty4aUgVWvWi3IWYFf+kf/ILdTSqFyLc8ln4NYo2h1uWDqGwjs8/NBHVP896RxEEXUp+T/nFIapuGxDCrWyH/W4AJDaVrLoVc6E4/Ab/KUEmdt+tfG/TwkAUKdqRPzeyf0nV3BKUmn4QC+CqGD+Y0swlDhgGYUJM7W0Kuq48qs/R7fVOnM2QFgwr3huUBnGaob7PV0qSC8hg9n3f2G2iwgI6wwu/IHUFfu6L2yJ4U++cgvC5gkXcg6n8o5Rs/ik1PK/BBIk+YbgkPLDCuDljnLECUZAU3UgrMkJ+/ESVw4XFx0amvUugGZ+240W8gZ3EopCerZA7+mTcX3x28DJOz0VdQipi9F/P4nL6FMDHr/z53pC4b9TrZFMDAGY7ff2+5D3aCiJYq7KxivqyDS0OuM7vUDCytfIXe5bTBA2n4qreCuTWWYyM+DwVxBDMM9CnngqZlYeOWchC/NyPM2POn4P7DNvwOJxw+F8FBzb/NWoVweiOW2OgJbPXtJaXTO/PT/8c9xJ6Dk4dssrNRILhMIY1ETsDxMTtmGmOC5b/0zPvAVCEhsg/Xch/A=="},{"id":"17080c81-daa2-48ce-aaf3-d9f2b90d066a","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"安装指南","description":"installation-guide","prompt":"创建详细的安装指南,涵盖GeomativeStudio桌面应用程序的完整安装流程。说明NSIS安装脚本(geomativestudio.nsi)的工作机制,包括安装目录设置、注册表写入、快捷方式创建和卸载程序生成。详细描述安装过程中各组件的部署顺序:核心程序文件、VC++运行库(vc_redist.x64.exe和vc_redist.x86.exe)、Access数据库引擎(AccessDatabaseEngine.exe)以及GD10设备驱动程序(x64/x86)。解释驱动程序安装时dpinst.xml的用途和自动安装逻辑。提供安装前的系统权限要求(管理员权限)和兼容性配置(RUNASADMIN注册表项)说明。结合实际NSIS脚本代码,展示关键安装步骤的实现方式,并给出安装失败的常见原因及解决方案,如权限不足、系统架构不匹配或依赖组件安装失败等。","parent_id":"5d08bb05-e9b3-4371-98d3-840eb06d48e1","progress_status":"completed","dependent_files":"Install/geomativestudio.nsi,Install/GD_10/x64/dpinst.xml,Install/GD_10/x86/dpinst.xml,Install/Geomative Studio/config.ini,Install/Geomative Studio/version_info.txt","gmt_create":"2026-01-04T14:37:32.6639035+08:00","gmt_modified":"2026-01-04T16:33:11.0480104+08:00","raw_data":"WikiEncrypted:6nDTd1wU0hYJuRoAJhne4fiW1+A9k9ICuDHtRF13pCGqmePKzDATTc2HxkCI5JsAj8ZcaKIqH4sG3ObbMtsLNQzHTyopwSqEw8O5LVhlzQkdsM5AexvXM0d/ICNnPGIzqU/A9eZUEoDaM0y40mCeOYwR9c1NtLrDg2EYy6Wi6TXsW8D7/OafYtzPenzZzSB+2nj4iQjTbtM/8HleTTQEepo8FcqnzasuOIggtGTShKzRsDE2RytfsHnHphTig9qqtrN+fQnKy3xanEWlvRGCO0XnXiNNIj1RZW4SPKuA87AYMiNwm3lNwXCsUkbDiYYmn+QkBWqiHDITBvKnmmlX5bG/5T2uy23719MlvUdRmHKHU2EcJjwdBz/iyEW1FCg5lhfq/lnpl5zOnvd6Bwi7gT/t3vzKvGyLCRmjZUHt+Nb6rotC3PLz6SAsduKqCJAlxk5zhs6qGHq6BGK0MakP/lpPcpl9fZVDL+shCl+s3NXKnnOfgzfVZOxiIX6ojEOxv0Fb1YW1lV+UpGaJ6LEVwXNTqf0DCEQ9HUIkO9/VuVQ7WuaPisyQjYwG54x9HS8FCoNrvoUSmGJzJCRkWXVELaqKtldag9HksvP7B1v+BcBxuNVvo24lz5eP+1wxS4kSptGu2Slr9JJdtF3m/Jq0MymHNMlRC+RK2IRBS4HuDdwjfHNN/hiHQ3jkRSL+FXEqVQ8AH8JSa/0eDz1nr76W7uY4Qnoln6wymY01Aj7MABf92oLndcsyXpV1SnOmzqpt6nHrCbTgDFeoq3N5F/sJbOxHJOCwj1wpV+yr5ZPqoSvEj8gRZQ34jaqgNnX+paBkg6HhJls8ioWT31cjFzbSc2LSYmd67janfRkxCb0DSKwXoHKPwL4AsX2j5yaVU2n7cF15bz4fh/eNrZWNDscBvU/q1gUAYsclP8paugQTQJs5qyqUgq0EEEFPWQ1TptZyFi7/tLCHIZvkWjiBM4f5J/J/m5DVFuaCYCR4B9u6w8V1Q8zv6zAOWLVgmIC2m+7ozzJwdSYRGiOrUOWRq6HlygNE+p5hgkj9vV8xcxHSICqQJjh5PKwu0ta1MsafNByZ2CEEkqVNpZkL1S/B+ye3HZuy4uyWI5FnVgDVMEInbK5SfXEPtVXK8bnD7dwJeCfh/IQoeC9HjybNuxTFwWa4vkqEcm12F2iE7irq38miNPM/t1T+c27MeupiJdktI7WdaMx7rG5fT5NMKSAU9cSVP5Ptp/CLxzKvCzN9BWdM/4E/0HmMEio9UeYyXr5wfBYQplL8ZPk9RJYMeDktLaBAAc9OEc8Wq9lDNoOKQ89yRtHpbP+tZSGKA09cc+gtlDkPX6qQy8/bi8lnWq8U+A12mZvpx+bKU6ku/OBh77ma8vkgO5IuntaKseZpsei+3bxT6lfmVnviq4RlIyaLjkNnj9XA3mUS+KkMaDKDLNUV0v6NBURcG7jlxUGwlr509HWNhGcIkjUCQ8AGVxwdzh7pS679aEAJeJYqbYJKQ4Bk/Jz9dDdl3ZFxyg3cR9JQr5k1O66lZerQCv5DWFefQ0967dIuLYencIK7rkQQSIqkDafVM/tEBa+4DjRGw2SFTaAOv2uNGbnZ8GQ/rzY/6/Q3DsoFFyd9cP65GewxQI/RBCImGnJG8MOgvnWk0nWcu4Nr","layer_level":1},{"id":"c8d16069-7e59-4855-a785-bdbb26529326","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据库模式","description":"database-schema","prompt":"创建全面的数据库模式文档,基于DB/数据库字段修改记录.txt文件详细描述Access数据库的结构。详细说明项目、设备、脚本、测量数据等核心实体的表结构,包括字段名称、数据类型、主键/外键约束、索引和默认值。解释各表之间的关系(一对多、多对多等)和关联方式,提供ER图可视化表示。针对每个核心表,列举关键字段的业务含义和数据验证规则。包含数据库版本演进历史和字段变更记录,说明不同版本间的兼容性处理策略。","parent_id":"fb64045b-28ff-45d0-99f1-29f11b15a147","progress_status":"completed","dependent_files":"DB/数据库字段修改记录.txt,cpp/ProblemZone/Project.cpp,cpp/ProblemZone/Device.cpp,cpp/ProblemZone/Script.cpp,cpp/ProblemZone/TestingData.cpp","gmt_create":"2026-01-04T14:37:40.9398163+08:00","gmt_modified":"2026-01-04T16:36:27.897708+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkKY19u2QVJ1rg3+MIy4jIV0B9LDVs38uXuu/C+fkZgXZZaSV6R9K2VaR1LyNctaJKxU5tAH3RTRFIrpBy0NgGO+wm0vScC5io8gy/Cd/sGFQUCmkT2D8c/1/+xBeIKUwVZSg7HbWR5w6bFaihCqBYviBODxYgd/nPLtGNBR5yTL10IiWAsV16k3y5c7+1c6EP9/gHP1F0lVSXgsgc/Auqh1MVyoeHzW/I7Yyp5jA2hvKwTVUxQfaZrsIKe7vUakCa/ZBk9FIABSQmYR3OYVWJkz+9wgkKenQEG32H/mxGTjNu8QVwRa0N/dIczwKwX6Orrdegw6Skgz3ftpy03XotUbPfzUSF1vqMYfAlGJyA4HMNbi5G48/bS0erEiliB1MgOp1D1Hd4XyqnmJjdeKh2EHdRWzgQkCs1f17t5oe9J+T4odYPZ0Y7UoD3CzCzx7+isfrl7fTC/SpPCL7m8CjBQFtOJsDa1M4J/AtTuX9Chh3OWJt+Ox0zHhaCUcxOao3kWED3NVxL6LZ8dU5dZqYePX8VlMH+9ohhlCgt/Rnwkxg8EiunL7pLGUgToq4pspJ1ebFnSpNFto2AZMpoP03ncaPUgjPmZEFSbF8J7P9CdYTPBNRIHnEVmnNkQ8coPTvQ/Rd1+tqoDpNLjTvg94OJ/9ScgGTJOuFIYlr+EwYiVjr1iaVgb5DKlXevgbgk2+iXuVwoMoQ5HtV8lSK/c8Fq7RnBJiU4bSsA4HpAqEMMVaX6IAw+jj8iWAfPgELoBNqTKYE0ekUb4PeUbH4HOJU9pMwT7SNPX2sgYWo4RbxBxezF6IW/7Fc3zO9UIcLNuUx2lo4SXJGcu4MPYlcixH2zo/CnFozMpn0PQV+gR00hH4AupZHGAeOzF3R2UUEkOy3l97R0w6Ei1JAO679EdfUBxGux+UIyYKH3EPXRw+zfG4w2G5taK5grP1cn6QjrlaQn5tZQKXPxvp3eLTyYipMtSHoKH+gxgY86aiYj0ZW0fNF1GaKUUyLpRuwXn3kzvsLbQaCMfyuGhTU7xTg+pjXsksu3GIH0UzgXkU/1NAQfu5NS5O3c2Bt1h3smWsX7mryDWwz3tusiVNJfctlj1qOIlygRuMGWmOxX44udv7W8d78v5o1Al6Ny0dEgbjFMpS6xmXiNJwp3cs+7X3ex26l9ktXYLU0/P2EUn5X9RkGHy38p1cEHV7s55mlNGfYZb/fiT1cEoxuan6Ibk7/EjT5S4WlazEtrhUmQMxl7C/mqMvJX0FzNU7xmwqbbrfKCNTuaVVRkYHY6C4wTLNFzAHUwecJpBLmfVOIgecG8oMogziWJHBGZifgCEltuD4WY+o6Hg==","layer_level":1},{"id":"ccd67a46-59bf-464f-a3e9-2bc2ddb2f5a7","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"主界面","description":"main-interface","prompt":"详细描述主界面(MainFrm)的布局结构、菜单系统、工具栏、状态栏以及多文档界面(MDI)架构。解释应用程序启动时的初始化流程和主窗口的消息映射机制。结合MFC资源定义说明界面元素的可视化设计与事件绑定方式。为用户提供主界面导航指南,包括窗口切换、视图管理与快捷操作。为开发者提供主框架的扩展方法,如添加新菜单项、集成自定义视图和处理WM_COMMAND消息。涵盖启动画面(Splash)的显示逻辑与UI状态同步机制。","parent_id":"00dd2207-2775-4db6-802d-c32bf4fae870","progress_status":"completed","dependent_files":"cpp/Views/MainFrm.cpp,cpp/Views/ChildFrm.cpp,cpp/Views/ChildView.cpp,cpp/Views/Splash.cpp,res/GeoMative.rc2,GeoMative.rc","gmt_create":"2026-01-04T14:37:44.6711343+08:00","gmt_modified":"2026-01-04T16:35:15.245876+08:00","raw_data":"WikiEncrypted:3inEWYGWB9ntd3tSuUEILQMHqp8RGwNUgsraxGtXCbLAHP6pXG6lB+17kVElS8oBIjfgwUOJYQcV2SpTOzHpzU5RAvBX0kyjWVxo6htV6JoWKnf5HQ6HsgKdwypOpnbcfdBklr9Xs/puIOUsbwUKrtPsdzx5xA0aQpnsal8KbcV3eJqeGvJIIDHmj8f1k02JLmcyfuFFG/wGJ1Hg9P/U84n9YLMCRfQr+Wxl0BiU27KLX6XAThCBEUZwJFX0FPlNxFs7eayYAuZ8zTIanRoOEskGqwG8R0GlI5VKCtBPzXEM3FkmfKzidiombRTV/ymq2UoqZE+Rvu6ccoSEayvHvZVXnzKPGTZ56lFzXPcmMNrvBLF5ukj5g9YnBf/M/hfx3jMnom06YqBahJLzqv7GoeconKPY5NhOrDfMJDkOF9G4thwiRq2RM02OEwhJmS1qTSzwXuJRYK6xo9T9PdDObCfo1tNwqzDJ+a+/m11t82yUCLPLNXBYctM825n3dOA0hvXxhgdQI1LqRxLHAaWl18/dccjBYBlnEV0i2h+V6BzGJf7REBtRpK0mZ8FGBEOV5bzmmBLJ53G7/SE7vs4VXg7bU5YcbYIApHmp74H0S02UVIFUQlyUE2N1qsaR7nwAqNBeU/CuLx+s+OKdWs1tWsymcj3PcEFMufGfmVtGnGGSJ2+I/VFiXxlt+6dGuDxYdAAu4BvPHD/mMf9ma78RYoHKourQUAD2o4kAnEE7R1SsDgLzE0ryzHJog2eU+fPz7SA+wNSRptbl83LRB06CvGKAWW+cw5Up8B2XidRh+e1LHjzgJbPnnPMUQu8IpeYm0yIl3h7Q2b8gQk7vSTrW8ODf4308ZNebR/NOK/nQGZZMMpi7e2TNRyxZDbS9BcPjEYfCXU9gKVKqr5W1YFa86/GKyHsrIEGj5deWqlygNeNOJWBvIMlE4HHkTNqCm2mR+osw45k9opSkWyg9f7/LuC+sMKvpjdEJr+YA3GPi/fBs4ECqkIIJiMDNEvSnnmMKbjHlTBX5Jb/iVzNDAuKD+ZwmotcnM+6jB1sfrMJubBscKpugyBuZ3lvSVN/8NvaX0oBvinVnH73RN2kWhx4pYlY3fK/1UyCiOHU0VQsIl8x7GYYTWNKhAZLVXvjTg/wJ1GiJ6NCQY3osqSjP0hFDqySAA/0f9swP2nZymHZQ/OSedmd2slpUjmUnQG3IwJYU","layer_level":1},{"id":"2436cc10-dec7-4d38-a8e8-fd3c9d859b2a","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备管理","description":"device-management","prompt":"全面文档化设备管理模块的实现细节。详细说明CDevManager类如何管理设备生命周期,包括设备连接、状态监控、固件升级和设备删除功能。解释设备链表(m_devLinkList)的数据结构设计和句柄处理器(HandleProcessor)的集成机制。描述CDevice类的数据模型及其与数据库的交互方式。提供设备注册、状态变更和异常处理的实际代码示例。阐述设备管理器与其他模块(如项目管理器、脚本管理器)的协作关系,以及在在线/离线模式下的行为差异。包含设备通信协议、错误码处理和性能优化建议。","parent_id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","progress_status":"completed","dependent_files":"cpp/Managers/DevManager.cpp,cpp/Operator/DevOperator.cpp,cpp/ProblemZone/Device.cpp,h/DevManager.h,h/Device.h","gmt_create":"2026-01-04T14:37:54.5685419+08:00","gmt_modified":"2026-01-04T16:35:56.0960368+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvFJm49oIRMeCvI3i9VGl3i/kB454MAh25AEBVJVzk0n8VIuOti30QI6YxwP64LRl1iAkqZFbbEqreOuineqng63/OIZABtLLj+3kCm6kFxnAaon1abTU+Q/3FSgGuyPMoDwKYqGiuiEs1ugPh2BibIpiw/Mwj3aSayddbkpt7ihNnxDTqZsQcGDyiwsj7yKr+fcCXJ1xEZkcQ/kaMGShxwvxGPDEeY2vf4zNApUp2A3HISMRT41aSUmgPV2XTfglpgU1eLgul3xdrNrL0UA62hP10CidE/EyvvRbmwpeQ8RL584bcuHlqsuzlUqpWug2H/jo5ye8lpomOtU1ch1FNRlZ8PbAPJG/UXG7/NMU1CB6Gs0EQVfNJUjGBf/1tq5Gbt1+ylRiUuwdFXK1HnnRsn3veEd3wzieWD9/3MbU2QYQntg1Trk9GJoc9o8cZvPAuMyKvbkCJe0s0DTsjqAjEXWcf45cnrgvVv7kFXSVm004XT63/9PG/xRB5NalPALoICgjmCOMruBOB7+U64lRlzla48E6jqeQ38dGsp+c3ns0xOHNmXKkm4dHap1w5QHO043TT9lJaF/2IDctEvYrOksLu8zqzZ3peLz2XiX2q3IQ3Q3jkav/52qEthoFjduOFzlH9wVhKodnNU8Q0jjSHvEu11HpD5m4PGgdZ+N1llWL6jA7vK5LM3+00M14Y1+M9DKlYq1LIBxtOdk+46Ln0H2czrRwoaw5iZAPCSO6UkQ0xXZghZZGbefhgFBUBZfDGY5nsSRBZcjhRJBryjPznatM1lzXnYNzl1UT0J/tsbsoDLkDJ23AK50s4T+x2Ou5fl/wWhCNkJyGyv5aBTyKbP7b1KkHRliFLiDozZU7nP6a4utkY+Ye1OQd81KeLfbEoP7lglLsR5dm+Q5whYm4/Q0QgqorBcY3WkAYSBxymJcN77B5DR9MIWNllC2lw4acUSThEo6TUOEwYeGRkwstSbRlcu+QZkUj7hbqAMydI2xuRecEi9uurraO+zjhFq7tRVKxceQlNiX1XSC3KofD0/DlzZZMhgoHTuOIClPiGTjvnUAUANMM64WxcnGeM2vuhnK/iawnrQFJjVKpFFj1r8Mhm703zmCyHoFV2upKz3bCzvWxa5yOec2ma6TNHFfvla3+tmI5rg8+aj5wr5uPSrniMUzN4lDIoxJaqnONt6wPf0/RqEvLcFN80Q+GyBk8Bk/iEmiS7Lx4OkO19qoKEM3AOAJsaqvRceuJ6N27tHAi3I0bPEWXLAJ28v4FtRESauysJnHY03h+Cvjp6FHcAUDnORdXGeaw3I6uRubvrFjCiD61w9+qqb6mJHud2Qx01MtvOSnUYoKVDRf3cz1u1MwOkeiKjkvWYk3on5MuU1NM00xgumiOiotk2lY3kfzTru0I/j27CVpZPpSHrp0+WYe2bsJS8Vt62NR6FT7raZqA","layer_level":1},{"id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"代码结构","description":"code-structure","prompt":"创建全面的内容,重点介绍GeomativeStudio的代码结构。解释cpp和h目录下各模块的职责划分:Main目录包含应用程序入口和全局对象;Managers目录包含设备、项目、脚本、测试数据和I/O管理器等核心业务逻辑组件;Operator目录包含具体操作实现;ProblemZone目录包含项目、设备、脚本点等核心数据模型;Views目录包含所有UI视图和对话框实现。详细说明CGeoMativeApp应用程序对象如何协调各个管理器(m_pDevManager, m_pProManager等),以及Constant.h中定义的常量和枚举在系统中的广泛应用。提供模块间调用关系的示例,如用户操作如何通过UI层触发Manager层的业务逻辑处理。","parent_id":"bb5bc1e7-09b4-4fc5-b483-34ce72a8692e","progress_status":"completed","dependent_files":"cpp/Main/GeoMative.cpp,cpp/Managers/DevManager.cpp,cpp/Managers/ProManager.cpp,cpp/Managers/SptManager.cpp,cpp/Managers/TdManager.cpp,cpp/Managers/IOManager.cpp,h/GeoMative.h,h/Constant.h","gmt_create":"2026-01-04T14:38:01.5024594+08:00","gmt_modified":"2026-01-04T16:38:12.7807888+08:00","raw_data":"WikiEncrypted:Gw00+yNdsAXvNpUHE0sZ25090FxQPdb7VSA4zY9naRztClEpOIyP5EDAYKVzHoYPJ20VqF4+mJJwnNLeOMhDBBiirkTDcrjlpy7P6XRR7EG3dmqxseryYNt8thRTY/SUii04luhELGINkMWoPROzt2v7jIa2JEMj0HcelvW324wGDrjOGd+lyqLWoItJVui2/WOb7hA551JnHyT4IP/xUrFCs52AAY4rCr4O/t4/Au18En2rit/JflRqhcAlWHEnNe3Cg5q1afC7byR8SOHxrp5C5cRqaXce8BxOT9+fVfNIKKJO436jZhQdtFuESw1LFRS/tpVBsLKZPMYLSCnCMlBXmstCL2hy4bwwXNynMM0wtOlRP6A6IqwV5fS7H0TqG5JAqXPG3QZxrYMH/PWqC76nj/3iCd+Qp2xrXnq/g3S03S0i5wVnJcQaDwik0GWjfo6GkBw04UlqmZarRglseRnGSF/JNJRTX3DDLS09INwsxxxS4HxEnrrvNIB3TIEYdo2Eo5WroBvzrI+SUsetMyIGOveYdNsm8p70ZcWUcLMVEBVFwMc5L+p4sSBJehZqIfpiNcVLYtP+fKEtRXsL8qYTFT6htCbK3ncv8dj04sSi82RIuFI5e8NWNKDjDAeCaxtJRGmUHIqPHAHvYcgLZr2ZDq6eBDJDe6mdespuyentcVRaS0zZQ59X4OtGlKQrFk914OMoQ6cZRCBP3YiZMK6MCPZzpCxjOHPZKOEoZgw+jIpwiNTKMrAWvWXKNu6Zm3LwDRLDc42Em9gImOkzKs1hGk6RG9cNhs2JnaHnESD9Q/LlhETiqTxxbAHyFdYw97ZgijWqDKrHH7/UiUFCV18q25YObhXE2hzqhV6Xr4ONQDb0sEvw6ToIMvfVfNzxGz00qahhBu3or+o47Szxzi9sx/8vG7Npp5uGSh3zJSS9lcbYXXC3RIKiHaDyXq5OPbK2jTA1KDTB99Rw7LnTPQsEtDzbxbMg5yPbXTE+QkH91CC6/fX10cgUtyISfluMb8wf09L82A7zG+ezPhVsZ/oxNsTDr1pcGcpv+R3MzxL+vB6gPh484qNi8k18vHNtMbWhiVO4j4h/snMyZli2YE2SBXYMKCtTfEHVhukrwi9cXxJNW+ekZdr4gB7MI7jY9hBOsUuA4SF847cHsQ96hUdlHT6lX26Y+fF3aHNdjOT+ZpI3agNhnuSjSeMnhbQZ3+CMmAVs+qow6jjiQYx2UR9NwOIAiVyF5FDgx2rl+9Cqp1qz0d2AQ5PBMpPtgBXnRxxMDYnVo7FqluLWO6+vlbK75UljnlX5RMIxlnW1xmOPDYqdPJplh7jGrG1krcCq8klt6ZbyA0c5LjQfnIneawapzz8AYo2wTdaaiPBwp4B2FnVJf55XLU0/ZobCjS/1z3zW9Dzisr1J+au2IK9rXPycRjcjJPqewq88fOpMfmXcE0U0zRtwpI2+ZVKYwVYSNAzAp0McWE55B87/5JdAmt+Np8d2sOhzCtDZl+FzGCwwsqzXi7EKBGmbgRBcpKdJg7V9ssWrSvWTqRee174c/CnlEJuUDXbFEzdTiDpT5muvSmUEuS7YNNJG8yhfdYbSPsxULTbi5o77ZZEujKt/wA==","layer_level":1},{"id":"dfac6b4a-ffe1-44cc-bf8f-fd87f4adea71","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备管理API","description":"device-management-api","prompt":"创建设备管理API的详细文档,聚焦于DevManager类和Device类的公共接口。文档化所有方法的函数签名、输入参数、返回值类型及可能抛出的异常。解释设备连接、状态监控、参数配置和固件升级等核心功能的调用流程。提供实际代码示例,展示如何初始化设备管理器、枚举连接设备、读取设备状态以及执行固件更新操作。说明该API与其他模块(如项目管理和脚本管理)的集成方式。分析线程安全性与异步操作机制,并给出常见错误处理策略和性能优化建议。","parent_id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","progress_status":"completed","dependent_files":"h/DevManager.h,cpp/Managers/DevManager.cpp,h/Device.h,cpp/ProblemZone/Device.cpp","gmt_create":"2026-01-04T14:38:07.725726+08:00","gmt_modified":"2026-01-04T16:38:06.2915155+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvOUiHqohKn6BWshWHivzY4jjRdHovfIvtJ2sB9MDcSruthNoIvC3T3GfE2va0fdQZEsAoXM+0n0to0auazis2Ix2gHYELVMnvtIb2Dsp/r4JRBm5oyuVTEjhTcWTdFNxtD6lKiKMbPKHF1FyQdZ+OqBomZAyty5g78Qx5E9f6j7oGZ13EtCz5go4nw8CMPcSpkq+HNXNTC2nA4GdXjpEGpujCpUXbya6Dqj4Q+EwNFfxzkXatSsr7/q60aab12tUdwxdJ8PDAVq4EfO9o3N5b8BmLpZHbCFHJm+iQOwAc/oHqiufg8/9eBxmIqcqidiB4ORNEzqBP0MQbpmdEfji9WGSjGp0MNMSMmQllRBWdPhSZ89ruk5JtYskKUfbkMdUWWAIuHX6+YRYoElzZ3en2UW7tkWvl2He0zbBR1feb/uCmx+VErT9jjPLKo4Q1y06/D13y2SsLIIkI7f9V1Tn5a0Y8+dF/cHb4bhp2xEWj5vE8UAd7DSzuok3Qvi0RiGEvLlnFM4VKUCbbWjMzpJLqwBRS5D6/XYmoJ9jqNPJY6t9QsfkNDyQuOssdHQocFOn2UkHPbTZu2NrBDy7B5LH22l1I4Z0NQC8eqGo0TDZQLQ02x/tEUAd/sEnl0pkuog0jx5/ftv6A9WvOSmIvmmoOcMA0oS5ZaDt6qtAmdSd25oeAj31D0AarKVdxNQgohdV726u4bEtLEkgeEI5FW4FsJ/S5V8ZNIjD5fCZTbspJWN6LT4cxeuRFF41+MxUdh6ezzMTgmLzSLtC0NaGSnXeQMueOZ48LiHtNMW6GsiEa+6pevhNTWWYcYgmI5cHzPSz3NtCp9enQarjch4nA232gx4WQnMuGoc7jmrsE1tg49Nu5a7yPdBr6bN9zEiboGx1Yq1gk8PttKYmpWSvzeGcTzwke6LAOdjl9m68mny7TEiYzyUZky+Q1bKQOWttOEVwgxMCkbzn6vXbDaar86/pS0r013/+dd8VV7FRbKPYbXriIk9kiStBMUHSLmDzVAGtzhM5QpTG0OfgJXqMyrnMweGcz7qIZl8ey2kJ3noAb3gPo/pzWdKbEg6VDc27NQT6gSfZMC3uaxlraTTvcXKxdJh9zKpiHD8khYrH+MFS0wjiGhBXkzDR39n8mxj3B0q3bJcYTOo+m3IlDOu8QA3GCZ72uGvUjNiBfyT0kjvPkFfu4EY145vtqfMiN82Y5aN/QYvQ5GteF6Ie7TaHYf5kaOA=","layer_level":1},{"id":"1ea8cb84-e3db-4c9e-99ca-904804c1610e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"应用配置详解","description":"application-configuration","prompt":"深入解析GeomativeStudio中config.ini文件的结构与各项配置参数的具体含义。详细说明[UI]节中的Language参数如何控制界面语言显示;[TRANSFER_INFO]节中的UpdateServerUrl和HomePageUrl配置项在数据传输和系统更新中的作用;[EXPORT_DATA]节中Style参数对导出数据格式的影响;[ONLINE_DEVICE]节中IP和Port参数如何配置远程设备连接;[USER_INFO]节中UserName和UserPwd的认证机制;以及[CROSS_HOLE_CFG]节中HoleSpace、FirstPoleDep等跨孔测量相关参数的物理意义与设置方法。结合实际应用场景,提供多环境(开发、测试、生产)下的配置示例,并说明根目录config.ini优先级高于安装目录配置文件的加载逻辑。同时,给出配置文件维护的最佳实践,包括参数修改后的生效机制、常见配置错误排查方法。","parent_id":"eee36cb6-1e0f-444a-b200-b449d083bf18","progress_status":"completed","dependent_files":"config.ini,Install/Geomative Studio/config.ini","gmt_create":"2026-01-04T14:38:11.6204353+08:00","gmt_modified":"2026-01-04T14:58:16.181562+08:00","raw_data":"WikiEncrypted:6Fw6zeKwEGma9eKCQx5Pd8+gczSK/sLVoUAk9JT1g1H5WE1OVfW4AZsI8yEXH4tx3NF5WU4pCdm/bbM4zR9ALroh0UU8oAfNJewu7VdWGzBaZNLfyComNc6YDd4Y1CVfmmRVCJl9IgPpzoD6qs1jyQLoLhoVibKPuKoEpFxjEx+HmADGalaiRWits7qx0dJ/PlnPmaC1t9tladFsN63dZTuJfddN6g+yKfCcrj75rzRuga6WGObcDVrqX74QyAd5ZUyEoZkiU277LlrLVv0BOv36LyxsXb0jGTcKKZMp6IQhN1RpnVjkrxEgsxFeEas6Kvxr8yvDbIbbfaSQug0s7Nqd+g/b4qHhad44TUm2pzI5/ZaArLKsLDNZjMnL0tTbK6HMSa7LWF0gLKBfGNhWnWzZrAhIFC1Yd5mvuENE3p1R1gY8uACuPPdeNF9wXz5CpxCzdZyMA2nC4RdUSvQ3pqfmKW38rbPXFAczQMxBoNwFEVqZL7CBEi3h3qmDXtNmUQnLooD9TWuz3o59rdUx/yyN+NtE32/2o+SlZZeSsraQz8tn7W6FOs3WpZSWuDbL06u0zmazm0b596f6duLRxbYAmwPV6ndKxeiJrClXKf5CyylToNQjXiM2C/1jsargO4FszpS8vZyxM2qoGftd/SWJOs0DvHzY3n5f/pBfxXa6C0/gEoBqamoscGWlpb8NU01aofvLDpJlBXcHLyTUArXhDdJ+BZebfbWe0rK6kGocvVENSXJuRuEc575Jqe+m+yRAUfhIfLDPSYjfSzB7TlDQ7go7H9vraYXcli4uRog6ttqhEPK/q2UA7T39Uivq0fCgV9wxmhSqE2EGlxKwVv7CVSG7W3mZr5yMAGHtXot0sXeNKHic/2SnpDKlCF1aQJoWoZHV8ds/X5m5HigH/0QyNrKa5nday+I/GF2YtfRsTFkxpbWAfwKSVYGLzwee20TGNl3srr9L8xYTIbKXT+q67+VTuNyAzS6JC+8ALwOiO2U+KES0LmpGDXW7h+pkwkKSBQQ1eKKoVuNyDjxTpdaJyCg+nSc2Qvqnqv9OtVStrp4WYnFIMGXsIlruxVan/q61TqL2WY8swt6bEFmRQZmOJYX7blHmM00Ey5iYviTrMnpoAkZgUli1qtytDYsYAl4UQ4fwsZquYukJbIZt6aaUv+Pr9uLlpa+cjwMhoeW61h9nEP2LosI9QzW67USdFhtqTtodxyHlLSGEpZfvWp8at5E+wSyIp6fZiOQSZbcwt2mf7d4C3qMEdT3l0w6KEAtKqq6RtSAu0jecUC854ObpcuZ4hBtHfY4DiZnzepCHkp0rzffmO9nM48u7uWHpbhDmI0DAP73U4vKiRuzW6pFMeSvv9vDoPhKh8CuAdQLWSy6oS2tM8tj7WBhPENwNpGgfC76G5iQSnqzy+z5CvEzJkMCCAK5KQnGbp88DwKUFUwOMFGEMQhcqaWWG5/qrPu6x1a9wtJ5kYMgOGqbTzDRgcwr81IbjeHRajNUBO9pojl4PtzGh5JX+wF+lj4/UHj8BA4TL2j6Vk+fvy3QMvg==","layer_level":2},{"id":"e440e501-acde-43e6-b1bb-fa2943f92232","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备连接问题","description":"device_connection_issues","prompt":"深入分析设备连接失败的常见原因,包括串口通信异常、设备未识别、驱动安装问题和硬件检测超时等。基于DetcGD10Dev.cpp中的设备检测逻辑,解释设备发现流程和状态判断机制。结合detect_gd20_log.txt日志内容,说明系统在检测GD20设备时的行为模式。提供详细的排查步骤,如检查COM端口配置、验证USB驱动安装、确认设备供电状态等。文档化错误代码EN_InitFailed、EN_InitSendOpen等的触发条件和解决方案。为开发人员提供调试建议,包括如何启用详细日志和使用诊断工具。","parent_id":"cb978e4c-d19b-4711-a81f-e657707e1e66","progress_status":"completed","dependent_files":"cpp/Operator/DetcGD10Dev.cpp,Install/Geomative Studio/LOG/detect_gd20_log.txt,h/Constant.h,cpp/Managers/DevManager.cpp","gmt_create":"2026-01-04T14:38:14.1791319+08:00","gmt_modified":"2026-01-04T16:38:09.0978021+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvNx5cr/tPyy9GChpbxYZFVxuvFoNikb52u9KhtVh3hyG0F6BTEFys64cWti7pbIjQ5g386hEU1535/9ncpYCK1VdHWxS3JMfLeISc5JDGs/tseF/QMr2GeRREDur3mSJD/8eZBy5F6DksKMtycUPNDYjCM6SKAU61Nf1bMmiVbQYvJzreINHp5o4Yz2IK27TOlzBG66if8L66E1D+aD3nio5MXsu43ePpDqXKmoWDf0TKvHUB60ETDNpE7u9vnpCTnWjIEv8VIv46eH0FTj2nVIdbufalJ3zotbiBA9MqWkXzEWdEpAIQmnUA0zld74x/bFdrQykqt0Jx1FbUtNz4CzbH8Aqfer7GjhX77M08i6CbOF2PSzYMzUJILllOORtnyZrrn3qnnRgHp//7nSCY/n7YQBe1tTLdPzl+buejU3kJBIRnlzxM5QgmPgaxigMfI6YnMkM+0HcZlUcpmOhatZgGnYSE6spYKnpe7krsnw0JxvAf8qEay860LEzryzh5sRkZTwzZm52r8mJxdrIsSuvkxO9q2nFjAYIwcvenL4CiPXj1DAdbJ+iSOZgF6mVVOVbcTG4EsN8XpJ741QlG8NeRZD4xHyvp5mKd1at1iDFoc1tSdAX072hmPJoDjMJOYEhlMZZ4dOfKgq/oLJxy92I7XfsLiWcwNEPJlg/HNv7PzumtP94WxvGjlzEqQPaKHPaR8Lh6LD6hQtVmTkYiEYqXY2XmnxW5W4XGdN7SXCHlX1l7My0I0+NeMiwJD2PDpqt7M0VauBbxC1gRVIILDBTTa/1PlqPcmGB7fWysOUzuGZDIm3wI2dDe2Qt720wz2Iu2ZEx3Cvjxcl4Lz4euTXrv2TT9U7H0oTV9zUSypoUPwTznd5ZIQdKw+7y8tP+xELYj/n2N9ODRNtq/GO9fiPyKV+wDzuJthEvUWvhQ2pXzG0WYreLC/LtqoVlI4iFfjgBnV+Dl1KmWZDl+I/2N91CkyBk3VV8kdyLtwBMJLp/UwoN6hemNVSMyE4sxiFek/HOC25szs8+/LLuLpk+UPzoTj0NlbTG3MWwocm1lew2sxH3LZYCoisSTkG4icO2dSl5+IO/KcCDnmCi8mD9iQTAWQ36sks1bsuliRvJeqKyJJlLT9isdIN2gGd9PZAPN+ohqC0DRL5utNTJHwxiwFwLKzDqyM3iOYAUtlyBv5cnKLxYq7g2l8AnOSaZIHy7JV1K0Z8rgTzyaU3g7LDT2/NaxonnuCY1BVZU5Dexj1Db8LYq8BLBC2VJiFYU3StKZFS84caNEkB4b4DT0qjV1ug=","layer_level":1},{"id":"95f4fcdf-f367-443d-ab29-282046521b21","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目数据模型","description":"project-data-model","prompt":"创建全面的项目数据模型文档,详细描述项目表(project)的结构,包括字段名称、数据类型、主键/外键约束和默认值。解释项目与测区(tz)之间的关系,说明默认工程和默认测区的实现机制。基于数据库字段修改记录,梳理项目相关表的演进历史,特别是2017年9月12日添加默认工程和测区的变更。列举关键字段的业务含义,如项目名称、创建时间、坐标系统等,并说明数据验证规则和访问模式。","parent_id":"c8d16069-7e59-4855-a785-bdbb26529326","progress_status":"completed","dependent_files":"DB/数据库字段修改记录.txt,cpp/ProblemZone/Project.cpp,h/Project.h","gmt_create":"2026-01-04T14:38:23.4532478+08:00","gmt_modified":"2026-01-04T14:58:16.1321148+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn1SRocJdO7gnCSFTAEfVbAmHpmTrHPUTvbUdBVxIfSJQVfywErASjk6u28gM5NBuUoaxAa7wkO/OTFYT9wwPzH2tyaaR/rftgKeiaJ9JmOeDV90j4x4NYPbIb/FOnesng7gb2ggWZlYhZ3oQhw3yIEJPQ0DrQBYBnmZuiyctXt5hT3O9HgJd+bJjhguheZpFHem7PlMbit/8kmqNZIFLqC0SObzALgO2OVK0DsNLv4nr4EYs0Pfq5E+ceEJAxkxstyAKs8jhrz+a8g0mJ3Tm9WfI+QOw/36+QePI48NpQlsKhAEo5o91seA5hLhagLmAek1a/BWE7wwPesUtLTW8ZBjwWGdhyRlqsuswslFgoNfoAtz9kQT3hJOMJQsKmSMfqltbnWuasv5MFvB9b3E55y2XVHNV/viy9/DwPhwTevW8mrwBm9jei03fAMoKoA/mNb3LodKZJYCqWNEM1f2QToW88ts+nYsk2iwoz+tfxpGpy0oVf2w4nLEsDsLd/xMZDz9mSrXUDpXUenS68wdC05AdGp3liF22yDfOFBIygmoBgLfB/wRcVnD/XlQ4B/cEUBwZBOek6r1VsruYJ3lXHV61yv7UFMFTqKo2aTbB6DAb2rmVjU5QIh0yAaBq+KJix8+F02g4Sk99U1aPqjKDbULkqQsVybbGK5LMnIdFaLb0Ne2EtKXrbPSAZIpXBskT7yNTtjrQ4rLMCwvAfin3eJmfapFmHzDWAhdBZsrfm8FyVsZAhTdfwABqt6/wizuAJLS/+nBPNyQuYtJy7CPqqj2ONkslEaW6DAeG2/bg0rBcuaj5jxjZ6dKZWWP541cgjPkNkMcHppd5Zp4FQgGce0iefwqFYNAKJcawyS3k0hlKdiWlW1YVRLL7zOx7jYUr92bLARSZ0By2IgcCFONKLx7DofN+CTf6a53LaRXnxQI2jgycWMsvhEB1YLYgo0B3iqrVfeZDQDLO65poum6XZZloCQxg2J6oFHpXWkXec3jteQ9Par6hbUiJU2sJHVqlk7eepLmwwFOPoswjUzwai6K5gaq+RMxTElC+Fs5d619LqCjjSNvV3hOeLN+7nZHXk1WDTIoX6twqNe5SRn8sRmo=","layer_level":2},{"id":"75ef0b41-d7a9-4ed0-9f2d-aadb12478669","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据库连接管理","description":"database-connection-management","prompt":"创建数据库连接管理的详细文档,重点描述基于ADO的数据库连接机制。说明CIOManager类如何初始化和管理与Access数据库的连接,包括连接字符串配置、连接池使用策略以及连接生命周期管理。解释在应用程序启动和关闭时的连接处理流程,以及多线程环境下的连接同步机制。结合代码示例展示连接建立、健康检查和异常恢复的具体实现。阐述连接超时设置、资源释放和内存泄漏防范措施,并提供性能调优建议。","parent_id":"9c6698e3-6e8a-4c4e-979b-57426f8ebd31","progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h,cpp/Managers/ProManager.cpp,h/ProManager.h","gmt_create":"2026-01-04T14:38:29.809127+08:00","gmt_modified":"2026-01-04T15:01:52.6790864+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkDU6/DlCfwh7bFOnofZmDQRTPz1KBcng4timWoxk2OuFbDubQAos3o3EglEbsg+DkOiDMowt1WCocy7QSC718tAEjXFSvhDebz6JcPOTB+NCpBWstJ84p3UrEg6cEpOEdP5P4ezfU1aTJqS3o+wm5vkCUrOUBIaCf8sMuXw+QLlLvhrrW6Dc/0DSipbqnQ9SQqDaqqtgJMsV2q05M2D8SMWGFgZuJUgthndJeq6tluPw9mHUxZ7z1hEaiaEeC8eOcBAyPSfrlosUlihdwwuz0NRE+7JJrc1prIpOMDVmTU5GJsC6oQosJedjQS8hQzaAAKbyZdzX/CeRqYckd2PGerRMprwGVv30ywZZDjOworLivTiR9iMleHNI6V5KVCXexK6REJ9/rReu94l+ZSx7+yNXBBBY4inbR1Bo3XNJMwv1Dxy6r+AgUhVEUryuCRexBpEr0BdJnp+eEA4Vz+tyH18o+bjpoO02rMSll0hzqAhJVNsOcPsHWh2Q6L990/Q9WO8czdIouyfD079IiEFDBGVfmk7uuhMMsxv5AtUBgH9yIYQ0hS2GEeHw9ZHz6pNhptdN484kVJqkVbIpoP7u2tfzGWfQ1NJs36ISUw+yVAWTvAe/T6XuvwXGr5EOc7EitdIXOVRO0M274MKeV2zWtOLBq6hCjQai2yqQYN3mlirWrBxO1/OiRFuI5TA82Ff0zZ84MU0mfVKxWhVVxw+XbyllY5F/l5DeuesraQ0fkKhrG+O65GwbGQfiMNiEOpCHcMkZoYZqMfTJgiGJPZk3wO/UEdQTirwOigXTbJHkX/dfe65i0sU9sQLR/l6a7yUrl93WK3I2Fl/cvmk0AtItv2jmVoRYT8lM4VNNOGJphzCon1Ex9i5+D7z5Dcdu3JyLB7gsg6XGBF5h50mN7ZM01tTyvFjJ8ZQRfPKA6viwwPJaK+hVtEDsMCqU3Gb2zuHfRH/jR5CYyw1mjFac37Mf3SiOfVmOPTKfnajf8amUsocFaXoMAaGOlZX7H1h+IcJwo6mpZ+TgY8/9sNKFlRP12D4o7uofv2QhLeAXliPBWYJDkhjiNJ4RsP96T33511YaJu6M1QTgribNhZTePBt6IAvnAPvxYv/44LdiMEjGzRSqWyL9znEGAAG20krV/APn+A==","layer_level":2},{"id":"29c02313-425b-4f8e-b34c-82bf2adf1d59","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备连接与发现","description":"device-connection-discovery","prompt":"深入文档化设备连接与发现功能的实现机制,重点描述串口扫描、设备识别协议(GD10)和通信建立流程。解释CDevMngFrame中OnRefreshNavDevice消息处理如何触发设备列表更新,以及DialFindComShow对话框在串口配置中的作用。提供用户操作指南,涵盖手动/自动设备发现、串口参数设置与连接测试。为开发者说明如何扩展支持新型设备型号、修改设备识别逻辑或集成网络设备发现协议(如UDP广播)。结合DevManager的设备枚举接口,阐述底层通信层与UI层的数据同步机制。","parent_id":"3f537301-6406-42a1-984c-2ba217f77900","progress_status":"completed","dependent_files":"cpp/Views/devmngframe.cpp,cpp/Views/DialFindComShow.cpp,h/DialFindComShow.h,h/devmngframe.h,cpp/Managers/DevManager.cpp,h/DevManager.h","gmt_create":"2026-01-04T14:38:37.4499909+08:00","gmt_modified":"2026-01-04T15:02:00.0182009+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvM7C3OF+djvALeORl02l1a1dGAd3ArqVy44AVX/PA9YnczUiSMjYGbORZnGE+SvO3OzxXjBfQOiPfj2M18BwrqtdMczCSXVHQIApMeD9rTv7RUWJrFsYq42RXpJB726uBUrrKnFgdor6R9XNgJLBS2TmeU/otAnzGBxFMIZtJ1kN9nTprlthuxfGFedIihNSM2K2X+2isxaCx0y900ZKniKfNPZB+ZXPzKI/Tg3pwWQeWr4ONsGvaFIqPtXEFQAzCbEqEbXK5XbJ4tTYZMvGHy+OG7rGM7GnJfzO1F1JBIwzLGaKejtX53DFDR4LORiWoqhqA2vlow0O12R+WbGv/BsTOQ5qciOkIwYlWCUMQ3CZEFuNxKIhELz4Vs6S2n5RdYB9AnTOCX2qvytP15mWDGyAeoa28DEInB2JmzmEhSFQ/NqW/bEsAgSDto/NuRjy7aPaAS0542pTFJx0GQ79Mgf6j3JiAwO/z8IfkA5f3wnzvAb/eVCbakPngbcsnCycSyKLJoOn4ycxFGCN7dSuQ55kozkPI5R1+KCEbw84wWvhHaQjeJP9OFfdT9cWICJmEy5EQSYpG+uZsAl0cQyI7mfobRx4Y1wRo7FNesUqcxMQimiPkRrZPdNUXEijYESpvxYAVd9v408X+TtTfYsWEli7Ht0e9ZztNl0Rhj6QRp3AGcx2tDEE81fWovh1ha6zPjavJmdTAszzYQoEXgva8nuj5pwsffEwNs8pCfwZTrwnJ+vdLxkTUPNy7EiwJqheg2tiutQGF8yylcaLflj7eLU9gk0h5MUlLRvDQ4fXDsZQ5wrkpFLhAIDrrM/P9xS5ObR8BmyAA3w6Fk3HZRJI3GsRF9jzt/Wm5OSeQppi4i3PwA+h+OAKfNwijFB9Wn3jSjPDX5cH6DezbpN/Fcm9vtHUsOxro9P1qoSKYto6oNdCWnFEwtxzzKO5nUt+qMpz2+YEwTIi3qGGXzM3YfmoLt2aNiGtbZIW2/TwjuZFvY8oHEEDFceJq6CIh+KnXWAlIZejiQjT41F2XRVtNaGnLFz0wpP5/E/sIK5Tk9UbFgVSy4jDWJPnraL8yQt6Mxx/Qlez5H7iUU7Eg0A/Rru6CX1OHhgPDb0cIODv5lbXIfoz7unPAsCixTyDveW+fnuXPmJ3QI4zibVaOUBV636pMdci4YmGBguRld5oS69xRwqxJD9RELwxOrPcfWLc8EuwSYgyYYDkYnC1j0uYZV1j7C3+RhVxnhBRHR+XnSq70HPVzBGSrc4/N2+J9prqESwmTKzeTK3+XZHx8PkTx/3bQV1DYQ0U10kRFw+IkqoLMxa9saVgri9+FV/6MBlqpmL1w/MREo+cGyjrhUau4pZWZQxbGE7KL6RwDYzH0SU7GG9R","layer_level":2},{"id":"adccf077-cfc2-4277-a027-327a9fee6508","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目创建与管理","description":"project-creation-management","prompt":"详细文档化项目创建流程,涵盖1D、2D和3D测量项目的初始化配置。解释不同项目类型对应的对话框实现机制(DialNew1DTask、DialNew2DTask、DialNew3DTask)及其与Project数据模型的交互。描述项目参数设置、测区定义和基础配置的用户界面逻辑。为开发者提供项目类型扩展的技术路径,包括新增项目模板、自定义参数字段和项目验证规则的实现方法。说明项目数据在内存中的组织结构、XML缓存机制(CACHE/project.xml)以及与数据库的同步策略。","parent_id":"aa89218f-27dc-4295-b248-d1c3aa8f69d2","progress_status":"completed","dependent_files":"cpp/Views/DialNew1DTask.cpp,cpp/Views/DialNew2DTask.cpp,cpp/Views/DialNew3DTask.cpp,cpp/ProblemZone/Project.cpp,h/DialNew1DTask.h,h/DialNew2DTask.h,h/DialNew3DTask.h,h/Project.h","gmt_create":"2026-01-04T14:38:40.0092651+08:00","gmt_modified":"2026-01-04T15:04:19.2741001+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn4RNxWCiUHcbeEkPjRxwd5BR5hgzrqnI6MO91Z/xUba7bLqaOa1tSeRzqfzR7dISQ91bMBMp67o4/8F3xxrwRxSfCJ9cCcIFq1OW+s5LCAUUhVc51/ajau2VDgyYt31Ck9Ha4YB44J01FG4SemJBXka2etOqU6XB2qoWpqFH6o6tngTpCs+ZvMekH1uZ+CZrW2iBSanidbfLn1XblXQZL+s5004pjHVI1zFLn4cSU6U/kv7uGrpnAnRqP2iL3/FO5s5F8aK0fgDvAOawX3wWKezfHUrHkewXHXRvXzofQBPLtmYp9EBv7/eHuuKT6tQSqVQxlEaozcrbrlUhLwuXrEzKeZWy9jpo0j8qd5nikVLLm3UeoiUpwAKqCfdFi3jF6eWUQBDDT+3Y+MRgZ+5uXjB/aKt0dwQmETPsMzs0id4FqZB9OLuFnffdbZKiS3dx2SlT3iIIYY0aX6g3xeoPVd4vU8DZryb/4HLFUQzOYhPo21quJIZaRLS1GAWWm9hZKKVTZS2j/hEjOdKvAtWj4NCYbBnfsZ/SR/Z4rS5UGERMfvTUMKcV2esEFoUcBiJg2Z64M3c10Mo3QBrEXKVbVuC2dFWT6cENFCbsbeH3io2cBlREJpo/k37LPmtYoUn1KOkU3BwznMqkgd9bugJIu/3oHVe5d8j9S5tFipT/xiN6vJ8i2O8NQ1jrtDFEh62e+BpCSac0blWeWTsBOwus2xsUlgRv4eIC+w44UzumHPenGELPuHf0SQCc5iMTYX486U5vH+Nm1Bnk9SnYWbv6YIHqxfXVlONGul0tD+YhR5AxUfpOG+C8vLx9USZxSQ5wnO17w1XUKCqNfKDhlrzS7Bvf+vdiYUvloozZbFN0Oh2PI8PDCWoKJXIgJ/WWkwK/nvSV8/ez85+vi9jZ2YICpZ3Z3XaczEkgHq2Bv7SpTu0y9KNLkZ0NzQ9aSou+e8+mtV0l7i9kD6V3xiCwbg/UnFjs5XsMcJSt2Kro3SO/3ZMtyj8tfB1z8CBH84UI1soTFyxDCkfALFgNdaQdMU9oTuiXmnbm3ITGCLZi9JRK9YzSaz8QpFBKxOSo8dm9zuELuYpnUZyyv9t4LDPGRKNYdVIL+4rJH0XPmqoPpwfXxv7zNpo/N9q4GLG5EhDsqrZud3+Z8q81SHaFgAGtXQ9ALuy55wYvR9G0V4zizUWyCsW5V/IfuRTrkvwrFjuNKSjIhDHP51lzF7oul7GojkgU0iFu1RLKAWziIFw6W/tBoY1v9DoCvpazmoen3JjYJVjh8x3kLlMvzEN3HbBid/ykuAutEMOFahl4FzvXm51MHG2cZTHj/e58y989VV4Jdxae8P7cWsldWOmBwt2suf2yx0W/vckPihFTqMDLe96xu+BU","layer_level":2},{"id":"59d469e5-a5bf-48f6-874e-78c0505bf1e6","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测量数据浏览","description":"measurement-data-browsing","prompt":"详细开发测量数据浏览功能的文档内容。解释数据管理框架(datamngframe)如何集成测试数据列表视图(appdatatdlistview)、详细信息面板(appdatatddetaillistview)和图形化展示组件(appdatatdgrlistview)的联动机制。描述用户通过DialListMeasuData和DialListMeasuGR对话框进行数据查询、筛选和可视化操作的完整流程。为开发者提供扩展数据展示字段、自定义排序规则或集成新型图表组件的技术指导。结合代码示例说明MFC消息映射机制在数据刷新与界面更新中的应用,并提供处理大规模数据集时的性能优化建议,如虚拟列表控件的使用和异步加载策略。","parent_id":"e782bc89-0c12-4b91-86f8-98dde91ed07e","progress_status":"completed","dependent_files":"cpp/Views/datamngframe.cpp,cpp/Views/appdatatdlistview.cpp,cpp/Views/appdatatddetaillistview.cpp,cpp/Views/appdatatdgrlistview.cpp,cpp/Views/DialListMeasuData.cpp,cpp/Views/DialListMeasuGR.cpp,h/DialListMeasuData.h,h/datamngframe.h,h/appdatatdlistview.h,h/appdatatddetaillistview.h,h/appdatatdgrlistview.h","gmt_create":"2026-01-04T14:38:50.7199551+08:00","gmt_modified":"2026-01-04T15:07:11.7280181+08:00","raw_data":"WikiEncrypted:q+toD7/dKEULkwX8wtq57yEp8oa3pUT++tPylwkyN6kEp25YFtQ0fhF7Yml5r0ibnaAyQ0LtopfaHiUgLWGZ+IFYlH3IuwRFP8jZfwv6ZPaJGeMePmG+mUePDPV566CkSa1QPGr+n9m2+e+Pxne8U8dwbnbP7YTW5Tl8yyoxITCikF7VyiReIMivD5y6YQ1GTfJMNjF68kdv+oA+ja/NCG27hPRh7XgXhTqqEhroiOJWXeWYV9I15lkIe6TRbSmrVrg04sXB6wDvREx1RS/sBCZtR22v4S+3UbTY9+ipaTMxe1ES5fkfFvjBwySfM1AAD8acDWGbyxiDwlC+ppKGSqMKBmCN0C0KMSHpcc1ZSiRSGVieMDCHbw1aQFn7unqMXkocyb9kGkI1XGGYFrTzKsm7RuUKILon+G2PR81vUODgTVVmaPHMh392OHtDtvFw94ELLMyeQvWB/+2g8hxMcOdZyeKwCoBBobI2ReZSwcByX5jeqOkN0KfMUvstW9KYYWWh0PHgWwd3nIsjC7C03hyGg+6pblWGZ6gChHR48SMmXei6mo8I9vVC+USeWFaNBPby/EzfT5R7ofAlkV928EFOSEi/Iq5V648wCbJWRUIfCQUXNfAcGJLFQ4CD+4JfA7F6Cpdn+rHHbFnAK2M9TJQAsx00Jddwg1Qt7WDKq1tMKubGD4vXBl71bCOIXpZzQsKgwHRUVW5kXe4jtxyH0f4lCXRKKwNmDpcrTCQPPI4yfvITrvCpW50AlFyxoncj4QbW7NGWqdm/sXzYDLj6P5eae9HGAYmWJw3uOCEuvzcGuOKFCBq8IpBL2SCaFsj35XoXvZItqR9W+t+L9ZnzVBkLG69+A6R01hGx+U37Ptkyagrwh1DjD3MjRbx5NvdL/uHq6cTBvUVPGLSNwZz0Lo2J0l7+Qozfj7gPtiwoFE3XBv1lGiWHwnDGxI5CX5GJaAVky6LKdmlRWN+QRULZQJypkCkQFDzxGzi9MuSPxUARS0csp6pGaMg5LC+pMF9N9rvHbU1srUlx6gDWMymDSM4igkgL4KH4fLZIs5mmEjAmnVQkr9iNsS8K03/dr7dmpJlnSvg+6dZF60qG4YfjRLkpIUR53mBUQx3pxR54QuVCz+3VjP6SUJN5wIluEgnQ6Ow6ItPmEDzB3xeMGZlcUKZ+RnYy/YLeYEWHXrFI2wWwE0DLbBP8vee4tIhUIjLa7BXXiKb+TYpKMlhiGkslWwZk0t5G1WuF0KrydtSiQ4hLUAxpXF+QLCK9PNN5Cc9kaN2rjuXKlJenJVqu7R9u4gWki1P09wTF57mw3d0kd0kcEtgTKO2IOlW3mY3f/HFr+1oUeBLKFE6TMZJJUWhDDJ/T8+vC155+mVW4xBJeWiVJL0ZK23X6JIXKFVmrOL34A+NfcUVtQe1j/ElI852HKJ9QR6+l+hnhJejsjhLzfQp2c+YDFxZ4W8s4vO6tLO7wYRUrkZ77yjFdO2KTtwbNs4S9pYLES0b9J7+idcIBK2jSbyZ5weiHNtbjL2jz/7Ue0ZgxEMKWrdaA77htoP0k2QA3lH9JK3S9HS7wcDEzp8wpdAAkznHlSZzD1FrZc0rP0FycpZvHQcjpJ+WgwhFlYfwJqdm+y6hlie4rcuGtQt+4xqlc5rcih5aN1hCTC6kgDuQuUGXLCy3UNEKSgwuN+7i4qO/z9n1/2VWQF/qOJoXjL6rlPDX9cD1XlgRObsYH08c6vHAVxBTsHq4GoLNdfvsRNtIYnQPLfS+WzUouTZpYWCmlMbmi2T1Oq1UABBOnk76YD6AYNGt3+Tt9Ez9Lsy7PUGSyh+1oexhE1jZE1e8=","layer_level":2},{"id":"73de9042-25da-401a-a3bc-94817aaa1997","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备连接与注册","description":"device-connection-registration","prompt":"详细开发设备连接与注册功能的文档内容。重点阐述CDevManager如何通过串口(SComPort)检测和建立与GD10设备的通信连接,包括设备枚举、握手协议、自动识别机制的实现流程。解释设备注册过程中的数据初始化逻辑,如设备序列号、固件版本、硬件配置的读取与存储。描述CDevice对象在连接成功后的创建与链表注册(m_devLinkList)机制。提供设备连接超时、端口占用、协议不匹配等常见问题的解决方案。结合代码示例说明连接状态变更通知机制及其在UI层的响应处理。","parent_id":"2436cc10-dec7-4d38-a8e8-fd3c9d859b2a","progress_status":"completed","dependent_files":"cpp/Managers/DevManager.cpp,cpp/Operator/DevOperator.cpp,cpp/ProblemZone/Device.cpp,h/DevManager.h,h/Device.h,cpp/Tools/SComPort.cpp,h/SComPort.h","gmt_create":"2026-01-04T14:38:58.2969058+08:00","gmt_modified":"2026-01-04T15:07:49.8147638+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvJW09GYQUzz52VlOtwvSIkrZ7TyTaV2DVlXEKkFntRK1DRodRxuWCx1k5US433QK/5SYDTFiMoeE525aUuo2G+EYYXm5LYnXuIKbVqu4BGC15iGnsciz5V/vCo+cIEq3dyUtw3QhxR9+WnNFcFW93G8s70HVyiXoChpdcsN3m7TzAbKEiFVVLEFdvRT+N1IZpZ0tBVndPWuRMb54DrQNc7HuLwqsrBF7pmAl2WrmZBQ8ofp/n/tMWEiLs2L7BRxIDyFCHubLQpfl8x/UhQnn8rPKw7CAjJzBJ4qq/DZcC1aW5JhlxJqCqjvEnv3NAvMXC4Aw/l6ZVLgU7qybvCdCR451NrdxjtZ8/iyHiIc2exk4wIAUcOUKj+qVTqWliml6siqzpYS8rCfxZw7H2cxV47EwN1fLSbnOZEelM77FU1eQvslIwnHzyAFoivqmk4sZXOt8bDQHjQBjTXtKDzlSGON6E2wU1j2xqrj6O8WZU0n7Dm7cZ/VlfKD19dsg7GhdgVU+Y2/4G0UNHqGC/htN+Hwxa8c6QeNj1l8YsLg5ytC0Y5o67q5BeSRamzrcm89mHMz5gT9NL3bw2jd6rNIJm8lIf3ByT7tsbFSQGm2rInC9BSUpKktmc/vw7llVQC6Hwk37OsFlrQo3fiQpiF0IpVwC/NmQ8m5KfrLJUA6cjz1UH4hk+1xPRSmHaOCeMKJJnwxvP3Ph0y9nvzAaUznhDis1i2dDzgMZyYvsocKE9zVrSh0EDEo8NGsnsW/mV1EXT2rrY5UEHTIYZenZ66YkPI1P/bxqhzPT1v+O8g6iPGACSl0/rNDP9MMuAhF3gLtkyTMZ8Y8h3avaagJhrrzxDEl/yvxobap+hYVwdvRdYuo9bLl54EGp9xTHplpk7/1l2v7e/u6Tzw7l6ZY3og7wUDIzDvzAbzU3tN8ri1MrZo/xq0h/wpBuc3UrCj66tPi5rSWf5qfm1cDKc5y+YxgPRJ7hGhAZDpLswJQ90rtnYeqD1wbJ2JJCLTBu7ziYM+0dj+vreaTClQWOfzR0KHp+dkCrKKR8hFExlNAVlalquxhw5p9E3c5Ozla90+CS8a91gnm9XuqcU26zO02wKojJ0hDhFLlJNCRjrku9T/m0YydEsMZyVA0ezp15nQMaqQQFG9JOkTWMLZkvW9eaeiUWRB32RD3etpg6U4BhZxRHyl0vNImoKoNqC+YDHSv/sdCKRAIKLTGZ+ZulH4jk2bbc/yjR51l8czJPLO5GB6srUUFI6G133RoRBP2WbVZsDvfqJGG94SQlnUUjGS9565/+Aw2x2/ziXC4MxUWM1yP3f9veIBRG6mVqXwX5L1zbKnmGZSYVpmZTtiUZI+Cp1lomu9XcOk8nTTrrLribSDcJ+SKr6Moo49PZnrVaAzfPxy+DWFMsKMivCqbPrtkFvumReCrpWxovR7jCU1cm8XHh4Pt5hhrl+zf8ykLuQLjmWAHGZg==","layer_level":2},{"id":"1b40bedf-1c17-436f-8981-66836d03576c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目生命周期管理","description":"project-lifecycle-management","prompt":"深入文档化项目生命周期管理功能,涵盖项目创建、打开、配置和删除的完整流程。详细说明CProManager::CreateProjectInDB方法如何通过opCreateProjectDlg对话框收集项目元数据(CN、名称、描述、位置、日期等),并在Access数据库中插入记录。解释项目唯一标识符(CN)的生成机制和工程名称冲突检测逻辑。描述项目数据从数据库到GD10设备的同步过程,包括XML缓存文件(project.xml)的生成、内容结构和通过CDevice::SendFile方法传输的实现细节。分析项目删除操作的级联影响,包括关联测区和任务数据的清理策略。提供项目状态管理的代码示例,展示如何使用m_dmsLinkList缓存数据管理结构以优化性能。","parent_id":"d9ce7c4b-eb9a-4a34-a88d-17c36c4f5296","progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,cpp/ProblemZone/Project.cpp,h/ProManager.h,h/Project.h,CACHE/project.xml","gmt_create":"2026-01-04T14:39:08.0066742+08:00","gmt_modified":"2026-01-04T15:07:11.7534639+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn+zryqhdZcqQPtBjPWAG7rnD1iOWRCspS7PodnOch1liSy39vXA/hZd71XjghIadfrj6Lu0NYVMp1ennlsnx6uQoyK0cnX73gcZ3KiW3GfJiuzZxUEISfuf5+8Kqq0Jk5KfDz78+wxLqIcmYu6p7VoB/gVh7lRNkPDHu1gREcZdC2nu3pP1ZmcH24RE6FzFK1qmrnzDdg3MZCsc0bvs4glkEBgP+lSWislJN4/Pt64cWDGYkivt420G2fo1QfRvmxkyjtgZgSRySUCvm70MjFDlQWTKyNLhye1vhU6il7pbRcDn9usl8Aoqs3PzgZVTUSeJOvuvWBeG5M6CnlDBJTHdVXUsoxA1CJ5aGx26sPfVx+2U0lNecTCfFl9Iht1qIG1KASBJ71QoX0BAaBvX3vInkgVjeBtlVYGE7XVVTeQ1nJ1BO/o+nf8Fn/7lIzDevleL80fMBVTDET5gqJOWcVw7LQyOGbVd7JRwoWKkbmYpX7+50rkLuvWttYW0aelePuRaaRPwlSzTkp6in5x/dw2Aalrt3zaf5utiCbQmRr+lQRO0pNU93LJl5Td/qZn0zUFQd8gd+QSBtLPpWbmVtY6c/NKl7KWInlO31y3PVbhwrUnICaGotJaxFGWJKEvjr1sjBzfxn3leWdrGomHuQO+Fmd9/wRRVhYYUgD5HeDkyMyspgem6qVgfyW58pjNdJ1V8hZm+KcozFhE/BFRA7M9d3ZAid1eOJnJGoni4goxZ34pVI5jEZqQXN3w8JCCkowtzZbFGicsyChmTla5FHKY91dFV9Mtay8PadzBpvEiwTVTsVhM/fgvjXAITa0GL09Bvr7fkGJ7RAk/F+YEAkOVftjpm0Pz5uHlt/XNc81LIsneJDG+88KeXvHRECH6gUXWECAemyqiS9WRG6L0jDrKUT7h2mB0yPvoQEEn/9qqWEfHnEVMGS2JbtL8qT5nVdvnOQyNQ/zy6+AlWlXy0O3UE6hO00heIxaZLIHSWj4GC0kEBbHdbgcBdrkXujuB4vpqaYx1g1byaCOELh7FZMcOmFVcInSaaq4l6sjGbszQj5l7gZ/RIdPB3muiGfzKf9jI8fqr1+ZFSlNxFsLebgFgqEu+zM9dyfNV4QZ2tQnuvwo6Ox9pLnK3gndBVd/Uco3GrSjzDoh9iGZZ58Xp6Ld7ssMr4iJlSRdX/QqMfCE2N++DXhphdoWCUKr7+Rk1tnCdrerwGko2uOWxBNYgGb1hqCWdEQncaV16AJxSNq69ihbAEt4s5TP7oVbbHCiYmHIjYFTysDOu+DFtzEh+r/tuYaNSS9hzvEEb8oIkNnGw80Hl5ZxOVHxAWX7IfNlf3FwMmFED6SWQTV1+39Qicmam8t0oE2UNTI7Ha4VTfdPBJcWKx4jwXvYr9jq3ZAMpFw0Q88+vWVlUDLlshmq16P+CGx9caX8MV4yAibc16MDmv80Ivq0DlJ1c3g/ZGtsDAdOt32+6CTsZ9LHf02Dd7mdoxzEHQmQDX5oTjyEtvdjFWehRkeBeXNPtP+7v1MkhTATg==","layer_level":2},{"id":"a99f2fd8-1cbb-4b4a-b261-d6dd4752cc15","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据采集与存储","description":"data-acquisition-storage","prompt":"深入文档化测试数据采集与存储机制的实现细节。详细说明CTdManager类如何通过设备管理器获取实时测量数据,包括电阻率、电流、电压、自电位等物理量的采集流程。解释数据存储结构的设计,包括TestingData类中各字段的含义、数据类型和存储策略。描述数据采集过程中的时间戳同步机制、采样频率控制以及异常数据过滤算法。分析数据缓存机制和内存管理策略,特别是在长时间连续采集场景下的性能表现。提供数据完整性校验和断点续传功能的实现细节,并说明与数据库的交互方式。","parent_id":"e2aa8d47-2019-4a51-8646-685c9019c17b","progress_status":"completed","dependent_files":"cpp/Managers/TdManager.cpp,cpp/ProblemZone/TestingData.cpp,h/TdManager.h,h/TestingData.h","gmt_create":"2026-01-04T14:39:10.9503973+08:00","gmt_modified":"2026-01-04T15:13:50.1662409+08:00","raw_data":"WikiEncrypted:M8uljGDGJ//mcfRJly0hhzLdNzjIzOIkFl4z0VJF0nUfycQdRfKx+Sd10xt2dyJB28377LSLhOX5MLYUDcFn+SVqNGmHEaD+vgOyGgWCXwIw1Yc5Lm+Ok95jP53Mlsv+3RO+920cX8lW/tQktJcofsuetuFHGrX8KewAd1qIuzdT2wiIKOk9BLSek+yeix0Bon41cK7mm/bRdfYcnEyp5MmI95cq2+6S3TkXdlCa3Dl3nnzaQfh6KvmF3nRGey0URXDgcZoe2P9ouNWWsT9WqdRq/1CGzVfTi24M+nTGfYeYEpVBAN8lUeq+bNvfy1ahsCr1Of4qqNsY3OEoBB6jLzhjQJ9RDgx4BZ3h6P05KMRkbTjsiq/CXW14tGRVjfEpNpXjpzo9SZsa0nzfRN+v7bdiL1z1XGgplFgpIndVu4CSwecOpazDMEwKA1SclyYUAja7rB6tNywC05BEOUekaZ38eTZy1/IwiB8rCEwXGuiJj2f4Soq6lAWyRcjh+HHDzN5SNo9jO2KZdIHOPwB8tT/CyJ7yIhsMBVbPr1VLxZ9F1RtksT4A9FV2fbGBdc85abWExen0k6rT4cynCUjxqs+ZzcqfrL/MfWVr4c6CNpQNuBn7cjacVfI+9VdboDML3Dg/Cs+NgXSNjk8cOtlfRj3N5IxgMeQmobZD1zMwvsMADuAlw7v0ZgO9bPC9sXy+tpoCVcDlBvJc3KTTAwP+uEBUNFM3YrbR3B/mNopnCBMnc6ftdLaPjSiyS1+BLNuybkbkCpdtAZF1yNKAqBDCFJ0VQ247FjniUrpO71Ia8EQqHZtaS+DfACy6BjwuWbE0Zo82NXc/STunuT2LNyG7R/wgWTRFZ0xqibWoCNQty8ELy6qgFRQCkBmReQj4YbbZp8sXMIVdP5icqBHFMqIARGQ2bCKa3f0xAlp/AaGnP+VFfW41qR8CA7oobjUU4g8D8KYlnm2Yd7smMEgzo2v9x8K15r07pCaERKvpFFcXVmEUK8dvrmpB+5llh3vMC0LyR+zAkSVt1d6iFGFyroOVD8f/wetLbSzEvDEBTwbfpJEZeJA/+naJhn6Ms7iQ9pSn+Czch6f1il+ChWhTZc2azv1UFGDHHcKXB4OtbP/ctRMzA7pVJSMm9ji0tnIVldGcSQJpOGDPbAsNlAUthjaVKswEyeU6b8fl08ITyqH6ClZ0VfqOAizwaPX24pJEzaNR7bPKfsye3cLWJsBWHzhHcG6Gf8l2QcIxucow+Zf95bwjtBFhFOzI8n5ltf7z0E/02LIKFP40V9bpovKRe0HeQLBeNYKoJ0xCoxw/ulNCa7W3r/2Pshg7YA+Je4sxC+9X","layer_level":2},{"id":"a8734725-c93a-4709-8687-8eb15b0fda94","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"2D脚本生成","description":"2d-script-generation","prompt":"详细开发2D测量脚本生成的文档内容。解释CSptManager::Create2DSConInDB和CScript类在2D脚本创建过程中的协作机制,描述MediumA到MediumW等2D介质模型的电极排列算法和测量序列生成逻辑。说明脚本参数配置界面(如DialNew2DTask和OpCreateSptDlg)如何收集用户输入并生成XML格式的脚本结构。提供从项目创建到脚本导出的完整代码示例,包括电极数量、测量类型(如温纳、施伦贝谢)和时间窗口的配置方法。分析2D脚本与测试数据管理器的集成方式,以及在实际测量中的应用流程。文档需包含常见问题如电极冲突检测和测量序列优化的解决方案。","parent_id":"f9b14c41-cd08-4332-9260-515b5e630379","progress_status":"completed","dependent_files":"cpp/Managers/SptManager.cpp,cpp/ProblemZone/Script.cpp,cpp/ProblemZone/Medium*.cpp,h/SptManager.h,h/Script.h,cpp/Views/DialNew2DTask.cpp,cpp/Views/OpCreateSptDlg.cpp","gmt_create":"2026-01-04T14:39:14.9830763+08:00","gmt_modified":"2026-01-04T15:13:33.0641353+08:00","raw_data":"WikiEncrypted:9xaRhHaljVV3xS6Cshsfj5lQAnnpub8eRr3APRPXpkpcO59mA8qC2RnoOG7z2zoL4RI7ttkzdvNPw8GAEtfs9siNgT6Q2/2LH3+gmI9H2GJCgs5RUjsb5sFLHyDBoi/DJbySuzPyObUcLpBRLu3DT/utY/zgPLFjD4I1Vj8w3Ar3N2TJTH3LPd+CnvGxbWANfsQG22FqxydsGOwvUpWUJrX4byCKkaJ7x4uvTJxKaDzRMWNONro4uew59mONS/IvpIXP4acvhEmmnihA2BwC5k8eKHO/ncXJBxrAZJOBYMDoj7Jq3M+acp7vuzVvvxhtRZRYieIj7oRQxNf4dunkpxE0us8UQkVpsdUY+IOgK9AN5CMUcYsxIf1kXPNWoI7KMZvYEg+IIDa5tWV9Y7uHOe3Z6uII9egDmwuXmPTLFy4TtnBjzEz11+sGCtWyaiMstFqOqK0T7NLgX5NcPN5JfmQh9L+Jii+gc+AUHM8Lx+ioQDrgZfJR5FvloDj2Wy17rz18ZFodn2qCKmmBgIGTKvF4GHMHt+RYpFA4TptAXhDH+j450liWPH1lZsLLTRImAs9iegcz2L3pqo4cLcUA2J7t+HKopGyiEB75Fonx9jBJwyu21HJUNxLPYuusxjKCYCTlLI0vL6jNqcAoX6Eh7aHpf2gJZeu2aqvUNyUngWBpggPdaEMsQs/s1By/Rdz1Fqyx5eBgFHdq7TxFBT+Ec6YXur1DtITqiXgygG0S+DR1WvCw/T5Xy2zne4YcD0AdW23mPAeXKxrnmSIavRwM5S5sA11LWtSexvlZgIaXTYBAPMKGWIvmTvNsAETCbZBwYtqSxnUbp8bFAUz6CT9gvNfwKMlt/20hWxNt4KNpe4kZjHau7RvvqqKDZb1Kfr5FxlcJcF4yXeVfRP6nkHpi0YUNmqTk2bOAVKkNtFbX7vmj3TTViXFkBqvPcix9BAsNFNi/aEhTFepthNZVxiz5kABEXfEw+5zYankwWLu9x7KYizT1usPLIRckNaYjFqKgsp+OXVaDVxuVxeMEOHb6BoVicqCV6TYcZaNUaZSRpq0Zt3urlhOU2jiMRV2KUwA+C6xbEqRySaLpA5b2RDJgl3QZ2B0jV6qYNutJnorF3RGNeTckhE49bmuleJpol8DoW1j2qWdSZL381tmNsjDectEPLZUSQ5gOWACO8E+xQl4fmXVONaD7D7UHr8xIQy7Eue/6qUAPFMHS2fuqpHwDi4opYUSlOmv/u+sCd8q6LmLUXnCKLprEjXmmm8kvKqpMxJ7p3GpUHjoVOLbojou2VkY0efZjy51mXUL27GBkF/8b25F1qnsjen2QDUd0rWDi881lF9L/cVCShxmNfP8xz1zi1mcs0H5qtkdshVpMFHs4bJXiDpdoere4jhNxbpdtp0I4WAaLwm5WBzr4wQRNx/UWyAM15G0XKURyttb/zBuDxhleNkBYI1RK3oZfvol6gvr5ViB6VVYubNoV1XmVQY3Uk5jjNgMWCKED6hWIDOXE42HXkTzAwA6SFraO3RZT","layer_level":2},{"id":"bc6a7505-0c86-4bba-b7f8-17eea3bd8dc1","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导出","description":"data-export","prompt":"全面文档化数据导出功能的实现机制。详细说明CIOManager::Export方法如何通过事务处理安全地导出项目、测区、测试数据等信息到Access数据库(.accdb)文件。解释ExportDataToAccdbFile函数如何遍历树形结构选择导出内容,以及CreateExpDatabase函数如何创建具有密码保护的.accdb文件并定义完整的数据库模式。描述导出过程中异常处理和回滚机制,包括文件完整性验证和错误恢复策略。提供导出不同类型测试数据(如2D电阻率、IP)的具体实现细节,并说明数据库版本控制机制。","parent_id":"024d6bd7-96da-467e-b99b-38a2ad0e825a","progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h","gmt_create":"2026-01-04T14:39:33.1045162+08:00","gmt_modified":"2026-01-04T15:21:34.1997049+08:00","raw_data":"WikiEncrypted:tJ25FWc3qLS7BXDXgna8sLPBrd0hfSSRBk+6cPbGhrpHw250whBoIi/CZ3jtD6OMyYp0CFNkKRarAxNt59sHGjHo2fQDcLXr+kYgM16PxUTeNjcIusF7vGf75hURydkm+BYDNHzHqmBaqwUehwDjH0qj8cOaiCJT/BnsKW8ud9wLxUpzgeGK+QrwWNiDzje7GdTT/9RuNAff3JQoDm2SLXI5Bk0YHo8mT6w5kDqsBcWBTvMiudPLYahCEtXBQHiKFipSYYevLTL8mYDFzvQ1fNYnBoIi515LKTfGCOEOeLbUhQsS69crMu7hJ0daxBjKBDJonUloivx4tmmX9zv2HHa5P4tiEsyjKafHb4leWhSVLz8ACR73pl0XzZF2XYXPSxnzwoduwuocUvSzW+06Fx1OKnZ99qU0GNJvSvhhkW7XsOp5QU564KgV5rs3vzVb5MxdcOS/65dyI1Cw1uOoOGN8631xnLiH0A5GHP3y36g47mabPiHaAIophBL6oWFCqyzD9gWnBtE2UIvsgRql7SR4ja5FJP2tdicXvnuaO+CRUAv6zJ27P+qGNNWswRxy5FBUp614Ia47sMjTjgSfwxPaIBPJaeO/p6CHcuU93lPeOWvRSYwdrHWhnEBISiP1oNtTVTAisFgHc8fsNEPjxQesdW8VgaM38w1EXM6wu3+rMA4aGqP+msEkEPFGYyxpMzAwDAv/HgGnKrVShkP7uSTKGNjddxYJwQoP5U4hYStTmImG46GwFJV7stPX+eH4dX+6Ga6w+Fd1RBNCpHt7HHSAAIs8lHc3eUjNkaUEMEubcrQ3+FmbVnN4xqC7YJMJUargPwkfoM++Av7/FWlV2I3TRCje0oHCdDYMxmOy4Ot+U9qkjq2oFvqc4z4DI0qTwHFjPGp1rhYHZBpzrRtadV5jfDrcAymzOKrBkUIedwGq/UAuQAmvI2NsLKMJnmmv2HF2bjt4+GU5imtR6l4VTzzj4oFL+YaQE+4LPo11YlDeDBk0nOQONnxF3s7QCDRwI4RqbriCMmTbJphE9BYJVhF85jxCRx8s7XeBXIJIJNu3GUubosaL0HdIOSy/5kvdX2GxxlVZshIVskxcN7wwmpWwN7x8weA3Vv7pO4Shyx/1lasqV/koo3FngHOakCp4zF12eQj84itj0Cvoa0Bwrh2owSuaRPW0GOSagdBiftPSGaNJknQ7TAKBu/XJOMcVwMiXRxPHVSohwzrmGwoEDcPXEaK4sS9PCSJyyNljTq5ghva6I4K6hkxhniCHE5ox","layer_level":2},{"id":"5e7df12c-6942-445b-bb94-08ded11d6a49","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"单例模式","description":"singleton-pattern","prompt":"深入分析CGeoMativeApp类作为单例模式的实现机制。详细解释该类如何从CWinApp派生并作为全局应用程序对象管理整个应用生命周期,包括InitInstance和ExitInstance方法的重写。阐述其在程序启动时创建唯一实例的过程,以及如何通过全局指针(如m_pDevManager、m_pProManager等)提供对核心管理器的全局访问。结合代码示例说明单例模式如何确保资源管理的一致性和全局状态的统一性,并讨论其在MFC框架下的典型应用场景和潜在风险。","parent_id":"cb10c152-afc1-4cc3-946a-3f100ebea9e2","progress_status":"completed","dependent_files":"h/GeoMative.h,cpp/Main/Global.cpp","gmt_create":"2026-01-04T14:39:38.6001822+08:00","gmt_modified":"2026-01-04T15:16:09.4858868+08:00","raw_data":"WikiEncrypted:neigK6RjqTPkV4w5UD3v2+Epglk7iBLi0iCGkKlVoYxHrovkPQmWDOM2S1tQvewdsA1sS/Qb/jueCQhSBn2gorkEojpiToljgytywY3lQhRvEZGe162prgc3bxzm8q9NqW2RCLzfCdKV1L5XPVFpx1J+u7w+TIXmRl5fFEi4ep6J2K7IekFNjontuG9Ey75Pmhb0VG9KGP8jOK4BKhDvTIkBffPrSgzQsREif5FjLYE4gOeZ0+L7IboFcpdRGRzHgb9ef+pii4NsgpZgeu7iu9jP2+80tgVa3Id96ahvuOB9KRNBIfrjejLUVA8gMwjlbcWrSMNMMfCE9ioIzA8XDMJduxaFpk6eHWweIBNVy7EaymqShR/nNJHuvfjf3yt6knVc+NPgv3tQgykYQiVRmuEZKBzJwzG8yPPCcJvsScLy/Eh5RbdivPe6i43xjTEUf6TbSqch0pJVE2AeZ3ybFG9DxOzRf44zFUaVw7+9ZPMYwQTINEkirbTraiX08nLfvNd9921gCXmpfmMqZG3asyawKF7rto+W55GNu7mkjID195Glczou3S5C90Z45UtdiVUUpES91PAdifjIO6/x+9zLuFtcF/SGkoeeGwVke2BHWHyFHVRRkZJMVx6Zi+gow9xe3CYa6zxsY+RH+pq/jc4uVUwb+KX9hgAE0zQlVOZU8srkgbJH4Sk1/mmMHPQcLYL8hmygHH9COsFskQp3Y8uSPxgJAZE3sX2HZljlZFNiD3zw6PGrtkLjYVHyZfC3RI9/ufgj9qGuGdHCu510MV2Nn+xvB/4xNAvKO/HQ8cnPkbIf6dqjkmk7X2AqGjtlIfP2BMUrgzju+2BYUnjTgpHjgyqia3GIVjYZdtPGVGQhQfCu9DPUoi7KGIWgaaYR0731rabxCUynuZhQ/jRVS6RPn8Br3fsZiM2tN4KL+YDrlMrucqesPW07ABiFJR8k19GULoi5ZMzacaeSQw9aK4PULeCNaVfQyeLWmuFFmq+EI3TwGQR6GqNfMcT3M6LaTGzyy5VnHoMEZLyj5pscAQSrE9frQdO4rnH8C7kIQtcnJsIXBTJwUruBXhVpbrKrcnSr2cg1F2o5DJ3fb/DIkA==","layer_level":2},{"id":"d19506d8-24d9-40af-82ed-40c03ce9f02d","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Main模块","description":"main-module","prompt":"创建全面的内容,重点介绍Main模块的实现。详细说明GeoMative.cpp中CGeoMativeApp类作为MFC应用程序主类的职责,包括应用程序初始化、资源管理、全局对象创建和模块协调。解释Global.cpp中全局函数和变量的定义及其在系统中的作用。分析CGeoMativeApp如何在InitInstance中初始化各个管理器(如m_pDevManager、m_pProManager等)并建立它们之间的依赖关系。提供应用程序生命周期管理的实现细节,包括OnInit、ExitInstance等关键方法。结合代码示例说明应用程序如何通过AfxGetApp()全局函数访问应用程序实例,并演示其在不同模块间的调用模式。","parent_id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","progress_status":"completed","dependent_files":"cpp/Main/GeoMative.cpp,cpp/Main/Global.cpp,h/GeoMative.h","gmt_create":"2026-01-04T14:39:49.5829686+08:00","gmt_modified":"2026-01-04T15:16:09.4839248+08:00","raw_data":"WikiEncrypted:v7iuYtshaSY9uhSAtHO53wL5/UbkoxseLPdAFuIBW4IY6uUtLf2yw5sN52w9XrUeJTB5X4hTGL9qtn7Pk4b4t24hEhVbRvo4uNk+GeDUfrlSEw0sGAiuK+AdSm6xBQh3dh6zLpJ/L8dhXHmLfR5G9jwv/fIY4hi5uPc5D+kmLPRbz12hG8ogiblvWbp35aMnyd31YC/LnVd8Om2IILLrn4j7Nzk8V/QfbgHG09f70Z/sdyVAni5LjZ99hTouYirh4pJmrWeMvymo23Gl7G2p7Em+nzoIwbdBnx8bEZYBYP98BX+iAV0LJmxDIyVMVCRh240w7ERnDHNsybKO2uVsMi8LOMz7UC41qBwhY+488fxZF0CAAI2/BMd8PpPvQM2eHarLa5dqZWtxEf2z3kXqKtWDtfvp7H+6C9LEb1uF7/G7V9EwOo8zJgq1Bw9+uTmlA6Gopddh6LPi2g36sF9TLXm3TU10Kr1fXepBEkdC7/RU1ev3DnayG2fTYYhsU6eWEnYD3a+K221/OSM0+hyweAFh5DEKIFhJN2K2IaA10bOUjl8vAJ+FM2v17T95pintHpAwijqL7QX6827fbjNvfpmthf2TIK2PlEkrP1g++19Y40TLa3lwPhr85+f5A7FrLM+NbmzxsXi22UKMPKciXoxui1/ak4q1Cv7WeMw/d0/XgNyl7YoRbcHObATZbNlK88leFOgg3Lgs+3bKsORz5J61/ttznOnJtn/yV3fJGE8zDawqZ/OG9AyqR5Ia6DPZEA/4NHEMwtX1DQhhIuWCsrDTcVTdN/qJIN2/PRKqoZIXJpFnkOnNvmmquOQwXh+lulbiH5/251EDcvIKS6Kohvvu5IahaZY0+jRpIk1wiL6bbERqjT19IJf5NF8NgQZ0GkCmRxDRxpdyNMsr8fXfYhe/GMdPsfj1IqdJNgfdhnDvPU70/aYK2VB1nzu0w0bQNRUhX6V/oYLuN+P8sDinKm2aUAbov5kUrEaiu1PKQ4z6FWTFNNyaRf4BHdhOdd/nvT6zKIO0HMBgR6Rsv40HP/PqCRUdA+1RaQ7GTLDGk+DpL9ojIDFpomej9XSljA4KqLg7F9zAMo/BItu7hIaU8nYN9Q+N69SVXw3LQA+RGvmkbwShVyiPIT+ypY16+V31AGxtuFLGX5WMa1Q1HkGPobGn90SfYtw3K4VURCKNGtnFZyl50SUjOEX6h9LOyZ8+3DfxcLF6MhwcvftFA+FsUM1QEs/S93nDK1UoZzeBd/XdPdYk38aD3ZwORHICOFeg51zBWS6GIvzdBEbMCd6oKrQBJt0eMhlGVJ0GFGSgejmln3nnn0zzT5sQlr/u6Yiw","layer_level":2},{"id":"a4674837-d78e-423d-8c3d-0570f01d6981","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"通信工具","description":"communication-tools","prompt":"详细记录GeomativeStudio中通信工具的实现机制与使用方法。重点分析SComPort.cpp对Windows串口通信的封装,包括异步读写、超时控制和多线程安全处理;TcpClient.cpp实现TCP客户端通信,支持连接管理、数据收发和异常重连;Zmodem.cpp实现Zmodem协议用于可靠文件传输,包含帧结构解析、错误校验和断点续传机制。阐述FileTransfer.cpp和FileTransfer_crul.cpp在设备与主机间文件传输的协作流程,以及HttpDownload.cpp实现HTTP协议下载功能。提供各通信模块在设备连接、固件升级、数据同步等场景中的调用示例,并说明线程同步、资源释放和异常处理的最佳实践。","parent_id":"032e9cba-65a0-45f6-a932-d0cc7e0b2908","progress_status":"completed","dependent_files":"cpp/Tools/SComPort.cpp,cpp/Tools/SComPort_winxp.cpp,cpp/Tools/TcpClient.cpp,cpp/Tools/Zmodem.cpp,cpp/Tools/FileTransfer.cpp,cpp/Tools/FileTransfer_crul.cpp,cpp/Tools/HttpDownload.cpp","gmt_create":"2026-01-04T14:39:58.7425741+08:00","gmt_modified":"2026-01-04T15:21:34.2007944+08:00","raw_data":"WikiEncrypted:vT23I9UGPjRzbyJGAxGwD+s2aPKguzjd8HwwctA/mQCVacCSrYK7Lg+KOe5OJwowH2vSgfNBI3HigLiTa1tI4LZnaz3t5vEbB2goLQbqkYonoOatxEru/waFdKc829WycML4kq8rHxowFIVNidx72Xy1ichW0otBOEuFv0uvVghU8YxIsbYb/3SjFs8H/Pb6bwhviGlQPmTeUkt3DRQu2fTx+JJp6u6BLo9D8bqTe6748V3ezw+eCYtQB9AV5xidM4PTZyzU8PBO/M2yQyjAWgRGyal/0xYRcpBR5bwWeBsnWZqNmIWGt6sy6PYDJolPyRmdkZBFVxJD3H7a3eejXkKjqXiji6QPHFIFvzMyEiGKDlelY++FszgelDAEnFzzgnMS9hP5vXWfV8x31QU9H4Yqv8J+ihcWusMetZaYLoYCIJjbEI9su2u5Zxvl3qxWsTwcgX3D8eq8GErGwpCZQcBNYdyZR72bW9cr1TYYm0lFQ8698XSUP6+i5JdS6BzFTEqHz1VS9dlaBs4mbchV7zLCV3vU/4ThNKYsE7rCo/AUuyEAFGq9dv3GVSKBUadcaxuwTTXOTJHgXsKHQQmCsqMpV502uyo9w0iqsyMoPu4WpPRa23u5M+J1I7PbVUy7+3cmmirimCJ06yVAaCCtodCbwY6hFTrF4nmLd+pusIczV2QD/I10/PVT6OaWr9NPcECZysx4andSdNfeJ/cII+VqW4PXU+TgUMCsSLK4EhZEd2jNHFbJiz8N/zr+kG8mQXVC7pe34AYFSgcbVmPL+u/3onHbP0kNYKcOY3bJLnaugP3cd8YavoDsmNcLcIiqiLoIyBIFd8aiQ7ge0M9wo+d9PCsdHcY8OtQsilJa7zEPpIwG57gXZAnZhFfTKTYj66dJriGE8r0KXagxzIpvVeUiOUOyy+6KBMfchGKF71BHFKjsAwQLTZusiiTmGagY5BIoxJ4tdJapoF33+wxaKUbD8n6QVMPnztOuQPmQtOd1yey+Voc79houABIe75e3Gk5xy5Uf83b7qL6kjBTFVnwHZchV1ND8crMSmVcJd+w8bKa6DRWTtUqcABqbX9APvoOm/zZkAi7RHJe6C3LUA2/YsI8Q8rKoU3TYNXDBcHcwgYXPXpU/6Fz2lv7OD1fuzOmV0427n2vNEojx30+wS9z6PA+7e7es9ckvVVFqh8z1T7oU2X8593WWmMbIxDBLRSmSgcpo1ggVNwg4EaqT6ciOa/glTsvW0CsnZBuqGf56N2+jiqQnxOoO4GrHmUKCKTbwXjLtBhX+Y+3PJ6raGQO6cK3jsbNr7d9nfZUjbvN2i5nF8XHi9IGPokvNobe/XSZYNmYkUQ4BvgxExBYVavkrMRGzno+JAoMy2Y1KCbsgPFDAkLRzXu22MXodlzNzTHkto8sG8A3MOi9CvYwxehx6pKDwtvzAHHhNpe1GARJArPrkuIy9gbFn/LlFa+jygNJBf0VxNeoXMweUVh4JvU3i7ZfVt4+hGblyvsX7V7SUb5fw/yjVLOZ/HrO1WrNKq7V5uuyCytxoyMiTSmlNP6uNuBaaquy7jEUe6I4/RUzGlqdfOmBH3CDrOH7goQ8r","layer_level":2},{"id":"de6baa18-6124-4e80-9c45-acecd702ba98","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"1D项目创建","description":"1d-project-creation","prompt":"详细文档化1D项目创建流程,涵盖任务名称、测试位置、测试类型(电阻率/激电/自电)、装置类型、测试脚本、迭代次数、发射波形和发射周期等参数的配置。解释DialNew1DTask对话框的UI控件布局、数据验证逻辑和与CTaskDataOper服务的交互机制。描述不同测试类型对发射周期选项的动态影响,以及装置类型与脚本之间的关联查询逻辑。为开发者提供界面元素扩展、参数验证规则定制和错误提示本地化的实现方法。","parent_id":"adccf077-cfc2-4277-a027-327a9fee6508","progress_status":"completed","dependent_files":"cpp/Views/DialNew1DTask.cpp,h/DialNew1DTask.h","gmt_create":"2026-01-04T14:40:09.0925838+08:00","gmt_modified":"2026-01-04T15:57:53.2467303+08:00","raw_data":"WikiEncrypted:r3HH5OsoqBt+JmE7FuD0spKnnCzDCy54wEOiZ/0iVh8XoPJnvUhBZchbDnn9HmzC9KkVeyq335e7gMLH4cw8ocBWdfsFZj8bMHYio302aKvcc088Q8X4mbNo6gk3fdNV9NYXT4UDNOPsd/A/t56rNhHx/rnUHjCxqyspAQF/pevZcc7TD4eyXiifKBeMuHB/BZ2U+IluTh5YY2TUmlFcH8nzmHU+zO4fQrn3HNThU6BJnU2ePWqPPxyq7hXkoB/9dnORM5aQeBYAhTXdcsy04m25jTBRkLO7+2GF5cd4IDDkOn4ZCc5ODUkGcC34jvHVy/RXFPj3rBG0Q5FlEDIxQ0bEJ3IVj31cEQxQSPpxw76npDGOiZuGBPGXO7Ar0svgOiZUYfHBSLHtzNzUkuEMBeIALv68VytUMFChxQ2zusLviUMjIKvYBlEef4vYMuuGP8LKw8u3c9Ukaz+NjWCUgUAiR1SHWWBgTJ/Ed0IR+mvSKQY+g8l9ZVIWzgHzvJDOgsPekmVzx+xhni96zEOHoafb66z/qhB6bXT6QypMZWEr5Bio78nAGJ4Q2Y4r4vVBevbxpl1xrHcfZDfCXeCSE9ns48i6XsO4rwl+bNsf/4GmScC6dTI1lvBIOryPRB4N226OoPs8FEgx67NHeKD1LqltmaYdw9h1m3h80JtDvrg/xdd0igJoqLrAqc9QWEwYl9KEVCcjLgQtLWPO7jrukLTwZe5HJpbrcijDBVttsNNMutjZ8vJlnh+9UWeIM97kxIslzYLLVwxLFN6BVG/GPMZh/ZrStxfWRhLV0eBThyr64iy/JuxcOLerW5O9cvCOVKgOtdYOO2lfyVrf1k5r7+KeLfNCHrWFWMtJbHTU6XHPcoUNGZoDG/xxSYIQqfd4wReWT0HZtkdclTNpsj+JeRGZn87apFgnlBQtjmivROucuj+MHjWrhRyegFhvWHtIvg9vwGWCvA8ZMmqnVrg99yDyAlxgbY/Ty4J0JMbYu6Pj4kRjT0AJZZTLP/A5dHC6wZ0zKzv7xrx1ccNkoeB57OSSmQWThH/mALeJEih2LsbGw0J2geyKbHSzXBJfWXd5ZiTLtOaAi+8/rX6cCCQ4DA==","layer_level":3},{"id":"a6bf10f8-e51e-4237-b929-6436520f9419","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"任务包与地形配置","description":"task-package-terrain-configuration","prompt":"全面文档化任务包配置(DialCfgTaskPacket)与地形参数设置(DialCfgTerrain)功能。详细说明任务包的循环时间、采集间隔等调度参数配置流程,以及地形高程、地质条件等环境参数的输入方法。为用户提供图形化界面操作指南,包括参数输入验证、默认值设定和配置保存机制。为开发者解析CTaskDataOper类中QueryTaskPacketAttr、InsertTaskPacketInfo等方法的实现逻辑,说明任务包数据在内存与数据库间的持久化机制。阐述地形参数与测量脚本的空间映射关系,以及其对后续数据采集精度的影响。","parent_id":"a6014b21-ae38-490b-9031-ac94683020c4","progress_status":"completed","dependent_files":"cpp/Views/DialCfgTaskPacket.cpp,cpp/Views/DialCfgTerrain.cpp,h/DialCfgTaskPacket.h,h/DialCfgTerrain.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h","gmt_create":"2026-01-04T14:40:10.525705+08:00","gmt_modified":"2026-01-04T15:58:54.951977+08:00","raw_data":"WikiEncrypted:M5BcNUc2RHAXGZhHBhJkQvZGe5jtj4qvIKDfd8Usyc0lq/AFQlu997/XccUkREEG05fS5TFyylfMz879p+cf4LKTRYAccVYZ60CLC6dAf7OxOgVhHzIw1o3MziIkNO9P5c92WjrDuLUargqtvc6LBCGEDiYTsR6TRYu35TwlMn4glY07e6d57LJTSCUwDI7i/0n1d3kbq28usP5zkqCyE+4vdge6VfimE1Mh6Og1BvzgrrHLFbuvxj1aqiAufxuRukRMG5Iu3PubdJhMv62sQQp3HhYJ2uvE5a2OBQRcS7lKE62BS70Emk2L1EFOpM+7ccuUKcvDdIwHuVZFg9YqkrpBzDUuSfbTIYXNTej/NIMmqsQbAjZadlHDgp7mSlHlInK7ENn4ayhn4zcaFjkKTxwi2PfRoIMtjZXiab3BYhTOn/Cs2bv6d8YObipU/kZVrxf/6xtOd3k9+D48HnFicTZYF5SIGPwS3L/4bUxu8FbSs4FNZXvxND3k4BoTKmOQlF1MG2q9WMtEG79bki6GQf7KX5t7LWgOXytHMhQ3PcT1tF3O9NwD/l9UtBZZtawAw7/RqgU2ZXfU9rCuzorYKhQIwruKlrAk4ziHtFiUStl3QxSwVFyHu9wIgueqTs5iDf0eU9zJw0FqkHvax+2yDagJ1Kg+HYZWTJaKrbvgRPsAe+d5JQfKAKPwTnpk5RTNHq9klAbBcf+VWN48s5tjfKdloTQEEOMTjCkQyT1J6CYAAR9fnq2csDoajKfL/C8IqLe5cI/jCCAB5k+CZV8jFrl/5eum2wjwIjCy83ODo3JYJ32g6Ip9V3doD4mkaWf7hZ2wdGCtzGt4t3fctbO55Oh4nZ6ogI0siee2+mHPYZ2I6JEcerz2JZzQvXTG/xd1FD7AQta49Z2ksDTBPAe/ZKi5nrmdDGdijlWoQ4lZzVWLam3hYRAED2aODZcZp7Gsqm7Xmj1wDpjhLDGBPUZQcOsSszdHOJeRjkj8jdiyvtRefl3XlT4rS2WioX5hnDtpm/Ds6iyS00yzw65o8v/W+irp3BEzkSrKJOUXOLIXTKzgAWCkK0Ogt52cwRLMOYLrOA+HEQs7aEXZk+TvRZvdaMYhJQ/sl0KWLYJXDBliBZ5yJmRVYbMQC9YObNn0ZlytHJpOY9UwRtl+p7CoAK7o2pvGAOg4QoJffQP9RJvIrJrHROefXrDsIhHbcWBdUYVwSMMjgKerjHY8FIlEQpQ2ENdQK3EZ8kcrCSuyCJL0PyvWCbu+JlRbPa7t2ks/I1+qshTFBnTBoGctvMNo3gdVGd+7OuiQbWbDgqs1qVd1Yzg1ZyISFIz/7euxkyiW/LTLACafjJUwzdNM7RNeaN4FXUc2Igtaz2NES0X/JUuBCTBvum8XHmqNe9h/1USHk/0G","layer_level":3},{"id":"3c39381a-1e17-4ea1-88e5-d892372a2d89","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测区创建与配置","description":"test-zone-creation-config","prompt":"深入开发测区创建与配置功能的详细文档。重点阐述CProManager类中负责创建新测区的核心方法实现流程,包括用户输入验证、测区类型(TZtype)的业务规则应用(特别是type=3默认测区的强制逻辑)、以及与数据库的交互过程。详细说明TestingZone类如何构建测区元数据模型,包括ID、名称、描述、位置、创建日期等字段的定义与约束条件。解释测区配置界面(如DialCfgTerrain等对话框)的UI逻辑与数据绑定机制,以及用户配置参数如何被序列化并持久化到testzone.xml文件中。结合代码示例说明XML文件的生成规则,包括元素层级结构(type, cn, location, desc)和属性编码规范。文档需包含常见配置错误的排查指南,如测区类型设置错误或必填字段缺失的处理方案。","parent_id":"6942b6c3-2ec7-4266-9790-158a45335919","progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,cpp/ProblemZone/TestingZone.cpp,h/ProManager.h,h/TestingZone.h,CACHE/testzone.xml","gmt_create":"2026-01-04T14:40:11.6156265+08:00","gmt_modified":"2026-01-04T15:58:41.4907622+08:00","raw_data":"WikiEncrypted:4f7r5TQtREf2wQKv0u+r+rqoetYbC0h6hrTD3foWa4Pi4vxv56iT+ampjEllPDZx3AVHD7zfEaKEmYhW+IsX/+dN7v/eXLmw+jt4kRyFPwXZwtZ8Sgf8U0x3i0+T7UAXqRPcRCloY88SXR+AwZ63SQ6t/h9Tfp3HIdbRRu5+lPiuojbpDEXTku/Y2D60OwO9J234FXXIw22Bge2FRHV9B1sqF/Q1SQlTFC0DtIM25Uud+yDywmflKUd+dNS7Z6TTPySNc1d82bkAY/40tG657YKrSgVmAQVjSu95ksL3wJQfvuZ3fLwELsm++hQgOpECZL9xzGBQ9WEnHLQmGo4rQkYZw2eL6sf2C+eTWDBTSGXHiKFxV4aJUG5XNx1sAB5O7KcK49t7rXk6LivZIVnVLPAmseRzElULlUQHhKN1zTIJxVwtLfYE4I5bq47/kUCOP51zdPvxoR6RiA86V7ZkT93TmA4Pqd6aXMVDB7YhmYFP6NGimX3jXrN2SvzySfDh9WwQKeBNfHU0M4JE/u/ZvHMqya1iWYMgZC9UBTiOhQhsIxomVC2Lq13v6njTfmSs8ML8DkKGcAItzE7aujTPyjCNn4wN+Y+akbULmMS1hsoo70y0N2omAo11CpMRzYpTwoMChT3/F0W8edX03bLufLPJNynjV0X+rdkPaNH20rtQc/sR3N8bCNV3oxBdlgR2ndVWUwRzgUTFCUxumX7s4V8rSJH74ODevXj674nNmDK0feKUx7zN/kDe/avbqtfBH/euEErZ7NMtne/2qrZF4kkjGH07ErPEG2CjSSFjp3exl1xca0RLku+cOyTa8GkXp23QkI1W0DrfW6NPHrF3D56s/qObwdbdgNjRa6V+vsb+uu1fG1roOhGkOGiC/aNsFDPocCQDKmU5N9MhHynRHMHIj03yXMaoKV6H3vdAv3/UICLRGhn1EBy9WiC8xM0khlKv5W9HXexix0M0p5EXUrAPJD39/8rlQyIOq4q+y2dA7t8CpPm+3JqgiYr3QWRMOLg1iMESzCLboD+YtlSmnBzQB4rg1ZzDT5xbWU2CFRRw5ZE9rdVk33o0k7vD7HeeuSoTlQFfOs6+Ewk/8A0edtP0sicSx6Yzp9WzFHM5xGoUqN/uMfYAhN2Xnoz1wNC381pbHBLltbBkM4gZxdFHSGSpoRufHyyY89AaJjR9dn5zL6Cq1zfleHUlnT0ZMNFUs7i7bOERYYjecZq24hOoBM+iLeFfeAayNcA7FEAc04hnEq5FioI4QGEmbiIvVOZwtqiB+K3eXrtfWxzven1FTSeLD6nB0TEu9J5fAL9Amz59PMq5xq0E33Bjn/xPMgerZ4+FyluJMBPbne/e9nMNJSh3v22pL4hC9etg/di4aG9a23Gd6TFy8u5n/JkbhGJnY4+p6/C/s6yYpyK8uc9sIs0plc3YFZFcbuQWtBXNPCLHT1bwkrgsyooffeGJtdZ0/2EV3GPJ8k9RKusxk3Lr+zxTadZrnDsu4TfpqsuQeYrW7C0dg3GWT6xDmMFUeTgrQlmDCbcM1595ujxBGl10Cm9mVAsNxQo9wg1YbArGhGDq/3Hy/APMSkHOf9KeXaEFGtV/ilcFLQi8ifsXhEiuSS7OjJGMpUA18KcPswhd/cLimWi8GPIpTai3nlzPVI/w2/z66D4UOViS8r6f9Ud0hQ==","layer_level":3},{"id":"20a50e61-00d5-4baf-ae48-9ec863999547","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"DevManager","description":"dev-manager","prompt":"创建全面的内容,重点介绍DevManager模块的职责和实现。详细说明其在设备连接管理、设备状态监控、设备参数配置和固件升级中的核心作用。解释DevManager如何通过串口与GD10设备通信,使用DetcGD10Dev类进行设备检测,以及Device类对设备状态的封装。提供设备连接失败、通信超时等常见问题的解决方案。分析DevManager与其他管理器(如ProManager、TdManager)的数据交互流程,例如设备连接成功后如何同步项目信息。包含实际代码片段展示设备初始化和状态轮询的实现逻辑。","parent_id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","progress_status":"completed","dependent_files":"cpp/Managers/DevManager.cpp,h/DevManager.h,cpp/ProblemZone/Device.cpp,h/Device.h,cpp/Operator/DetcGD10Dev.cpp,h/DetcGD10Dev.h","gmt_create":"2026-01-04T14:40:35.0852274+08:00","gmt_modified":"2026-01-04T16:04:14.5276268+08:00","raw_data":"WikiEncrypted:ckuxb8EBdnRgeTQ971en007CaeISj/OESHgqMpgaWT5440ZI+4lO7z+bfvGAIf9g0mKXZR50Y18ench6SLVVSeKtLne0qj1vC1GgG80Qc77qQRZo86aQQ6TMRvFXqzud9k41BQAj0Qc83lLE3zfA/M1g4KeamyaIDi9s/5CNmkzeaqLTDGHFNe2NbApo+LfnveqyVhkhOezVqOMZevlyKr+wx/CFRb2ftv8MdpYrv8LwfUhontER+kgnDmKC6FmoNhEpf9fRUdKJNJ9+76av3LlqgKdmi+43nkjMfE2jjzTP5RFyq7/Vw6hnmsUiWTW5jhQabUk9kN0c3PQ23yL93rJdHhDKHpJB4zs236UiaG52v+8/MPyBghysz0/evCfFRiFyBZwuRJFA82Byh2ez7DnVWfgVapvYpIUMyekdo/1NI1weIzLpR/fEbJr3QdanPG4RJViIXUbvVMnTpWMycjAesUYbr1+KYLWWgns+oQEfucGK+7LWifnhREhXLrPtH9CGco4b0mz3BeCaGQOkCJVu59nLgyb22WDO5zgRI4lnu8djNu+km6dldaNdHu/n2ojYpduGDHyu8qCevoFA3FBEBItPnvhebWzmZS7+61OSxlC4pZmH3+dHy67iWhpoEulWfvsRIS4IaiXLFJiGSyhSg09onQV8XjhPYvteQyKbXp2d/ao5VGBc4Gz4/kXRWMG7jM9Qy2bXawrr9wur53zByb9jQk+PhH7ObC7LUjZQPU72+43vidFpHq5zjKXzNKdNDqYJ8MCKD4HYpZq8e11a8InTG0dz/X2d8BJQFXDHeSurKRcX2Myn3ViDOJtH94sxXj3wxNoNiO9Nmew3DnMiizqyZbIpGSqEky3qeiwNGC+qegioemc/M4cMWoACUZVU/49xxV+bE8Z/X2VvZYIJi3aeLFYMtEMnSIrq2ynwdMu6U9+BxKDDJ4/W2RrQJHVe8j5dM6d8sOH9eNb17Q6mDZCHjz/hT6MStJC56LYzTH6kEjhkbCpV6QDpXJIyBPVWGEH/PjfmPqCReXpg1VOLFwHwTE0KWvT16UF0x/BJ2wCePRZt3Mj66WJN5s8LVH3P+c4isihsDlRuG+jYcaZSNUuIm7pBHwyPpYGRodXH7nBvNNReGpUUQgfuewEdGF25vLoADOSaLl6hSVd1JaF3kZOLd91/PaR6LlQIWx0RbF+Gp6UsDaGNAxnNk//urTWg7JLylxky4wdnABUyuxdx3ZJCkYJamTzT0G8p+9ncJc2j9i3E3vyuEJbhDqeroR1DMKh1U94eF1+DsjKyEw==","layer_level":3},{"id":"c7c17761-1da8-4bf3-a97d-2baba0370dc3","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"DataOperator","description":"data-operator","prompt":"详细开发DataOperator模块的技术文档,重点说明其在GeomativeStudio中负责的数据读写、处理与管理功能。解释DataOperator如何与TdManager协同工作,实现测试数据的加载、保存和格式转换,包括对Excel、CSV、TXT、URF等导出格式的支持。结合TaskDataOper类说明任务数据的操作流程,如数据序列化、反序列化及内存管理策略。提供DataOperator在实际业务场景中的调用示例,例如从设备读取原始测量数据并持久化到项目文件中的完整流程。分析其与ADO数据库交互的实现机制,包括记录集操作和异常处理。文档需包含常见问题如数据丢失、格式不兼容的排查方法,并给出性能优化建议,如批量处理和缓存机制。","parent_id":"227e9457-67a7-419c-bd67-47327f71a1f3","progress_status":"completed","dependent_files":"cpp/Operator/DataOperator.cpp,h/DataOperator.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h,h/TdManager.h,h/TestingData.h","gmt_create":"2026-01-04T14:40:44.5461205+08:00","gmt_modified":"2026-01-04T17:06:29.5880994+08:00","raw_data":"WikiEncrypted:EWnmY7FrSrDNzKPUk9wUqV1w+tkjlH6ZMzve28JN91khzrZoG4vgYFbamzWLbdtDMgfIf+A5kEket62J4t3fGLtzYHL4FacchqVv45JNg1xmX1HHMtRgtcRwWtVmqLMbg8l2wu3V1BZpodsVahtbYuZTCa6eIV/s0Ou+l5QwwrDcy3vbOcicS9df5+UWGhvFyu0tGWrTqgvcafboW0bh1Bl1bKf+1km2JGNsZe/SVXPZz/0usndOtWgILTp1ylEURK5u1hguQ9pWyHctl9d01MQfDca/QCuYVfofkmKjw3w25MTIoaq5m2PzRVufnEi38dyyyB5htTyM3P/JHxv2Fd6OrGIJdaGV2xl2oRz/pH1+G/A2NVo/h9AQaORxK0KSBNkMa2EVT2xOgv+vqv4k1G9t6n4BuNfBy+6++0+sUk8IffPQqbe7DHgXRSctXpMa2A5krRBYxFbI9kfnJsVa211CRckAiG+Hvm8PCjzbxJgeIv0LA2HKrnlpjFZnXitvQQS3sRfdXCEr+kwkfTOKoI57FbJHn96n6XKget7Cj2be2OZG0vjrMfRGSTp2nwHtslvzshBTffcPttprwF8WoDsTN/EZF0GlkmsenPhQ9ZxXaKNUpbqd7b0K5JIO6sL2V1ougq1JUlX5kTu5klSev9zIBQ8CzAAvIQ/+M629bAIFRt/SgRcpBzaXhWw0zcxdQ2wcoh3ClHY9H4fsQGNZ2/0tsk1Vd1M1SyqTbL0e8bqTuegd4lkI4GwpEIQIpB4kRd8QC/FduPv8uE6UqUHMF9chcuP7X/Nxp1dod8idFHRK76Qae/Xqw2cMB1W3lXPKAOr8hi0kIy3PctuHYNku9tzrgHcCv20+tSmY7zLmQ73DpNmO3MjgCJEIOrzK605roLk5+ixlPMDTw6VKlWvpDNR5KLYitzLfoAe0VkX2Hp2DmbE6EIRiUiemxduk3dkvanJMNw+/xgj8LfwFsA5eveszlX9guaRlbenjVi5L5+mL2Edk+Bv5FxwgU0vH5Zua43/NFwX0ejWBOcsJuRyWHpT3HGk274y2BeNMjOKVTsU8wHJDAjA+xFVqsiIwBzBooRuqKvfgSzToWdfRCf45WPcbetiQMLexpViDC6flplmvLaQWV2WiyulVU8S/Ggt+9u7cKgl0NeJ1XBr7X/TF8DVDxpF0rw1PikIhECrR/hVpRnAbt+vgis98DSYOquuAEyplF6zMSnNIj1I5nW2xR7k5WxCS7PgJfUdkLmbiytzfRR5ck2yhIBW2zDxVkC6kzqYYUEw19iwffZl22OYglZ+UVxgT0HnMwIBJGoQNjl+5MmB7mJDj5lnTIs7vKJdfCcKb7HlsDUnZ8ZtjwYWFhVL1x2GGfC8elFrSP8q7386jDdieFFyjHKlK9raCUIsB48056C6qLQzdWHz2/n4MyIt8flNNFXLf0XrfD90pPhcn0WzQHX3NQMlODg1JIk1uBERcGIsadYEpKXKPL5iIjXTAzTnaV5iugFwh9+PWNjw=","layer_level":3},{"id":"696443d8-d0f1-4195-9e65-9726c29326ca","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"任务参数配置","description":"task-parameter-configuration","prompt":"深入文档化任务参数配置功能,详细描述DialCfgTaskPacket对话框的UI组件和交互逻辑。解释循环次数、时间间隔和PLC ID等参数的配置方法,包括参数验证规则(如循环次数必须在1-60000之间)。阐述任务选择下拉框的数据来源,即通过CTaskDataOper::QueryTdBrowseInfo从数据库查询任务列表。说明任务包属性的存储结构,包括在dptt数据库表中的关联关系。提供代码示例展示OnInitDialog中初始化UI控件和OnOK中保存配置数据的具体实现。","parent_id":"1ab00b5d-b5a8-46d3-9a6e-8a633e05ef6c","progress_status":"completed","dependent_files":"cpp/Views/DialCfgTaskPacket.cpp,h/DialCfgTaskPacket.h,cpp/Managers/ProManager.cpp,h/ProManager.h","gmt_create":"2026-01-04T14:40:45.2774099+08:00","gmt_modified":"2026-01-04T16:01:00.5479898+08:00","raw_data":"WikiEncrypted:M5BcNUc2RHAXGZhHBhJkQkJN8tIp0q/8vk1IrNMNWIIn819Hh2rlw/YiR0RtbysV/fLArKfYiN1TQ3v/z3Pw9EFkXMSXlfbnCVQzZCObDbM/ezP5zBiAgTJ8snh6Q3wngP445HQFU1DnD934qBpDlJvo541azbDwzGW0byKcAWI5P1xKqq601SHBClp9DJGoLgV5mr42IIQw8rJF6/wVctuN1NULlGVljjFRY2vebI4ZFgy4pWiOmi3iq3WNqV57M+KkNuN7mFdYmYqoUSFlW+B8SeSXxAJXv99/J0BiQWvJ/spkgr+vcM7cu8V1v5t/puEi85+HY5qDFcrwH/4+GRMCLj792UnPRDyV0YHk93nSnoqGH74CDy+b9q8vIxlfF5eexBgBiwQO0gob9AXrFzPJZGSRimuw2y41+wQLFFHbFJEOFq9NezK5R3A0AvpleK9LnclUsosT0oBmf9vPHBMPXl7Gx/qSfdKwi0+/3vY9WCgxiK2+rM1EL2tdTec9ehrVlzBszKhQ35ZsgNuePCxA2uDICE18GIjSq7EMuy17+ejCXwEtNjaoMO7un7F7g0n9/CD5X4epK/zsAlY9da6TEkYO67miIN+o1Nyej8tPQ72FlBiaqHZ5H1VWmUWpL4eSy8lGuD5khaq62B2m459JCfrdjJXRvOf9c0GbKbXk8icNk9cVPADHE3fv+uE0YZDfa7Fqsj3svcghcLa7gK1jb2TNJatwIvik2nMMZLzBvyfqSfr2TfFvpe5P+O8uzTGp3XlWarKIZyx55Qeusf9y3EtiEvAHilbD0/9Ryze+Iezy45oR85xGW0n4xA3hsvXm7vgCbH0cEqoNHUimwYuo0VqZdb33vbjKbRQJGtsymszVssge+VjJ+bG/c+OObStKH7CaZCmEcspJtFR5SnPniSy9TXoTxymOTFQKoGkh5qKNeqFxbNz9s/QwR9UxQlApkiuXrzpdrLvwj0di/2EFwVHW4/yNGiroakug24oN8ax7gbCuL2S1i2zsxZTvI/Qi+sPW6qTXKZa2EdoOF12/uvPBsrUc5AdOLnkCrPdnffuTPA3AePylkRqV0jRBCfAkpTsRJSUF4fKGiRPhqCy6Uo6b7uUVmOIBU/x4caO1twvbTHfZtheXcgrite5U0CINGyd6P5ENQwjLnQDxlrwWw4gA1jIoSzE3tsE9ZF/aG/awIvAQdODcYp8Sn/nJ+FBW/O345VK5A1eLhjrdB5xQE6Ja+e6XiJ3GK/RIEhk=","layer_level":3},{"id":"f8bad557-23a7-4bce-b595-9f1b5cf389e8","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Project数据模型","description":"project-model","prompt":"创建全面的内容,重点介绍Project类作为系统核心数据模型的设计与实现。详细说明其在GeomativeStudio中作为项目容器的角色,包括项目元数据(名称、创建时间、坐标系统等)的存储结构与管理方法。解释Project类如何聚合测区(TestingZone)、任务配置、脚本集合和测量数据记录,并通过成员函数实现项目持久化(如序列化到XML缓存文件project.xml)。结合代码示例说明项目生命周期管理,包括创建、加载、保存和关闭操作。阐述其与ProManager模块的协作关系,以及在多项目环境下的单例访问模式。提供类图展示其属性与方法,分析其与Device、Script、TdRecord等模型的关联关系,并说明在并发访问时的线程安全处理机制。","parent_id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","progress_status":"completed","dependent_files":"cpp/ProblemZone/Project.cpp,h/Project.h","gmt_create":"2026-01-04T14:41:02.6666941+08:00","gmt_modified":"2026-01-04T16:04:14.5284999+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn7sTJ+0+wDP0ozq3KjazFL8Fybu1yLW6O5urU9zA1YyjL4i269dnVG1dYg/Vr+npaXHO+whLVqbvo86JnU5gzEFg8ZbX9m5bLBczLw19mNnUMlrIcRRP+pgOl99ISBVIJP9krzFzeunKQrVX+w3J5PbtsUNmOJMgQqV9DYdKhjpEPViVKZPUmUxOSuhlu/0oER/Wyq6ymeRZho3eFi6ohPkoaIT0gxWLc5zzWj7SU3Ik8cUcz6xA1TQRf8KJeGPw5cwiXqvSaV9zlRMmIjR6qPVXqKGvKgURBe0EA4AJujmEitpBLphZnDUcaPEYomBbsi4+OCF82tvXwjGkmRZB607I96zuAspd6MtP/Lp6O0al3kDa4I9J7kp/NptY2kiPoKS2ZY6QvYrHniFpq0rqQbROOyUv2Pg67YRdz60TrrcoqSFsIJWIrC3qDEhD6eyPBMlwDugZK+uFyFMc4UBsfpZq/cUEs4O2zvvb45tKyLgWd9zNGEgSK+QfIgLV7/9wFKEIjuqrqAN8vmzzMvmHwaIufGdaneJ2O+aIqDVDccwcZGQXts7NZzXy6HfmLEqjDojqY43POE5I3Xc2iSCFvsuoKCf86sjeGu71fibXnb4zLn2PTLa2QYEPdXdPCxiev9sURq+gHg+lOWhVDKx4bhuO7M9Am8cm9xCFIw7yv7lTESi7Q2Q3YlEUIJiTI4IlCaJY4LvBDmXrV8tIgTL/DrufMuBQlQKJOCoErFcOy+bOerh4/LevV+Xzde4aEPtdye4q/ruIyMqObenzrUCb6MMBz7ioCJsO+ryFOfYV6WohpYPUut7dwZQlc1vQfuCSxOvkuMLWd3egyqhlnDipFmFPJ1g1JDENKAakM5s0bHRE1KHLi7mGl6v31oa4cRfpvfTPgjb7cy0idm0HEHnhCRB3grfxDza8RRhafv4DVQlZHF7TawLB5V9s4pTy+46Zuy3i3yzIqAY+oO6pQT+oThZNjmL31/bYS4q89+L1gwpwDHM9oH9uIFD86Zd7AZffQyvi7Y98ZKTm53hFZdnV/DvlxbugwWO4cqfbFJOY0Njtuwtdoz+zG+kziGaGg86zc+BG4GpZ/GiJqdAtiYCtbDHCQzu+lbBQbD3AXRRLbdH1TjIDx2ax2nH0wbifnN5FeYFGVT+ZYnyPHIcJftc9pSkRKALJfJOGCXhtdXydcCEkABTCABqbpDYUJbjN1F/XD1DfR0Q9WC5stZ0fHc4NoIdg/q7TIgWXNpnzpuQK+f4tncJciIf8Iw0BLORRItX5uysA4646McKvX/xKKRPViNK9WwOEj98759ubaFkOV5nDYg+qvaNUcuwwCvFKfjOgPzaPVbeLi1AxS0bZxLOopWjHE13VK6QcE49oHqapddzJfyxIyKW+k0BdBe2JXldCerjD/Q/YWTnnBQ44Dpocc9k=","layer_level":3},{"id":"0fdddb23-266b-4fb4-a944-11658b63c39d","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"串口通信","description":"serial-communication","prompt":"详细记录SComPort类对Windows串口通信的封装实现。重点分析串口初始化流程,包括CreateFile创建句柄、SetupComm配置缓冲区、SetCommState设置波特率(115200)和数据格式(8位数据位、无校验、1位停止位)等关键步骤。阐述异步I/O操作中OVERLAPPED结构的应用,以及ReadFile/WriteFile与GetOverlappedResult配合实现的非阻塞读写机制。说明ClearCommError和PurgeComm在错误处理和缓冲区清理中的作用。描述基于事件驱动的通信模式,包括EV_RXCHAR接收字符事件和EV_BREAK断线检测的实现原理。提供串口打开、数据收发、异常处理和资源释放的完整调用示例,并分析多线程环境下的线程安全策略。","parent_id":"a4674837-d78e-423d-8c3d-0570f01d6981","progress_status":"completed","dependent_files":"cpp/Tools/SComPort.cpp,cpp/Tools/SComPort_winxp.cpp,h/SComPort.h","gmt_create":"2026-01-04T14:41:17.0370303+08:00","gmt_modified":"2026-01-04T16:06:02.2330704+08:00","raw_data":"WikiEncrypted:EgNa7nHLooH+WMWnZA5eyr5B101b+Jpw9fOH9qZOA45Cq7k4J98I6+Nv0JXEY0l+pNfg7IKw4BxUkeIVT+9iHdMPQW35WtIaOfmG1KnIAHv5E8qJcowUDqD8K+9poly1EZOvs08W7e3ja9VyuMb00IYpHtLKj90yoZKTEMjeOWMYjTdNDVPMy/CIVCb8X5ic9K318BIlMDu/gUzarwW8oUhxGRRt8KegVR8yM+XJ96TsQqfBvQeg/f8af+I1Wpz24cHV/5QCzWGD6AUQgYbBTsME8iNqUsngu64gCTzBp7GYd1Cln11G3Qgvq5vGEQH6t4qdzEKmHpKjjUt5lW1uBE9H/gvKD22wainhEeALAz0/0rcGf7plotvboOZ+n5CMaiuEcOrZJOHhZBvbdZs69SMkg/jVabft1GijF8iQFEicGADSsSdJ34Nz4jLnvh3zHBHA3U2c7Q46od4E11syiuVNPUoJFxygN25AUHq5ZOhQ5XWkMwC0LZp/cir5vL8Xx86teCC/+XdDTS9FnQadN5Z3tI/I7/95vOTV2q6fDPopwPiQbQcZaZJ8aNkA+eXDGXav7vnnFYmTrasdkP9HKOs6tF6qt52099YKPEJEAjorbjDvwT2vCcjEQdEKXbtUpKcjSHFw/1GtxjhPWqaN5Il+e3OzMXNiSfMBMbQOEPXg5lWzZ2TiiqZFYNcVZnwQX6bw6CdAvEvImlpIHQ9VTYS20J7E9IuY3Pqf/hNMSWbA3+inj/ETjTc0Xp+fOZlpmXtjiY/otin1EiX1PKQkL36UJ5fFCzGYd7VkxzvmcWy1TPqGpfSPBBTjYsFO1iBl6tL6n/d8gDwagNvsd4ouNNPQymsoBNeU8eqo6xiLd0uauqV+3u4HgCqBf/60A9tTsvpzAda2aCpfwY8ypX//5IIJb4fMDKwQHwB8Ao4JBW/vaTKd+Lf7vyhE78QCTqVFkYIKDwdNPWAsI93wrrH+pEdjqgtcLDWieQJrIhTtHWzX4fTcEYbAUoj/5fE0RJ+4/Lk4Wn/r+3Anyh4VP+pwHHO6F13j1nQx0aFQ7qGbGwN7OExCIQ/vR6vKhSXt+6RSi8/orNdK3iZwu33KwRQBND2U46WcOGk5bZwlVfy8xDJoQ02d/U80tzS8nrsS/zlVN22MF1Z5Y0VGHTq1bjIKLGq4v79zcFoTq/V9L3rL4u0644hfEJUppNkckwpaV8yT1716ejK4XeTQZeqBB3agj2Ei7RjQ7aq7lhYd6OT6OpLNnmZWsxCGveunh0DBu9+VITGS2TDpjsMwyXFfyAfnfmwPZQybYGNQ+NWCP1BrjrvhHLq95wkj7fGN9NEew1x1oPPXqrQJY3mooORK5YBX92NYZSU4siYehuXSKBQCjho=","layer_level":3},{"id":"83b56e2d-a191-423f-9839-724c0d0fa133","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"主界面","description":"mainui","prompt":"创建全面的内容,重点介绍主界面的架构与实现。详细说明MainFrm.cpp中主窗口的初始化流程、菜单栏、工具栏和状态栏的构建机制,以及多文档界面(MDI)的组织方式。解释ChildFrm.cpp和ChildView.cpp中子窗口的创建与管理逻辑,Splash.cpp中启动画面的显示控制。结合资源文件GeoMative.rc2,描述UI元素的资源定义与消息映射机制。提供实际代码示例展示ON_COMMAND宏如何将用户操作路由到对应处理函数,并说明主界面与其他管理模块(如设备、项目、数据管理器)的数据交互模式。针对初学者解释MFC框架下的窗口生命周期管理,为高级开发者提供性能优化建议,如减少重绘开销和消息处理延迟。","parent_id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","progress_status":"completed","dependent_files":"cpp/Views/MainFrm.cpp,cpp/Views/ChildFrm.cpp,cpp/Views/ChildView.cpp,cpp/Views/Splash.cpp,h/MainFrm.h,h/ChildFrm.h,h/ChildView.h,h/Splash.h,res/GeoMative.rc2","gmt_create":"2026-01-04T14:41:19.6519384+08:00","gmt_modified":"2026-01-04T16:07:33.6915872+08:00","raw_data":"WikiEncrypted:X6nh4GpUZj+UmoB6JTsChmO+6KTJoWBH2+VNzGaqD71C92wD+m3L1534vfQe6Zk/fk7VY9pW16/0DqMn1Xdi0E52h9LCASTJxtMO4E4YYJwOGu3M69z1Grep7PKVWfC17+EKzLfAoNlglktmuyk9k2EquZG/9Mv+qKtfcczyxuRyts4Sd89myHRacH1+FeiuqjUYt2B4QipXag2kghARB03PUtivtR9NLe6AhzGZOegW/RdWR4EZnXmm1XJ4Iz//z63lYFy/jgc9XPk8rH6xqBkf+taQVWp6bb5cXPEzbRgFpFTjmE6F2u/1trXAbhYysuS7uMWIeftQiOMLXmGgwtRpBDfPkGb3XhLW7pfVfBpy7prE4wkyFIebOSrOsCqQ2ABG3wTvouD2l8ypRG40IqfDttdcPqQlPlPlROvbByNekMOvog5uu3K2fMzdzzE3BhB0osbYNIiZwpZrWLoI84z8KHGe6MTdCrAKLdcoB5vkUuA9DpOtutqwDiOo7rkjVylEqm7eeitZPreKJQ2VC9LogpKfUwBvoSTsyDkGF5SrTQr+FCuZlt9kV8qAx2n+fN/6SwD3MlCezj1gHmWr+ECHC2we0tB47iMd7E/1XufNvn66313o9OB+Gt2xQ4u0HtKS8PH8s/aYey7TMa3gsrd5QGDx2bLmwABNM0WqGca1KeTb3roHqQ74GEuMIw+6koGUNmsi38Spm1/WKH8ZbwnBU0ZGYRLewdnEnVZ2zqXNK775th5PKBMVhqVzFg9xKVuNFkUGZvbdd0TIZKQmbJmmBWjQ0TetPw5ILp8MF7ac6haRuEzGGG6gMtWjn4D9AGd4JvHV3j7+z4JnAVmVjkLM7GXmm8njpMtAyjZq/sUMXWMa6JSRVSQdpaRK8rApXRBsGJpaYBkqQutuApyMGV/wnNyh/KgA66OURmmGMfKYSyZQAAXrOseA353ZHxFDePXmRX+3s6yQxfOKHvoqOC0HfLqGtXHc3aIEp6HcPR+O2e04QVAHqrSO0+Qf4+4JWYY0y4I3MRkbxEFjrGs19hoONjgG/pL7Rn5Sa3fYp0L2JlQgjwUBJ+96EE1GFuANegyTS1wXsfFevfIdmNL/iA0E1sMOaXC7gUQgHOH8Hm3kOlbVlcAIxKdyjhd4tSb0G5hMOllkA/+U7YtXHAU4gk8C18BFm8z2uhBbn7h90aaE7u4wjMtCdKIsojnVIGXYPLSQm1LzSVnJrHccQWzA4rpvaQiR4f+3ivhUmMCu3dJnkxeyS7YBleeXZlC9x5JC3uIaK/mQoJXfPP0TSeSU04xstWbsN+EUAKQrIrU1CeAiaKJYosvxVOyKVlEVJqFQ7Vlg1JhmaVW30IeOuc7nMWw/h21qzb1mQYQQtsjpcO82/QQWMJckyGQntCV/Zgr3SrbZzLSDWpn+jZIt6yVYL9O9UsYt1GYQKrvRTB5hC/M2bQSe4gKTht+V4D8mCsma4stHLHBXzW5HQQZgjdOyYbGcp7aax6Ypfev+z5vG/8gmdj5jAzbsHANPr2rHWfUA","layer_level":3},{"id":"b9087a1b-f589-4b27-aa5c-e9ab7a4aa1ac","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据校验工具","description":"data-validation-tools","prompt":"深入解析Crc16.cpp和Crc32.cpp中实现的数据完整性校验机制。详细说明CRC16和CRC32算法在GeomativeStudio中的具体实现方式,包括标准多项式选择(如CRC-16/CCITT、CRC-32/IEEE 802.3)、查表法优化策略、字节序处理及内存对齐优化。阐述这些校验工具在设备通信协议数据包、配置文件传输和测量数据存储中的应用场景。提供实际代码示例展示如何调用CRC计算接口,并分析其性能表现与错误检测能力。说明异常处理机制,如空指针检测、长度边界检查,以及在高并发或大文件处理时的性能优化建议。","parent_id":"4c064fcb-a9bc-4ef6-82c9-4c9eb26ec82e","progress_status":"completed","dependent_files":"cpp/Tools/Crc16.cpp,cpp/Tools/Crc32.cpp","gmt_create":"2026-01-04T14:41:20.737953+08:00","gmt_modified":"2026-01-04T16:05:21.9420336+08:00","raw_data":"WikiEncrypted:LlssVZ/E1BSUywfa50FLleJwvDMXcANpKQDCkxGP3lj5H+wY5IEY7s2p/11msARNfruC1DyKZbYzihjuoJsPnOywuO0IRSdto1IBVsjKfEg9PnyIpLxaL8xSjYQb5OmDzk+ZqxOSWXnB26Vz/f1KHWLGR+5Wjq+86ZfCPfYrcfypDKrrb0oVHY3IB32OMxHcKILfFaIlU4brVNOxOISs6HWGKkiKQP3kUGVAP8/ABwP9OMTPK6KvWLuRLFxEnhC9gO4lpdiXKm5q9OjIosjswGfgKoOuFnkZd/cuGHEnxw6vEdFvNsG06rsozXkiVu3vH/LpZordCx2ckyUBYLjNUI8qJGUrun9hQyIfgKPwDWQyCIQrU5nWZGK7FNoCThjOBpFDnqIrKQRrVALxvgaz1LTFO1/R4g+AMutNpttmqZ4KqNtSPMx3v11LXnt8DFAurvao6E1f4bmKy9q1bwZxxhnKoQr4yRhRmTnJO7Jto0AvDCcVhnC7imWby3P6kyU041VfnqRLEoBAHnIgU/3GSTSO1OCpv8Wk/xvKzV1zbPOOAvsCoyl/IDbX5KANxtiZQs4l2pEc0bLW+XPKr2of64cAk1YHInuf//2UZnRrnHHrVuDd9znaQ4fGE5OL1psPmPmza7f0I7uSGtb/q6RyNflbQ4dRReF7USpHe5oDEcoLFr4XG2/uHkoden8VkxuwZ0qCQ2KKfh0ca9wtBuSR08xIB7lgMekyZdeqEhzQ2yBWrQIr2aM4IH10k4HQJx419bYs1gsYH4La49d1TXgeBtJpWPtV7A8A9ey0BAl+7H82yceBgXv4YSq75thQg5Sn4aTdmxChEf7nERj2Zrssboujrym9vStiZ5/pKRuSylWkbgRpPyxrtoKZTIo5EAyo2D9MjF+Z5Lp+7pM8RmIV5l84ErQdddhe97kKI3OqEIzNaxaSQ4ghFrWaNPB272z3IE1IYmOn8ZG6Az6L3mKd5Ls+6YxToMaENS49hVjpYMTQM/B0njRopQc72Z26Zlpe7QoQbPpZvJE9A/O596gkaIOxEvA8nA/znTVswkzLh9oz1KJdpN2r5g/DzSqzgRC48uvRVEhBjrrV4jKEHhKLCanMwVdF8KhUooQbmhzKOisx+cxTimzLvBy6FF6u6YT3FaFCkYVM+nffQ4N3GCCd7b7Qj2jnSz7BD+/Q4rHvhi3EKdGVKbN+44C5Kbl3Mp2TMpuQMe1Fb+BtRHVGRamSRX1gw/ztWDJvxRIu+7D29DE=","layer_level":3},{"id":"662d9009-78eb-4fbc-86d0-f372e350f87d","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备指令系统","description":"device-command-system","prompt":"深入解析GD10OperCmd.cpp中实现的设备指令系统,详细说明GD10设备通信协议的命令格式、参数编码规则与响应解析机制。文档需涵盖指令分类(如设备配置、数据采集、状态查询等)、命令帧结构、校验机制(CRC16/CRC32)及超时重传策略。结合代码示例展示典型指令的构造与解析流程,如启动测量任务、读取设备参数等。解释与DevManager、IOManager等模块的集成方式,以及在不同设备状态下的指令调度逻辑。提供常见通信异常的诊断方法和处理建议。","parent_id":"abbab480-8055-4da2-8e2e-664abf629716","progress_status":"completed","dependent_files":"cpp/Tools/GD10OperCmd.cpp,h/GD10OperCmd.h","gmt_create":"2026-01-04T14:41:35.8138836+08:00","gmt_modified":"2026-01-04T16:10:06.2275417+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvATblMKl4Vka3HTXhTB8lXBK5A0WO4DfLvHaCpATXXHGrCSVXp+L51+C/aIxzBD2oJorwyHuYKiBUDnyvmgFG/m59ogDid8Pk27AdQ0swcl/hC2yxF8DPlgYJlyj3uIovFWAH2BYYwBX7qCVR0Fjas5Gj3dosDYsQNIjCirZblmXlZC7EJorDXvi+wehGZre0ZxLcQDKjuAsTfsv21hBUwH9MzP0pX7KcMeHuMSWcPD6kVZi2BKK299JcCqVklg6NNXZxnoXNRv+YXB8BH4g7h2f6jFZmv1x+2b0L/E0WXFaACbjSM03OffP2YkV47/bkFXZjNGrzGtP59c4Y/u0ZteReAKl58NMnb+U9wOa2phP9TKrcMOJ3PDcct/ukBfieZL0zI0gJUJUAgBeVLePto097dncmoqS5ffIB6BTKFnshFstJfgjNCs2LftD+kV9OoImiaFTfSorHZNQzlHI5MgUaO78xk6qoXB4oyNHyxE8Tb6TVXCww0YKz6TXNqHoDB8oGKcebJzSDN/mRKARd3rzCZTzytvZqyxcnzCcBR4c7g9+rzJaPkAyJgIO+BPArucUdsmGzEWz2aQQ6GhkTULVOvZeQFX7N2XJweBOy2SdcaHoJ5G8Gh42t6wAq9REj44BgH3u7U6TOnT/Dzf9JqBh0lWnLqluMKOUvDm9RLzTZXMIMEe8QjfTkdqbsiqiHXU9JAsyUz/efnuHPVVLj0Epb1QBlkoa37h7q/y2HqIvB+MVZZFOjnKuIZ+zLhlDCpUHTZk17qYHvDT8mtXvXjEiKLSfwjek5ZBKalyw45OtGZiha6sW+vDY+fv1EtGNM4njjRjrzZwlgrUtBzXc+dQ5c9KJkpNsH+nXg/O+cE4DH/H6uvMT5J+5ujOhheN9QNGrdrynZXSDbwXM9u1A2E5kzN7ozGubCKeZXEYP25G8/+qQ8iG/9oBsi9tWSqIz3/KAIn3P2fRU15hxWkJRrODaB4cvMU9IVT6vYBDhUQZNi5Cz+ku3YJh+4xRIcX2FtbOSAsHsc+1YRnrkXC3dijDK0Kq8iC9JscfCKjcPovTTe4/lICmjd8Y0bHyUofFAGDIazi1MOSQ0wSKZJwLh9qOG7ZNrURlo+8JMEOfKxekKFb6RqviPuIV3B4EGuqUiUDmqkyiyKX+eYy/2jKwbReo=","layer_level":3},{"id":"bdc518a5-c239-4116-be6d-1e6fe3b25e0c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"循环任务查询","description":"loop-task-query","prompt":"系统化文档化循环任务查询功能,详细描述DialLoopTaskQuery对话框的实现机制。解释其作为CDialog派生类的生命周期管理,包括OnInitDialog初始化流程、DoDataExchange数据交换机制以及消息映射处理。重点说明CListCtrl控件m_ListLoopDisplay在任务列表展示中的应用,以及STLoopTaskTable结构体在内存中的数据组织方式。阐述查询功能与数据库的交互逻辑,包括如何通过CTaskDataOper组件访问tdTaskPacket和tdTaskPacketInfo表获取循环任务数据。","parent_id":"029948f3-657d-4fa6-8947-d1f8a937d9d7","progress_status":"completed","dependent_files":"cpp/Views/DialLoopTaskQuery.cpp,h/DialLoopTaskQuery.h","gmt_create":"2026-01-04T14:41:40.7841336+08:00","gmt_modified":"2026-01-04T17:22:28.5938911+08:00","raw_data":"WikiEncrypted:o+yBb4vjz+0bpqRqEZ2fyS0/yGTPHKEg6ftcWcBnBqBH3U/5qtyS2HHQaQwRELO30ByJfgOmtnpGweHOMn8hy2gEPgMuJgpP40uAxrk/9irOX4caRZQGycymCyu47gWY3G23/I8bIaEQHiTv5R7U28kp+xIE6TKU8hWEiDhVcZxK1VKtYYp+qGTUUsgmQ/k1Kn7S4qUa61Ipbc39/w8DG88iAg1KtpQMMu2qzgi1VzmUtkqoIRtdzttD3p/toSUiIXq38u21hfwsp+3lgm6Tq3I9CmLMAVfp+rz59oUMGSDQ1X0vGB15TJwIl/afAygERuxoNV3zKWneNMiqCViWgQDm0fe2t5/oxum4J7Mz18X3FShfkD2MDHSdWnCS7N0V0RIsRF8gVj96g6TKFOyy7bq7406EMfvmd+uTCNX22x35f3DnD0Oa25Wt/JTOuuhZnY/NuosPqshtydqAnTginaEOuEbjcTIAbLdn8+7GrAl0273n4T6J7jv1hLJwvZFqDL8IvGRVkMoyv0aJLKecXlC0c0ThpZmJaVTDKTTOPey09VMQ3By8PLqiJqHDaMAU2OIdbjWEdVZYVVvUKCTgjnt3wmy/Zx2LZKAVjFv/cAs2fa2tbauQSK21TcKu4SNP+6quKtZYMFjIyJIAyaswRGnigyj7j4jiJhIso7XFRN77//EtYiVECpNw7MCVSFYebhLWQX5/QAVzCVvZgjoo5F/rpLUzs2/peHkp5keI8XBPsBJoxXEzTBqRnhk2ED8jwPP5VXWiCMvMB1mFXW9dMEo01b2bFa/TiqfR0hmogLxEkaAHDA6KvKVhhQOc0fWasKrVuAanZMSBIaQq3KYsx12cBkncEFArPw/gZFUUNu09tQNT810T2K+Vkx2DLrsxbzi3M0HT0LdIKGQfTHel4/5d0jU7hq9g4hveJba8XbLLvfbessXAv9acqIHRxyDHql40/jLEq66UhMx5GA0nr+CrsEzAC3JLvb2ISF5IokcNqwYy5OOaNdMEs+BiiYiGpAaqb33CrK3tkfIgY9RM7//bONEAXbS8KJI9UuPz3Nzw+Wvnh54/kXHvilDBPw9jw6J04k0dSq8ZD3KSpeEDlyGlpBm4wyXRQqMLzeKNwcY=","layer_level":4},{"id":"e7d51db5-de2c-4ede-8850-07319692e5b0","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"视电阻率数据模型","description":"sp-data-model","prompt":"开发详细内容,深入解析SP系列类(SP2DTd、SP3DTd、SPCETd)所代表的视电阻率数据模型。阐述其在二维、三维及跨孔测量中的数据结构设计与物理意义,说明如何从原始电压电流数据计算视电阻率值。结合AppDataSP2DTdView.cpp中的可视化逻辑,解释数据到曲线图的映射过程。提供SP数据采集与处理的时序流程图,描述从设备接收数据包、解析、计算到存储的完整路径。文档需包含字段定义、单位说明、典型应用场景及常见异常数据识别方法,并给出实际代码片段展示核心计算逻辑。","parent_id":"ec4f27d1-3dea-4fce-8eb1-132ca0f96e92","progress_status":"completed","dependent_files":"cpp/ProblemZone/SP2DTd.cpp,h/SP2DTd.h,cpp/ProblemZone/SP3DTd.cpp,h/SP3DTd.h,cpp/ProblemZone/SPCETd.cpp,h/SPCETd.h,cpp/Views/AppDataSP2DTdView.cpp,h/AppDataSP2DTdView.h","gmt_create":"2026-01-04T14:41:55.1365867+08:00","gmt_modified":"2026-01-04T17:24:23.6772+08:00","raw_data":"WikiEncrypted:bD1tA1+2TVifrHIqYmdBkQUB73OMmk4VLeQGtLS2ymQV7VTUR7gNEstNySIHpisWfRbjJzCUJx4LA8eE1RyTnXaRTk6Qib5ItVOkD6IoUIoiVT7PZ4ROkiEZmv/jqQnrrMNZgUxX0Ulxmg2hY8y/9w0s+EBHO0og+sWq/IxXiiOZhEQdfuzCxEq8WjhxZeA+vRqmOmxpTCKOBEfdesKm752soFCY9QVKBGlBIKCtZQ7wW69OzggHEt3yujUjrBnQKSOnVkAVLKdS5OzGt2ZKMKodvs9cefaP6PEWGvDAYmuclnsoBsNGFRlY22WQhfSKP7OnSupWlsHJMkTJDyY+24T2+cxrkSZuwaO+HK+7Y5+CgAzNO5lA3FhH+yCqPIx0Ih29azeoc1wm/ebel5nx+E2OHHXjHwArDejeYk4efhNIghBnKm5u4qRuHtBIPz1csHnSKM8fKpn6JPVssN2zxq94+gewN2U8tucny5rstWi8HtFvrWwgmkICy57snrw6a8AyMPwoBLMQYRzpKmL97LMTOuYwOesFmCqJ8th3Nzim6b/V3pYLGmcw5ReQdTwP4biYaJmOTNo735nPNfXlu1H2K8wNO2demtofetHD0alS7JfvpjrMYz+WNaOHfuhg/taATQO0TJ/uOBqnoBnRWibLssfWKcBvpmPRIJI9usj9PRre0XabSBJFul1n+sBQHKOobdzP5EQB+jrY6WOCmg1SQAp5Io4BkO3k8D5aUSOye53bimU/5mBKIXYzDyVK4BgRefU+L0Y1iflYKdHBnFIl6OuNU8zctUD6tvtBxyi4lSfgzeCVGeeA1NX8kuqdjwANoFFyc4GabQd3xSQZezXq2I+872Qf9n/YIaEp+pHvgVHgfJXNQdNALFxBOrmksvg6FXXBUtXxMieAW7lj+s2vgha6vEm8A/hn+8/vh3NdLG9wluliMtpxFpwr1udaSBA9/1RbZ9I4H8fCpAKCvB6gdHtn5EKcY8L3JNENYMdBkLoPUEy1iXFG8z39uyIMaTZrA+5KtcDwq4wtdkcOrg6KV2ekEndnPScFdhwk97XkfW53kSjq4+8HXvLF7RwGHJHE6F6u0nQAlb5c+4qXV2DKjj+7dkPmtWOcBIneStEaQRSagjWzKR9Isn8mYPprcG/H6MkBHXvzkBkjuHPqoi1itZQWk4oewRXSZQgNiBU0wPp12luC4AdE4ue90gf58YmWhcsDscEfJ/nKVasDg3BYCswTHw6j3FHjPZQIJmlFg4tCk/CmEQP02OsqkBvWBtKI3JajdPUdPYKakVeTtUj39xOg10uI0u9CqEpk+Nzcr1n+vrJ0J0/ltW7hd9g++ic1457QwYwsog3BpuXj4mU7QIrwbiIhSqomWll3tHc=","layer_level":4},{"id":"c55a8cd9-460a-4a5e-986b-43f67392434c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"任务包配置","description":"task-packet-configuration","prompt":"全面文档化任务包配置功能(DialCfgTaskPacket)。详细说明循环时间、采集间隔、PLC ID等调度参数的配置流程,包括参数输入验证规则(如循环时间1-60000的有效范围)和默认值设定。为用户提供图形化界面操作指南,涵盖任务列表的初始化、任务添加与删除、参数保存机制。为开发者解析CTaskDataOper类中InsertTaskPacketInfo方法的实现逻辑,说明任务包数据在内存与数据库间的持久化过程,以及STTaskPacketAttr结构体的数据封装方式。阐述任务包配置对自动化测量任务执行的影响。","parent_id":"a6bf10f8-e51e-4237-b929-6436520f9419","progress_status":"completed","dependent_files":"cpp/Views/DialCfgTaskPacket.cpp,h/DialCfgTaskPacket.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h","gmt_create":"2026-01-04T14:42:49.0717779+08:00","gmt_modified":"2026-01-04T17:24:23.4450568+08:00","raw_data":"WikiEncrypted:M5BcNUc2RHAXGZhHBhJkQkfOMYEP5VPuqj/Yzaf0CfhuJ6CdweajTAra2etIGZi9CT6RD6YHRsqgxQ0eIUDMDO1nQaeCxgrINRwl83ByAUsgtAceKjslMp7+teIhO1XTXjn+RNb42TVYTZauY8ob5JA2HWi3w+7/UVhx6uzuOxh+dR/aFGSxF4/fl3hDMRO9EGfa8nARkALKEJe57ha4TRgtuvOuHY1Uh0ZRiHCcoNXgXVQ4igIz0HIOOOjZpePWrCxvahR9yCir35iM7yPJQiQ4uLcOW1LyYoISEeeN6NEAGAbC5nUHR5RSkRjGeiGNen6ix8TIK/lHWYTFIMCk/Zp3dnSbx7+/7cBrw8AP5A7Yg2pc+M9CeupP+XXd+WIDk3dsIrFVz8Js2lUfQaNdSbHHThPwYe/pqhJBvKp8veE3MYBCaRGFGMOXc58IRsIsZTTOiEzejANB1Z11WFqnvAgl0ugCsd/DAfQhVPvB1LzCPuK9HYpaPhpXbly0FDFtn/wDFLMuC+KJfRVuuu40yODeSBibNb6QDDvFvOub5Z7cwURqidYASueOsj+E/ikU3ExuSQT16tZ5LAg2kJryN3NWtYQ/En0R/iWBupU5hOVp08+fMHJQCiBBCSUoAzcG6COnJv+DbK4AOxDiN7e1JVHEAVRjMiQZ/OUh9NFTd0HrGwF6bM+X8fUtQaIwJ97qyExFrV1CzMULUKrOwzUWkkIQ96McRP3J43+pc6ZpFX1PTDqJOkTaNyw306l4tgIzjEIXVNBQB5jx7g9Ui8NN2KhxFqWeV3JiYxr/73z5jesZ2YSyrXF3T+A2dKI5e+kXSmOlm0ZvA0AWkBBRbTrPNBwxhN0cCxuOk6JYxATJtfbYNviAhGPFtYG1mEtxVcjKu4qfroSSnGpnmgkVeqdkrV+te6vbOekexfYQb5+Q4BxiB1cG+SvePNo/+l508wvnqHfIxV5EepTmnPOgNDz40LrGrhBb83NHw2WkrfjILrOTG1XoZ96wVKfZF6aXys8+5HUmJHSGDeDzl5smnqMnPtCd6/Uuir0CObVHRK3EiEUvj4JEvqejD8K5t/WRixeMVtL7eABwrRCt4A2eJMWf7nJ6DaAQvQ5C27Crjm9u8Zd+sS3xyfNLyAoBg1u4c+FrOPlI5WumPLy20OdcHfFgWmdHxkxetsS/NAxF5fZTpg0mmVaW4JU+UfTNkRDUwx76wblJQkaJ1Aj1jGRG4B+UpEY07jFkCMND/F54+j+dKq5SBdYPtSzakTF+aA0/b/qzs5eo0vwt1Ugs+q3USd8//a5IGo0OV5YArPgT2tKwgRY=","layer_level":4},{"id":"211eb959-f12c-46d4-a088-c9ab116978c4","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"技术栈与依赖","description":"technology-stack","prompt":"详细说明GeomativeStudio项目所使用的技术栈和外部依赖。重点介绍MFC框架在UI构建中的作用,ADO技术在Access数据库访问中的实现方式,CMarkup库在XML文件处理中的应用,以及miniblink嵌入式浏览器组件的集成方法。解释项目构建配置(.vcxproj文件)中定义的编译器设置和依赖项。描述各技术组件的版本兼容性要求和集成方式。为开发者提供技术选型的背景信息,并说明这些技术如何协同工作以实现系统功能。","order":1,"progress_status":"completed","dependent_files":"GeoMative.vcxproj,GeoMative.vcxproj.filters,h/Constant.h,h/CtrlProtocolDef.h","gmt_create":"2026-01-04T14:37:17.8867047+08:00","gmt_modified":"2026-01-04T16:24:59.5738947+08:00","raw_data":"WikiEncrypted:w0CkdCdnXCcvlN5xOpiEhEX3U68GI0Ngj6azFMJo9xQD0Nwsj9XajeArLn33w436LuYJWl4xP0dT9zLNODhOpKUF41Ne2m1hE/D9Ac/gJwfNONouLG/X6vDKMSQguVlrakcqRHyLS2/kv3nmhDdyApv/bls1XAAFNX46SEp7+CZehf7BqKAZrdRTigVquVqwP5OI6AhAluv0UaUForllK5AOg54rvmLic2uqjef6mTsA0ElG49uBrR/LUge8SZvYJwB7MYCAkFAd0IwwZuew0GYEveCG7ijQNN38PjXRH4b3pqH3vCl2zcSoDqzIuTUWdWqV5cCqW9X2e8bd6xKtfajn0nywf12rZJskHfP6NHJCDWMYrnuVQkWX0sESiAjou7VxX5Ke4x3y94w1nkJF1C16UdNbUwpcIA2lXejvp8x324AtciMg/qUQCWYqH9jckU4a8lx7mUpMvbmmJ7ANf8IP/BOa4UJzp3H2pRMptr/siGJG2iy3KGQidSaqKQ3CslFT4fl3pUZWM0uPI+yNVbZbetnB1wZy3Q3LS8DBjwjZol0AA3EA3vfJoR0QGErmS9Z7UAaVmKfwmyyqd5np+vcmGjmU16ZkJwbcgUdWB7E82J7jO1PgBiIbulB/dntpy4Dbj/2qXd1d2tCncPvWC4/KYf8xbp+yjR9eJYWNJ58lWYYKqgSjRQuClsLYZ3UwJOfwmd81e2pSFuegdVM1VFYCgJBxBThPPZffk1KG+1VonKgDXOmExQaUSJ3LYtOu1EZVXcSwJAfEr8RjeoZvFapC/UbeHEYKhEQkc8GynL0nv9FIjl6wTvpuzSMAJWVDEplzxK83lVxdr/3Po6v2tb9lzaw/fmvKCoy83cEeImY2lNbWGT+0tEKnJz5/Rp/aVlnR9H0hY51YyR2a6sXfruxbonvuG/0uvVV38em0ILNIjNzYBY1mUjAIQYDb13/7xvCvuoV2jrVe6I3LBTRnjuZtvfhbop8/ibwb0Zx16NuLKUkLGYsNgwclgLPIvU26n0CLPMhwHW8m8l+I6cxVML9OiRZdXj0BaHFBCvFTvEIx4F7R90FURlgWLN2egkEgVnP4AmX/KuUZjMmEnVKPGw=="},{"id":"eee36cb6-1e0f-444a-b200-b449d083bf18","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"配置说明","description":"configuration-guide","prompt":"深入解析GeomativeStudio的配置体系,重点阐述config.ini配置文件的结构与参数含义。逐节解释[UI]中的Language参数(语言设置)、[TRANSFER_INFO]中的更新服务器URL和主页链接、[EXPORT_DATA]中的数据导出样式设置、[ONLINE_DEVICE]中的远程设备连接配置(IP、Port)、[USER_INFO]中的用户认证信息以及[CROSS_HOLE_CFG]中跨孔测量的配置组定义。说明配置文件的加载优先级(根目录config.ini优先于安装目录中的副本)。解释version_info.txt在版本管理和自动更新中的作用,以及database_modify.xml如何记录数据库结构变更历史。提供配置最佳实践,如敏感信息保护、多环境配置管理,并结合实际配置示例说明如何正确设置跨孔测量参数(如HoleSpace、FirstPoleDep)和网络通信参数。","parent_id":"5d08bb05-e9b3-4371-98d3-840eb06d48e1","order":1,"progress_status":"completed","dependent_files":"config.ini,Install/Geomative Studio/config.ini,database_modify.xml,version_info.txt","gmt_create":"2026-01-04T14:37:32.6639035+08:00","gmt_modified":"2026-01-04T16:40:56.8100155+08:00","raw_data":"WikiEncrypted:aC5ZtUyEKPSxjzg//aVllG3KeKoHrt3VUYbwJdfZuc3qnb3DDIDoCMLZ+0FJAn1Zw6DMt0OadJXzQ5qMudyp62cxA8/8Wpynh8hvdKIsyppRFJLFDJmw844XjwzV4NGTFGtb5m2kMWf45M22ArkY/oxN31wHFPuaMPiQyus3xNL5huV5doZn0pNST/mJifYSqcp6orBOjV1kg0Tzs0rjHjSaiJz376c5eeYUk3nzsO1iYsRG59o9ZKiloCBvoe2l/a3BJS+F019GNR1oTggSxxAil4U5mzozctsv2j3Li2/TlvbjIf8NFkb/N/pWlyyxmnsF6RdLg5VInkQoJbxGjl41VjCr2dqNyglkgq+0XJ8QZS8A1cER8A8y9OCUrvioU4RwDecCJOPFZ3V5PTH1HdwGrOv58o5wrJ1FuBA9zCY2JzbPdZ8G+Sv+QoO4Al7IrLxBjfx8Cu5JIspeiYW3gLhLfsyhMV9E7IaVavUWLiZOjks6d53wkCguJMiCQJXQcpazBH8ruGp+UMqX1i1DUVhxrpNAQDrxwsEnxPPHeSj6qfEAiT7yClWPp7L4qy7qdurr/4pidEHulycUJO9rA28LZ+KSqXzDDsjta5Hv7tk+JZZyjLuzjyfhgtbwGkQwPeUPe1ArHQmZsaT0laRZzYyPGabkN0BpCMf50Ita16OI9S+jOSjymqFgioBRhWhJ6K3hx865mSrAPBe4wPlRdkN6unmeLQvPVvUdBUG2i3Yuc2UsHOMQKh0rhskfwDQTp2HUlGDtgOqRRVV2Zx1CFCgn9/fike/WdTJnpVv7NvU63nap4QVIDcXYHWu23GdzzdEujsifEMmwo0G4wXNRs7JCa3flCSN3k0V3x9UeOeOf5SD4dS7eEO/Fn0erJZ2vJjrmCf7MD7r96tJ/sv6uhwP6jSmteSCcOxQEY5frNYhks2WCluWaysMKx1nvrxoPXfAUn61LCF9XN3iy/QuDCd29hA8+1OuGueMm5c9PDkKlldxIcg1JjI48o6sbjC4E1JBLqBHP6JNCtq0waXkUf8WZ6De3FjWgr4qE9jJBs9sGNbnECMtPLA4Kj02vYG3uObi3cEDXbV8M0eauBcV+QKxkJQOWTS1W4Hp+V8+NZfpMzFS0mBH8F7Xbl4Rova6DowD9c4M+TO9Oqm55embm5G/4XtT6HXY+vwGk11xH8smBsTzK/RxfceIG0NY2W9GbEFtkxgsRzEFOM43qV5J6gYBRlCuTrdCMgR3td0ZXpiqr9DgGBA9BHgnW8fmjHDyAr4GdeC0s1TGTbz7BpSxiy7+tzIb+v8AdZuEhQ8qGaUimSeyNsdAMmOxqMC3sE2trPueiXeFEfA4K37pDdWqiOJpFu5uCyyqizhXgw4fPJgB0pi9HkaYu0JL9EYPPpuCj9+W6VjUzOPH8cdENz0HyPABbAiYZzYoDPCKiFGCyvznYIS9BTZmGBdnfWItep6MDUDT99Q7t0/Pd9w8GFMfGY8vXpO4wssA3/JnyGtErAFiAzIPmgge/fQj7mSwt8hqChEw7bp2bzOOhpJE1jjaCsD+U1GK8at2akqgLmhILlM0w/G84ahaYEVeOmrnt8saOmRi7Rmum9tAjlbvXpYgZXywogI+WaRW/xem13J5BS4s=","layer_level":1},{"id":"9c6698e3-6e8a-4c4e-979b-57426f8ebd31","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据访问层","description":"data-access-layer","prompt":"创建数据访问层的架构文档,详细描述基于ADO的数据库访问实现机制。说明CIOManager类如何封装数据库连接、查询执行、事务管理和错误处理。解释数据持久化模式,包括对象-关系映射策略和数据加载/保存流程。详细说明关键数据库操作(如项目导入导出、设备信息同步、测量数据存储)的实现细节。提供性能优化策略,如连接池管理、查询优化和批量操作。包含异常处理机制和数据一致性保障措施。","parent_id":"fb64045b-28ff-45d0-99f1-29f11b15a147","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,cpp/Managers/ProManager.cpp,h/IOManager.h,h/ProManager.h","gmt_create":"2026-01-04T14:37:40.9404481+08:00","gmt_modified":"2026-01-04T16:41:34.8138002+08:00","raw_data":"WikiEncrypted:M8uljGDGJ//mcfRJly0hh2/mWMVZAXEARazEIIgMSV+7zh4rlxI5/PWj1ISX6NLHyPgijvBuT/wC8NCYThAUwALTA8uWWwWKrjpxZDUjvHpGj9INQrp01FOxoCDK1zuG7/Y6e/nymQjFQYWDVMAWDy5GFs24u81aG66DEP/24u+qeT4ddh88IlTaEKYqSj1cjBSLCogcfCRV0x9gv+jEJqO24VqHNv15EbXeNGawKC0jf+Fm1PQ+WqH8GToxGCR9QWmFy88vmWdOVccG2goBiK5hxuOJmA3KPpdr73eC4KSXx7EPcwvYkVEqL7uHqFBwHVLkC69Jhi2bRpYZjXfH+01RiaB94d3mDJdpjyplNVhtMCM4nCq0EYlKJsm5AZJhEPUMRHnSTTTwF/6KcAFZwPa8dDCDDYnBrLu8EPDJH9fXv+lPPmLHDdFkaAIPhZq0niZwfMcvrsud7abQ70cFiWNJm3QDt5J0ZIkCXhqonXioz1kNIc5bBLTxLa2dtgmuSp0ze8qgWRbLXqphNpn5ACpyhymaOUa90V6m8O+jPy0DDy3jboTnDOCCKuEw4PyGUc9acunIPbZLXiJ7aebbS51Nn7B6nPjIWGlao1gIcRtWpYwDDk34voOpPhrDxcIueGzu96qZjg6pe9s1z4c2IJdLuJrFBJA0Uzy6JU/PP8GMvRbgXicmRjshNLulUpsUaFk06Uxtuh8Q9CbXRb0pYFnoaJQ/zXRvFBqlEtEhw/DO7+zNa4lU1eGUAvp9pc6uNV8la1086Z2f4SRcYHLG/4KjPIA3p+QAkvfLTw6C9wHEh9xdmUJ69C2r64Co8hAjniwYTboTJWIkFmEisA6BWV08WP7HVwT1LgefWp0J5ceGUW4Trdrd4YSW4Yn5O3yT5UvRDXGxQOWDr77V09kNa9iDTeCC1lWfIEPofHDY0SaWmI9DBzTX79AjmC61bgMNLPAv7IoInyO7UJ0+IW1SNfX1XZBdbseQXMV+EfTrw+dkN5OM286hZzHS09oUZIWDkcyYrdKif6H+emPa0BCilX9/OX8VP/sKOFH2EoAVFGk+kGTRVQHRvoLtSaysdwqQO4EusP4SFYHySazXirlsfXPFWpguEet9CVvldSVM+QgxWlUL7qgRe52RPmx8JcTZS/JHiHWPK6d0eMVvBiEdpVArjdcLfRtQVXMrOidklg/eEcSUfLDa5w42r3kWKvsa","layer_level":1},{"id":"3f537301-6406-42a1-984c-2ba217f77900","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备管理界面","description":"device-management-interface","prompt":"深入文档化设备管理界面的功能组件与交互逻辑,包括设备连接状态监控、串口配置、PLC状态查询与参数显示。描述设备管理框架(devmngframe)与相关视图(如appdevview、appdevolview)的协作关系。解释设备列表、详细信息面板和实时状态窗口的数据绑定机制。提供用户操作指南,涵盖设备发现、参数查看与状态诊断。为开发者说明如何扩展设备信息展示、添加新的诊断功能或集成新型硬件协议。","parent_id":"00dd2207-2775-4db6-802d-c32bf4fae870","order":1,"progress_status":"completed","dependent_files":"cpp/Views/devmngframe.cpp,cpp/Views/appdevview.cpp,cpp/Views/appdevdetaillistview.cpp,cpp/Views/appdevolview.cpp,cpp/Views/appdevoldetaillistview.cpp,cpp/Views/appdevolacview.cpp,cpp/Views/DialFindComShow.cpp,cpp/Views/DialShowDevParam.cpp,cpp/Views/DialPlcStatusShow.cpp,cpp/Views/DialQueryPLCStatus.cpp,cpp/Views/DialDevStatusTimerShow.cpp,h/DialFindComShow.h,h/DialShowDevParam.h","gmt_create":"2026-01-04T14:37:44.6711343+08:00","gmt_modified":"2026-01-04T16:40:48.9393481+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvJ7MoR5O0BgHEGetJgUCL2igSS/ldpCR+T7HLsfMOnqDP53nPsuU7mgMCrraUBJNjVafzSPkXErQJq7XjnM3+gSCwazWliK2aLT3s6HG0/7HQjn/cHceBadkF/uqXIa81+Tl5iKQwY3beaDYOM+q4oKX4zHFzDmaHuRCB2WMHpxBL61o7k93kANc4RWvmeXPyOw4B1/rVGhT2E1wXKLKWVZlQyV45uwqgt2HaguZWGG6FwRz9hhuWTOpvZ1yZaatFeOx26HjgdKQCsYeNPz8YHdDBoitscLdMjKwS/kWietYMNaL651u8RSGwAHsNQHr9ir/bVIJkFzlH22vJT2cOJViaC4jwCJOeU6tDiZkCk7+JcisMp4ELK7yZdCe5Cf0ly1uq2j7r0yPr1vXmg/XRwfK/E+LwuI8euzbyQSOHQZpy2HN0752MJzeI+bvQLLJ/NMIoZxxJrK3se4CLUv485urVWFN+Rb2Kv4xmXawKWfzgwlxrHtowo+xd+e9kXj87BxmKjoRc7PvqVvJcPxw3OAsg4EwGsqN98Mj9VSvDJzgCDfYny9oKLLhQqjRlafHfiO8aLc/fuEDqeTAKZndcp+xcim+dY+SSO5CPv1cmN8L2sQXCq+r6V0VSfOm93KiMw6k7phmoq5zpVlbYscv0pHZfWqA4xydpmVvVJAM2v1rk4LN4+S1xjta9MMfbl6T1FdkWNnNTshQSEVzIrXjkq08Vyrfdb015Cue8cscB6octBPSBojaV999m3qlnq6VmLzeROXGDhxF6g4FZNui8kr0EiTrQGGjkKwMSB3VISSCO8cHgtDq0Q67ljDWK5VLesoUKKuS09kS/pmB3XL3PgGbC38odj5ZrQB+m7JwfZCxadoDGEXQxmo3Jcfl+T5p00mEr+4rntIg7mCeV7Tdj9fWMxMbHC0D7q1mz7x6ZfUoE7VLZK+XuLDF9qIIhVVipYfbXD270grHSUkZFrD88XDH5vzFmMMMPGGG3gYk9B4lSX9wASTxZmeCqRxZgjpS7UV4nythBkcuvUn4XGoLOjTUOOSN23kCvFSR5fGGVxFxyaH3Lt6TBtkDxchw1ckDbQdSJuJJBLVDC6ILbA7AYb9iCjokHI2LjDeYAw6+BbCa3AQHfdgLpEoxKf5zjnn2Lq0fZY6NdoybPT7Z/xIBBdhtdwO8+845qxmBvp/xqO5A0OiGisRn+ne/n1IHDbpaotGVTaXbf5vMCzEt1J6bbzvvmvzHzzas/DZWFCzTi2KHKe6wYhBul+OGUvRho/BZXYHk63T+bKgrDMzSZ40J+r4VZ9kzBbzK7uWFHOeMidy7k7SgWtvLjweutjTecGN8K6/4TMKXzfIKYboe/9Wr8Pq9IXssItg5YGDlH8XRR/jLNARxhrwfCIH7JwMfjuCHbH998XcTgK1OSTspMQuQHrzrn89ccrN4W2i1MBJeVHLsj8wHLhqGC9iw+bHtVjrm59MFPfUBFJMkgb3lgCesuR+g0QeuTz1HdbOUBQ0mFd/3d3NXfR9ipFeGGeUophV6VMeZlfT8ocWKSGzJuh0+ertd9tIZOImVBJ/n8z61hpMvC2kginYj+19+7uFa/c9cY15i50H+Vs30jfYgtZ+sPA8=","layer_level":1},{"id":"d9ce7c4b-eb9a-4a34-a88d-17c36c4f5296","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目管理","description":"project-management","prompt":"深入文档化项目管理模块的架构与实现。详细说明CProManager类如何管理项目生命周期,包括项目创建、打开、配置和删除操作。解释项目数据模型中各字段的含义(如项目名称、位置、描述、测试日期等)及其在XML缓存文件中的持久化机制。描述项目与测区(TZ)的层级关系,以及项目配置同步到设备的流程。提供项目管理API的使用示例,包括如何通过GUI界面和后台代码操作项目。分析项目管理器与设备管理器、脚本管理器的集成点,以及在多项目环境下的资源管理策略。","parent_id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,cpp/ProblemZone/Project.cpp,h/ProManager.h,h/Project.h,CACHE/project.xml","gmt_create":"2026-01-04T14:37:54.5685419+08:00","gmt_modified":"2026-01-04T16:44:29.1711366+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn4S8pBDRVnvk6Ab4eKePotYbgsbdPDYcu8WhaSmQ6R99dGpTBg10kbUs4lncD9E/kYsjGlHnjboWcBVrcZ/1e/FUQQmfNqDwsmDSrN96U7q8rQqvyPhyxqJ2rx3yg3dlnwSh/k/Ld48BnvDHXb3MGJGx4TJknu+aiGPOJKji/MMhQNA4o5ZJhVW9COP1nGteKsQQQTK08ZSFV+uJalsfKYLYIpE3689GVB8H04qHnDTfMOhz5E4VURR8dgxk09LospCEfOJ21io2oA7HMHeCOP6mfURI2k8j/4YRZKtfkI0aSKLYA6q9mpjHQbx/lPHxdPqRlvEKoCu+iaixKMtOkpF72fE7cCBHyc4tORO9OoYaG9wPFoewhDYKhXyt7QQ3qFRHFKQYX2nRYko74RUlBa+ewoNn53Y8jpYkK4ninnfxuiMUg4Pof6BgvejVMBNRaxgt+XigTHo7v8YvV3zK60cxV1069va8OcGJtMt79YJDHv4RpZkeX/nJr5a1FzH5tEsvdIc5NiUHeTXSaeAgQRRpnD/cKMZwoPm1w9lJntPgPHzSQUDtQqABYY5ByCVZaEdVbEDq26B7dsAycvwOUdvvIvDUEy6DXa11ew+gAWasygpHRNS/6K3MxQVhzvjTsUWUHpalf4HApBTzWAFEzsuWwvzLNgvkVZMcljYZtw4Ry+/x+SgInY/6ZHK5YmIiCE4Asdtb/7puk6uY36peeEaJKtXHeA4AXE1BcM3HOobFo9hiY4DNyrNgODV/+ITRpcOi31/GGYADHYe2vIgwoAbsmY18X2vYSmKuC3gnWdN3NrqFcxKYUoZx+URmg3tvHobfv+FWqTHb9oy7fp7t9hoJi0LvaDn0XiCz3T0nnrWVG3hUo3N1hlYns9Ys64SuoEeCp6NwMzKuZLgNzm6qVXDRuPvBFprwSOfDc1OfWZUqO/DgiuhD4yn8cb5fW/9p78imfvL9VQhRkhYYUlvqByfF3roHak1aq+9UvOPv53WZ+JznizBkQLImImUFoqg0O5d9Xr2+rKng4EPFonL2K+DqSwyJc6aE7v2ysgEKeIxT5RmLGLwuPzRQQCGe17oRkC/eDftrgRdZbjukv1C8PJbdGMydH6ZItPKQRC/7KaPnPV76zPJyDB66xHMnkdxFY7yQj0wo3K/adXtE7fnkfr0bnJ/wg6ZGUhLcOskBl8PtEjqOND/KdpRwDCYmiFM/m2hqkIZbonWPsSiPwn8uri0Gb9X78NuvH3fQrIbUp9DbsIHmcn5MaQVL0jGv7lfNdmld2ULKC6dlpGKN2zwUn8TT5oF9Xk3g1jJJsMQ7KXeYMBg79XNeaPxfUSJrIxGdo3LrRo3nI0WBap6hZU89cviBUMav5dSjo/XYvNPWfTrO","layer_level":1},{"id":"cb10c152-afc1-4cc3-946a-3f100ebea9e2","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"核心架构模式","description":"core-arch-patterns","prompt":"深入分析GeomativeStudio中应用的核心架构模式。详细解释单例模式的应用:CGeoMativeApp作为全局应用程序对象,通过CWinApp派生实现,管理整个应用程序生命周期和全局资源。分析工厂模式的实现:CProManager::GetDMS()方法如何根据句柄创建和管理不同类型的管理对象。阐述观察者模式的实现机制:通过MFC消息映射(DECLARE_MESSAGE_MAP)和自定义WM_消息(如WM_REFRESH, WM_SCHEDULE)实现组件间的松耦合通信。解释责任链模式在设备状态管理和任务执行流程中的应用。提供实际代码示例,说明这些设计模式如何提高代码的可维护性和扩展性。","parent_id":"bb5bc1e7-09b4-4fc5-b483-34ce72a8692e","order":1,"progress_status":"completed","dependent_files":"h/GeoMative.h,h/ProManager.h,cpp/Main/Global.cpp,h/Constant.h","gmt_create":"2026-01-04T14:38:01.5029935+08:00","gmt_modified":"2026-01-04T16:44:20.0104463+08:00","raw_data":"WikiEncrypted:4PoKJZEjoeT4XL3d+2H6W1ZdIao5nQI+X0Y2gszpStAu4ItNFxDxnkCW8MaUJA0fxbb9DGK/GwIMnOhgaAMMXUtQRhOT9CE++xNnY0UfH5LpXoBaIRG8YqTRZJuR1GDt9rS9xletwvpCAWiaEcC3VY8b70RCMN2UuQmXXzGSSKWNnZ8dgov9XH6bWL5daNE9WSVg3i1OmLgdd0s7RyAlhP6I9x88YQZ12x0ksiXj+S3XCuQBWWA7GCwq2C9l231qAO9OphzAcCgTHzxMip2Hbnjoo0WtHvdLbv28RoGvUc/7yfGw5ZTnjUk0O3y0GLD1qXaCu1XHLm2LHx0lRwEJ/mHnf00/oUBTWw1j+j75z3APsiv4NdWHA1MrVOp11Eeo9eCzKfX7IqSyUoXQ1jG/szCNvtPCeA3zwWlHpLb60d86oe2K71TR8GZbrjjvk+hDN8FfWKfrvqYwnpvISNIbSHPqs1bpbWL/xmkezbQOdMnaXcgAbbCL74sW4kBTIPrnpDXi3WQXmYIzd/5DTWZpg2Lpv8uaRt39KZMeYIj+s4muHjrnV2MTpMpYdt9x3yRDiBjInDcWqIaMtROCif1x0HuZjkscs+K/2mOcIdmd8BMwAgI44MUa1E5YNhaPUvpprBxmuj9osrnVjNhrg5dIaQgkKN4Ur5loZCNnlKu9Wgvi4EdtC3ko9qq+uXhu1wJLJvNGqlu8Aq9nSICXXeGqu5D5TkiEVlGvCLsGeY4fIKiFc+qOEokDESCqHbm5ht3x96feMzQu0v8+gpWxy7A7sL7Zsl0wV0pyxPMBMPrKNzX/1xWjJ4vptBHKRMRgVO3mF4cSGRtA/Ornh02rehlDc8s4/YQOJyriPZwmAMAj6FQ6b2Kd6KzClD8axdtJky00FcdL+BI4GapQB8M1rRqtDOCA4LDSsj9t45OPbbhlacJIghcn3421MjpcBigwGL8nZfW3jyjZToM7/eKBeMvcEOp7Nk6Aeuaabli+FtX/aillEzaaAptq2uTELqVQqMZDbMdY53ev8baXeUMc1lPcn+QtFhX+Jo7Tv6r3V7khbPTQA/f7Ajwnm0Tybu44UOIbgnLwlBbr/q6LyB1vtMr5rFuIWqOUvGcwkaekT+4txmdeDsU/frjSMZp+KqNyjgXC0U1owhCtDxnMJiZQfh22RJ689J2nIElDiFePct2O47+cUl5YNjOt54dTHFHuDD5/3d5ZcMKUk56lYW5ElZIp/h3uBjZGgMmw6FIE0B2cd2a++JedJmDeo1oXrXDpeh9zqoAN5WtW02QSArm0ohFe9hZT4vPn78BDTYqx6ltpFUYuhhNs0ghvFhSYGUdpHMud4Td0EKc+EGqPrQFy6fL2w0eBBhAlbrxzZQMOQNL6FQUJE49AwVF6oI2HCGkMJmNm","layer_level":1},{"id":"67157177-6234-4898-a1fc-0d9216a740db","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目管理API","description":"project-management-api","prompt":"开发项目管理API的深度文档,重点描述ProManager类如何管理项目创建、打开、保存及测区配置等操作。详细记录每个公共方法的技术规范,包括参数约束、状态转换逻辑和持久化行为。提供使用示例,展示如何通过API创建新项目、添加测区、配置任务参数并保存到缓存或数据库。解释Project类的数据结构设计及其与脚本和测试数据的关联关系。说明在多项目环境下的资源管理策略,并提供错误恢复和数据一致性保障的最佳实践。","parent_id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","order":1,"progress_status":"completed","dependent_files":"h/ProManager.h,cpp/Managers/ProManager.cpp,h/Project.h,cpp/ProblemZone/Project.cpp","gmt_create":"2026-01-04T14:38:07.7264744+08:00","gmt_modified":"2026-01-04T16:45:54.3169299+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn0WMz+8EWTCcsatZzp8hYTB4oWjD3t/Cwd6BMxeIidW1Y4RQb88jy/phJq7iARKC8wRfqT87+sP1WvzRp30QRhMWyZNzxUZB6EMVhgCZaBpDI23HOEj9SZAGejmm9QLdTHKdzxQOvnb2jdbYtgyAZifOAwgHblKvbAWFXpGXvsVSMjQbQD3E+bbPRclMFczaZTLiZacS747SKiG5tTfFSZ5Kew6LCaufti+lR/7If8JEcv8JSGkJ/bVh3EzRzXWNVkJehGwCWfQP6TOCMS1jYuZSO1mPYRtZ5SOCrnD5VHqyApT2Trt15Bnf3+vUkoalLm/J4lerdu9Zu5/kUVzxty4CynHkvfCzshcZYt/uIDSe/iVnWDAxA816G3LWuX60aRphZ2vQ5ZFvk3oZ8NTcuuzA/BVHFTMyGRPiAFyA+tj2dfYrr4e8N1IlT5r/Z1w+JexikrAbV8H9Qz0LKZX0H59l3fYqLmrGp/jmcvvYl8nxoAzBkO75T+ZdY7bsfq9J5E9zx9N1/rnWC8AJgsETSWRIStaXJfnF53VQF1R62zz31VSZYUrmVI8zt0CyB/c9KRK5p/UgLiz/0zJN4MfZuWZwNkfaxMOLh5U4F2yYw8v6ysMROEcQOHIPaTfqQB4N7lIvgVtcEzgZ3TwMs3IE2ZId8SOFexaXRPaT2dN6RL+eOuKu9/janX2KNe2VRvS/xqgtswkxr7pq/jOfGRxFcBUzH2SPjJ+cH8dL/88D5KLg6Gg6YecvnkWqQS7WdnthB+lkC/BmDF+ljplgZ0ahrgadGJP7RfshRCVe29/ryKI0vnlox+mj7GdDubH9jgxVxwVONclekCstS7djSBV2WUR5EuQNf3rjknm4Fn95+QPAVhCkgDXUM1Aqj8dn0bOXoPd9yZ/VPGtxkD9vAHfnKRkxOT0oMFSkrQGSnL/Vynm6BqGhdao5yBEv0ixSVrnA3RIcZxWxwuZfZKHNrBRLbaXGMRjlkFmbLxGs/de8UczMDdP3V2wPYdVE/nlxqy9KyhjdRbZ4jdY4pVGj+EtMDV90ToqkrQkCk+a23AG362K/MUg+c+lpENyuSTyP5OgPskTDNoglqhGw284K+8M3ZVJ33RelWPg2opJhJgzpI+UxYCjnb3vDIViXtCW872/5clYXJzJBqVAbYr6QxTHWp2DEge7Unwl48TTep60DPDdS0hZZmyiaMk83lPnOMZ0Zpg==","layer_level":1},{"id":"64612403-adfa-49c3-9cb2-b6c2cc3db2df","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"版本与数据库配置","description":"version-database-configuration","prompt":"详细阐述version_info.txt和database_modify.xml两个关键元数据文件的作用机制。说明version_info.txt中版本号、构建时间、更新日志等字段如何支持软件的版本控制与自动更新功能,解释其在启动时的读取流程及与服务器端版本比对的逻辑。深入分析database_modify.xml的结构,描述其如何记录数据库字段的变更历史,包括新增、修改、删除字段的操作记录及其时间戳。对比DB目录下的纯文本版本记录,说明XML格式在结构化存储和自动化处理方面的优势。提供实际案例说明当数据库结构升级时,系统如何依据这些文件执行迁移脚本或提示用户更新。同时,介绍这些文件在部署、备份和故障恢复中的重要性,并建议如何维护其准确性和完整性。","parent_id":"eee36cb6-1e0f-444a-b200-b449d083bf18","order":1,"progress_status":"completed","dependent_files":"version_info.txt,database_modify.xml,DB/数据库字段修改记录.txt","gmt_create":"2026-01-04T14:38:11.6210045+08:00","gmt_modified":"2026-01-04T15:19:48.7256753+08:00","raw_data":"WikiEncrypted:qxrd7b85cOncM3z4VFX/6BOIqLfGLKkr3+qk4qdVmddbk7qIiLW6ZXEXbvL+Na8TEz3bgkYJjKlwW0SPOwLCPOYMISR0oRbYXKA+wlEMnjHX8LreeV4woPL0C3Xedx7dlg0e/2IvrORvdY9FGI42uJ9jkwM017I0KFeJxENdSaKLaHZj0Er5nqF4QnNTb7nXHpzM1/jX3hHnvJ2XtXvlXf88dq8R1wrpz7+fvFr7BDsLOejsAUbNUwfNmm1VT+elyIopbRgqHGu3eKO827Jh/x9mmRvF7gcNBhIBLxgLNf/wRlbAE6IPUNEGuZw2jnmH86rpf5iofC5lA/CgD3O3XVHazkGNQSv9qmrn8LLq+z44xSEuMv72R9aHub4ltGGwH5XSQazA/KdjH4qqyJ/z0UrzNLKlRAeQwx9kZzUR9XYB4wjJaqJser9qW4WCGUdyAqKzIHNO2a1g6xlaaXeFfc63ZoDemPxHofBqGgZVT+KXefJiFvvAjZVcPQs98ggzAAVf8Pzaauu3AGft5gWVz6Riyqnin8btiC6EDCGeoBiQZlXo5DVopRZSDt6Oc+L7IH69FzmIu2OTwY4s9CJgS2gNsqHDnl755FSjxop3bmnCC4w3+DgL0cqKcmEG7CVwLQmsY7A4YUbUSEeEws/d3gULBhslr65la2hCLGzmzc4zEr7fG75w1ItzbW9ZQrUCXDnIbFu5q+X47NUk7ic5YHHkk6AWBospMQxuhWOw8MEfqgJEhrh/DuTQrT5OK2/S7r4ps6Uru7wEI8D0mmZQEPL0B8XqQ3KeZlUj0WoQNXT7fft749xrQvBsLdDePFyhWFA8BDNb5Y9WF4IvVvTiT/134gLPERfoEtMzJVSxO/vbQPS4NSKnFijUO9eMmYlGh1ZRuK2hgohzuz57LLdH7Yjx11PLJEsTld+OBOP7j/HLZSHUlk0fKGvntF+6XlkxWDif4o5VqBPDU13EnrRIZVHfMRO+vMyQzdtvVR3lRjxG+sDOhm3gbkHwRFhW+9B+mPQy27qmgSfYM4yD8sYBCqVU1Rwa4tAUlUAnv3umZQM7PJBP1Brek2ccBk97vPhnNcchByIju0Far0wf8DjQ2uO67l304TyNqii4rCIQ8x92wYTtNmp4YwcG5+bSUxbFbgmP5N6D1m4BkQUPuzdzf3ukWU5GR0UHH23F99PvEbcmDOfsbPIMykfszElKi2eZ1pchvLrLwKKSoowXwT8NeDV0yiuhuZttURxOvnu6IdOap1mzqKU0Jj8HN5uyI6DHrHLD/J+FrqH2YYmnjE5Z2HYIsvwkVQqmz7GHEpZFUxeKZ8DEmDErsrCuugsb3rB+KXT9X1OXgFMm+yK6+Q/r4zUeCnblDt+IiUaxUp+3AWZOPb+xSJ/wlp8XyEdV9O9Km3Qdbp1wB+RVe/ZfiSbHJDii8h/WEi1rXVwdyuzIRZLVhJGh7v04IF1kyRjRIy6D9P0dx6FZ+c8V7jIaeULdhNV8q3hBpm1XBL3bMS0R7yVaUSJaa45ElqWdHf7kialePci9aGaHAoFVvMHsxd3QQ9de67lFMHkzPl1nDtOdZiiKuNYUy7Z/4orYT8dpwFIK0HPYquAFs+7PILC+IPOS2IWZTd9/LBChJ/+Thv9TZWfT8nSblxob258JdMFb9JH3Y39PJLmCoCZdDlIl7dfACg==","layer_level":2},{"id":"349b6900-fda5-4de0-95df-d0b09642241d","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"固件升级问题","description":"firmware_upgrade_issues","prompt":"系统性地记录固件升级过程中可能出现的问题,如网络连接失败、服务器不可达、文件下载中断和校验错误等。分析upg_geo_filetrans_log.txt日志中'Could not resolve host: update.geomative.com'错误的根本原因,可能是DNS解析失败或网络配置问题。解释LicenseUpgrade.cpp中升级流程的实现机制,包括HTTP请求处理和文件传输逻辑。提供解决方案,如检查网络连接、配置代理服务器、手动下载固件包等。指导用户如何使用IAP-GD10.bat等批处理脚本进行离线升级,并验证升级结果。为技术支持人员提供恢复模式的操作指南。","parent_id":"cb978e4c-d19b-4711-a81f-e657707e1e66","order":1,"progress_status":"completed","dependent_files":"cpp/Operator/LicenseUpgrade.cpp,tools/IAP-GD10.bat,tools/License-GD10.bat,LOG/upg_geo_filetrans_log.txt","gmt_create":"2026-01-04T14:38:14.1805896+08:00","gmt_modified":"2026-01-04T16:46:18.3798329+08:00","raw_data":"WikiEncrypted:8xAKWur484qecUHC6yiBWUuT4qKECpEO07ZfEFIPQW76/EOBBp3SXzlcitIlTbytDoQjYlAm5Ck0wUtN81j9wxmSgXi6w8yssz+vdWMgHA25xSbZfu3XVPvrhiUmHHruzh2Ogy4piKHB7pfc9QkkCj3f6qsd+aZ9OhWuy22Eiu5UF4XoGo6C5Y+aDfdBI249Hs6cZEYHusKB9+JERhfImtJfnGXmdRoejiqrP9AVOOPdOg0DghnzQIgVb3/fhk4APmNV4xkLT1P3jf2I6EpUBkX/70j7LLK7GkRfJYHU+Hvw5zTgjIthqCVMsuf2zY0hgc+qJeHvsNwBX4dIEQEDJrL7ycLbjuJejTgkNUhSo52hlbunNHs2LUd/jb7OjY/YxfwiKPWsO4kt0gj7+u9Ie+0ZbPxwE7fLyuECLp6qNEIu276hDNgg2G+DHPZK3yAc2ldbMxY5jimzzG4mpJ+mCfwI2l0t67EHNLWcL4VCbRHw0GYtB8d2nOF3Sq5cZy6RB3bFz9RpLJyG9A7wG4a1i7JO68q85qPOfB0H6I1UQdejFKbRhJy/qMQaehbRakECxXcoMMEtevFDm5bXbSwzECVguYH7st+lWybCRlvZUKICjmzPWotndnrGtBapijXXNmsnOf/VXPGrETNZ2//kgt9P3MjnYFIfgF/3IOFGBMSFUo0nWgKKdCRr9STegXXOSbxbD1s9XtpzZ4w6mgM6ROHCkkRlKGkwAbBY6klFVTS9nTFCueVFrr3JB8TKpKapiLoiJnun+PK81lDOmeM2jHKE4pLc6/uJGQsfJ8bxdBPIK0V5ue0ABb9dy6qQn1cTEKKxutVpmxq8C8jbSppQUZ7GkrgJRKWyLE2obXsYj6sJGlJ9QNI2rYMqEvVqZoz0xJMsiUhl1a0bMA4KpaFdwiT4DJY7u712+LLE6hZ+JDnLOxRb84Iqz37WVYtlU+MeTraMUeK7pR3n4jk8feI9DvRRbvUWLlm16LEnKSzUjD1VFVbC3FcQXHOdf+S7kT0r0S1ND185ZKYMGFJkMTaH6qMtVFYuP61Biybwz7vSnOAZdWawA9zazxNcrw4IM1dMzN0uhEWLOcMPFYjIQayHDqO+MCJKgNw3yHdZphQwXhc/hU21QFyEcxJOE5WT4DPgeiGXpMB7Ujc4vDvU9yuDLxBmeF1HkMc1Bn2vyWy6nXHIuq/lkF5CkPqL6ybsnHWWWt9iULLfmCdW+iqBbj1KsIoz68GGrjeUW00W4x6DWaAdEDmZ2h7NIHJfGZtpp293KMmN0mhTpENbRdbRcHKGZfnPvNqBWzl0ymorVRgc27y0F6tnbf/kYnWTgK4uyfbS","layer_level":1},{"id":"d8598142-439d-46a3-a120-be2bc887d53e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备数据模型","description":"device-data-model","prompt":"开发详细的设备数据模型文档,深入解析device表的结构及其与desetting表的关系。重点说明GPS字段的引入(2017.9.18)、CableType、LowPowerAlarm、AutoStack等配置字段的用途。解释设备参数配置的数据流和业务规则,包括设备状态监控和固件升级相关的数据存储逻辑。结合数据库变更记录,阐述设备数据模型的版本演进过程和兼容性处理策略。","parent_id":"c8d16069-7e59-4855-a785-bdbb26529326","order":1,"progress_status":"completed","dependent_files":"DB/数据库字段修改记录.txt,cpp/ProblemZone/Device.cpp,h/Device.h","gmt_create":"2026-01-04T14:38:23.4538017+08:00","gmt_modified":"2026-01-04T15:24:25.6202201+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvBStk9GoQCOZWceSkj6wOsVQ22SBijQSdwQCxB0GXtedW3qSLgr/fpOQvdDG4+hf+hVkZ/79fAFJTZwqIsc1lzu7d1sKiKAFcLpg4ysBGQ/3R7zHY7+17BJ5NoR2NhuIMZiGO3MmPfv3sDeTCC93mqIpboO/H3XBymJh0bFQ2uE7qmV7BxHn1aIFLdqyTnDv/nzSWERV3YkXvNwPlxB4Fd1orqL9bSAB9SXgekbnKGfmLar7PTp7iZubJHmMN0gpoN0ngippxMM94rdllf9iXi8+j8kzfmYwgcX9xNeLRwG053R6ypzFQR7yCZRC+xwB7ecqSd7KcLclvFpYyfhilam9CZ5KnOFWTyADbDBn7oY9SLJEZ6ZW44nC48nUCkmpytTp1M8TPOaMuW2mT0+z0DPyvtcE/h865wTwNhEDKv2l94BLa2zfc6d7vdBX70Jay19tx7/Qz5TljPyk8il5J0zrSup/WNF+dNAEEaaeoVq7/eWphzJUtI/Bgncx8KPTbUxgRHXUMvnme4sae1GTlOqDd42dvlYxpkY/9hT8MZlEYShhC8FnFeYdzY2VZaJCsbB3CR712uUGcPQXdVCoTV9065a7FGSEt4I8ko3cntiHpRSwO9PiYvqFQLo8qlrtvT70jl7qmhIt8Dp4soYshYzZ++Y4REA6jV3AFyk/eyAz5CgajN/46OUdDxwSEsMDJ7YRrQgAlUYpI84UA5/527SZyP2+pj4TvbmtN1xrf9ETlRPTw2QftCyoKNkDA9IAKbR2PcbCTvEEsgJWhULNg95gWk9rZCZCafRF/qt/iN2esQVtQ9jTvD+IjIsSAiGsacjTx+RfyCv+kuMAC8j9gHnWwMjj6AwjjUNFOkUCr/z746S3w4Nm8Qo8OHIyhamZri3XHMkLOEgmtcJuF5jaXWAm7koRrAYd80iK0ouINCyLoymLiBmLBrSTEbsJb840hnSlen+EOTVyJcDRQ5DTcDw=","layer_level":2},{"id":"2a6c2f5e-03d7-4ca9-8b62-21cd1ff41a74","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"CRUD操作实现","description":"crud-operation-implementation","prompt":"详细开发CRUD操作实现文档,深入解析CIOManager中对项目、设备、脚本和测试数据的增删改查操作。说明如何通过ADO Recordset和Command对象执行SQL语句,实现对象-关系映射(ORM)逻辑。提供具体代码示例,展示数据加载、更新提交和删除确认的完整流程。解释查询参数化处理以防止SQL注入,以及批量操作的优化策略。描述各实体类与数据库表之间的映射关系,并说明数据验证和业务规则在持久化过程中的应用。","parent_id":"9c6698e3-6e8a-4c4e-979b-57426f8ebd31","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h,cpp/ProblemZone/Project.cpp,cpp/ProblemZone/Device.cpp,h/Project.h,h/Device.h","gmt_create":"2026-01-04T14:38:29.809127+08:00","gmt_modified":"2026-01-04T15:23:31.9333345+08:00","raw_data":"WikiEncrypted:upqnCMCbNRr+eYuNzNknigTe7576sPTTTKuFtGO26Ej3XbSb16JsAv349UHHtIaE18ayXI/kAD7tq6wssd+VX9Pjwe3GdXoTGVfU0QbBRCRU8oo8Yh7awnstd8xhtHmHcOLS0L4wTL6b65wfrOO3yaha5Xs/BP6lXOahTnzsqRuKbetbughiQpaXlJhruKsZ1tMtiEuibshZm1ogw2Bx+9FvrD2GxvsVImgzqJVsl22pHAm2zuRKuPrsCw5AKZzEPtJ4BRqMCmbjZAKQlkyZO44ysYSOQZOMfdWDPyDs+elFjcrcOIPAUZ0gK3gyLVeR8R0r1YAtElxEyKrPXVYmVgVr7QboJRkiayz8UDa6iSjuqAa5J+SPkW3FD/uMGZIwe6Su2+R0TMVAH1jRiP7jI8POtpBEUPJFO/x6kdduTx1uZmAbAVE1t66AxFBLAyTe2vr7IWQGLxEhMQcOARnFcJEYYeBNJqx/m0bGFYOsw4aw9g2KsgU6GJNLntVKYcMnhX7IGcD01Flw6a6qQCmJpFfgHNMtfkkqZeHIO7CZixE1c2TFpC6NFVKQHdC8wX2iO1TeedF9Rf4PE4j2bjMl2kW1q8qqImQNzBm+wt8vYFL4fQGUmAE92WjCjud8rpLtw4a6dEAfPXWV8fWuRy5omE/EGVgT7BWTEcueIGiBW5TyKXuMLRdIXOQZRAysX//FsTZ2e+MvjRbrI1Hr5cdmJQ6VjVRemxic1d2z8ZV/1GGhnpW3nf5xY53wIBjacSloJ9fK3xZvlXLpEHARxLuDMMiyBruDyC9hgu9xRFx3MxGEmacWmmGDtIFzl9LySFZ+RgLTDa5TtHgpjedRVi6i9Tqx+eBS+hS+MZTkxP4FzvHJ28Td06ALsIeZEextXQgOQsmG/phvHvLkm9KM3oB4xE48NxysTog15HpmeAkc7cPns1NGn+uQIbcU8BTLdYU65Nx+ZHDS7YRDBE45S1/MuvyJODx9KghnGQTWMYZYwCmw++MnW6o3GMgOxCMr9FjqcVKP2fiOxqqZeVpHBmc6t0Xdx7+vyymn7PfOk5L+NG7HMCC7OnywhVGf6pYS8ecjzxkOIqsd07Ctjm7wX5UKsYLLIhfxvWbzReT2AhRGCpgT1gqWS/NbGnRqDh9OzfWDRtfDPVOZiuFBcXE3W1tb8FvUIkERLAvhYZvKXUuSNWNrEqgFcU9RZIRwMvi5BRicPqux0dO2fkZmNaZwVGMu0Q==","layer_level":2},{"id":"62061c22-5074-4f8f-8f28-653e7aee694c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备参数管理","description":"device-parameter-management","prompt":"详细文档化设备参数管理功能,包括设备基本信息查看、运行参数配置和固件升级流程。描述DialShowDevParam对话框的UI结构与数据绑定方式,以及CDevMngFrame::OnModifyDeviceParameter消息处理链。解释设备参数读取(GetSelPlcID)、修改和持久化机制。提供用户操作指南,涵盖参数查询、配置修改和设备注册/注销操作。为开发者说明如何添加新的参数配置项、扩展设备参数模型(STSynDevParam)或实现参数变更的验证与回调机制。结合DevOperator类的参数操作接口,阐述安全访问与异常处理策略。","parent_id":"3f537301-6406-42a1-984c-2ba217f77900","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialShowDevParam.cpp,h/DialShowDevParam.h,cpp/Views/devmngframe.cpp,h/devmngframe.h,cpp/Operator/DevOperator.cpp,h/DevOperator.h","gmt_create":"2026-01-04T14:38:37.4756344+08:00","gmt_modified":"2026-01-04T15:24:32.0598466+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvMIi22rVDmP4D0i65wzDami2DidEcd/MtoSzysws+79mGD5rDsVfOihsqEDlzvdd2Gqpvt4SKT5OLbmjxaYhhHWVjPfVkqmhovU5XkOPHll1s82U4AZ0awMyxHqUr1GB/T9doZdH2pznwQdGEo/QuZx8aoZp2bKlsiCZfWwzf/VQMjgm29AfOOyMRAHJZNrm8/N3HxPUxeHF9hMgUr1b1IJKMYmqsTtCl4XRL3kRST5Q4a7ZBOFto1KC7EruCygCjmEYY7SgPmbI6iS5jk7HWNQWfmDcPyKu1HZXJPo2/pHl7CFaNQ3YgDxpsGmtLeH4vtVvSh1MJw+kHh5sE9wctQgZlZBoM3u02rByRtJ0K7ztzPlToOU1yGlB0BkCJwCyA8h8ls4+AfZX0ZM9ZCaFI39Z9JdcbBvz0UOiB12JQQIdeWUr+WKRmuVwvPYBmuF+BoTBMmj9OYhO50+sLk07eeK/MlIVzovmK8/4Y5GjJKNVqSVvqommTVLeNixslA4cHyUCNDqGq+xRKsvW1w0eJATMCUv49oMZ04YrUeHTf0/YJ7OLK8zIofDA/Q8zWd+YrUbe6mkOHgXjr4EprEwdSGTRlhEdEldYMYCNQTuR4kFyoVLadMUCj1Pp+5NZc5XpAimnehFrHLQt+VdyaeYaM0Ae1/47WyicYsx/5HSwsEqJCMX3IbduYhjMVLz5F6HGD6H/NwzsJQACEwAwjvCcAO+v26fWGgmkdpj2ZVMiNoqtba1elWxCsmWPY9UKxh29gCvBItaT6m4wVcp09hKURa2dMA9AEW/r9xY5mFLJeYEu15RG34fvvETgrIGGcgGM5O7zj/eFffxy+Zk+bPMbf02Kq+F2Fj6rPaCtsqdRdsmVrvinp/nHaBS3pyM3fq+oRNKftMh8wuBs9yrizsONGIV9Nx7c91IwpxInB7nNWQGIjN2ypoo4y6ZHL0STocLlR1mwbR/ZeFk3fYi8pIZol8W4SmWAs5DzqidJX96MxMHb3d62MwhSXYoANGYduIEdwA/3bjUFoEZzk83s2+inHmj7nSxbAq9AN4NluJxHqKuMfnCMWGuhesGGOLFYCVBRppZJoWG9YcgiH0GHK66oyX8Qbw+1qglP3JSSBOqDUP4CIOj9aPRlJvQBEwPXv/jJPRhdf2YdLcHSOxZTkCEDW+7vs9YmtryqUkOYjjdvcJqfcb0H2v9Z6tV+x2wBzJcCJcWkZhZQuYXq8/7Kf4/TQN7IDsRT7hyfWJfYWlI1Q+GT/QwMRECEAQ9t1Jb02jX+g26+AETTc64RRCKgo5RHGV/KvPkiCRy2cjTv25ovJlHHmyKxDpSgHgWhrl+fAsrdJZufFg0TN5/byVfoVLL5pLXAdmaPgsf3G7FAtfQJn5bxvw4gAh7oVslc3GstWbLJjw==","layer_level":2},{"id":"a6014b21-ae38-490b-9031-ac94683020c4","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"任务配置与调度","description":"task-configuration-scheduling","prompt":"全面文档化任务配置与调度功能,包括任务包配置(DialCfgTaskPacket)、地形参数设置(DialCfgTerrain)、定时任务(DialTimerTask)和循环任务管理(DialLoopTaskQuery、DialManageLoopTask)的实现细节。描述任务树形结构的数据组织方式和用户交互逻辑。为用户提供从任务创建到调度部署的完整操作指南。为开发者提供任务调度算法的实现原理、任务状态机设计、任务序列化与反序列化机制,以及定时器与循环任务的触发逻辑。说明任务数据与设备通信协议的映射关系。","parent_id":"aa89218f-27dc-4295-b248-d1c3aa8f69d2","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialTaskTree.cpp,cpp/Views/DialCfgTaskPacket.cpp,cpp/Views/DialCfgTerrain.cpp,cpp/Views/DialTimerTask.cpp,cpp/Views/DialLoopTaskQuery.cpp,cpp/Views/DialManageLoopTask.cpp,cpp/Views/DialUploadLoopTask.cpp,h/DialTaskTree.h,h/DialCfgTaskPacket.h,h/DialCfgTerrain.h,h/DialTimerTask.h","gmt_create":"2026-01-04T14:38:40.0098973+08:00","gmt_modified":"2026-01-04T15:27:36.1631266+08:00","raw_data":"WikiEncrypted:xH3YSuct37KUaeaXXoc86Eso5anaaPVsqfCxrKm6ct+zL3BTFY72K/RIY9KerkXx3IU0myQ5YwDAGvllOOd+BiBFrutDyRsJTK/4PhOztT1INdFJHatzqHu16g9WCOCBgTS8iUC8QDhtFtC+e08zODABceB6KYyvvygQGrdAr0EwOLsyZ6bL1o3QVia3F4nN5d1uaTKiRh21KpKufeM3FSN30qu/yW0hKCE8WTWwcVyPym0Y46TPnTpA4T/OXZZKruKyBasGhEKnEE1mA5kKGaF1UqA1zXX5vQNiaRQaaCat3kbbqR8g0WIw6oFNkLgxLjQaAJr7Hukcofd85iszQpA3UBy2eBWseIVIYd0RwxKZIy4IYM4DxnOhM+U857pjq5vhysYZELV6jjgiwpDVeAIBoWRdRzLo5ehMNx18llEzu5ybQk0jddxiwTw9Iw4epzCdUn76t0Lor5ds4rVtv8V0FCAUaOYcNSOqXSaNP+2+Ey7CzyJMBcRVKwNS5M3R3lGszBiiQdmoll3UlnJZj9WOlo8EAmWMTSkb4g6zKStMMxgltS7HwwqSmHVvFalBeWpoSV+EZ0uz62R8os5kTcjqPfCFkZnQnMMHEKOB2XOsVoYZXGAIe6FWOCpueKUXYRHbHfZ7pcBvqs3a/vlRF3HfMEXn1KPej1saUELKoI3yTTanzCLfFAeUH1zz4FmlF+/lAUh/s9Hx1RrReuvEldWaf8sGmk3e247KSvZhm+Hwb+0s/mo44CbqBNAjgWacRNaJ/MlIgp0ab7VwNOx+4Jd5p7TehCrchGG6exnhbNcUncQgQXQaP7FyamyDuHQTH2bXKYvhBz/NropnkSuWlcVpUySwMRbbDR3B8KQyVTXWP0d4bx0XEabivAJi79cdd9VFgb+LuxdSHjssxuWpncrYWxlgBzsC9ciM/Zx0LbqE/X1tE13rnly0UEzD4wrwzCn2psujUmf3OQDJKAj7v+w3tIQbLnXHO4El5G7iLBaupCD1npi16/lvVBsA2P/dnl2g1QvQxMB6+KWEkulo6ohgVFWJVJGQaKE4epGYAYPCFHex0aonhUjM36C1ksYASQUVtRBf8zV63ZCwkvGI2zKRfXYWDoHNZMeCl2sUysAoE1NoOXKsN9I86UV3UQHYNmw/GALF42JaQNsCB8wkVW2Ao1ECdlHjKl6K+s6WfFi5Y7vEpvXhKv4udED+UO1nLzYk3yz5MtnPWZuVK2kwkBp6BBOq/HNCrk4QE3oFq+q691PN57E/LU30pCcO6kfssi1VB1dODoZdEVmGNTI4ByqLDrnGl0plNK00/DOC4xy4w9Ns6yUegocu51MBygdKrKYV2BasF1A45+4ztGxQvWKNRolHKb7Vkjb700tZPVkYEBZbEaVj0F4q1iMHowoL3dByratECMSByzLQr7Yh0AOssdPYsvp+oUNzDRXPuNkabCYjOQmJTNTBOmcPee64lPFoZk+s0SEZJKpYMBtarhixFNrMtab8HaSCp/xWROw+NYVPczqHUJHiu4Rvb/0q3cbmQ+//VBnMAob0BDeyNZAggIosrU77Co1VZwI5Q3T4h/ypCLpS+lRgPE9btOjbbqop3/wIad4LwDzvZNwpl59VEdoGyN+XSi+07J8r32E=","layer_level":2},{"id":"3738bfa4-7add-4ddb-a561-58cd2f4d0685","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"实时数据监控","description":"real-time-data-monitoring","prompt":"深入开发实时数据监控功能的文档内容。阐述DialListRealTimeMeasuData和DialListRealTimeMeasuGR对话框如何实现实时测量数据的动态刷新与图形化展示。说明DialRealTimeMeasureData对话框与设备通信模块(如SComPort、NetWorkOper)的数据交互机制,包括数据帧解析、状态更新和异常处理。描述appdatatdlistview和appdatatdgrlistview组件在高频数据更新场景下的性能优化策略,如双缓冲绘图、增量更新和UI线程分离。为用户提供配置采样频率、设置报警阈值和导出实时监控日志的操作指南。为开发者提供集成新传感器类型、扩展实时分析算法或实现远程监控功能的技术路径。","parent_id":"e782bc89-0c12-4b91-86f8-98dde91ed07e","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialListRealTimeMeasuData.cpp,cpp/Views/DialListRealTimeMeasuGR.cpp,cpp/Views/DialRealTimeMeasureData.cpp,cpp/Views/appdatatdlistview.cpp,cpp/Views/appdatatdgrlistview.cpp,h/DialListRealTimeMeasuData.h,h/DialRealTimeMeasureData.h,h/appdatatdlistview.h,h/appdatatdgrlistview.h","gmt_create":"2026-01-04T14:38:50.7199551+08:00","gmt_modified":"2026-01-04T15:27:42.0730386+08:00","raw_data":"WikiEncrypted:a46miLh4B5C16RNAKII6ILdouJ7+3HgO+VAZ0XdXyYHtwgrWFwQ4X66YR4jI0SvcTqv1eQGUud4N8EJG9OybAEA1YAaTycoQFheBY3t27+IC5bH0bNJ9gz1DihSWQrEqIHvau8Dnaau32hhVq+X5+W0IWGVGHYtKnXoio+i2s2bnNFReXxwx8XRnO1qMFUI60bYxcu11VY6KP53Ia/fxDArR7gN3haAHxKYFN4oV5pSyZU11nt3raZIrv85A9aRPL5n978Zr4mc1eeseMqBZk3ETN7AIx93wnSkHRp80gPRZQhJgCodzNM6UL5tnWEEYVooeXu+UxnNV9ft29WH6GLd5tI+Xw+31mahH6BHec5Gmz0pLDHIMWm7xRhuCVpgUpz30BWroDu+75PuAoi6O8ZgFgc2ijJP0G3iigJ/hcABFYNJYbW02qdP0mrwkzYWO2qXZx493CEzk9zV6UW1HNQtG/iRIP9Twz9xjLJsquJroBdMEIv2HYAYh9WZL3r4JJpjURS/PMYVT7TIUK7F8/lPfygUlQqtgkCyrnGYxYOrhLzeS1hRLdyKVPk0DTFCd0U/NORkuEGFDtqt2wgZmTnEAyCzaxhdyZWCbyT3kxlE/yelLYwpwPjwk2TKbgaiuDmRWyvWgSiuFasOAxWl4ppFpSw/PUsDVqp/aiifCsfPFR+q2avuOGKWyCvU16C8he1UdUdABn+yEcF7lpqgJlq8DlSvbtZTaoUHRE179/4am0wDHdP2sFMPxm5GHQZZqtEgeCD/oMcsHyUwn4CbbPY1TPP2i9tC67e4auEg9dUcpSgcXE7KOMCdU1/nOOVPpm155lZZlXdFs1X/em4R4+dKqHvwX5JzNZsLUDF/bMmFKnSzPUJ+yhRx/4fWPnwkDX5lmBYeozKIpN5rfINPsIw7r+7HL9YClIJluZiZ7VGwbtyPooqKB4kzVOLc8Xp1dZlgzN3C0YpXYq77/8qnplqst3v3g8Gc4GtZgqsKuws9uQkyHZ6kwyCwKqucNPniJUY8zcwuwmnR007JHU+7pWRUkvktlqjLBGrzxo0m4tgy9MfqUiuqsHrBosKl8VPgvI9+XZmuOQ7bH3Dx8VT1fQrmPL2Fv+6hdCAJOWCMTdmEzcbZS4SsjddRNnNHtVTd3ZRx1PL9WM8qWBMmg06HsRVk+KLIbLxuhz9tsxenLgmExhBaFQaw6OigJO4NI+hdwYhCwVsuGiIPk+IrnkUx2Kp1CPjB6SaNzMEF2wwuVFqGu0L7R1JopEKU+ByWOclXSpRNk4r2K0maANkF4ocwQLHfSR6JR2Phbgu/vrZ5HtmOWYopLuNJu+9egf+hJ6vwNzXuwj7w7tRTsFMcE4eiB6UzfzY6HJGXvPVExNOr+0MknVtUGdqN4hO6wOAgDlsw8Rrgq7vlCQr4K7gpxRbWhpJtYvT6eCPjrGFd7+/I8CBV9DBH7vamUR5ETAnC399nlz2m3J0RrHjXMD+xwCisEPgz0lR6sCceiZFwRrZj1hLoDTGbXBlpUirX2HHK8jkkJ5jAiOArS5Q2vws7Xuov3NyhintlY7b76knkVotfG25NYC8LYKZuewx5v2EIQwmLOvzhu0kGZkME/fAoKzBmqzXfA830x7lL4B+tKBMF+HMCCZQrqBWPAfICpy8i1jxUneyoxN3DcuEVmmTljY2iOsMc0qzO5FYpInjs/yFwHyDhgGGz2Gy9iMsm3bFqBfB5Z9ZPLiW8dD1CpsK4BMQFhNu/tozGtvHGnL2CqJowx+iOy9O0eLH8TBAvE42tJeteN","layer_level":2},{"id":"559a43c8-fbac-4b5b-aa06-2f3398432231","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备状态管理","description":"device-status-management","prompt":"深入开发设备状态管理的文档内容。系统说明CDevManager如何通过定时轮询和事件驱动机制监控设备的运行状态(如在线、离线、忙、空闲等)。解释CDevice类中状态字段的设计与更新逻辑,以及状态变化时的回调通知机制。描述状态处理器(StateProcessor)在解析设备返回状态码和更新UI显示中的作用。结合DialDevStatusTimerShow对话框说明状态可视化展示的实现方式。提供状态同步异常、心跳丢失、状态不一致等问题的诊断与恢复策略。","parent_id":"2436cc10-dec7-4d38-a8e8-fd3c9d859b2a","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/DevManager.cpp,cpp/Operator/DevOperator.cpp,cpp/ProblemZone/Device.cpp,h/DevManager.h,h/Device.h,cpp/Tools/StateProcessor.cpp,h/StateProcessor.h,cpp/Views/DialDevStatusTimerShow.cpp,h/DialDevStatusTimerShow.h","gmt_create":"2026-01-04T14:38:58.2975184+08:00","gmt_modified":"2026-01-04T15:26:35.7804141+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvFfj0+8+4LBS16l1s7hvCf6XpueiftdKvJdMy7/ApYWyFkkfN6M8otUfv/fveEXMfwXDVF6ZwAiVXPT+uFf9eiOamrShso2Erxtnv37SLThvGdSLvLMzHdk/5sLljYev2jWgn31V99OQLhmMsCmksfxcTm38biGTYTcCQMxk3AFmH2q1G8wK6qKWl0KXrQZZYCoV6rOhNWaMmIhbVCHyVVAXHeTIyEGXpGEJ7NrsS7ecxkYfkyv9HxxpNtFWwk2rbSyKn7obMiNVo0/T8FlQA37beDTU9btccjZnwA9u2r+kbTOb6e9G8S6tOBPZRxwMiwOIJEZprFaKcia0NK7ke5HXXc0JqqiFA3zhoUBP8YKrbB/xQQcqdCyVoLAsLYc7L/rSwXYfR7KAJiqS0340GvTjLMryqoJOYEbtWQzcFR57hateEnd1XLLfY8hV0J4W2iUrx0pPeHNbTswKQWta37ZnbCQQQR2dJwyq1sIcr2Mz2u6rqg74tquLMOmReqEOAWq4MYkS6sCsWt0aD/7RBuJic++luHfepQuzXwLePXxlXsNrj2zg5E2XJiD9G4ZHPVUZBS2cEzpiy5YeBBH0RhFFAnT7NTkPPbK8rDEt3nJeLM/Kb1jYpEh0TCIV0V9aq2E2hMVrqGCIBe+MyMt2rkih+nf69qBfzdHC2n1Q41c9o0M1Wk5F5ES+cd2IHtqEEPcYpdJMUC0TnAkQDqEvzDdO8vx2U+drIXPtk8OerqgyQ5pHWsT71asc42QTxXqCcb6GeWWh51VwLwUjitOQ/TyJdfzrqoU2BOv5xDi1hqLnSNnBDOTFJTdSnloc4SsyzemIYsVkSEywVw2QulkWWd5OV6hMyKXmxpZ7C9WnvLn7oVoQNx4Mqg2sJOUULB8f2rg5b2t+VIsllOwyjGwMlvA1kvBNUqC5XyLORTCqxXR5hDFrge3elXwuvtnUgeA/Rh7lB2JN4mZONxyM5oRpeh+UDO1nUCjWokxEC7vE7wPlhLbHTPFL+FY5xptiniK8+KIz+lPH+uz5Bhu4y/Xa7IkiNleAPCPUfNyB8mn76oylof9t16zzai3rseYCQvzFUsGhSF8eTTdKQcyM/BaaGeo7dlpspm8uPKQNhupNydAnx/1G0dhOjhQW9CckL9GtyNvtoVosbF8Wu329nkSHctfwLvfb6Y0civ6o+UJjzcg/9Q85GD94jWyl/wmjcYEvVcP1FmCHJMxfRirPD0kdPS7CYXFLLo/cY9lBbp+TWU6AWEOKqwYhVEyCPCzoSWrLWdCfAbcD/2Vi2lxW1VhzcGMsnCiUtfP5cD7mxIJun6EgZ7EXS/Rk+BwghKBIeol4qgllhwff6ck6TjdkYCzmgrJcbsMK+2Rutz+oAbj1XsY8WUeexk5fC3viOfrc3YMhahCo8YwfXXDUeTE1pjZGemEQpfIaFji2kvYHdtPJyLVfmVSK5eja3o8ULfKP6t+U3A==","layer_level":2},{"id":"6942b6c3-2ec7-4266-9790-158a45335919","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测区管理","description":"test-zone-management","prompt":"全面文档化测区管理功能,重点描述项目与测区的父子层级关系。详细说明CProManager::ShowTzList方法如何根据项目句柄查询数据库并填充测区列表控件,包括SQL查询语句的构建和记录集遍历逻辑。解释测区类型(TZtype)的枚举值及其业务含义,特别是默认测区(type=3)的特殊处理。阐述测区配置数据在设备端的持久化机制,包括testzone.xml文件的生成规则、元素结构(如type, cn, location, desc)以及与项目XML文件的目录层级关系。分析测区创建时的完整性校验流程,如对TZtype=3的强制检查和错误处理。提供测区数据模型的完整字段说明,包括ID、名称、描述、创建日期等属性及其在UI中的展示方式。","parent_id":"d9ce7c4b-eb9a-4a34-a88d-17c36c4f5296","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,cpp/ProblemZone/TestingZone.cpp,h/ProManager.h,h/TestingZone.h,CACHE/testzone.xml","gmt_create":"2026-01-04T14:39:08.0073417+08:00","gmt_modified":"2026-01-04T15:29:33.5222805+08:00","raw_data":"WikiEncrypted:4f7r5TQtREf2wQKv0u+r+v8k/j6yOUG7ARiXuHh5RDBZn9ZrvzqKiIX2yr5r0447j0YsNCB598434J6vgBdfaDTjJq1Kl1GK0QJhZnFG1NFJS4f9BU9Od7AzzRnp7SG+x6BXmCaBBdNcNxQRThCyklELNt8FaHKzHkj/ZHWtC4t+GVezmnNZaAk8h4I3UZ+xRlTJB0Kt/h26kHc1cuD0KeEpnIVFqcM9NesK/cAFbTD4QBiG2t5xLmKQASVE+uVkjcxHtIS0xkzUUFJJcBvIZ5V/X1VQyMV4GSMAdpj7Ujp5br3fJZfOLt8iNI/hxFsmJYMQHxu1XO34JvEOi1okfBl8cas5/+v4l0KSdOR81cV+Ibnu32NATEPL4ZdV/hHKlkIqgtw9p/65D3UVnSfSml9xfM9zBLOYRigDyKKPJ7wuX0nd2Zn9NId3oUCTWnpHd1QalhxXfYJJn7mvzaU9Y0faJxHhfAUHXP5Q6mphqATdwhYNo47dNx3baJqDnFALxJZVgHAIRu0Nk2OJVmj/y2sZLog8h1SpnPnWYIhPQx97p5j8YsODmq2vdBT1DYls+x2wSK46WPBZjvzrv7RGoqMKoS2bU4Yu6rMhK6xfc+fmTsHs1iSAwV3O8NDjz+0E389O+gEJNjrYLUUAtDBAsIROrnU7DDcMEKT6oTt5hs4oELGLD4Pnu5jm7qLFhH2B3mH8R9FnUDKK8s4P5zn1KzudILt56hPesTwnKrMDELWc819YjjFPnRS4WoqWXoHyxIH6bvfcR/y9L8gqm3W1RXmH7HviO1q3zD6k5XryeQhUYLAaLKrsu9zlVX5my17IO+ZRKIy+3GFHIIfXJwx4G56IUexNU2r5b/4ajIydie3XEpNXMbGUarxc2Mrgfw/avTjUflf5D1B/biTKz8lQ7l6xnEjZ/AjpWM88IAoawvQExH/CQVBJ9SijTPOdSAr2R2R0x+8UDWoEz+ddTt130NWo5F3nu0jgugngx8CXe7ln17goW7B0LyB22t5iXcolbMwPED8I/42vKNntPPYOeShf0yKlEoTamEQE2KFP9S5Fstd8/lzLY1VbpWJeHmYrvr7YWM0Eg3uDB3WQl9bVQUY+p4WQ/f9OWD8VXivsEXdEkVrY6CrSA2tqVR/o3JXsAQgAWI/UuhJY5ai0AoodJHnbcY6LjUgIIrvabYjDsxrQ2GUjS6mLUc3+ZzLUZAm0Ryy5snlD6PAje1ZkQ00e7xfnvKLO1XD2rtTyHytlaNPA+MV2eNRB7YqUaJibRugj9SObAMQgQROuKWYkFsUH1MKRyjuK63SyUHO30Gd8rvPvVQ5z6pTLtB89LOwKQU7BKefuBsfr6OYzUmCqNlnkdjK84WoHteKJXO4PMzHDMCXuu8ZOdVN2dSzUDe5A31VNtvb68cmwMcVRD1ZR2OHIEqRDrFv6vik+sP4wQ8+3saJPiSNlO9wGyNFYQo0/g85BbgIaJ16dBYpUep23zgk66aPsWR00xCeCYg8++mfWve8JXtcJaQobbJRruZVjf/wbGQ0SwcCQ9jfkMJ6b8NCWo/dONk7ny9JwoEUAU0ovDVI=","layer_level":2},{"id":"c7c35cdd-8235-49a6-a588-4e7604b30441","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据展示与分析","description":"data-display-analysis","prompt":"详细文档化测试数据的展示与分析功能。说明测试数据在列表控件(appdatatdlistview)和图形化视图(appdatatdgrlistview)中的渲染逻辑,包括数据格式化、单位转换(如kΩ·m、mV/V等)和颜色编码策略。描述不同测量模式(2D、3D、CE)下的数据可视化差异,以及时间窗口(Time Window)配置对数据显示的影响。解释异常值检测和标记机制,以及用户交互功能如数据筛选、排序和缩放操作的实现。提供性能优化方案,确保在大数据量情况下界面的流畅性。","parent_id":"e2aa8d47-2019-4a51-8646-685c9019c17b","order":1,"progress_status":"completed","dependent_files":"cpp/ProblemZone/TestingData.cpp,cpp/Views/appdatatdlistview.cpp,cpp/Views/appdatatdgrlistview.cpp,h/TestingData.h,h/appdatatdlistview.h,h/appdatatdgrlistview.h","gmt_create":"2026-01-04T14:39:10.9503973+08:00","gmt_modified":"2026-01-04T15:29:18.628636+08:00","raw_data":"WikiEncrypted:uVaN8PAv5vr1Aw7gjdyyS/A4P4i8mCr+u3WhmtXNw4HH2MalwXYMCP30cqLZyu4X1fnbkXd0dMR8xSwWJ4FAtuSinZV0od4sIBrLGSS3VKu3t/p5fowSLE0YvpfvJP2tQBRovsjXvI4sok9FaGzTatXn5uHVQbjx8mYg/3DF6aKjIltnYtWuQ10JDogV1/tZPiMG1Y5g7U/1uHUW88GIKVr5/0EJ0OQ5j43dF3mJGz2EBD6vxjbAYEmmr/OLP0yD5F1CViO7pNWhGd+P2ikJ3oN8qC+TYhwS3iNGUiMTw74kx6ifl4oKcWAXpFG6Q8MEcSLTOXIPhvWZzYiha6yliGkRfVyKiSqRtUeQU1f4cvpzUpa3Bvs5E5nakyDw3B0mDR9bpyeI1NmLquUe1iGvpugHePgnknBGmSleNfSPnO7xUcCwlOuzytkYwquorzVJosd84eFfsdvbAQHEO0djryRAJGJW7W/Nx8IakP9D4OZtoaBfxjghg9olRqOR+NAUPJSfeXr+mtaqLOAvsPE8ttBzcibWWtfUbV1IiZH06+IHpY4Y7phh1vZkWLhFD2N34lil6JPfgYL5vClVJKu3B0dd78A8GmdpvG7EGMi2IXYlu9u/QTZDfj3GFDP/SzpY3/o1MOLdufFfwuzJ37FO2oswzGqx9vBge3PFHn5oDh44tQcpMqfcArXURUw64VO0CLGbt7AsAM8p84gHB5DFCjiK6caGcxx/RyTd6EeQgnqwe8o4BmjFlP5euHb9gEzcyqcjYj+X6j47HfMmB2VAv2Eu4SKyPhs7/mlESqj0TXJUO4QZvtsqRklJngoF6TQdbHRXlgQDDoTW8jPuoXERmpPuimytlNrrgplLRJSWr6/4695BB6+zTf7UQ1t0uD5o5klELdDyozXVRqKpmY4UBNFmov3tKzYSr21RYxQl4LuCVuEETpU39bhLwz2MlqH9caVwnH/1/WQO7IfhITG/2gz3n6xdflmKndko1ghsdoN+216CHTS2Ff5CYzfSaRloJlifF1tD9Yb13CgdUVa9lxzT5oAJy+AHXYajaW4Jf+ZiUO7xr6bmJUlgk+shoG9sj/NZjIOJkdB4nEm/HOGsFj9ouce60ANruMhhH/uD+z5FizeMB1pyh2cOBH7iXZBEr+COBEesYk+8MU8q1O8khmnv7Ug0IZkeN9gvi530udq/4ShbIpeLrPDxBYlPhgi4FOxsKcYf7It/gwHbJ+usSQCp5UjZNMjgsLShb+fEUDu6ipVcmNoYOZp89ixWk9OffgfAR8SBjttUYhIfamfwPt5AbP4JBQsHwvDUz9gZVoa+xzKQHIwpo5cICh6+4bea","layer_level":2},{"id":"7158e835-c163-43d3-9c4f-0afbf2022ac1","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"3D脚本生成","description":"3d-script-generation","prompt":"深入阐述3D测量脚本生成的技术实现。详细说明CSptManager::Create3DSConInDB函数如何创建3D脚本记录,以及CScript3D类如何管理三维空间中的电极网络和测量序列。解释Medium3D及其衍生类(如MediumCrossHoleGeomative)的空间坐标计算算法和层状地质建模方法。描述3D脚本参数配置界面(OpCreate3DSptDlg)的用户交互逻辑和数据验证机制。提供完整的XML脚本结构示例,包括三维坐标系、层厚定义和测量模式配置。分析3D脚本在复杂地质条件下的应用案例,以及与数据可视化模块的集成方式。文档需包含性能优化建议和大规模3D脚本生成的最佳实践。","parent_id":"f9b14c41-cd08-4332-9260-515b5e630379","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/SptManager.cpp,cpp/ProblemZone/Script3D.cpp,cpp/ProblemZone/Medium3D.cpp,cpp/ProblemZone/Medium*.cpp,h/SptManager.h,h/Script3D.h,cpp/Views/DialNew3DTask.cpp,cpp/Views/OpCreate3DSptDlg.cpp","gmt_create":"2026-01-04T14:39:14.9830763+08:00","gmt_modified":"2026-01-04T15:33:58.519688+08:00","raw_data":"WikiEncrypted:Xga/9/Zo3KS4clqWuLf03NqISNTmkeBAb65dH4siALhBhBOksmnd8gAOffLb0g/tIyg0wxzYVW7AqLFswjytnijiO4UEEWl0uLMzNNipxKLrl0R6h3+r8WT4dqOTBU/TnRJsWH9c3vgpsijfMtDpOoV+N5b9lRvSqkSWws84ye8YnC99MoWO8XrSh3mbXSegSShxodd5DIMHIhuaSRapk7SDErGtFNAOFr4pA91aMLi2Vxy2MjvFKQOuYUojlfusqTsIxbtaE+StnMPmG5ARhwwwLQXPLgDxRT17JSzPLhOc1TwAz9R1+p858XiVovaCELD2RWrUh2Pe1A4/yughGq+daBxhH5yDLswJVKAFQtHxqafyzSzV30vxn4wHwnaSeDLQ+vjbbhAavaoke86UrE+kEO039r0snBsFTRSsGmuS9RwlUxKCxhg+nvQEcXXJ78pR/qRU70xwz4QmNYZvJfPC/kA+PVMNefqY8t6raYhJi9sJBUXjB5mKHVyvT2Y7OnjezyQ354fEP8QAirEg1oPn0Vj3c7xZeeVOg9jygbBio7LLO4WJFPnvVnfkPRLLwIvvdTYn6CTXdUYxnCvbPO8mOWRaVw7q6gvyUlPkmgz1aTC2pfZhVN5gWPAr7ZAjVwZa7JWVDaZU57g+hJY2dkQVcc17U0469bcRitR1srI4PZkmMjMAQpRJBZFnRW19wGT6M43hqUPn2XPJm1SQF1xngc8IejfUC5hL/u93p4rCv/RaY2NYyjUn7+hngq+mWUkZoPCBClHSUFc9yM08kGHBinNcOioCtem+cuzi44JBde08s27rVSorUDn0Ojq46E3dtLIao3VIOwnV6g3dqQbSL4jWq5SFO9kMr4ZCd9r4eSJLMtC7IUhU90R6ed+bFrBgO/4lyCtmcLuR5BjHk9n7cZJYvcqSny4hCxVacG+PbMntsK/u1dg/xXSm+Lk0V4fPfEz9AhxabOXXThmOI6msTUvlwpDpZ2EbJiTHwPniFuxuC2f6EK5Lz5a/chkuqgzVQA1np5jNaWV6zfhm0GcIpcoFWWFGhkQ8wlIvtkvM5B/0ZINzi4R+Qa7F2H1Q+lVxVRlCLxThyTVySAZbI5jOQi0VD/M4rMSP+NqIM2x2NAC+xwOK5hf6KvLu0FYz2z1x/Ng7yZuVHsT3/a6DmKwzm6vPp4Hi93Gto6ePyPVzNxXz/6pImoVUAyhbp0m0fahOt99Dt7zFUC3YW+9A06jZaUh0cVV0rgkr4q9xxGzPjj99A3k+fUEyYa2ByKZw010pmv89R2EhpYIkQaFUuEBN/8iiB28qX+F4xadgWMilY8/CC0y84M53uMCTgkibnLWkX375KrAlSUHRe7IM6kE9iNfud5BwSOfLZaYDwueLqNAXkDQTvSRL2y0yq20EKiB3dbjP1ShPq37lIyaGw0h+W1f6qA6z8tCVmINdFx5F+fBwio3i7ojAAEo23+C6P/bahxlEXCx/CkKRhOix+MD/1wOYZPvLXW2VojxTGgWULtQ9iShrrhrgknwCRzDF1Gq2WIQq4ZvIR5b9n1MQRA==","layer_level":2},{"id":"e867de61-ecf4-4e39-9b18-736afdf97001","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导入","description":"data-import","prompt":"深入文档化数据导入功能的完整流程。详细说明CIOManager::Import方法如何验证源.accdb文件的有效性,包括数据库版本检查和密码验证机制。解释导入过程中事务管理的实现,确保数据一致性。描述ImportProjectToDB、ImportTzToDB等系列方法如何解析外部数据库并将其内容安全地导入到当前系统数据库中。重点说明数据映射规则、主键处理、外键约束维护以及冲突解决策略。分析导入失败时的回滚机制和错误报告方式。","parent_id":"024d6bd7-96da-467e-b99b-38a2ad0e825a","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h","gmt_create":"2026-01-04T14:39:33.1045162+08:00","gmt_modified":"2026-01-04T15:31:44.1396895+08:00","raw_data":"WikiEncrypted:A+6jFzoIOdmzvFFDfBg9UdJ+lKfZkn0mkq81bG7vCJYmoymoYaTe3gaNrILYMIA4zqR+7mdppVwledm4Av1vv05ywgqaEfm4MUH3NUGgAsOv4htiuP6BupNJmd8fbIKpXtlmGxdbTx5Y2U1QN/MdKMSNS/aNj7g7FSYrMrKaTDM0LLlXl7U+ly+Dxo29vyiYmfWq9MGNOhUq2kFJlpc/ujhtP1qKNm3CLkCTmCLINa1yi7B24Q7Xwa4dy2srx+uVRNYIos+sKTxvpa48I+92wywgPYvNEqZQgbzfZtNB4XfKP+Tzw0hUtUQ3Odsk5b09PzRRNDLvzSX4Ry7lz4ZMBVy0965FJdh3ZxjQA6S6aObim7Ilu0M5rD1dpg3fRqY+PMMN77dAq8OZ9nJhXHGEQE/zr33OzGwEfURdfX/UdzRjZq1f+qfJIrx2NX3D6v206tnPbrYk6Kz9e+OYuC2o+0jV/UoXQTD0qyWhzp84jNRFgjYJ8o+r1uvF4bNiBjNDHvOnnIG6pEm685OK2lV4OjhtnzH/wGom07X8ih7SwCMQE+u7KV+6UaBMw0eUQhLiQh9/tYGuoevBjHTWryWOMdISQ8nLZx2YQB9b694Z4KFNhdigB4zLcubiZKnNvjSMZKL2WZIqdtmrpw6vkeqCsmFfkxBbVs/ezJyH+EWkmjQEd8cccSyZ6qcmQVEW/2c/Y2AqnWHAibpdObCp/g+c1AwY0SleEgQ0pPCRCvevbkNBXE1/Bpeb0SpnRmg4LCAybTtb3BbbFxi+aBYbBL/PiJDUBK9OUahKPhrWuP1aJoO+qH+p6GgnnThWs/BF29l86Wk72PoBnlf5PqN2nEX06arwmcYw0loFzinox1NyQwQV1WldY4WlAsRt57FoeyxZjTDoiFYlwkLFdIvQCxVFQLv0LHXeqkLJrFtoMoNiGQ2GyHfKJv3L1BjVARmlo2yy2qqQfohciebbvKjfrWpQvE7yH+Od0aA+aCwltwxBKeykKqzM/9UBSFABDmMX7n5SHKAPZS/LLnfqAUNbcyTSdRUSQIQLU9jlM/j7o9zrTDfOnIPey8aI2bAo69sBFQYhU5oPXx2dM/lFdqUFOM0B8IY5UzfuiTSEtd6C29XI7Lpviiyl6F/C4JkXjHbyL9tYZJUzBDDvUr0IQTg8wwM+ZQ==","layer_level":2},{"id":"bf7e786e-d90b-45df-9e1e-c5e77940ea1d","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"工厂模式","description":"factory-pattern","prompt":"详细解析CProManager::GetDMS()方法作为工厂模式的具体实现。说明该方法如何根据传入的句柄(DWORD dwHandle)在内部链表m_dmsLinkList中查找并返回相应的CDataMngStruct派生对象。分析其对象创建与管理机制,包括对象生命周期控制和类型识别逻辑。结合实际调用场景,展示工厂模式如何实现管理对象的动态创建与解耦,提高系统的可扩展性和维护性,并提供代码片段说明其在项目与测区管理中的具体应用。","parent_id":"cb10c152-afc1-4cc3-946a-3f100ebea9e2","order":1,"progress_status":"completed","dependent_files":"h/ProManager.h,h/Constant.h","gmt_create":"2026-01-04T14:39:38.6001822+08:00","gmt_modified":"2026-01-04T15:31:32.6380952+08:00","raw_data":"WikiEncrypted:II23QBWTpkjRSSqO+0e32Bdn+3JeykEw6GAV0YhpQ5kE7jc5AuGpE2YQSnWOmFLyA1Ms5GKMYfaQ+shV6DURDf4lLDO7eNddPrG9zGgOgy9YFxcQSpnZNn3mmTg30vDmz6ezI2D+Fcf4jHTrR1l3xvdKEvS4Z4HCwaLKlfVrDIk4WMh4S0UD8FYUjJEOG4DOibXUkR0lF4adzpCnU3EBdwI4ct24juvG/aZUVlkypAtx9GebfGhAcRWR5+fccOKNehvKNLARrsl6PRjVv3TGqQ1AurGn8v6lIN9O6/lk6hxxNCRL3wX5IbKuTv9Q+kXQwr88cmmXO6vAtJKUb2lRFijlpRyfB1PtzIfD3enUdQT4CsnDqAtqzhmO6oMr6S+J6FxtFc/JEvJle7LwpDP5dq5skVpwa2vTvjwbfSr3hflhXNpQCVn/tNJa5iMkLEbb7ZdBn1PHPoP1+8mrWsrXxE26pbKThUoac2YJZmzleqQaGJwcpy7InsqVVcRXHr315mGg1n43k7dImkSJSHU5xDlyIdOOtvNib51YVJ+1qEKR9HCGxYGKP+7pUk3FTFwa6ESbFiX+CG+OaVmOvY3XkupCP52Vi/ZAFpceOyJGH5q+R5PXdK0RdZ5nwnXMojzh0zu6uTC8vslgp/82+SWT3w0VHKWh44c2+edbNuITMafOylC7aBso8FGwS5eu8MVdvGAYd3fYtxLWtJBft+hjs2ATMfzZyhrnithO8jVE22/1vUIgzJiEFiHntVdUPuqEf8G7LCRGUsKkvS9r55E1zhAVvgfpP4j/avzZsRriZRq1a9vaQsEwcI24AMZw1K2kRaXmFUMo6UthKJXsCZ9thtvFkoxsoZpRJZ4MSqWUAvH7NVyVLI8caz1fLXrmw/FIHPt92kK1ehohuGvIzh5OW6YxPOpXo2twIOX43zuU9ldf6g0xmStF+j/DF0xoRbiGCjEXZ57dX4/gfewRpX51Sf5bpfDLLfN+PrOMR78yUqsdbQbOqVl33yNbs94bGR7l2jkmUeYusak+5sjs+jD/JFIHogHuszKHnLU8l6AhHfE=","layer_level":2},{"id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Managers模块","description":"managers-module","prompt":"创建全面的内容,重点介绍Managers模块中各个管理器的职责和实现。详细说明DevManager如何管理设备连接、状态监控和固件升级;ProManager如何处理项目创建、测区管理和任务配置;SptManager如何生成和管理2D/3D/跨孔测量脚本;TdManager如何处理测试数据的采集、存储和分析;IOManager如何实现数据导入导出功能(支持Excel、CSV、TXT、URF格式)。分析ExecManager的任务执行流程、PasswordMng的密码管理机制和TestManager的测试任务调度。提供管理器间的协作示例,如项目创建后如何触发脚本生成,设备连接后如何同步项目数据。","parent_id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/DevManager.cpp,cpp/Managers/ProManager.cpp,cpp/Managers/SptManager.cpp,cpp/Managers/TdManager.cpp,cpp/Managers/IOManager.cpp,cpp/Managers/ExecManager.cpp,cpp/Managers/PasswordMng.cpp,cpp/Managers/TestManager.cpp,h/DevManager.h,h/ProManager.h,h/SptManager.h,h/TdManager.h,h/IOManager.h","gmt_create":"2026-01-04T14:39:49.5829686+08:00","gmt_modified":"2026-01-04T15:36:50.4549117+08:00","raw_data":"WikiEncrypted:dtqWifAHznKCHqib7Mgz+9Dx2yeWK0j9IKCKAiDWnIpM1sVBD8kWUf9u1kz/6XXWPR8Vf75J+LU7fRPmD6T9d0qR6VWPf/Hfi5anfpLrdXYgHQEthA09ouOT1vk/OqSmIXchEiTUGAjROxGWxcwEuVtvXntztcQhgLnj97FxdZmcbU4eIxTkpjDC1RrNnWaczuBlbIekUDDirhpd1kprc2XC/Rf2onRd7Bv0Os6nOTNVZPakoGAAjUAbWHQEzRR7KwSeSqbMxm+WrH4Cz6FCLlL1MNOq3dOkCrc2tNwku7mkdprRClQ81yOxvoEwRJxQvkjpWrgN/vfuXZfGkLkRuYpJqdFf/INUhrwOVi94vsBYNwHTmYQnVF50Mhys6DLqBoc9AioZeLCDPUOXrdnVLXy6r4jo9Q+vZnTF8zJU/paB+wOOdpxs/aaML2DjUI71lIkE7cZPMv9lvyvIAq45GJUUhvazmG/s4dbfo4uj334W+Bl/d52kj/HHZp3zOMr/knI9l5GJH7kvMXwIa5m/KrywCrULbUnZ+ThRw+09hD2v4v3X/p/XzXDef0WIioM2pRV3AHd8rs/l1WV/8bPDp04Jays42Uf+IJ8taUtXj6LTpwZXRaLHhGLagbNJ+574M7Gbv4TD2jsKINNYemqK1LqRkGOUaDL64N/Agho3R25NLA6LbzuPX280/z6gC01m4OsUD6F/ALDh4VZat7kKr97UzL1K2bouyRCmGqqQLGKojxbTswom4ujW47plyXx8Adi4AIxibJB/kn/AP9dSbfUzWA9bb3TMqN55PIct+W7Ilpc1zvYDB3dd8WKbe1DdN2r0K4kZ9dKq7LTKJJNP7jB6eq2kt/p5YTNB825zqs6ptet7/iQF1Oan+7GvO3DesPEtliDTr2nFfKIB7AhM8caKi08+VCBpeMqQXrOgYQNJ7f3jYcSj72guGdIdnudsTCCf0TZdghc9UoY6Xwst+nPBGaiy5v3tB6fn01nVDRNCqVMbhfeRpVO4yD8wptrqOJDmmQ6Pl84E/6a+2BPIvQQtYAV4r3hamoT1ubOXzTvJlSt6qv61fFQvhWAGNwlSjNikWJHFZeTjBStc87jkn0AolDdQ40MP8asWMNKdf56aL2LoXg2yXY8/T34qruQz2c8oxqICTbKHk9v3j7aQkhSdBUZwemJqpwSEfHOzu77mouU1eoQndkKfFA15IgkHsPm8SGPh/ANLf020tu6SKXKEXps/fG0AJt5pu6Iuedu7vDBl4LmIoKAcCopt11YXebX9iIKvenCkPMP88CVuDUc6bFDf7lK1PjNXKVYgPCjLPBhtwyUFWLd+kWjUM9DbUbMIgJ5XV/cCzQS1iow4YGiX98j0bQpsBcmvP24EMU7/aWc7Y0h8cylJ2kMIrUDBUIEph6p6jrdmsGXkczUtCkPa1Vvs+vuB5xzgDYF8jc8Joksw5dOTk7zUo7hFOylagLXbI8NVV56Z9+FJTLtAiT0OWY/E0wEo4712V6VMuE8GxGOS4uGMY+Uv6XCxMYE7xMee2D/zpIyG5dJFdJjwvjdl3+gbd3tffRFGqR/3FBLDDpX4ie/CV7RztuFw7zn2Dp34vNUDpkP/kVQ+M2mhkIyuufTQrZWjZtKCuGU6otm/3LLBSff2jOWUHHRnaB7RZ4YyeSm+V7xz2RQulgSLlTcvJYKQPEA9/wwtGCjl7nkkYqGYIJEEtYzbNJIuz84T","layer_level":2},{"id":"4c064fcb-a9bc-4ef6-82c9-4c9eb26ec82e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据处理工具","description":"data-processing-tools","prompt":"深入解析GeomativeStudio中数据处理工具的核心功能与实现细节。重点说明Crc16.cpp和Crc32.cpp如何实现数据完整性校验,包括多项式计算、查表优化和内存对齐处理;FileOperTools.cpp封装的文件操作接口,如路径处理、目录遍历和文件锁定机制;Markup.cpp对XML配置文件的解析与生成逻辑。阐述OperTxtFile.cpp和OperUrfFile.cpp对特定格式数据文件的读写实现,Res3DDatFile.cpp处理三维测量结果数据的结构化存储。提供这些工具在项目配置保存、测量数据导出、缓存管理等场景中的使用示例,并说明内存管理、性能优化和错误恢复策略。","parent_id":"032e9cba-65a0-45f6-a932-d0cc7e0b2908","order":1,"progress_status":"completed","dependent_files":"cpp/Tools/Crc16.cpp,cpp/Tools/Crc32.cpp,cpp/Tools/FileOperTools.cpp,cpp/Tools/Markup.cpp,cpp/Tools/OperTxtFile.cpp,cpp/Tools/OperUrfFile.cpp,cpp/Tools/Res3DDatFile.cpp,cpp/Tools/MyCopyFile.cpp","gmt_create":"2026-01-04T14:39:58.7425741+08:00","gmt_modified":"2026-01-04T15:37:14.6103171+08:00","raw_data":"WikiEncrypted:YZI97ep9QXDPfRNDXs4+JL57rGFdOPrEDtfrmj6bXN9tRiE7Ey8KVRX3V6M+el8iWqN0UuhOnS+YWe+XCCUgYh5DX94vs+XklUx0bP1/u/XK+I8NpmgRbYk0kk7L0Dcm7E5Fj4ul6hWmGFRFvl7WDGFIl7ZWzoBavvurBxthcEpejJqz7w5dOfsUUjiswUcXf+XXOMcmMBDL05DpozW8rtrz4VDqwM4hFHVKd+vkuY1g4nl/q3GTEB94hnH3s/6mnPSuIpSe3ZCZ7Lal5519rptGFnZMFLOqRA9CUsmpuEzRQz/rQmgPKmxvEG/Cd3UDt1TPDuQOEjnJtP0aiKKLrrH5HmmUia83zREs9e3JaRGKbCku6HHTKkS1QR5gTsdCkVxPqr//XdvOz2Ckn2t88EKiG2sekiNup8FdKc9J2pNRVF1O/JQ+f4sL09HhPMso6RdklB3hpsOyseM9awYgu1jNFLJ+nNsnn8klZyl9D9NWXYT6oCFvXeltHxxgnzc1Ji9NxdFEsVAru/oxoL+YRd5rZN6ZIy7SRnqUEahQvCwsUQ60mjTYpt2xbYzq6UL9miMNVboAbrcbO9nYaPcU2omIsikcTyoaSejne3NKndJbJEuevCkPRZQaCFfzTBwwAoB2q2b+60bBskWcdqZYo6DObP2mcRaKKU/nKNpN6zpK7Yf7rYrnA7pzYIdcuNjPwTViTShGu+QVuY9Zc/sZHjZb9x2wsqpETOggSjhHTRFhIHTXoX2tXhHAXUtrUrb/BRNHAKMIX9tXkDjixM/uoK9Sw3OREwVuVw0TZw7RhvaWXMyUwKSvKzMeLC4qUd6LpqZQUFLHa63f6MNZP9e970VLHLO5o3xfiUd+DFF69zW1Oi2jnZHygKbnr4wegiS2FYiqcGydDefJJV4aBcuXlwlRw6SF/suHWkI3EbCn+RNvp7Q/c0h2FQLDIHjmDhMuvJZtQrEyI9nDal9zlKH8fl0P4WCZjLK34+3nmyIRflqNf2+0sIWn2l26L531cpcVYoE4sPFsOjgAl0whcrGc0zdZyYrX2FPHXOynWcECmoPabr1NwDYKuVcFt3VYG/b0b7T3IXj5rDI5FGL8AUMokIlYLEeG6mD46xprYUCUEApB5T/b//7+D2xKKyaQS1QH564Pj1mUtsYKtvhJBGRXfpNWQzCPJRxZmxrldQCI5LjIMHSZcgm7ZvNvK/mtAXoLsquQukpGSsLMeIuhTaFTEWE8mWdMEXSpZbu7chCk7/Zzj9qXtEkp1gTSY4jRc0dhMI/Hq3bYpgBVQSguFPBPS8U9L2rpVI5QGWgWQLgobisXaLzb0debetvFOebRlmmZ6fjVl4LdCAzKKUXegx5zWvjGUgHFqgfFGvU5KjwE0Mg15vtn99/YC08GZnN/qCec7asOEgxa9epUR53TjQoapEaIY9ey6FaOlx8/lguLfMj0DdcWZVE2VYdaL6dHEjlXyQ7NicXWuAmKpCNwQcU3atS3l9zaEVT9xq1IvKnjsKTmlJRZdUKsFSGXfPxIEd9xNlmuj7MKck5/fTj1fzxq4icSQnoBxt1Dl5iPISgwJWV/sWOTMl4iIYRYE9L0Wi1u","layer_level":2},{"id":"e1b10a9d-bacc-44c3-bd1a-4dc511d3ed6a","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"2D项目创建","description":"2d-project-creation","prompt":"全面文档化2D项目创建功能,涵盖任务配置、电缆布线方式、电极间距、孔间距(跨孔测量)、起始/结束电极、采样间隔等参数设置。详细说明DialNew2DTask对话框中各控件的交互逻辑,特别是装置类型变化时对脚本和电缆布线方式的动态过滤机制。解释跨孔测量模式下孔间距与电极间距的约束关系,以及测试脚本选择后自动填充电极范围和层数的实现原理。包含接地电阻测试选项的默认行为和用户可配置性。","parent_id":"adccf077-cfc2-4277-a027-327a9fee6508","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialNew2DTask.cpp,h/DialNew2DTask.h","gmt_create":"2026-01-04T14:40:09.0931444+08:00","gmt_modified":"2026-01-04T16:08:16.2243049+08:00","raw_data":"WikiEncrypted:EvNKcJwF+9qCbDIP2iOV6rcBl4R7ta7XwiozQ/3fyvjqgsWpe1ElhcfwdIGLaSMkkbvSnNB5tOWGMz9b/3j7L4x0thmZ+4WffE7CuNrxBp9kErjTQV+H8PjrG1fM1HJJN1SgD+kVJt2N6GFsRhc7wNa31g6Lr45Ws8q/VmlEL9io53SHzye1I62n/XiuJGeNN05TX4C5ED4wiKOdYYCY3uXWFzVxgFCnjSca0zgi77rj8pS89xFsHWPBqZ0IMEMDFA5iVrD/OINuM09PqC7A/T9FWsuYKp6mFdhg2KlsE9GBkz7VhpoXBgeHj7tH5Vv47tzpMShBVDKb6AkGkpnmS/fOrRfZbznQ5niAnn6pKvMaYtwyGSPu2O8pw5Mu4O9dqlAX0d3yUsCGblteY2SrwMhDDaIzaJkSgwkE1kaMfRJwq3iVP4LIGK5UHdH+qQzfZoeotWim9dT+CUx7+zQ4xmiPIWedoKymh99uJXR763Lqff11wBXlMX3uGom/ZS6VrxmP4IAmzwDxIMh9J+AG3jNYTImElep9XOiyqI+cfKzLp03cUTYzu/RRuI0HtisE6X530lAFrRln8v5aSaDMDPGiTJ1hQOBL6exKdnj02CDJ1BaVpU5TloUKT6OvON3T7sI8THEcO7Zu1DcmKFEx7OogGPzRq1oIUOr0T0NH3wNA0eF+LRfJRvbevvjVONrZjr6fOYjrCHkYNuyf8Fdsjds+v6fFQxy2ZkF5ur1NALJfyUNjJJJ/6jSw6SIbAdwv9sn+Ne3amlqr1+BHsdd1TJIJ2fI248FcxYHsNe7+mHb2+OuMomHWoL7dJX8Fo+7H437dzz4ICNuARFatoA9NxPOPCOqEhH81MyDnKEenG/KDZ4WnUqluz4+jdGyqHpGN6ZPo7jmaYr0pNQya+FTRHdBmm45HYf4VVpsCZ1zd+ObhIf++L66XtrjYScCr6uci1X89CCFDu9+JHUWYytUHpPb+SNeK9bXz6RLhOqflDE4dbjOj5UU213Gfeo4YXj57Y7I80OnVXK1U+TiDqx3BqozhEYb7qyF3ClCDCcUQFhYoeZPW0lnz7Zk0FAeyWnL0kyLM6BBmv6Dv+luUlkl6IA==","layer_level":3},{"id":"dad2c3a3-555a-4751-bc75-e616efa4387a","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"定时任务管理","description":"scheduled-task-management","prompt":"深入文档化定时任务管理功能,涵盖任务创建、时间规划、状态监控和执行触发全流程。详细描述DialTimerTask对话框的UI组件布局与用户交互逻辑,包括时间选择器、任务启用开关和重复模式设置。为开发者提供CTaskDataOper类中QueryTimerTaskValiad、AddTimerTask等方法的技术实现细节,解释基于系统时间的定时器触发机制和任务状态机转换逻辑。说明定时任务与设备通信协议的集成方式,以及任务执行失败后的重试策略和日志记录机制。","parent_id":"a6014b21-ae38-490b-9031-ac94683020c4","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialTimerTask.cpp,h/DialTimerTask.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h","gmt_create":"2026-01-04T14:40:10.5263872+08:00","gmt_modified":"2026-01-04T16:11:57.3307409+08:00","raw_data":"WikiEncrypted:Ixm4kI/Z7v0V3JxitGlz9eSwucwz4iZwJ+u/NHIe6MnVzwqFrAhy09A2ZvrrJNFAyi2bp5nGBMqy8nz1SSmHqxz547Y5p8ivL3ACq9eHOadmC2GahfnEOs4jaTJUW9S+nj4M4s94cs0SjUo1mWh7XWqZwW3bog+gs/rXYISg8QbbqXJEv1vNrNDPs+Tf9ct+HymiGEbQ1CQZyEhg4RigrcVthzSYgq+pBGgl2LWNeHKqxDcL0AQKKJ4Djz6n4DyDAsRB8Qog1Yy8Q/d2iND6XU/nHLnMNuYF8tAqVeHoMeWaLcSnQCRth85sAeH42jkBgbwqwzJoLacki3UFNVQGCSKvhgVzbJGHqFREQXMyAFidZh0W0U7SUE9iWXdRRuLpoVFpmn0PhHsHWzWHUhxL9+tzftBG3SsahDohVpbuZkQuIJMH9EWMfIsq5mAmg+1b0fjq89uXrT4KExNxccZr8buLOWJJe9YaBzisTQpCuAofgoR2T/7imCMQroyGzgnS/B91Ih8wdkw7qqSOXlMEYcEKVFFy9ORxIhjIkEYnPYkfbkFwkac1XOJGLOFdSK7bGqZpbWiJRnTj9L/vWBvGAXukGN73nfRltmYIoMhNlK3fhmmSRRotWjxoS2cShsUAYys/zuD9ab0Rffeukw6VtBrKx3+KOURpWceMuTpFop8K8MljS3Kz5k5dUqrWRyfnlHID/hhzoFOkKl6zKaX/X3Bb94BYetRYdA0l9xJRvua0fFRhn4FwRyj94dRZo0N0cfPdImpXCd/0oxAIROADkFpaID7jYWnFvuZCUkdShOW/ePsFtMyd/WG8egK0/g/zcQeuDuYmNRNT9JCAAs7FqIQ5FUKBYcn4Zu2c/4+aPBpFY3e+ZDuJZ8Wo0s90QIp4aYE1SXRn675uCHVeUoOWhgRF5OO3/krTs6ZDNyrEFksRH2/Pf3YyaeiqIUSPx9niI0Kt92yJUQPG5E1Db9v7Qu+v6FEcNw8HpkduJ5ZOBy7HZqXtnDe/2240PRWbPu8mWoI5relr9/eo8aKDrbptubqMInEwMF3IO4V0MO9u7adkQwtdwCnkxH4WiMiPAvD9pYWpG68kZo3L2KhENBYqK1fqXBM03RVgOFVpEDYWQqNmT95OA11N3SoSXLBjJgHzcRP0ndI+6tvCgXYIpo6OZYmbNjQ6hE5nV04erzMQ4xpuoqNTNlPJpKq40YnflVS/MqL1Uzt43hPXNXnl2ovS5A==","layer_level":3},{"id":"bea951cf-dedd-4ce4-b297-5c9734bcd7e5","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测区数据同步","description":"test-zone-data-sync","prompt":"全面构建测区数据同步机制的技术文档。重点描述CProManager如何协调FileTransfer和UpdateDataBase组件实现测区数据在本地应用与GD10设备间的双向同步。详细说明同步协议的实现细节,包括数据包格式、传输校验机制(如CRC16/CRC32)和断点续传逻辑。解释同步过程中对testzone.xml文件的读取、解析和更新流程,以及如何确保设备端与PC端测区数据的一致性。分析同步失败的异常处理策略,如网络中断、设备无响应等情况下的重试机制和错误码定义。提供性能优化建议,包括大数据量测区的分批传输策略和同步进度的UI反馈实现。文档应包含实际同步日志的分析示例,帮助开发者诊断常见同步问题。","parent_id":"6942b6c3-2ec7-4266-9790-158a45335919","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,cpp/Tools/FileTransfer.cpp,cpp/Operator/UpdateDataBase.cpp,h/FileTransfer.h,h/UpdateDataBase.h","gmt_create":"2026-01-04T14:40:11.6162193+08:00","gmt_modified":"2026-01-04T17:02:55.0721412+08:00","raw_data":"WikiEncrypted:4f7r5TQtREf2wQKv0u+r+t9cVDdmYpNH7oMBeO5rDaL0XnKc/EOuCQ18cIqw+WXY92rbvBMJc25vgfjLfMoC/tJkIH6BZ/aefMQw+R6/a4R3IAHEvC/1z+ceJtr0b2YRKk6fcMlZiQmmTkshoP+vFiIqsT9K1iWvaRjXJvSyvORWZX7iO82cCHRCoP2tXRjUfDosZ/u3nBN6gVtK4NCzlHwdNc+Z8R1xqwciOAIu8evGy/LeN6F15ICMYHxAt1XGUfBJdtFtBmouzb88FjSf3OL0GsAgE21sKc7QWBnC1cylZbL/cNCvFLHJcu73re9A5KFsHAYkMpoZbDXUd10bnHK5+RP0yPJ54kskqSTdDH6lbfWwlxVtZsmmUmqfQpuqGLl9wZU4lgO/viWwVG/hMyXqzBPW02Gupa3zGBtJ9DHQ6npBI4j+Y6X+WSnf818+T/l0wkKqNT1jq4GHUioABnewpw9xHMCEaxD7E2sylm/Bpg3JKHUNJ26qP4M2xRb4CmylcbN/kIpeGSDnvlQOia3jc1Ot0PCvZ2y8aCIvDascg1xs8Ijxxzv0t82lZkWWISBGior537zg3GpCQdF2XoLw8jcDQn3rU9hM+ZXOSzIsT+VSRC7J3rqeFmmN5I3D5zAW3h5IkkIv1J8b6resf3UHTVD5QSdt8REQjRhJAt+zO6VwVKObUrj6AprEs9lVJDWuj2OBctR5Qcpf6BP1tXIEdgSiNVuKxkEj+bE9VFXKOQJjQL8N0SScidsDdfg4xciUdqbk6D9RBACIsFrF3wNX0BC+ayKdfmyp/rjy8xaFXubBANx2qBDqQhQpo770PB+WFiSup5M79LvtyODX8U3xWNWzJp3lHXdInWgYw/ErqEk+gjEqHXK63yaMv0ixZWz7HXNkoegl8Rr3iPIZJdgXEeJWdf0PYAJur1TWh1U+bSTTFJkcREjMMjcDqs855gFcd5W1n71n7P6QUUJNzO76UTR902sYz7Jk48ER4jnL2Hg9l8EWn6FnQZ8H4YHp88UN8wjBlsGQ3zoVeqT9fj2xYdZFhzbUoeOaYFt02siHTLusFmUuAUaTXsn6vD9IYjwpX9B+MarbcCSU1Q0VawEeNLXsoZVvSCpxAH7/g7Lk5LlYSB6yGUp408kAC9GlvKqZ3gPdD+8L+TPzjTFwcs1ZIXHKiB6oOgi34c71nR00KJD4OQZumMrouWaX28OF6x8JzXK1NJ+fjmqfYfDXagxKRtVJ7l8Z9dbyJfObr5AmQ0sI5IlLF/QlDZfzydd1hGDITn2es0RYgxg2ukznD0ASkB6AwhPD9TyQ8/serok0TSb5MegA2u0Q0sFbhSs09Fy7AE2bZfnJVdO2d8VxJdBlbCEPCO0GLzphoH/h0aRowGVIoDsFooPhV4uF7ERMAqgWeeDz9uSTxo6KoBka9PCEPkeJumJHdH6H7hVAu+ZJu/FGClsE+LbMR6BhO4F0lFNQw/FKwli1x2BQIxU3Z9i2sn9p+BlmfDeZkgWLNSCxTg+UGh1EyCHwFcBWwrsHO5wSMaPRgKrfrdRYcP96MmTpg6HXjOFYSqazGLhiuKQEFw8yW19XgXVWxIlMpdmuz5AendTjDDr1PmbhGlWDVg==","layer_level":3},{"id":"dd13c81c-b5cf-4242-91be-19e9b1c08c9b","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"ProManager","description":"pro-manager","prompt":"创建全面的内容,重点介绍ProManager模块的职责和实现。详细说明其在项目生命周期管理中的作用,包括项目创建、打开、保存和关闭。解释测区(TestingZone)的管理机制,任务包的配置逻辑,以及项目数据在内存和XML缓存文件(如project.xml)之间的持久化流程。分析ProManager如何协调SptManager生成与项目关联的测量脚本。提供项目文件损坏或版本不兼容的恢复策略。包含代码示例展示项目新建和测区配置的核心方法调用。","parent_id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","order":1,"progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,h/ProManager.h,cpp/ProblemZone/Project.cpp,h/Project.h,cpp/ProblemZone/TestingZone.cpp,h/TestingZone.h","gmt_create":"2026-01-04T14:40:35.0852274+08:00","gmt_modified":"2026-01-04T17:01:11.8503421+08:00","raw_data":"WikiEncrypted:aqftN2RMG/scNcIh3K5xomRlNgzh6jhk1/l+b7q/a+HZAO2S0JaM0sbZZl/NyBKZfOYj9oICcdImPE3/p/gF2iQptoRVQJEumjVGy5ff4D96PdLQJOyS7TlcWk9wqbhPwlNL0TpvsNzvOER20sypEhizuDmN0OgoZFbtSUCFWmCgwHatb9X70RUZcgPzNePLwvdqV6bA34CUd2qc2PJK9PdM2IWIdyxbGELlnXwTEUnhiHigUY2fVUKd8U8KINqyVel39OTns7hYRa7yZ+UrUb1KnvvsUq8DdKZ0X2gWikLwb19DFiKTgZ2XosQmJ5z5rPiesvYJBnNlUpPw4Yf+YPvuou4+XtocHz1/X08wyTxbPOst2JRvCUrF0qDUtwLX4DdWRSfehY6++3a3B1Q2y7JKq8FH1J5KDY0WbFjCsPESDXWKof1EqdNH9CSgRwnMAA1AnUk4rKqusrVQBvcuwsIDvE6Guh+HumZ/v8RvzklifjOAmdSw7SiFtuj3U+pHVhczqsuPlXcxZJZE6KUs4fnYCSv6IA2nMwhAwtmzMZC3lwLeJtlHc5O4Dz3FHsVP/vMugHoYnCdWrWyE/OXr6FHt9s0wrOjcHlLohSHfwCnWnjGFwr39qw/SiPiuYazi9/okBiJ9HYrG+26jv/GJW/C8bQdnQA7Q6ew6w5ioTi7gWnKlnNRWGkldz4LMm/w1QDsnUjkF2wtWweNsLsJEwDJRLUWfOajQ7fWKH2bZAvXE7ZGiYgJrtwBCS2ZhbO1lSSz+mHwEChGvaKZkiYnj6qRrOxNZwZN+7SUUuKzGiyF4/hA/PEfoQ+d3+6mtY5gSq8viiW66qJuBOrVcvjBD12isDMdpMS5mRxAtysmjCeC5gbIOxbjY6EzTDFZ4sDbj2nG8NdFj0nnsz4kj/TahApa+pYHu9PcJo+BvwzvcDq+FG8HybzP+VpodYRwOB2JWFQMUxxQYnfw21MtOgm4AAyJlH98xkgu6jXfDPnJXuaxbvop6DagGMOaGqX0XxVuEnVjAWpdo3VTBE8BOo3TblUz5NRB353/rjsLPruM7Cm2cUAUEu+N6zjM4gE9LN74BW14nplTxYO1WvwkdWfdcne3mlLA99fb8Yq+bfrf23o9EF67xF6aCcAoxowjrp/SrLS9/29qM1b6k07mYFnMk1i+SpGmgd9eJXmfQN1CRiwVquVaRQGe2lyeiS19HfDiz","layer_level":3},{"id":"a7e589d6-be7a-438f-b0ae-f09a43d23e5b","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"DeviceOperator","description":"device-operator","prompt":"深入阐述DeviceOperator模块的实现细节,涵盖设备操作的核心逻辑,包括GD10设备的检测、连接、参数配置和状态监控。说明DetcGD10Dev如何通过串口通信协议识别设备并建立连接,以及DevOperator如何封装底层指令发送与响应解析。描述其与DevManager的协作关系,如设备初始化流程和固件升级支持。结合GD10OperCmd头文件解释命令协议的封装方式。提供设备连接失败、通信超时等异常情况的处理机制和调试方法。文档应包含设备操作的安全性考虑,如权限验证和操作日志记录,并给出性能调优建议,如连接池管理和异步通信模式。","parent_id":"227e9457-67a7-419c-bd67-47327f71a1f3","order":1,"progress_status":"completed","dependent_files":"cpp/Operator/DevOperator.cpp,h/DevOperator.h,cpp/Operator/DetcGD10Dev.cpp,h/DetcGD10Dev.h,h/Device.h,h/DevManager.h,h/GD10OperCmd.h","gmt_create":"2026-01-04T14:40:44.5461205+08:00","gmt_modified":"2026-01-04T17:03:12.5719917+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvG5BC/eZr1mGMt8TY6NCXuzMToyK2ve1OHoxF5NRt7aUyB5JIsZNKTZ+4CmmFyqR/rpMxVchE1/0vImV/O0mYD74gCrwdZ20MCpoG2mxAp/HMpm3Tm/QIIznAEOM8w5CvCqQ8gKPShmJbT1jYC3k1UmW3p4te4n7/sSk94LaTk1RT/zFJeYzOHK7F4QnCO7zNazUEadNBdoVfnfuDADxiNGAmSu+0UugZBogcFIoHvesndwedCcin9yChV4k125VeUBIuFfa2wLDpu5KjWV8uaSn4BZpj+sFN6VSRgSexB7FMnyNQpDqkss7vECJ6QylqfBWfj26VR/yJqD9ZKrYJELPBrnEXcgQhqjB4f++rrvw7eCfbD3KpQhMchSbTv7mFPyN2VeMXhXlnsr/jTotH1bXgKEtkchFWonUti6X3MLASzmXf+lQXd2mE9YcEluR/akf9iDsgsPSkafJqIPAtWUf9yqfm/nz79n4SYwUEVZ+ykbtxTk2EDBk9h3hrRc8RNijjyQ19Il+xMvKTEAXRzmVQuLUIfm/Vel2DPJUILTZyarwWbpkjJ9fo+AzAqJD5yOGOSa8P2l1OMx7hio/14QbW/IfYTsf418R1IvAE8YQ06WqXT+lDBRtgNEPDxm+w/OL2PYs10Wlypd10wLWVIXyxvqMv/M9dsZTqz6bGf3xP2AGOreRhX0PfRrMLTUnNzc8xZfl6S6yIKiXaXUs3cy+V56KqWbRpPrKtAjhCVVQzm3xQFIpfXimPW67DsBRRKRpnK91a6vjqfP9f1v2BdUYpaMu16pEBVlVlhVzPDtcxeA3yq6GdIxzNshSsK05RGiX6Jz/oIVhe3VciIKCuMGLoNdH3u9JPduDgfO6WRHeH9Ls3cte6b9ZIlr9a4oc01yYzUXC0JK0xzMRh3TPYBnQ5cqQHBlouv1z0gG+pxTqKeQrGL+X6kdz25wdzxwT9UNLXOSCrkxlyfTI7AXVUokoT79/ySPgH8gOeC2i99msIoPVLmzMiKfbLeNmWQDX9uuOJYJ8NtsiolAEFrb+gJT4ScDCZh6iMtaJRCH05sBR72Gi/8Hj49d9Be2wn+9HQPiYMPED2SBaxYVaG0nrww4rmEI+NPpPCE6Q+fUlSaGH/8B7sEnONsJV9IOnrhl2eVLxa5dVFpUhdz2vPQvJB3s1v5QU7kLhz1dJ8OoRnsxlDNjO31o/nfxYgJw6v+e4uX5tjoLW/ntoFJWgxkPjy1aaOSPFb06+/IUdAsAKPvcgLJcmHXbLdaPrbtrAl/QPVHpR1BJsKFMkZ/ibFXK2ak1iM5VAPriURA7W1fEO8moFrdOHvvFCMVx+jFkJHbhy4G9wbPVc3gDaVjGfEtBhNc1LzXJSbEkODqaiPCbauIxavBpr/gViqzd8PfDu0uhIhucldtAb85hE62Wn25dIRwet6n7jNLCf079QPtn/kq2S","layer_level":3},{"id":"05ca0639-8191-434a-ad47-018b5c57cf36","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"任务验证与存储","description":"task-validation-storage","prompt":"深入文档化任务配置的验证与存储机制,详细描述CTaskDataOper类在任务数据持久化中的作用。解释InsertTaskPacketInfo方法如何将任务列表和属性信息写入数据库,包括对dptt表的批量插入操作。阐述数据验证流程,如IsRepeatTask方法防止重复添加任务的实现逻辑。说明任务包配置数据的存储结构,包括STTdBrowseInfo和STTaskPacketAttr数据结构的定义和用途。分析错误处理策略,如保存失败时的事务回滚机制和用户提示信息。提供代码示例展示从UI数据收集到数据库存储的完整流程。","parent_id":"1ab00b5d-b5a8-46d3-9a6e-8a633e05ef6c","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialCfgTaskPacket.cpp,cpp/Managers/TaskDataOper.cpp,h/TaskDataOper.h,cpp/Managers/ProManager.cpp","gmt_create":"2026-01-04T14:40:45.277998+08:00","gmt_modified":"2026-01-04T17:05:36.0772072+08:00","raw_data":"WikiEncrypted:OH6tHaLlX1dZN202BdAYFFhxkMFcwzQfeId0/vpKNXhSOsv5kX+qWJ8k5Ju+gCnJq2/1XzQmkbAw0PQmu46L7WJl8Vli1i7H8pdyW1+oLJp9U05xZ2ldpc0Zvbfykccm2wOJuxTWyoJ//1iys0W5ctBdkFr3oDKkNfpDX56oW8XsXF9ajuzPqPWqzM+75aE751PojIJ4ucQNBeI4BX3neRqs05ZACRHBcRf/jvAPs2z3fJi2LwDALprzuFKAkPhZnhWPyvLQBJzYJwtEf5ojjFv0UeHuQD1NB3rHwFjjGimqGZ2ZblLneWqoogxQ0H8la1vpKQ1Kbp3RQhsh7uHJ04H38va6fufv37oZljXhcmh1I39uRL8I63FsNN5WfC0maGJlBJFzBHFuwzbFcWDM2qbvuLxY6zd0haqkxbgg980NEQHurZ4SYQSdBjq2yL53+DUqwGvkIR4EGdsnjUENINOuMpqGUiOmfnhJ3qSO2ZyJZjxraKocG7/M5VfnZmRoPXhZO07hV0qSTF5nzpozQK+xphmAxypcqGfatRefBwCzRV7CGPyN7O6Jv07uRwUClbKI5IVRwDHF0mt4Su26sSslVLAk9mdVdBntalXYdeIZ+Tczy6tyiwaERTVkOfSCmBeG/d9N3v3DBoQgOVC3mJPZXZ2BzjfqQpWGiBCdxB5Ox9sbJz7YMygw6BXcS7GiH7t9ukKjn2L98858XogX95WQrXU7g7ZTXAv697wrJYxmVXjIGiwA2vsLSvc8oHUUWBSyHFmGvfw2mkts0FzTv24RThLCWEfRdnEedBDifm8YVlglSwS89gXE2yTbV3dPgNm3w1n/i6ybPq1aqbSVdQnrqbTtzpPo4xJ3k+AdPuUILuWzZoBcOGewAtRRIYJcd2u8heMbDkWP2x88xbek9ou8sadIQ5StXx9sx7Gua9eeZEj9RHZofeDTBs4J3Kpl4KU6AvYxmzW1M8Kuok1/LNtWrm4Fu3UEDj50gyJQ2kRAAnreDGLmA6QSWnaT07xlTFWHBkXcqbEhoLJed8JUqTBRDeC1Xp+YbOAgQ+ewF7of1WNLfzznGpGoVnCfINeC4Z2oIC3GpLbqeLYp5P9EXUE5gvukHAMVyeGUuS12THgcoXGELC5VvtykJ4fghocoVXMi/mnAfssh5vOaPku/CRmQAhiNe+dxUP6yo/ep1kGVEzmncC8PFNJzSvwoxKvaqtBHIaCYqz6gcX9MLETRwOY3mf5PEVtK7dFOVPmUcvOxNHOSnyeglDKOG7BQHwQExO+lT0IqCOZFHKEMb2eEWZWBrP8lHiFiBnP1s9BhJjP1WvZ09L0FH91m/9oP5uffhN3ql525Maj5YZRJVDbPK/jho+hoCJG4ka6Ka4oonFjDU41fPxZkQVH+fcIBDMSe","layer_level":3},{"id":"d592fcc6-5f6f-4e80-a7a7-d84d9bcf3772","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Device数据模型","description":"device-model","prompt":"开发详细内容,聚焦Device类在设备管理中的核心作用。深入解析其封装的设备属性,包括设备型号(GD10)、固件版本、通信端口(串口/USB)、设备状态(在线/离线/故障)及硬件参数配置。说明该类如何通过DevManager进行统一管理,并与底层驱动(如stmcdc.inf)和通信协议(CtrlProtocolDef.h)交互。结合DetcGD10Dev.cpp中的检测逻辑,解释设备识别与状态轮询机制。描述设备参数的持久化存储方式及其与config.ini的联动机制。提供实际代码片段展示设备连接、参数读取和状态更新的流程,并说明在设备热插拔和通信异常时的错误处理策略。","parent_id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","order":1,"progress_status":"completed","dependent_files":"cpp/ProblemZone/Device.cpp,h/Device.h","gmt_create":"2026-01-04T14:41:02.6672042+08:00","gmt_modified":"2026-01-04T17:05:24.4037252+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvF/ajS3m+Hpg14vA8I/2FpTixYePb5Wb3yv/C0OjYOwu0AD5KDYqovG045H9v4894UkMrP240HVJ5Sh552/E5DVwbzCvpYDqGy0VdQGNN7Va/O6QiCVSjNDNKV+JYBZO0xKAeIckGYG8aUfVuDCoDFu6qLU/jjGdR/zVpKcqcWF4xUqT0zB4GaZka9U4G22ChbDz7Rgms4SVWO+dvKVZute35xRX62TSnEtHq6EcTB5X5Lbq2UOCj0YDnwr9py1+pkEIy8YehwXbb+TCOyzp1OEPuxnzKAiWo9megLaK0AdTXRx13AoHAoWMSJ/l4h3QjjWFqbHtThmj6vc4SlDNQOlTiQNPfZ80e0OU/Kttc63PQs9wbhvcJAHxkE6VKMCHKYVWocBKweWj9/QtIWIVHMwdRWIk2Gpy7OreZj0Eb6CL7kEHwm8Z/rgXmgBS93GutQ/79Cq+1pl2wYdSdusQC0xSN9yYfsxBR+SuN4qMf0TglWNfohpSKiq8nyWwtE6btks8bizoKhZ5Xa0Fbffil/kIftaPDD7P8bBN8pT+Eq0I8KAyrZq0wI/1A7sZ0A+A3mb80CJ9QPcGZJl5e+XMSn6TwZnkWOW5xUNYDl0AKDXw/rEwRBNt8ACJsFWGbXHU1o5p0sTzVvP5MgPNPtNeEIO0BEpQmwief5CbUmkRwv+ko9Q/zEu+wsSs/H8gcCRH+aEJgqjrvrxCtkBJaJGxVb1BlSylBEGZWPxnUi4lqcJbKHBenw/pU/pT/75tM8nxwPAH1S7OHeK6KUqKuT4AqmO3uionT3gYEYH+QuIAUxu2cmb0Ui3J02cRhEUN+wTf/iUEGCn+SsDL+GLfn9d3k18xgokWLX5XG1BSpZyJbwyIq/6JtXdd30ZBmardRYH8mpL83gs7iVEoEiYp0xi7EXy8skulxO6Z7JhRRWwakwVD0i0DZ2XY6P+juo2oAuAfskc5M8nsOlFkiqL9DGwE7eeppe6HzBF6ANZZfEdCnpYT0zWMVbDd36v065XBaY3mxa38QyNhXilB7cgNgCvuR8bSwE3AXlzya8BxuJ+efdqIT7y/tVX+2Uf7sDXxHq+xtOccxb8Y1cXf1cBHxYO9GPIR8x+llXExbplabCreGd+WUn5h7kSnOPf0SW8UiuC7SWFLFqQRyq8b7WuQuv8fkpzBw0FZpBfISMEt2Au6IV34gafs6TIBU1G5W1sJLOLQ6JbnxvlGIHZOkZFUFxUdiSCAGqRWru5cVDq1Bky9B6p77+I1ZRtsM5nWbHk2Kze9qw==","layer_level":3},{"id":"447635e0-ff80-4507-953e-d44ae51f5a0b","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"网络通信","description":"network-communication","prompt":"深入解析TcpClient类实现的TCP客户端通信机制。详细说明socket创建、SOCK_STREAM流式套接字配置、SO_LINGER和SO_KEEPALIVE等套接字选项的设置目的与效果。阐述connect函数建立连接的三次握手过程及超时处理策略。分析SendData和RecvData方法中send/recv函数的调用逻辑,包括非阻塞模式下select函数的使用、MSG_PEEK探测接收状态和错误码处理。重点描述ReConnect重连机制的实现,包括closesocket资源释放和新socket重建的必要性。解释GetConnectStatus通过select+recv(MSG_PEEK)组合检测连接存活状态的技术细节。提供连接管理、数据收发、异常重连和资源清理的完整代码示例,并说明在设备固件升级和数据同步场景中的应用。","parent_id":"a4674837-d78e-423d-8c3d-0570f01d6981","order":1,"progress_status":"completed","dependent_files":"cpp/Tools/TcpClient.cpp,h/TcpClient.h","gmt_create":"2026-01-04T14:41:17.0375407+08:00","gmt_modified":"2026-01-04T17:09:02.7127858+08:00","raw_data":"WikiEncrypted:y/pCTkp4paaDLjkncdknTgWpZ5WdWQTtVsNoCBFiBxqvgIwc5wQDv2qGR/FnwaLJEDp1GR3yYYULgnFjHs2v1Pzbz/x7U/FpdMU1WoIKIAOTni2waUBhv5OmJeJPI3KMhKXIJpBrHL7ihdGGe8LDbnVCyyrQFfoMclRLlBjnyIccH0pQlDY2TTQLyOpH1fxSVLAbBWhMatn8VarqGs6lmCIe9+iHXENFNVkSb692eS9LkoLo7u3vN2GAWr74l3T0UjLS3I3l+aHhFfRfJJk5WGZkn4AnYmhbMnr8/CQBh3IOj3A8zrn5016ajaWuq20OcJ+n3TWpHTJGQWov+hTfAbHLge0q5kcefBAaFQhY8MZmyWnWhQHvcWAfZL9683KMZGuVbLe4YpOcT/rhk8GBLHbxf9XSeiWDnWz4kD8oc/ICY0KrHgr3UJzWw5l8cUMRIKjbTkJutRv1CxMBN0sa4W6DyI6J9GPN/B4puVkAS7ZBStptPRxi3OI4VtSZzq8TSFc3HOqoSIzDF+IV/Viv4x4e3HOtY828PUD7BTKyaYl9ybkQkVss0ES2bWhgTKWKSEdt33Kjl3+IDLbnbw8D2osXc5Lc6BsfdQPk768tx5ny8xHdTWvYlB+aXEblyD8XIHRkEy9v3y+bplaMlwACj9f9UJhN7XIrc3zav0W5y+ZEOe55+XjxeY2SysRbQVkqUdFRyVV5xgx/3BFGBwU0q6+kFAZD9qIilenSBoJEsUQT+Cawej9F5TerV7EKJdGWCOKbxtMtJdkHfyQY7iiELPdgKCRDfWwo6YuPyp8liy8opTC5t+afMMfKefUPaK17IGI2aHDNgmnB0uVewqSKaCoie09cACfhLjl0HPTuE9Y2HIFGxDfJD+Y3tU5Gu/NHmTv3nT50FcvcqCnnWvLMSidGmAnmrN2hwoX4zpRtIa1qv+8gd6a/iykjH4NqDrxDTMSyTkyszNKXhQi8CQUW7aexMLJOepXiCGOiuWDA0rQ3itHMs6eFUVgWOIZXqqTAfr09QVj7CbTVFvcj1tqY19Uhw3kyaaAoyGMVaDjOeLYZdyEoA6PVePc8t+4x/WRypMpF2Qh/pW86sINZVEI5+PD+tTTZkczcAzbVpPJyIuUGZ0GTR1BBaOesRXz31leOQbeK1WIpHM/Pl+f4y6wf1WZ57AW1FWQ7I/Ckb5QWsSqekTELwG6wo3em9BiNBXGJaDXM/U/d0m1elUDCasqLA8BCHmYxlhBN1VhxiWlL68C3Y+y3cjH9UoCTRX/At0mb4dek3f6ASNvjNUPUe6xfvW/TkAxIEHY+1RHVmB0y7rFkif4OTLDpm+rd6mz3mLZGEK8OT1xOaaue8ZEm7js9johqeRW9Fs7ZK/+hwGe9zmH5DLBiVxLEY9s+BZ1HgZK5","layer_level":3},{"id":"1dcead39-abbb-4e5d-96ed-1695d4b45061","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备管理界面","description":"devicemanagementui","prompt":"开发详细内容,重点介绍设备管理相关的UI组件实现。深入分析devmngframe.cpp中设备管理框架的布局结构与消息响应机制,DailLogin.cpp中的登录验证流程,DialFindComShow.cpp中的串口检测对话框逻辑,DialShowDevParam.cpp中的设备参数展示机制。解释DialPlcStatusShow.cpp和DialDevStatusTimerShow.cpp中PLC状态与定时状态的实时更新策略。结合MFC消息映射机制,说明用户操作如何触发CDevManager的接口调用。提供实际代码片段展示数据绑定、异步通信处理和错误提示机制。为初学者提供UI与设备通信协同工作的概念性解释,为高级开发者提供多线程环境下UI刷新的最佳实践。","parent_id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","order":1,"progress_status":"completed","dependent_files":"cpp/Views/devmngframe.cpp,cpp/Views/DailLogin.cpp,cpp/Views/DialFindComShow.cpp,cpp/Views/DialShowDevParam.cpp,cpp/Views/DialPlcStatusShow.cpp,cpp/Views/DialDevStatusTimerShow.cpp,h/devmngframe.h,h/DailLogin.h,h/DialFindComShow.h,h/DialShowDevParam.h,h/DialPlcStatusShow.h,h/DialDevStatusTimerShow.h","gmt_create":"2026-01-04T14:41:19.6519384+08:00","gmt_modified":"2026-01-04T17:09:14.044975+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvJClzUrQX38TfSAf61XeNCZ3YiWKy+ydrgvHiKHaHEPv3+cYCNofJ2uQz7lvYPGVh8oUWMaAs8rYr1Fu7LFs462v3mJTpaXjTRrp4y6JooJCnhpiZOBsMy+hm9B3ZbKKh8RrhrQlKzSjzLY9zew/5qAszijGshlVjAMa88dlt4ZEmDlZQoCt9Owwj22qFqeXXe0mCnRxhZQSeXMZrJJiI2TNFUUK8LaOzcU6lNchdO8C2QW5FYLZjwQq5cEkLxGgnmMpIhowJTN09/CiJzKepOhOR4Io+dVGvJsvQv7YNUJ28HoVEa8/EPux6RIxwNZFYQCzKB54GYZYg51CROTuISYYpJSHdusFBFSxT/dhC5/aK1diEqOq95Gme0ZeDUWbf0rVWuHceaXZ9UrulpGlswzNGAJJYe522cH3r9Wv//ILM2QHx+zy3DV13KVi7UdpC2MABom4oAg2zr+NicPjcP0iAZlGDCFWWE8xgcTnpKyLeYkXGjwhnN8ENJMRKMAOX9QVMbnRRGkZGEpI7eL7MefFh8mmjGRGrSFIvyqX5Xv9owGckYVUkLmWebjmvIE41WucdNXausKyFiiaPRrTZ8bnBFgAh+n+4HFFT/wYvi2s+p408sVaULINqBlpxi+YyKgTB4/rp3HDUquyDc+BdZtIYzN0wh38gp9ly6eWqk0EdpkNehFGv6jKtW6vPuw9watZvwU1i83GcexwjtU97S4bpqj5Ux0LwKzmgFFA5cpuV9VNQEZeHgqlQjuPPW1IajS+et71FT4lPnHeFHM5KVPngO/7cGcR/nq6d/ScvLp6wmmoO0I4A+KF0jrbLWB4TSXRXGfjg4Dd4H6hKibcWYNu94f26N/D81NYeTg1Zn6krMmN/nHfMqxzRB3lZ/FnDasHNe0xb2IdEr5yXhyquQ3i3ASwQ0fItSWkIUBDggTgyLPWeqFgGrOsT8XzQRlRGHRxUJbRUeeJe7024EnkMQJRh5xAEo3944qrJUVm73R4nfvZ60om9zSqNX3VzAiKKyINI0xeju11WNxdeDt37ywVNPrSYFMUS4op9si2Oo2xR+H7OzHkw6zOrjsKWao5lgApAgLaEmvDhukhmIEAQiqDVZ/dq+HPHiesU3ABzcYCa/OXgViOm+5j6quzMxDWcJA35FWy63t0zXlPPQF8oxkeRePLHsSdLnp63cxPtpvrio/5nTw8WyPRFeSAn4BI1o8a6AE0xlaFdTmAEJZmnyhaCv9aK3Hj+gOSrlfih5PuhcDVKw171+C1Kb1Gqp8f/5xzBbE71hwwYvFogI8e64RAhlT3ROhcc4YwLWAOl7vVaY+z07MoYYIbgpcaDqjHgbC11q9aGp92ys/D+yIxTCRd7Xy6gSEyQrNcz2RgnJo1rfRIEBmGiiEXAr253Su9Q/zcYe3g5/KOSrFhXKABpFLkQqAw85cod6UwFMFXwdN4iIEtMGkhl4JnyVHqSfHb1YDmKeCPWwcXRncsUUwUuVV32ro5kIJ9c9QD2P6jps0NKtZVar6WcRqunhZW1DMN9GkqdR1wEJtjQmFUdj6MrDFc+pV9uee1Mz4ZFwNE7nmJjBZuucnOMftNWsHiMcQZkrI6c1s2uRGiMNpPxMngPpFYUMoR7ZIjA/sR+bWkCP+NY/50XCwITlVWpGcEahrzaWnBljsocIcpJMCvUues49o=","layer_level":3},{"id":"48fd5016-ef3d-4400-84f6-4b8955e5c133","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"文件操作封装","description":"file-operation-utilities","prompt":"全面解析FileOperTools.cpp和MyCopyFile.cpp中封装的文件系统操作功能。重点描述跨平台路径处理(支持Windows风格路径)、目录创建与遍历、文件锁定机制、原子性文件写入、大文件复制优化(缓冲区管理、异步I/O)等关键技术实现。说明这些工具类在项目配置保存、缓存管理、日志写入和数据导出等场景中的使用模式。提供接口调用示例,包括错误码处理、权限异常恢复和磁盘空间预检等最佳实践。分析其与MFC CFile类的差异与优势,以及在多线程环境下的线程安全设计。","parent_id":"4c064fcb-a9bc-4ef6-82c9-4c9eb26ec82e","order":1,"progress_status":"completed","dependent_files":"cpp/Tools/FileOperTools.cpp,h/FileOperTools.h,cpp/Tools/MyCopyFile.cpp","gmt_create":"2026-01-04T14:41:20.737953+08:00","gmt_modified":"2026-01-04T17:09:33.8169401+08:00","raw_data":"WikiEncrypted:NdSYR2t49vb3jeCsZKre6FBAXGq6Rha630herBflSpZp0R3tLOOaBmZ9HalcnB28i3qiZgJtjb8jAmlUHF8idaL56xh5G9QRt46086N317Sj2FG5ocpM8ebMAY/4B/Cdobli0nds54kd2owcZVE1ubl3QwnCRCwozTp21dCtKQjplNYfED4DPzeAQbWRjpg9yxU6TQSyzZ+2yJmtQc68rRPkP5a3B7A31hgOAIyP2yVwiKo3cDOCE1SkFnUBVTUrhF81wVo3CX7rRxldfBg3FA0YoawhYeJL1dMl8y6nLOhU0jazvUy1DsS3RvL+o0Z98se+HR65Tw9NCgAyQoy4BiZst6/L+Tjf8wfcs2uJQeZq5Zd36Wv+qWWvs2JYnakjSX8z3haUctaUrt1LiBkrkozlse8bbgpEb8GDilRVvrreJL2RU77t1ekW/2OBVN8rWP9Sp/4O+eXgx203Z3/pjiyT5zRbuFeW0OrBxcyOW1BJjA2r9YsmMi3K9/tYdpjNAujssPadE23jyg2eGjRDPv0mZuekzkG9tbsKGtADG1ml/tCpaWcyWMU9l30FuCZPTz784fq4xdSumbqobxCRM68i9FupyByRR7+zro0iM7WuQu7311wWFC3Ph6T5UidpKRsgOkEUMg9Ll1190OapIudHUEpuLKWbynCJB3UpPS8qTITXH8fnbl0Kq7FeadVGzbP5PpMMSecBtuO0xtW91zGpkVIMtk+K+YhaMycqComfxCmbXRVf7RZ9oojXRU5rGKyco1gTt7ZH8mpFPzh3ET74BrEv6nxNlb6UyaXdu7NgFB60rgTov7KyL7+/KHA9UJezc4ekr18bAPDgAHMdsOTfzHrJvj7yV42QyDuQRExv2TkT4lJHoB+fEzJtN2VF1iTKPgjI/hZmUwS5AYcXI+OLwrYRvHnvpmC0ldE1jaIwSdjwCuyy/+IR0zyCBjxKzTZIwPtISIsHbyw0GQjDc6kuPoQe057Hxl/jQGgf42tccuQd1bzR3dIPtdpFC/GerGLx65SZtolVBf5NwxliDYFsU6Fq8m0mu2dUkiO9OWryPGz4TZUlDyO+3gZafN6FqJw7UPK8gL8U1sVSdlSca291j06GHzFqoU99xeK/J2LpobBl+RFgNHPyNVuM3kkX8pzbEAlUUWAIQ6DNvkPbBD2x1ue1pMUxLQQpGx/4CuqpX2WZYfjMY7MsezOnkDhVNDMdzE92sM9YcEMtWGF2JmlGIaCEscOv/YcdAVZMMiujDjS+4QPcaTvzDXVFflsPm5LNukM+PxoySWTdYQFH3xeCVOkWia3+J8kM/OPR5j5DPw+EmBN2pweYhO5h+QRs","layer_level":3},{"id":"009ec926-f536-4248-b60e-9d51fa0609a2","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"网络设备操作","description":"network-device-operation","prompt":"全面记录NetWorkOper.cpp实现的网络设备交互功能,重点描述设备发现机制(基于IP广播或组播)、网络连接建立、远程状态查询与控制指令发送流程。说明TCP通信协议的封装方式、连接保持机制及断线重连策略。结合TcpClient组件,阐述异步通信模型、数据包分帧处理和网络异常捕获方法。提供网络配置参数说明(如端口、超时时间)和性能调优建议,并列举与GD10设备进行网络通信的典型代码片段,包括设备上线检测和远程固件升级场景。","parent_id":"abbab480-8055-4da2-8e2e-664abf629716","order":1,"progress_status":"completed","dependent_files":"cpp/Tools/NetWorkOper.cpp,h/NetWorkOper.h,cpp/Tools/TcpClient.cpp,h/TcpClient.h","gmt_create":"2026-01-04T14:41:35.8144428+08:00","gmt_modified":"2026-01-04T17:12:35.6881225+08:00","raw_data":"WikiEncrypted:y/pCTkp4paaDLjkncdknTgbACqWC75rPgNao41ZOKFTCXz4bDNI62359dWbEpk8Q6mfr3bYfLS6gdfsm0jL8UbqbiMg+t+WEKBYXmG8JO8FHC0eKA5sOsAt6IdvoaNNLbpxIoJtXLEQoo4lNR3j8ByFBTByvwxroJB+52t2xu3K0rcFpgRqFQO10Cgrf0MQePCUJfFTur3z7rir160UaKeILatlNszVdnEySSNsD1AZPa/2AcLDKrlkS440NLF4bkfAgfHmBMP2zX2OUBSD9dA5RA+xt28wwmziewU6cAhz9APAqp0yKuLIl448SAGgqN/jqaFmFXIONP7T/2eOskwJcCJ6Zu/kecXcPUBe7Ia8lz81KGmww1l7fVccuoV4Kh3bmrpKgcJ0OEFoIWR8dFPpZkpCOGrDqQmMMwK/QWrd0isLW41SmIQcCGTtI6NiWC2eSwqP779322LAcdF7c6U/rKj6V1e2RoGYD9vfmhPLN5NHDY1pWUm0yQktLkcsJU5CbaSIFR87qFh9eA6AipZ59vYruG9n7whIUJqbTwth+CjrGPTn5IOO9nVs5ty2uOUVJTvx3dYvSzSnlWalDVlqxt3ve1CAWniOcWZOBxAY9+N8/KPAMGzApGkVcgWtjp0QCNruW2hfgpMvaUHhK52BEQyr4umqzugUGfzKR1tWKY7xAinttRPnRz+vQzWahvVrEjln6WxK/wPaflot0lFNMNbfHlOChxg2QVsuO2dxyhEIcx3m/xwqNkYcXbvqYVBV4badHvy/whLf88LyjzuxI0IdcC9Ig04BVv37OD5X2GTaaUaOPTTwnZRctgsEl/l0jxZoEIFugIL9XdN0DG/yU35W+wZcoc1FaHCbyztSheLdrcw95nfkk/3ftOAGwW0RKZBlBNP4rNzsjxphRXppAP6KtCnUx/lHO0/NCtXVmTSWeVmOo5lNEX3PHFGUj1rzmnfzRQVekjQmxX2MSncjt5E/gAByPTnzQa8DthDrTsnV1TecxvQILLT/xGqalozLq2pxXaxWw8/UOroZWQS+J2RyqOuQgSEvOE6xhmmncosWy+FXHohPpIM77hh0qHXlt6TLCADV6YpCE8PF976G/ihbzazLbHnAfPSTxhqXr5kpu0Zter2q5Rkuxr/Ky3nci3KiiW0+p7tOHnjQByeYuc0dwAO7y4WXZS34mFe58sx8Z8i3whBPqpHxyaYIelzgISwfgmU5ly15jnJoMFfVMU/p6aLih5C4EEutgPluxIvJO9fe/ALpZq5XdioCd","layer_level":3},{"id":"9145cb88-65a7-4ff6-afcd-07a62cf78eab","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"循环任务管理界面","description":"loop-task-management-ui","prompt":"深入解析循环任务管理界面的UI架构与交互逻辑,基于DialManageLoopTask类的实现。描述该对话框如何集成任务创建、编辑、删除等核心操作,重点分析其与底层数据模型的绑定机制。详细说明用户操作事件(如按钮点击)的处理流程,以及如何通过消息映射与CTaskDataOper服务层进行通信。文档化界面状态管理策略,包括任务列表的动态刷新机制和用户输入验证逻辑。","parent_id":"029948f3-657d-4fa6-8947-d1f8a937d9d7","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialManageLoopTask.cpp,h/DialManageLoopTask.h","gmt_create":"2026-01-04T14:41:40.7841336+08:00","gmt_modified":"2026-01-04T17:24:32.9085238+08:00","raw_data":"WikiEncrypted:o+yBb4vjz+0bpqRqEZ2fycmiXNfOn7Sg7H132VtwNqRx5IQSofRCXilkyPgHSnL1l8daNRckK9qZWelf4TQO4lZHLok4zTe8wxZmBb3yCRgQWHtXFvSUsmKN5HvF0xmIgN/4wAHxnOkchPceCmZnmMRtEpKRUYPt8eHhczloVASmvUN4PjHD2wO1fJesRKYiaWR1f9dZJVRVV6jCblisMbBAGJP5aoVe0XLNAn1iU6wcYanSqSEMSwlgl1xl1fbEMLplqyYIYDKXh49CY7YrPMLjidKch9S5J0c+zhpux7/T9ZFX5dXBRQHg8InwBlnAAxBpToxtiwtMVuihNX8qe7TW69OdyCtFbaQvFipLP5aOTbWfUt5jW6vweQ8lPJ3+ocqU2fsCyC7dboJHn2N+QX54Sa3ZmsLkh88R9MXacRdA7ncr6JPrw5sVBN4D7zpp0ijTXHcYRLTztuGUGqX32rAYjBFD7E+Dr/EJVcBnHJyra8xGolIa9Rstr+EtrpgPLVzFwB7GeL79fz94o1SSXwA+T6GP2KKFqiOeVd2VGE50OqkHemMU+JRk/FtUocPmorKZtaULzKIzfkHhP7vFrjfal5tzpjW2MnkpyR9exj7JcZD/DTwk+5e0ULAY0NrLZvEJOxrOfDDFwHdLyZrSKtc7TVKiNSNUA9AGALIQLIdLDpVfKNbgzi4Vrq+7lKBu1o+zeNjNLLwFHsLSvGVWHEdZwz548JEEpJIroV4mzJJrSKDpzfUM6G7VvK5g2eCLOlsonWHxjkQxU66kMadweJnF1zOcUMaQIg4tn/+fVuMvZ3eCrVzo5KbVFCOCHaKYvP4zdiHVGNoSVOGoddesopv/TEJdoVZ0ZDBIgbGxtQilV+Gv9nOT3CiEm06C+k8EiJox0IwXVBlam32P2DprZGp4mW9IiibkeMHVLqo+kT/2EuPS/mPcIZszZNyawsdZIMoYvr/4p0oAlfCephCJA7i8NmAvbLHW7mKybnZMfjUx4zgx9RuFr3CnDBz6YcC3ik86nDcaoNyXDJ9c2UFENZ0bQpfG0zOUx0MKeIjaqxe8sw8USk+Oeh47AeZuSZmZ","layer_level":4},{"id":"ba7781a3-7780-44a9-b4e3-8f09e44570fb","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"电阻率反演数据模型","description":"rsp-data-model","prompt":"开发详细内容,全面解析Rsp系列类(Rsp2DTd、Rsp3DTd、RspCETd)实现的电阻率反演数据模型。重点说明反演算法的输入输出数据结构、迭代过程中的中间数据存储机制,以及反演结果的精度评估指标。结合AppDataRsp3DTdView.cpp中的渲染逻辑,描述反演剖面图的生成流程。解释该模型与SP原始数据的依赖关系,以及在不同地质模型(如Medium3D、MediumCrossHoleGeomative)下的适配策略。提供反演流程的数据流图,包含正演计算、误差计算、模型更新等环节,并列举典型配置参数及其影响。","parent_id":"ec4f27d1-3dea-4fce-8eb1-132ca0f96e92","order":1,"progress_status":"completed","dependent_files":"cpp/ProblemZone/Rsp2DTd.cpp,h/Rsp2DTd.h,cpp/ProblemZone/Rsp3DTd.cpp,h/Rsp3DTd.h,cpp/ProblemZone/RspCETd.cpp,h/RspCETd.h,cpp/Views/AppDataRsp3DTdView.cpp,h/AppDataRsp3DTdView.h","gmt_create":"2026-01-04T14:41:55.1371749+08:00","gmt_modified":"2026-01-04T17:26:44.5322204+08:00","raw_data":"WikiEncrypted:76c2F0xsTiR3qdpbDOJZgPBoymAI89vtwK2Of69q+20Z8QbG3XhDNiXawIm/dOZ/GKDFjxcfAH/W3GRwb8B7BDjET9rukJj0LzBSydMHSL6t7t2zQqXfws6By6JPGF9lZlxpfljKzBh7B5yTUyuGpMKOLdlEV4vVZYanIxEG+v2t5p32agIDn0jH9z7GeQLR7fniZz1f36Cl9DYXNbxgbmtFE6JH//aXMTLhYCN7G+5QQwXSQqKGUpjxy36J9fxA+cw6Esl39XXR9kU/gl3asq1xkXU8wdhHeIXrNKWsIwYYlO8jJL+qLsLrvWun5mBOX9VhUmKnPrc1QGFUfUVwj4iXNTq8AKtjb7OuBgi6+jIrTOO8Yb6Hwmha2mdWJWPc13OItkxStXYzuQ4mSdhnoCXiwyl1J0hrdpBSI7ToZOXdpbWvEJWlbYc/N59nGmOKmRfj2U80nfp9JGrRjOQfpzIzj9J55bAPU8PfiMewWXuvjRcQeN0VcqUEVyeYCR79vWpp3yXhlXkHd8AlDE3RJrrTQJ6K4fLmfIh6ZTu3QiaSuORlBzl58IPg/lnF3hQW1pVex/xD63JzElWJIuWbNIsnUdd44kwLNc3AckxYxCy0bhPmsI5q60SOrg80aAITaS4bi8PZWsEGE58mULzy1/1L1BQnKaIgGJ0bnXvBBJSMx1ZBmsBVRkFCBk0SnpeSeqqfq3LfEQEHBZLnTXLlqZQn64JMqbyBTapRMaoDJbkNmD7HS3Dnibue5+Nnk9RHPMY4rdgnb9rbp1rMwjFmk40cKB4B/iQkGlDRjMxY+tXafGE9cKJQa9So10vubbbgfCHyhYVf412AopF7+P9/MpYiP+qW9pt644MwMsybrs0v8QFqCjEJ+zQBAtmE8CL/Ac9OQ5ZNPOiySxv1En7Atv3LeNxfueWiwykEmUelKXez1OtwihK/VBolcK4dmy6YzGZc6j2vKACzkpZ0Tgo1MiaC8q8YoREY0vrvBYkUhv8Swv/qI5hlg3ud0fAgbQ0nBBTbbBTSH4G0Ed2+j8NMBhy+N2TDKLxDYDBcNCS3pQQY7wU0bugcbV6z/gq1rvmPwzf3Z/XyjzAskToh2FuCZPYOldpHulmYT4qqbvoTL2xOXBzBPz90eJY3J5rc9WAXbJGiobAuGG4vU4CSHLtCA2lk/4eZG5GhNB608vKl/T/o43jJYRFBAOMWOmGVRl4aLIHTJX9QJhf8E+UBMutBpckjrIRbzfXTg7vbvXCPZhJL+2Pl1yZrb9XHuvkURzVqKv7O9Qt0/HhN/QYa1ZRPLfLxOWmm6bZxG4So1x+wloEnVmKkISHaAjnHqxsWjDSlUpi9q+00kjanAK6loDFBc02IeuZOHyjpQHdRK1rqZ30=","layer_level":4},{"id":"0c1bbf14-6e98-4566-9f36-9731f0ff72eb","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"地形配置","description":"terrain-configuration","prompt":"全面文档化地形参数设置功能(DialCfgTerrain)。详细说明地形高程、地质条件、表面特征等环境参数的输入方法与数据格式要求。为用户提供图形化界面操作指南,包括参数输入验证、默认值设定和配置保存机制。为开发者解析相关数据在CTaskDataOper类中的存储与处理逻辑,说明地形参数与测量脚本的空间映射关系,以及其对后续数据采集精度和解释结果的影响。提供实际应用案例,展示不同地形配置对测量方案设计的指导作用。","parent_id":"a6bf10f8-e51e-4237-b929-6436520f9419","order":1,"progress_status":"completed","dependent_files":"cpp/Views/DialCfgTerrain.cpp,h/DialCfgTerrain.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h","gmt_create":"2026-01-04T14:42:49.0717779+08:00","gmt_modified":"2026-01-04T17:26:35.8859761+08:00","raw_data":"WikiEncrypted:HpKyAx46muOvAFdTAefJmKFApQ3jettFvi+v+kV1PSxmtUd0C8bJ5z4ZY8gRv7slhtz0V5h9O4hjFnvin1+BUD/ycJFUWRXyqgD0/pQ6YBVNivrRdwX6V7p2lvp0cjpWtEyAN/PIKlcGGzNyAIMEjFnclLANt/pMd7ntOZKf6+067/tFl7jODgthCQo6AFY/ROeSV53CAWpkzSkLKot228hnBN+9DkDyM2xcydYibGFteP1+c9yP86z6hV4v9tN2su844jAP8FwHbQWPjiN0HGimXT4Mxw+Zs4vNmnVbWN/63++o89qKcuNp3aFAlM7l/LyR/+2CH/mDGB5EvNgGKCkLm4yzs0/cx2h/j9ksygp+5+jkhHlUT7k8NW4K7kTN5lgfOPBB8p7VpwtGFUZ5GavMkCeSTBMBeqsPsRyit1Pq1aMi6QBRyaZ8hURxNdsZ2Cr3lJEVmA8FXdQoN8nr/DJCESTe2ZwmHY9KYZ16TadyOloWDTeZW+6aK19Nrz50k0JH1vtfQd9pDKOo/zEnNECi8hvNYx3H5U2T2F9QXYf8EiluIkP61evtg3+IRKIwlc3wQOi3kfSdMq8vp8QbdmjRwxxrntqvJZVa1rzLpSHxSVSk0WBRsxo9EASNIJNItlnuLH0eiv87GACvxEPwLR6brprjAu/tel4TYQCT2wLHpzf2tRffaSzJfyX7q6rCYTQVkU1VA2tMeOOlXYewal9bzfZnLpWJeRlVCxrc8YejAP0RLW28UUo5thjICVtvogSJ0j0I85CUe74HuUEA+17Pq8ho2ilkLjwaUpqLRzxhVuTyQjklRoPmJ/2jP5sot/gCViOAo4b/XeAn3vdIHcxDO9dabPmsRjFd3hz736nnzayH5BFQ+2yODNr68DQ3PPaDvWvbh04k7XxgEBvBIKXdsb8JeLl1mM0BlKcf4By+RF97J16hd9novza0+JlCDGGGEjhsK7hSIZCSRmzlLd193hQW26Ho48Y0Xes9ekL+wkDkDW1le4+e2/T4d2mTzbrx52kNBuiwECAdAMgdJ8HwN0HmYY8BTxL7Caq3smJFba8GZgJLs+pk7Z/msHlfxZezhLzxuKwW9dV3r5eMIVbJbgpdWHlpfemltruHb7FMRx/1iCD9cEYeXS+IKs1FvVJpBoxVfHE18Pxzh1sw3vO7weHI+Cs2uGWwL3xozpI81YBbPWshOo+l/bPbGhJF","layer_level":4},{"id":"5d08bb05-e9b3-4371-98d3-840eb06d48e1","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"安装与配置","description":"installation-configuration","prompt":"创建详细的安装与配置指南。说明系统安装要求、安装程序(NSIS脚本)的工作流程以及安装目录结构。深入解析config.ini配置文件中的各个节区(如[UI]、[TRANSFER_INFO]、[ONLINE_DEVICE]等)及其参数的具体含义和配置方法。解释数据库字段修改记录文件的作用和版本管理机制。提供配置最佳实践、常见配置错误的排查方法以及不同部署环境(开发、测试、生产)的配置差异。结合实际配置文件示例,帮助用户正确设置应用程序。","order":2,"progress_status":"completed","dependent_files":"config.ini,database_modify.xml,version_info.txt,Install/geomativestudio.nsi,Install/Geomative Studio/config.ini","gmt_create":"2026-01-04T14:37:17.8873012+08:00","gmt_modified":"2026-01-04T14:44:50.4663947+08:00","raw_data":"WikiEncrypted:6nDTd1wU0hYJuRoAJhne4WtyEnYmhxdVsqDFxARVgcjHHH2m9ve829uQk6AXy2hUn84DrMD3Q/s2aArtBnqEBo+kja5ssFG20l2KO8gyjycHnVTrQhRtunTun9tTSsdFcYplQYhyYHlRguvrDFeVI7x6kUVmS8Shk7FVQUdK4/YmWrw0rMLSSRasocBLJPCAg5lrlDoGpKmGHEimg/B6+HxjhJ13Lx3FQimwIqp6eCdqG5YpAL6P2ADs+55aiV/MVXvvaYFQgtOd6WuY8rHw6hA3qy4a4IAeOXBy6Y0beAD0QISr7xTtE3Hn9TuRfkGjLNTnSYvyhnDKMf8ewB5qdXpm5h8Nj6z0fYxPNeG5UYeXmKVgviZJMUXG6QdXLtnTm7UD9Xb2995Nh13Ap+Ix1H7Oj3gzdUFf65T99yrCM/m8VWmFCpW1NhMpx8ZVSQHL50/WqeI9BHAfIcnpnlSmTwCxeeaVMH97y/FlM5s+YFip1ux7TwSNZl5c9JZjMd3ZtJO703BlXzt6hM1xdwVDiAY48qRYZCiJIOl4T8XvzBR6mu152tNHRAXf5EpJmUBUsGjbCCmRUBeMShQOIm/KsRUASxW8Zj+ItvesMuLeaoN4TnFKqtNQ5P2IVAdkWVs+5YboFMgDfpNA1y5O8DNZ2NP2sUr2db8h1T9mpftRZ0p0rf7ChAbr58jmPP9hmHtwnhVMJWuV74/4zL6G2TBSHvrbq1c/e3rIYxxg5CBSSEloS52Atp44Jk098RW4P2fJ/nqdCddy6EOhi9HRd+7VHTcePwIebrrB22a4nyCfdswixbun/8NHQAJz7VPaeiK75f+Gs6VRtpRB/HFvXKv5t0MPS8KAFuM4hYdQvDgp9UzhhSkMou965DMa2L9Fv6Ulv/pPoyVwlEzna9rOKrbdjdDteTGi87DSgnsYUadwpKcjxVcesuw22iR3lmm/5M8qxv5YMc3mdkjbXMkwV4jAv1nqVn92D5wwzJhm5yWyoHv3DOJzIcuZWLSyITPGqrU+83hZwMOGDOACCnpLqEZA5d3PmpPRYtS9yUXgIeV1ykdj9XwJs6xTQ44zkaCaz9YNbf7Fz9UACebQ5jbTcA/E2EaGRz9hv6gpKVam+hzBIwjmz8KSTmbYMXptgaCdrpmZ/olPoxEMgW1y9xJ7/iWcUOxfoRwjnSRuzjcyf2VOCPb9E0WB3rG6W/iQpZEE8w4nrxRNZLgAOMbt3ePL3mXdRfLoemtBs/mzeJtkjx/cBr4="},{"id":"aa89218f-27dc-4295-b248-d1c3aa8f69d2","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目与任务界面","description":"project-task-interface","prompt":"全面文档化项目与任务管理界面,涵盖项目创建、任务配置、定时任务与循环任务管理功能。描述任务管理框架(taskmngframe)的结构与任务树形视图(DialTaskTree)的实现机制。解释不同类型测量任务(1D/2D/3D)的配置流程与参数设置对话框的设计。为用户提供从项目初始化到任务部署的完整操作路径。为开发者提供任务类型扩展、任务调度逻辑修改和任务数据持久化的技术指导,包括XML缓存与数据库同步机制。","parent_id":"00dd2207-2775-4db6-802d-c32bf4fae870","order":2,"progress_status":"completed","dependent_files":"cpp/Views/taskmngframe.cpp,cpp/Views/DialTaskTree.cpp,cpp/Views/DialTaskManager.cpp,cpp/Views/DialNew1DTask.cpp,cpp/Views/DialNew2DTask.cpp,cpp/Views/DialNew3DTask.cpp,cpp/Views/DialCfgTaskPacket.cpp,cpp/Views/DialCfgTerrain.cpp,cpp/Views/DialTimerTask.cpp,cpp/Views/DialLoopTaskQuery.cpp,cpp/Views/DialManageLoopTask.cpp,cpp/Views/DialUploadLoopTask.cpp,cpp/Views/DialDeleteTaskOption.cpp,h/DialTaskTree.h,h/DialNew2DTask.h,h/DialNew3DTask.h","gmt_create":"2026-01-04T14:37:44.6717358+08:00","gmt_modified":"2026-01-04T16:47:58.4748157+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0CnyjUp0gX0urhAONRNYwRvc5Qeg5t+/Wum2HH1dkbbOSmKxSQ5Ny/NcPYz/Fu3VPoFdLwV9xrOW49QA6kXwTlZl2aDcfnBtXISslLFPkPWqohaAwuL1KtWqVD8gB/9qDj4z/oEDHyCV0+my4dq7LfdF3pVrwnvsi2bqji6uvIsmKYzFZYc0aZksqE7VX/L7ypqm80zxXVDaqwrf+xI7wqpQouvE5G/iRDl6x27gIFN9wYlGZSdOluPR7y5ekg7wtKprSIpXgoYZYv3ps7EnCMSD4hjss9orTuCr/z97yf2eo/2L39hbiNXnVlYOJ5lExlHVC5/JV0feO6ZmEsPy5xDccZWYilFa8MiBEq6YExj4tDETpgc+4ACCxmTarnCIeqgPqoFP0TLoYRPe3NAOKmn1X/IyGI0Ifa2mGWwdrMe4dzlIhQIrWjwaobifBhV2HTECx1T+hghR5w5KK59nI6Os/5Fy8OrgcUpqSpeyU5CxK2JEMxB8TE0GR7F31TKgGGe1bjHou0jGDxHmgaqB+7/KipXNSl4vVDDq/ns0JsGKL53uAOfqMgnlGwnYtjy1mFcubhXzibZW7+inh8mRpWXDFis/hiLBF379wDAUBwxQyaLDrvrJ94wUZxPsxnWzT4+uuqwtXUyG16+Zn4x43AW74qi0KyGNJ7BSWPBldiN2LZaIwqSeDs4C2mGS0HYhnngbexosXzFAaqYB/Ye+uiUR6uR+ZIcwUghtg7pd6p1vlAEVBYXG5shh6qmXWqD7B86l0APUJJPIC4ccqbXQHGj2RPkenVQhgWZY5AoiyxbxPxMKYVqg1KkR6zLBB7+tqQSvpXAXKNgQ94/j/VDZElKl4lZ3mNwaHvLmfrKEoxB1E5a+4NG6jctn/QS9SEiGqghQEqQX97riKIGx3bDqaTM5fMsOxNqGaWkpjECtYYMUmteQhelwi7jalWlAq47R8gIMmnFXQfI9NJEIBfCAdFc03qVHWgKa1xjaCzky35yEuQv2Gejs0MsH+zd7GC4xbtBAlpAarOudeI0tPPBRXkfhGti8sY1l5sMQo9elfjTnG6BLJL5Dxz3rV6DuNVMZapLjdnCmsKp7ubqpXXrg3SXeLGmGPWMBGFYDcfkkW9MBpwGGlDpzHkgoMlUjdVGDcQ9wfGEkYymCHTX7zwX9/OM6CIkDkbs6BltZO+ZwxGlT0grXAZcESAVbJxVI7k0jwps3lJrGmO8TkPxWT2Tpq5I109ZYnhcjChYpk3x3UrA6PGcuVLU8/84V/70ZQQwpLZMF+Wz+A3vhZeiRCKyXb+DvMHy693ZUjLesD85WxNtRAWziemqq6C1KXISyI7jGrpJh6+YEyzb1EF8vWWsQCJSrnol6AqXHWxnPQ9/aiTIQeKXkn33pCsiRsG+2N7aJjB88FIZe0HXDYv+M+sJWfSC1DlaWcH/qKlyn47vaGeamDEz40FuO4NUnXOdmo/52yB7jLq3rwTojnzPpqEu5GTKwRM8fEdPv1vaTyYAjpjoREZpY1CNqDLKq7BPZ+l2UrRVVOUFw3BSBUSn0kMj0OyWtSgVA0S/Y68gqRMnvUdBz2KSG6OY3nTSZMh79T2bzXjCJHX3k9gM0gS566ms6Bi1R0DrsdmYOvEbJQBAcL/3z8OpMxdhISbS9dgAOzxeliKAkaBDwA4dHun4TrOU5yjzIHVYZPLWGxACcsn6DhcLSCv","layer_level":1},{"id":"f9b14c41-cd08-4332-9260-515b5e630379","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"脚本管理","description":"script-management","prompt":"全面文档化脚本管理模块的功能与实现。详细说明CScript类和CSptManager类如何协同工作来生成2D/3D测量脚本。解释不同介质类型(MediumA到MediumZC)对应的脚本生成算法,以及脚本参数(如电极数量、测量类型、时间窗口)的配置机制。描述脚本在XML格式中的结构定义,包括\u003ccn\u003e、\u003cname\u003e、\u003ctype\u003e、\u003crect\u003e等元素的含义。提供脚本生成、编辑、验证和导出的完整工作流程示例。分析脚本管理器与项目管理器、测试数据管理器的集成方式,以及在跨孔测量等特殊场景下的应用。","parent_id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","order":2,"progress_status":"completed","dependent_files":"cpp/Managers/SptManager.cpp,cpp/ProblemZone/Script.cpp,cpp/ProblemZone/Medium*.cpp,cpp/ProblemZone/Scriptor3D.cpp,h/SptManager.h,h/Script.h","gmt_create":"2026-01-04T14:37:54.5691344+08:00","gmt_modified":"2026-01-04T16:49:01.8272224+08:00","raw_data":"WikiEncrypted:JMwpWF0BBZx06HpfZvJKAmGEkUl2BCY8Vyys3g0NjJyttjDQyAxUMEhA0anmNSN+TNJr2xNOFaLo+evksgEIwQd3dQhGo7aOpqOgkBHMJc1ePR4QgS8jd2pZnJ5NZ18UIsJNZuthmfyXaXjXPzZhreus8ycS5jnRK2ZoRnlyI8P6kQK4IK9Iyo1Z5pP0hI4rQ/LQqx4gtmEJb0okkhmKK7W6O74drGWjHbmUYEzg6s956vGDcYoS5pxaCG6E4oOuXhmf5nhvRLNzq8YFYA7pnHWp6C0tbNaHCJNET1FZqmlTFBi6CprQtcq+0dMsa4pXtFGcRGseBPi6h93M441BFAH9dha+ULSY4hUS9flH0b4a6F6e6f3VQng7IatapgJrVp0fdInOQF2eoWPT0u19zBqAoM/wCySQZ0OQnZgVXQJMGl8XFUO3ffFz6D9ROJbRzCmLD1Xhq0/69zRkFWmnn3v5ZkHYo2y4skjz54ovbtq/Gx/arYJSOnCy6wEtNfjo9RHcxzVLHtxjKGbL8MVKClm150LExarumLB9E+ve9G8GBa+0HErK6Z9Mi17fXmKJZPvu04m1BSR9MYeuC648G9Ti1GiJwdxPrlPWUetpbq/Gsqsj1CadYUwx2+J3soko1sXyE9m7hHR5zWGHCa8gDjm7E+kD7Jqijkwoj1Oz6QvjuTYAcSL0+nOfeUiO41+IFY29IGx341I/RUfSHt5GvtdFImzf1sxG2kXrKB20TAt8gSOCdRxnbCjyP7dsIKC+WaP+Z908Gjml9sl2xIZD7Agz6sz0WPbQpa5SgewcDVmHa/2pX3RCY9VNwXMLxl0spW8u96TNn48/PakL0N0mh5okqj0T0AWVqLgMq7hmEMg0rVLZVJmSiH4W7vkglKWWYS420QN/uuGPdVtEIWM3bQ4N6aCXOP1qHtZP1qjobOuK0AfBSvDJaeby9rSnSpOdgdGJd4W+PkenLKKVtFuKs39p0MJQSTfuKcV2K5QZvzvWsLd/yacxiOAbQOT3bS0EW0fwmw9u8xGhU3gFIHGaQCIw5MdZHKJZc9Nd/GQs2rDDCDr/A21B+aYWSa/05yF4gIYFb9qwnAOkyphQzZ9tWjDpRAOBMDYF54rwofbF4CwjdjIVmD0fIYOWx3KUj1We/ThEaHW0p0yVpv/4Dq8AhkBC209mm2rXRpQJFLdzt/KzIh9JxEHvqczbyEOvTwNwFNyCh8WJZ1g3sNExArWXDSy0/P8Rq0RcxBp2glceuBfuXBrmhFRnCWxhybuCcwVRDGdjdlOKxl35T7X4BqGUJYLQTm9C0y6plWaMi0sV0OAkB9Vo6M0ObN4P+WUERjspVz93Knam6P4ut4sYmnw0CKP1rStAuf1h2gc5rIZVg41aa5bkJgGTcXm92yUZ1AGgCaeHynsVBdAujxHqc5+aHKbsvD9SL4SrXxD18lZvZsU=","layer_level":1},{"id":"032e9cba-65a0-45f6-a932-d0cc7e0b2908","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"开发工具与实用程序","description":"dev-tools-utilities","prompt":"详细记录GeomativeStudio中开发工具与实用程序的功能和使用方法。重点介绍通信相关工具:SComPort.cpp实现串口通信,TcpClient.cpp实现TCP网络通信,Zmodem.cpp实现Zmodem协议文件传输。分析数据处理工具:Crc16.cpp和Crc32.cpp提供数据校验功能,FileOperTools.cpp提供文件操作封装。阐述设备交互工具:GD10OperCmd.cpp定义与GD10设备的通信指令,NetWorkOper.cpp处理网络操作。说明辅助工具:GUCodeCreator.cpp生成GU码,excel.cpp处理Excel文件导出,checkupdate.cpp实现版本检查功能。提供这些工具类在实际业务场景中的调用示例和最佳实践。","parent_id":"bb5bc1e7-09b4-4fc5-b483-34ce72a8692e","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/Crc16.cpp,cpp/Tools/Crc32.cpp,cpp/Tools/FileOperTools.cpp,cpp/Tools/FileTransfer.cpp,cpp/Tools/GD10OperCmd.cpp,cpp/Tools/GUCodeCreator.cpp,cpp/Tools/NetWorkOper.cpp,cpp/Tools/SComPort.cpp,cpp/Tools/TcpClient.cpp,cpp/Tools/Zmodem.cpp,cpp/Tools/checkupdate.cpp,cpp/Tools/excel.cpp","gmt_create":"2026-01-04T14:38:01.5029935+08:00","gmt_modified":"2026-01-04T16:49:21.1610294+08:00","raw_data":"WikiEncrypted:e8urQb7W/UcqVujy5hHQNKDNZpeavVXVYa/MLzQMzDSKZR53axzPsJ0Hw2iXvDgETm9kWHJ9UAPlTvmZ0dWx08SoSi5sgUulGk8UA2HiCcCDg7Xi1hjt77Wz2sMDL3HJv7PHLj565C88+K0aATBECZ6Id2oT8OBdYfTKuKnVxcU00t1zbipneG2o1FjBbUXYfXbd/V6gCUy5NDryPgdfqebvUo7THsm52EwM8oczog90jUR8wd8UgPihKKCDilQCl0MHzdNJ0Jo0E3ufK+r8Z0KK1tlr4WA13OcK+rMjpxijp1NIIiXIF0rAbqcZ+X/PpDQNMPv/3PhnGoCN0fMc85t5HgjPfRKcvqyiR+kDGfvEJcR3B3cFG4RqZtQWfv914Yyjax9q0QdygZnxFtoCXmpAstOjB8KHWw0YnW6YLBDBXMGFM+fv13NP26oZh07sgXkr3s6jD0TzrwGtY4hDv2i3Em5VXJ3Gl2Pp/zxopi571pITnuO1v4DAXEb8F13B0/AL2WZRyXMcEU4p39dMvrp2LXLUYogn+38bPFbwxWxpNSWRfGvdUHTvvDUhJqX0IQl4sdk1qgM60ysw23vdvEiiHrkQllNDmgkMqociCkJmYEYbkOFjzf9jRcCtGuIjuNbTJUAS/5eJ/aFRjdjoVp2GDfcxNKm1GA+ZDKuoQ0Rnh3xM9j51LZezhGaKEB8NSUOGtury4vY/YfG6tlC8FBIBKHlp3NVndg5Lute6mM2gLa9sT2qJM+GNrvJfvZa9EIYgG99qWZnSpG1dZpDbuCDT/Gz/TZAFGPDrVQdJgJbJXYEza7kDKJYVOtAg+nolzQh3kTEsYIMia2+B3vspYxyOpUaoH+cFSzl9b8g/6Iyyndch7jxGJx/pzocqB5Y+5v/JHwoRk7MqDYGUYpxkkps+GWXjmqTodZbPlLB9lKm7U+qBezRMqoKT9JM36FZXq0QtQ605Y4tFglfGrmJOJfkAZ7q29oOAFJFYtGTsgF2B+XTzN2shO1rMUcnhazsKso53NAlUn5MxBFUnOLLr8VCkYtaa5uWugC9OimgvKzo7HAYt5NcbTyhrGFATYO9l9d+gPm2/i5fInuyKdwLZPIWiDdx3ks4ZgrdPihnKChhDxOSS3ygGd70PjWmu3cx+MNaTFY0Tofink77TL+CvfeiaSzdOHY+m10tEIOxt97fjWsaTqdLxzxuBKtjURY0Xtmz8kvqLomPm4dewKpRRNbxeKIklr+j2Kqkt3zRC6XFYYyRapdya+WeXjVXgWDYzUoO6d7xrkUIlwXdFHdKCX/NC7giY1YjG6eRTIqb3MzBh5PWjbhMm2wCU65iqzordpcNOwb47Po5RN+PrdVbXG3ae9EAWttT812rksE/XC34dIGpHiyNJihlczWuTueZ8c2OFsULbcr0joj+Xbu7MrIlZNwHmM7HJ/V5u7BMcxyPF81iY0WMiffEmmngqHIsf7nw0XHpOqn9/oUoVIrl6MM3IeauktBkPeTFxceu7GWbyXYlbghzuh8bBQzJ/SHvskdGhfOHcXu9pF6b1RzmQkoSFmpPmRMT7WNAURKjxm2WFz10hQGNNCMJyqCEMls7390INeLYUiBIcXq0HDrSVWfiIVdEgaakkrev+STd64FhLdN6VGLGfk/Ff6VbBfpZLFsFgEhms3UhdH6GbiTQHnjddgl6i83l156mq6OZHxfXiaGcaAQEetxmgd9nrHnxN","layer_level":1},{"id":"5e6cdab5-b260-421e-83c9-3f6de8ba6c5a","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"脚本管理API","description":"script-management-api","prompt":"构建脚本管理API的完整技术文档,涵盖SptManager类对2D、3D及跨孔测量脚本的生成与管理功能。详细说明各类脚本对象(Script2D、Script3D、ScriptCE)的构造过程、配置参数和序列化机制。提供代码示例,演示如何通过API创建不同类型的测量脚本、设置电极布局、定义测量序列并导出为设备可执行格式。解释脚本验证规则、依赖关系处理以及与任务执行模块的协同机制。分析脚本模板复用策略和性能瓶颈点,给出大规模脚本生成的优化建议。","parent_id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","order":2,"progress_status":"completed","dependent_files":"h/SptManager.h,cpp/Managers/SptManager.cpp,h/Script.h,cpp/ProblemZone/Script.cpp,h/Script2D.h,h/Script3D.h,h/ScriptCE.h","gmt_create":"2026-01-04T14:38:07.7264744+08:00","gmt_modified":"2026-01-04T16:49:05.1360558+08:00","raw_data":"WikiEncrypted:JMwpWF0BBZx06HpfZvJKAqIGL3PIiBT9u203dNsXUofN3UO34EWX1D5QtEymEpFbb7RfrWRbZFg4kj+RiQR/kplh6t4cctzEKwUfdDiW8XAsSbvH75Qf/a0UjM4bEmwKKFqCgjP3Crg39QC3ID/BfIuEP2ygwwGKt5994xjArVUvdYUDKCt9KyqR3A7SpahN73prbjyxONGm7pfG/2YUOp0dmAS/bWBok4RVJS9hTpAxJQyyYVMHOusmKDd86fZVk6wuPK9nts5RX6tWzZfLfFADepFyBwzcGEGXj1z5ovH6f1pqGsDLKY0LcxmuLIn172SZm35t3BwPHrrS0Vp753ulUFMO35ET6w6mnYymq7MKbgXXGqiUr5+e+rRHmWUAAsXcv7KIuwAw89VoxMJFCnRzFBrTnJgBS9SABrlqBlvdSXcOTCRe93AByww70vx0Rf4CDd9QVzeJS2ZO9BnBguN2RMwHzGSqL5xXOrz0zmWepxVqiIRFDkLFi2Q4gKNSfs7BizSP42XZHIi+s5gAHNk0TbBlsvRhaxWw+Wrukjn5zvXLUiiZi5XizMt7fOfLFRA9VfCZUsvbu4/XFtzs7pdIgClWOj/X8qUkZg6Xpwr5aSTT+R+Ne321jBZpjETZ8DKyhx3elLqoQOaYhIPECWolOesx4L6Ei4E0hZhRG+J3s6W8QgXCjTRWqUSzq5b1gdzwQAN2WIKOWzYyR8+TjqStQlZ4WCWBf/ddfogDpEmjt9XRx6nlc/g8aQPZiakyR/QC1b7q6HEuZH68DLgxsTAV3891bmwyLse3MZHdMcKgj2wwMTNl6NyZJzz5SRIEzKM4eB17DITlz3ipHo+RoPvuQuO3SLLJdRa2aGiGR997EFbFkRCpBnGLsqpFu4RJYyWgZzJbjjXRi8wqD1B5yEOdN0m2iJNbvZFlnqz1jPq1WXtBfcndNCAo6pQtkO1hlYfMNFUngRnItdge7wSFStnbXuQ7ngyIrLl2eRlimKCI7hd5KRB0lFzOtilHdEJjMMCaW56/vXWsWyBd7ZSnMwvONzW/8uw96elXUb/iZ2tIO7PmCHkMuF70azvXlpEPB8BDAtdh8yg0Oeaq3hfOz13s1/XRIwKrygf6UnWSC1MwJ+hVlFvy1iCgcT2f05sGVquoIELxJgrQkcctnZ1lm0bCxPsyGBWqsQJLirWywMdhyOR4f0O55xTe+BYcSlWA7a9tIpODi2oe1YTtj9so9aXIeGOv06L2gz3XqfoZNsLzBI7rESy25JXufMiiBcCeI3E57eoojAsbCRu5PG7yOzqfIrWkKfMdKqt9NZmNMtY=","layer_level":1},{"id":"5bcdd80a-60db-405d-aafe-94cd1ab4963e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据传输问题","description":"data_transfer_issues","prompt":"详细阐述数据传输过程中可能遇到的问题,包括Zmodem协议传输失败、HTTP下载超时、文件完整性校验错误等。基于FileTransfer.cpp和Zmodem.cpp的实现,解释数据传输协议的工作机制和关键参数配置。分析HttpDownload.cpp中curl_perform失败的处理逻辑,结合http_client.h中的异常处理机制,说明网络请求的错误传播路径。提供性能优化建议,如调整超时设置、启用压缩传输、选择合适的传输协议等。列举常见错误场景,如大文件传输中断、断点续传失败等,并提供相应的解决方案和重试策略。","parent_id":"cb978e4c-d19b-4711-a81f-e657707e1e66","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/FileTransfer.cpp,cpp/Tools/Zmodem.cpp,cpp/Tools/HttpDownload.cpp,h/httpClient/http_client.h","gmt_create":"2026-01-04T14:38:14.1805896+08:00","gmt_modified":"2026-01-04T16:51:30.5054159+08:00","raw_data":"WikiEncrypted:/9AouprqSMhLcxHbdzPYE9rdgPABRTdO+VMnmCTCOG6R910cdHF25zZpNZ6eHDhM/Ko3l4C/dyyttZCU1CrvkO6/WJf8hWRgrRFSfqeS+x39kJC7AbvPVpm6p0w9jP0YT+zaB+N8wfHCFy+0e+OjE8XmilLQflK4jhVSfN4lVDPTAu/Bx8RXpNbDDVn3fM3RJSqT8Zdp/2c+Qp5IXNl6f9cdQHTv/uTxAlKMqHncZb0XVq7uUQ0PTyaIH0l7488JJyp6j4ga+93fi3D6sLXdqBkyEUp9ZgESQbW4hAtzmjoxcSnnjaYwJ6K0TfjOWlMjoeOckFQmobvPytQSSX5Rn/8vH01fScxVHH0XHYpvfM4QQ525GyEb2HDwViEqxlAOGs2yyV+KCZTjpVq3g85npDB2QS+8wfigFiOFbuRQWnlq1NZn7Q+ob3ltl3OLjA2Lcz2dsva6KNpy5LUBedKFMJTVjZwPohcNXKwnbzXbXzkF/R1sAKI5N8jeGsAX8jJPbU5KqUPINWbWFFS9MGzkq7apsSeoirmX4UDhlze2CODXy7TPMk/PeeHyVA9MQhiDRgcHmetlINY3fMtW8K/OGtYieODKoee/lM4Y3kUGh2AU1iL0bxd2uZGTo8c2DPyoh5UeGHXsAUoJeXuYozf/3DVrsACjtKvT7di+YddQwRtaxkfAHbwnGGx6CnvzobwWJzEZPvngbFDbQD8OfD/mmzxpmzEE+aAlwZvc/5UXK9N4n9l9LpCMxiVo3w7wWQCVNBHeqgAWceP5vJz/hwIx2ZZpqQ141qTYdYdicSsJQyT7zpwVjCAtAvRhXBDcqj3rGm1sgd0fC0wUCSDsPeL90vqZrHRM44JpqDh/1vxbFFtIQ/i5smX5MTjx+li6mTMa4Bp0eyj2A7OZBSQ5RpRPgtK3iZhD/P7x2ka4hf865Ej6J4vopcalGiHv05S1u+5jDu/N/GT63eKzm6GSBvsuKC6cZR4zz0NUkrQBNraPWgTJfRmw3CZpK316FBvAumVe9Xn64K5qzKC7yLzi7O6T/2It0Mpvw0PHOgYgVRAzdl+UZ74hzlcntn0uszkFuY9EYOQIL8iEyVN8WjBFJWIVaXKpUKYxqiZM3PQWTHCS5MOsgNYPIbSaCRXLNG10kVcFxpxHoevfqRqBKIL4PoWLXk1ncD/8NzM1hV2mUYwOWZi4Na0jycyAopMrnQGMvSjZ3owriuER8hRNBNdgldvsVz8HSVJ2eP6hMxOvlnwBz+ShX4oQDR/2g7rscTV3iz5WIwrUC8IW24VrfflVGBQsPA==","layer_level":1},{"id":"cbfbef48-a531-451c-a225-dd219e00e45c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"脚本数据模型","description":"script-data-model","prompt":"创建详尽的脚本数据模型文档,涵盖2D/3D/CE测量脚本的表结构设计,包括td2dcon、td3dcon、td1dcon等表。重点说明bUse字段(2015.6.2)用于标记记录有效性的设计意图和实现方式。分析SCON表中Rect、RectLoc、PoleDistance等字段的用途及其在跨孔测量中的作用。解释脚本生成过程中涉及的数据访问模式和约束条件,以及SkipCable、IsAutoGenerate等字段的业务逻辑。","parent_id":"c8d16069-7e59-4855-a785-bdbb26529326","order":2,"progress_status":"completed","dependent_files":"DB/数据库字段修改记录.txt,cpp/ProblemZone/Script.cpp,h/Script.h","gmt_create":"2026-01-04T14:38:23.4538017+08:00","gmt_modified":"2026-01-04T15:35:10.0067059+08:00","raw_data":"WikiEncrypted:JMwpWF0BBZx06HpfZvJKAsPAT4fV8AXgvztT7fCDQiAk06xpdBwxWWYVWdxspjdVrrbENSEYEy3Q6Vk/+T/6zp6JGQbKTxMfGBNpXAcRk2QvcQUcdPYg5zkB85ui7XI0r/CVqdzpuLnzKwprsatC6RYWYd/aiPg3W5OmtCwhAnZiVwVIYKC8jbK8wfwdxBOh88uM35kphmWSpiEetvrmlcGJivPd+FSx37xWv65ubOP0HYlbCsXaQ4cM5wExSEc6WdylX9WXaBeYUVdJxLdTCEqecxqPTpCJV5n1YSVCLskjcE3Q3mgg9mCgTWSJdlofenbaxWkmf30G90ONdRMCpgBjapCCHF2jk7KBmAwmAB9zpGJ6dJ40edoIc2rUH2OrqLFLZskMh+i9h5U9+Ibnei0A5oEhVDVQpYqyYNmpPj0SQIHDWkv/34jBSZiKKIAazyqlSyF4zom8qtJbIiHeZUR70fvVeFknCcX+DSnHmBKoeSXXQnUBJm7N29CWEfkAZtXVk5H+kWX6Ivu37HGhU0UdNCbWA8me32qg3Oj/IjUHYVpoWSePWr4rNsChO8rp1RvXl+9C7LOUd50APjKkGyYPKM5CMJMAgRXvYty15koWpqqi+pgr4t8YiRvDqakNNAahXmAl5qytidQlwoGAJLqGHkm404C2q9Xpjhl1z/5kkbFCMYbVC4qKdH8/A0B8aP79IEubk6/rUcT3uqDN2esdcQnso+ZAeveFxfyj3q/332xaXTA3Pmjw32zqcnrhba7/PSVUbPTXXIqsxCzN9cQJA2WeL5oD7OKUlLowN3peAx//YZYF6wOUSJzno0pLiwYkeUKSNeCdLFFMpd2RVUJbut1/4I2Vv7CeaOjwcMbxegF7kCvbyXgQs3C2o5KJFbBi3u8xOmo7cOMsNKaAdRxUStF29uVYCDRL3jaoZIERSSCEOQkgbwUBsiv8lGRww80R7Qxt1k/IZmsmEv8+sJexAy7wYKxN03b4/9JPwqTTVsIYYj5vVhzGDiawttDr","layer_level":2},{"id":"6fd314a5-610f-4d29-ae56-3f2c4363ad3f","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导入导出","description":"data-import-export","prompt":"开发数据导入导出功能的详细文档,重点描述CIOManager支持的多种数据格式(Excel、CSV、TXT、URF)的导入导出机制。说明文件解析流程、数据映射规则和格式转换策略。结合DataOperator类的实现,展示从外部文件读取数据并持久化到数据库的完整流程,以及从数据库导出为指定格式的实现细节。提供批处理脚本(如IAP-GD10.bat)与核心功能的集成方式说明。包含错误处理机制,如格式不兼容、编码问题和数据丢失预防措施。","parent_id":"9c6698e3-6e8a-4c4e-979b-57426f8ebd31","order":2,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h,cpp/Operator/DataOperator.cpp,h/DataOperator.h,tools/IAP-GD10.bat,tools/License-GD10.bat","gmt_create":"2026-01-04T14:38:29.809127+08:00","gmt_modified":"2026-01-04T15:39:53.736807+08:00","raw_data":"WikiEncrypted:A+6jFzoIOdmzvFFDfBg9UaRNH2hxBAH6hzJH8sDeP6uPPbTXdpCw9xcWeJ0zfRm2WN5i0Yv50l3clPw9BIrUK0iHaHMPtHs3TY8leWz3Ne5q6aOXl1QWXo6hldw2PBE875MUmTYSW9/MhdTgnJN6RrYOGSdhwlb6ur9xHIrMKkE2WkhUY6YybUC8nXEC9KYVFXYf5mZY5RpSFvfgTTg4g8X+xqXQx30HsDN1FhEu0G0oni3Y+aqP9uNgF702fDiN8XqWKfQ99xChp7AifFVCD/cbTy4XMOG1ubQ0QAvXiYpBvUh5oLYf/hKsrJDOJWYvBVJZNfcusONZCyAWSq1GVmy5JHoxvHShlT7OhfHDAKW+qdtiBh1HTGGURBCMHrCELKpLRQ/3QAXQiwMBj8qDkBnVvGCGEVvZUF25B1KpWYDQ7dB3xToAHo3A+Y+nNkvbFjFbdLOin7cwo85plP+y8CAHkBtL7JOVqBYifPiHWYX5TVmBumBBfCpi9IhhvmRZ1eCd7++PeyMnnOZ4kZG48MFNtrr1fj/r5AoCO/mTNooVKDwAIThtTlINYE5D6in3eNVnOyt0n3W+K5Y7ToOKbhxtCAyPGhQFkMGgCkTzOaLEMDkI4/M/QvvBAGqCeT7TymVCrrqGmldxRMhXPFW8rX1/RNyE1GiOceEFPRuxZS+YYyAFWxt3OzMgF4h9GtPZoPJqIpmjb8WwLV6TVrnovAWAEHOUNtx7hlJeUNQqg9Ekfb3Q8MDMP4NRmczMIdJJRfyzbEMP6X62eaBum0LD/MZhsQND6wM4McCoaMK+n5Aiw/WtDfiN94XR7KkhqPSnMqVbaowHcPkLLK9OoCV6kEsYsx/HGUJrsa8r+aWuADY4y8EY3XUwb6ikhYWnAqu5UiUgjufm8SzRB7CAeXeR3tMOhPQ63rUfUvvvp6zADmRNNkMNPcbg8kiQsLeeDUvgxNLECqHBYXaiXEpgBjus0bk/DGPScPZddxm8AOTyHpwDlWXRXxv57yr0QGPDA/y0XLK1TmQkKbTCBKlORWT7jr1OBAbYh5n3S97Xw4zn3nYp9W3xmeYk+9aNBhOS2kuTi8XZ0UnGRYecAXvr6tfeeC2fJ42QE1agDAb8gUvr5TvuciGfmI3/9iWMZdtLf2J1yd18L26ItP+B2M9AbioMoWIHSjE44n5lXeTJPA9NPvHtn2oXcX3ttOzphwVEt0h96qpDJqZ/1DHfbqho3H+vJkivZ8jUe3rqwuc0Ks1fOWs=","layer_level":2},{"id":"c2bdac48-4858-49c7-bb16-86c2440ab9f5","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备状态监控","description":"device-status-monitoring","prompt":"全面文档化设备实时状态监控系统,涵盖PLC状态查询、定时任务监控和运行日志显示。解释OnRemQueryPlcStatus、OnRemGD10TimerTdRun等UI消息如何触发状态轮询,以及appdevolview中状态视图的数据刷新机制。描述m_bDevState、m_iPlcTimerInterval等状态字段的含义与更新逻辑。提供用户操作指南,包括状态刷新、定时任务配置和远程诊断日志查看。为开发者说明如何扩展新的监控指标、自定义状态告警规则或集成外部监控系统。阐述状态数据缓存、更新频率控制和异常状态处理的最佳实践。","parent_id":"3f537301-6406-42a1-984c-2ba217f77900","order":2,"progress_status":"completed","dependent_files":"cpp/Views/DialPlcStatusShow.cpp,cpp/Views/DialQueryPLCStatus.cpp,cpp/Views/DialDevStatusTimerShow.cpp,h/devmngframe.h,cpp/Views/appdevolview.cpp,cpp/Views/appdevoldetaillistview.cpp,cpp/Managers/DevManager.cpp","gmt_create":"2026-01-04T14:38:37.4761449+08:00","gmt_modified":"2026-01-04T15:37:58.7785244+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvEsVDxqY/30rAGZbSmOsjIaKZ4vJV/j/g1yCVVPil0Py/TJ1FZv+TbNDYl/tx7B0ZnU+OIdT5uexFeov0x6+5liv/YwWmaACRo2h58Jb/X/97x0vn8CfbTucXlIS0lzd0oQPOtW+VDFMXhzdh6HGl9c55FRejh9+o+60w6aFZJUXw/sVaFcF4y/l/yzDwzDfQDYXJhgB9FHRRe88YhjeBuU/WQHBdFEdQRQdUlEsy2nSXusJMkaUHxDGSVIUj8zJs/dO1ano+OU15WLId3ANT9KVqFmV4/BIsysevRORCLrOZDEoOPw/kNbxJ6/HRGCX68P3uRxrqhBoVFIOiyEN+6neMXvtpCSrQ44Sxq0ewF323F4Waec2PTOSA8Ba7clQHHi0MaMlm8BB2TQS+EyCa/bwBWX68MflkokUhFg4oDUY6CygFwReSPVFbdmNnZFdPKu9x7JjLJ71xxHDL0WUCf5HDvrst0X7sgf26amG9agJzxPsXo4fu6Rz8Yo1kccQAXEancVqxWbxGdk7wUAzeOcDHy+bnv3dn18p4Nq9tme1tUJrZYr1Dssvyj2eL8kjL3HCzh3cKaztH9GSHWvIpfVrRqLZ/Pzw40mO7XWppNDToyz2KdkqSeXcsMSNCivvC7DfHTemD6tEq35O8THXe2eKnoZwsF5o9zdbbUvKdpESm/kBIuxgLQgl0xUsTEBpRABOmkMxU21pfgbWvs7l9ciRN/z98Ff3O6sA+1zCJy1Yz4luChqLIzdO2e9h3vsa98NFkSmn+jRVzpifWJz2SyUOkchgmq4VbA4s8VqU8w8oJafZJLgHZF6pbpMMwIseCNzI0aUzIeye/9XVK/6NzNMsKB6f5FhgNznjIVMAMb+sIfnT1T0igpo5YOBikLeIuIqnTVhJ1ct7XYjtxjbpC/CLSaxaBkoeCcbPB27JJ8Sl4VDKgTPOhnX5CUTSTjgj874BRFJr+LMgp370tGZfJlnxXJAb/gqR1TNmd7b9FmA2fy8L0gZ7R6T+YNaDUgDL0Bof3rUm5zBeJI9+6GXu/DvRdmsXFgDEvXzruhG2rwc2it2+YDwnHMdsAYler3EBsVrVznVFj3GCumbeiVAkEHxZolUM3BBmVXgVCx6nXowAPgkT8Ocj1nY4I+gsXr0iVC9xKo/FI3QpG7yXDwOagTnPMM6GJJVB2p9RA+YfGBehhUCXTgJDST+sCed9/63agA9z3uTekLeX7elw+4sVaMWyUfbHjD/5FqlGKP6lBD2luymFjhnkSrfNZxXXwDktYJMi/V5n/r+zUM8PzGdnSivI2b+Vo4Ql/87F4NpUM1JLpZgvoazH51enyWHFbYTuk1VqI//83PebsxjKjdyp/MTyE05MU/Is8kuMbmLp6IZQZ1pBCYpfSxvCxijqbZFA3ze1uira3SuBVEkTEzE5SsFGx9a8YOtT9ez/4DypKGQO6XYOCzvP1J/ObfLN5dNPtAJY/59wir7yncw8BYHflf0=","layer_level":2},{"id":"5fe93fb7-5e86-4d4b-abc8-6d4c851d749e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"离线任务管理","description":"offline-task-management","prompt":"详细文档化离线模式下的任务管理功能,涵盖离线任务的创建、编辑、删除和同步机制。解释DialTaskManagerOffline和DialTaskTreeOffline组件的实现逻辑,以及与在线模式的差异。描述离线任务数据的本地存储策略、与设备的批量传输协议(FileTransfer模块)和冲突解决机制。为用户提供离线任务工作流的最佳实践。为开发者提供离线数据同步算法、数据一致性保证和错误恢复机制的技术细节,包括与TdManager的数据交互和状态管理。","parent_id":"aa89218f-27dc-4295-b248-d1c3aa8f69d2","order":2,"progress_status":"completed","dependent_files":"cpp/Views/DialTaskManager.cpp,cpp/Views/DialTaskManagerOffline.cpp,cpp/Views/DialTaskTreeOffline.cpp,cpp/Views/DialOfflineDeviceTaskManager.cpp,cpp/Managers/TdManager.cpp,h/DialTaskManager.h,h/DialTaskManagerOffline.h,h/TdManager.h","gmt_create":"2026-01-04T14:38:40.0098973+08:00","gmt_modified":"2026-01-04T15:40:15.3883709+08:00","raw_data":"WikiEncrypted:yH3MbbnLyQWTB4oQDyqlcuul086dAMaY/mt/+3ImGAN6Z0Fod6OqreI6nbG7vvcWJImV+60fje/klShAkpyAYyP8Iln0Qp/BWRxEn+cTirU+ULtDjRCvDIAWvBCyH4esvgGwyO7hIIXKCy6UnAMvv+RFoq5tNitD7CH8maYBA+4/IOBUciUfMyVcAi2SCQBf71PvS8mh7Dkz1yRzGCd6aS6ccYVJk+NkcqCMHjEJMeIUgm3rgkhTTCk9HBaOm3xt/EI1pj84m3JzSe1wXT5G9wvEzGWRKgnv5MRsOOx6oWdq2RANrLAsLAg68Y4zQcW14ww+UtSrlkxv42RVCStezdJJJIMLF+ConVqNS/KArl7Fqc9q5hTT96DXgsczzhS0xPj6/KexqWAqHjRenuhc/ifkUjBMs5D1dQ2n++S/SfvaGCMjZR9QCbp2KpYBiIDzklVD+oRjWoBhiai8SAypT8M/aWhs9eKe7vzDhvO0qbehicHpTcBcnJMFGc7M1gBx+thObqR1OA+q8CjZEYiVeyEI1X/061Nxpy3g4eCubcX9u1byvZNn2jARvVhIqjx3tBdwDlsX1zqH64brPv1HXfGCpfs26xz0CFfXbuilaqaMKjw2vS7Nc/tesvBDm4to2GjyupMOP8Wvg8rpRm6RvuWLfTbSVhg6EQe5I+yeCxcpNtWSVOqV4PzLlfKT+sEsxvZ8xB2XlSLeeJ/7gAkblmWth33CyUgAHTDm9iGphceoomKW+NiGRqFeCRJ0P1I1QgMojIyQDMTB6IQ+A20HeK9AUG24qhEmtCoi4+CFzz7dFZhdEMsXwKbzJRV9TeZLWFBgG+xtwhIwAkm4v58ctxACk1BRAnuIBvJ0gll6spcH0Tt/yGiumINTVCm5qigY6q65leYQEiNl05LC9VWghELdXnqZkHu/H1Lm4bJqF+myOJWTVLJrhfySSl5eNnXJZ8kWx4WJJxfUsy9KhTPtt5yi2D9uDdUocQZ4NK9I4qYCiLO/LatlR1hyHatV2cnnk2eHHxm97z/VfT/S/M8G/QkGksqz3v8OzbhLZSMqsnkaDLyD/ijSxLF3nifBpfyphDlXZEiAWmmaamvZt69FdgzhUdfg1/QMNK3rXaCnVtHrYeQKDSmV6Tp44DyLo9CqMQ9SvWc5+WQ94pJiuxcx7zRUYo80LbzBBy+e0EHbF7p4xAkhfVWMJIwfd5zxkE7pM3yEnPgY5P5B76xg6Fye0pBpzOOy6RHi25eF5hOhrbmUqRKklLk0t5wwFo4b7UtDmjrSyWk2daMRyRSb5zJaxBoPuSWmVN8aucBoJmzalHWWpYLA5toUQ7iQKQrtyHbtpIoqkmBB70RbyxT5Fi59gtRbEznsUMFacCU9Hf+vigCQTKsXFVol6P9xFHIS6/24","layer_level":2},{"id":"0ef9b91b-3542-4796-bba1-5036c2e12cac","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导出与导入","description":"data-export-import","prompt":"系统化文档化数据导出与导入功能。详细说明ioexpdlg、ioexpdmsdlg和ioexpsptdlg对话框支持的导出格式(Excel、CSV、TXT、URF)及其对应的实现逻辑。解释IOManager如何协调不同文件操作工具(OperTxtFile、OperUrfFile、excel)完成数据转换与文件生成。描述DialMeasureData中触发导出流程的用户交互路径和DownloadDataProgressDlg提供的进度反馈机制。为用户提供选择导出范围、配置文件命名规则和验证导出完整性的操作说明。为开发者提供新增导出格式(如JSON、PDF)的扩展接口、优化大数据量导出性能的缓冲策略,以及处理文件编码、跨平台换行符等兼容性问题的最佳实践。","parent_id":"e782bc89-0c12-4b91-86f8-98dde91ed07e","order":2,"progress_status":"completed","dependent_files":"cpp/Views/ioexpdlg.cpp,cpp/Views/ioexpdmsdlg.cpp,cpp/Views/ioexpsptdlg.cpp,cpp/Views/DialMeasureData.cpp,cpp/Views/DownloadDataProgressDlg.cpp,h/ioexpdlg.h,h/DialMeasureData.h,h/IOManager.h,cpp/Managers/IOManager.cpp,cpp/Tools/OperTxtFile.cpp,cpp/Tools/OperUrfFile.cpp,cpp/Tools/excel.cpp","gmt_create":"2026-01-04T14:38:50.7205743+08:00","gmt_modified":"2026-01-04T15:42:53.1213108+08:00","raw_data":"WikiEncrypted:tJ25FWc3qLS7BXDXgna8sD7V2a7QKoJFok/Vp7B01VKbqgleB/Pj8e0Q9uvSpYqREzDhKqkkRoEWswjFodhCSo31eY37NDFxv381E11oq1fNrTYgj1Wr+rvQKh4mHWXxCIYqag7VQFbq/sEsVSLon/0UWicyS36OmB//XPM/hMSfHRpMLckU118OTfcgFVBDJHWEbt/Z65x9PtAsRYsH77BEK2PJVz+GSlvtmoCJSRYCR6x9ZDpT6TisYPYFkVyrntEIlsi/sy5h5mGjY8BxF5Ce8nwehcKpwcokmOPGGk+X+BoHpZxiZ3ePWALx4wRsvRc7Kyz1Rrm/mYqQhHOF+8oqcl2VCUHObqZdgPPhO4QReB6PcWbieeEXU06YczIUIkpSXSvD8E5BpEmxIKIdflMvskoWl3pRB7i+mb97xCrMFhYea7Ivkvq6mU0fW0PyVwOTNMbD/Sgqdapa9IzXfaNUvG3UPuT0hsQFUVLSapZe9amTP2Rwj8Aikf4tlXpATpt4zV9yy28edwfl8V1J3rQHO/QpDNdW9iIe/cN033f86LQ1RYVfVQZEbafRg6wZFmCdyAcztDedo1V9lIuutAl5DQI6TGIyrLqq6ooTauD9s5PVjtiRZLaN6CyYhoW1gqjJtUH0bOspqxYcf+7No2XndxIOUZmmAuLlDTO8BwQ9P9o0/5SJrsX35x1h10m/cBKnxCK8kbEPqrB0DOMksPsKI7Avwmn0DRHjxthCEq9I5MOEDkgZdrNgdHbpyKsfZxBbUCJzWgs0k4IvzCeu5h5F292HM4xNk9aaRgCzX3ake8PDbY9oq8fLsLVhSUQtwdaA5UrffRxNZ2SgJSelkZZ7nOj4Dr/m3/HM/gxvUkqXOSXWqj3V7pKFL4W4JYjr57vafUtCPtiiLm4TTCUksnjVXDsWiBvegEgcLruwIo9Mhw8vu/B17vGBTd8oQSZJwKp41qkDNwILxwyK7WRiPDUZNIFIRRBmNgW6SDT9D+3IuC7D5o3NvJlGLto7PdIc8Ym6FD1nTPOPI140NjEI9QLJv9ASeMf/ubiroJr+W6dqQfS+SDwWswzc8HRj19f5GhMHGKxiDu7jNwC+EzY+jKHAzwl00d78cKxugy9b0ajk+zIFGmJwaUFXpqbBT7JCvxs3Yt0MzQCdO67hN4buPeMQAojXsULTAQmW7RCBRK5EgtPrTMdvuiwkC0Gg0nSleqUN5gy66hWZFIIl7ixshdQgutSZxXBvILL2oYSZIKnriNw6E9kYS0BO7MSmkE2f6MismTxwwwo4DeFQBdZtif9HArYNVFmImsFOr9iCJLpllVD1zDlG1zl7zux7m84zsdvuHXHWJBtTvh4cDOg2wkDu03LxndlhkdoX5bLXSS8E7O6sYT0LKaVkpZqV39DWUV6riCnrWMhtbURWVGQECbqrv1sg8q++6gvKV61oP8I1dMO1v3EXKMDTIud/OsEn5JMLntXBNiCq+jysRySLpZ1FMzYp5NjW0ON3wLejPdYHbEzDOvaz08MuOcD5YhZfaLbQsz1t+H4NhdHnPtrynEdscSOp3KJQ/HMSqpSE6GthP+2D8sZpz5S1vYjzzoQ10Nx40G3A0XBQ0VD5GP+aYh2YKnfYSFMUeL+stQT2YGxGZNzwitSiCGFrsulD3YU8BgaNO48UHLuu0xuHgxZlX0+fV0HCYfzsP/fpnEEUlCKzOEmi+95pKQCcOA/OCRn2gfXhX+jaUiCUbc+5uFtR6XsoyP73AfIVmUwWWEp1lX6mGTEd13eaWbeU61kEevIzD8Iuc5gU/vDQk+xBz1nHWsQCvIt58mIvTP2VIMp47SA=","layer_level":2},{"id":"a3dc4344-b70c-4c0a-af7b-1b6a707f1873","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"固件升级","description":"firmware-upgrade","prompt":"全面开发固件升级功能的文档内容。详细描述通过LicenseUpgrade模块触发并执行GD10设备固件升级的完整流程,包括升级准备、文件传输(使用IAP-GD10.bat脚本和FileTransfer组件)、升级执行、校验与重启等阶段。解释GD10OperCmd中定义的升级指令集及其通信协议。说明批处理脚本在调用DFU工具和传递参数中的作用。提供升级失败、中断恢复、版本兼容性等关键问题的处理指南,并结合实际代码片段展示升级状态监控和用户反馈机制。","parent_id":"2436cc10-dec7-4d38-a8e8-fd3c9d859b2a","order":2,"progress_status":"completed","dependent_files":"cpp/Operator/LicenseUpgrade.cpp,h/LicenseUpgrade.h,tools/IAP-GD10.bat,Install/Geomative Studio/tools/IAP-GD10.bat,cpp/Tools/GD10OperCmd.cpp,h/GD10OperCmd.h,cpp/Tools/FileTransfer.cpp,h/FileTransfer.h","gmt_create":"2026-01-04T14:38:58.2975184+08:00","gmt_modified":"2026-01-04T15:42:53.1387383+08:00","raw_data":"WikiEncrypted:8xAKWur484qecUHC6yiBWbN8nbqKXbsGYS1jSzHTfD9LgMRWtfgrtOljTEcid1SqqdAnTW2VBMADdjriMHkCBocrBDoKfVhTcEwQFpst5qRmYDJPeFP8YXWUBO0vBI7ItX19f4/bhlFvbniBccQRSlQqdchnE2qH8HQqi56N12ouCDFHcZHeoZBJJcoCQJ4MIVoVL+PRBGN5lvdXUsW1KQXNLTMsms5EfrKCTO77ISQHso9VY3kdIZTpqPekicuw6vz5kpJeBbyrPz4oQUOB0QcjWCDqtRKvcC8Sr9gaYT9oaf2IwTqMroGf/yFYUTTjhLzPnnNXtqbTjmSjRahIOKj7XuGhKXMc7PCZW2jB6G1ozM+nU27X+e6q8pXIs0/RqXHoScX9+pcUAuaoit45czDAcfoD4vUKhZq0lxbny17RQcvZtRAyb0w6h3JTI7QxRrYFXzBSUKWnoN1wB8urBQ7P8+BIWmtqG6kJhDZ2BCOalW1lk4HERq5TCGwNSffXcL1ha32VgZrCfBDK2OLOSg9Jyr4oIDIr3u313CVro7mGWpEfcSAC7oigYXrLBo3HTxR3pQzN3QaR6WMnvk3R9GOnCrXd3D+WCvLlzP0r7Ye7VIkZ/kuQO6iQSBNG1pG1hh4xFoGXPh7l5hcNoo8Ote+LVuZ+po/iy75rp8A6W2fJwXWJBDE3km3ylk0VSVMJUtABo1pWtP/cPsIhaZXDvVXsogSFCGTMa7Cctxg3SlPi5ljv2wgRDbG4RRwYO/Kszibe44fbHCqpNImCIUXpEOimraSgInO1tVOy3kECbC27COQhYr0h5T/JGW7eCPIiVc8j4sLl1ov8SpkdeCtDCdhnLv2SvguAbrNJCqne2ZYuVfhrkba36RWM84ymxHa4V0Ovov3cukYeZk3ri1In88OQsPfEHBl9vRVm4V/xL6lg0HwPNKmi9pBR1CXY/EAGsJU28gviMxoOMK6dvdfcqVClSG6GqZG8Hkns186EMugAnovoQsOaaK6aFn/pnc+5pXKz6mj3GTaWMCnzoqv+MiSxVVL3LgATqF0Mk1KiUiM+5O7ErjOAmC2BltTFootWwldQF0IQvzDyE87UyUpeVmwxklgKN/0KI839zbQQqBqOhDyJzyDBfd/vm4STTRq9iNEy5hHuRzCahJs25PIHrXEejCt4o2fJN7xyaadvbDcqau5C6BT7GVeQgeR77SOFmtPFPWI8O6g73bD1eMDPZaLri3fMBeWuW5az/r8q4uZVdBUDccNFkJkfXN4i8Oi/K4XxUGoEI8ggaE0YWnq8aPgfgw6B4IrS7kPDOAOe1B8KsMe/kXyjStVq4x64K4zyEWKFnshjzQosN9hsQPJW8m6lNoRWfHqNQzsJUuqZG03+fnX4Bl2YE7B6FYLZL9TDIw5vxc3pOfCbi9hDk86qQQ==","layer_level":2},{"id":"1ab00b5d-b5a8-46d3-9a6e-8a633e05ef6c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"任务配置","description":"task-configuration","prompt":"深入文档化任务配置功能,描述如何在项目上下文中定义和管理测量任务。详细说明任务包(Task Packet)的配置流程,包括通过DialCfgTaskPacket对话框设置任务参数的UI交互逻辑。解释任务与项目、测区之间的关联关系,以及这些关系在dptt数据库表中的存储方式。阐述任务配置数据的验证机制和错误处理策略。分析任务配置如何驱动后续的脚本生成过程,特别是SptManager与ProManager的协作模式。提供任务配置API的使用示例,展示如何通过编程方式创建和修改任务参数。","parent_id":"d9ce7c4b-eb9a-4a34-a88d-17c36c4f5296","order":2,"progress_status":"completed","dependent_files":"cpp/Managers/ProManager.cpp,cpp/Managers/SptManager.cpp,h/ProManager.h,h/SptManager.h,cpp/Views/DialCfgTaskPacket.cpp,h/DialCfgTaskPacket.h","gmt_create":"2026-01-04T14:39:08.0073417+08:00","gmt_modified":"2026-01-04T15:42:54.4963495+08:00","raw_data":"WikiEncrypted:xH3YSuct37KUaeaXXoc86K/WSQpgqsnqS21FsoxBWPXNL8u43sUi9RPs1LE4rkG82ilgcSoIASYZ3JEmmr0yFDZEr36SdCpPr3NmnhorrZ/2wFcfsqoV5N8vbCTwsvIhtzOjYCTHlIUHlIp8MonS4t0ebhD68acMEoNkcuCkwOjtaBQM/lVi1puLdkVWLr4OM7n6Pr3R1C5Iv0sgE/UY94bJuqxpau4tVjlDJsaK0ElKqy+bcaTz9rTulSE4TnZzAGKEiTrgFEWEz2v0Dlxf7WqJ130dxjYatlkhTepGoAa2WoAPb3hCIMgVbjhH+uRXqKv9TTg/7ELj6Mjo9/cOwEtYjpwm7Q80caall20ooAaew3KutsAnwnDi8jKytsFcL1hqSBjEItEW6iWbkEIRIy9WR9vbFQNPGAfEoSk8kSHhwg/CVN9fmP7CroCgUdpwExVykLo7GHmIQmd6ypdwON+2VItVuBh5BCHxDjWwsX3BHeFADMjNLqIW+PUE8xP3V/gjC80DqyWNBQGvCQtxZISeI66EKM85wBQhmVWBqelVd/TR3RZXvB5EDHfu2r/h7apeV8WLH3bolko9e+PY4RhUnyCXVVhlHQK6HrvhgTn64Q6AaoyrP3N9WZggKQV0b5wlR7TNPu2FlwfbS8b8xqDMAeChc8HYiqktH9Lft6XsohWvIHr8P7yLS4MqwW3P1IUiz0YGI1bKeu3nRpMwAU6GNJtSomDcmkx1l91/E9aa1hn7I664JJB1NvPn5Gi+yJhxQqpmWPUT4TLkaISE/3u6TS5klLD5xJBZs08h9Bak16/clnjA0TjXjYVB84nnEU6mdefPgK3Yjt0W62P1XJLgMTuX4cIMgMmRcKOBx0BPsiRGvoRxnNzna2Urnok58yS3zVbaYV1YRIbxkWKph4DPuKHKxKsLBxFLZMOSDgEcYFaMxO85tx7+KXEoHkD+Fd7cat/15X08MR2YJVH49j/nfsou/uqibyFifwmLTjQJFzo5TnHWnybAheoojlr4wm5wLvzmYCsm4yIvRj3pZzD6c3huTTDRNpuFDV7rK+9k6mWh1O0u2p/4ugBL28GanTIzsE5/aiw+sRbwWp07FZ93zmr6FWn26icgD4JXteUQ6CqZhZlvYkXWXMofdxCP59pQtvKeDm1fkQo6vAReedQEIBOEdxdsU8qDElsS3Y7rBDgbwDv0XlLU4WPeZITxeqtrDUf0PygrrcaboWp9nqbh26rytUx4elVtyFYKtJ/uYo2FKYALSN0h6+o07+nSJFUxYJrksJsQLWbp7rGDDtcpRLGBIk+So4ONqmmZb9qzs46ydX8d4N2KBuN0DW7LMyeubHVsl+BjJBG3HLHv6rdtzraRaCOXkADoA5gqn9vRoako/Nnj+OVd3WexE4+/","layer_level":2},{"id":"42290843-3a35-48d7-9e27-35e71442dc7c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导出","description":"data-export","prompt":"全面文档化测试数据导出功能的实现。详细说明CTdManager和CIOManager协同工作将测试数据导出为Excel、CSV、TXT、URF等多种格式的技术细节。解释Excel导出功能中使用excel.cpp类库的操作流程,包括工作簿创建、单元格格式设置、公式应用和样式配置。描述不同导出格式的数据结构映射规则,以及用户自定义导出选项(如字段选择、时间范围、单位系统)的处理逻辑。提供导出过程中的进度反馈机制、错误处理策略和大文件生成的内存优化方案。","parent_id":"e2aa8d47-2019-4a51-8646-685c9019c17b","order":2,"progress_status":"completed","dependent_files":"cpp/Managers/TdManager.cpp,cpp/Managers/IOManager.cpp,cpp/Tools/excel.cpp,h/TdManager.h,h/IOManager.h,h/excel.h","gmt_create":"2026-01-04T14:39:10.9510124+08:00","gmt_modified":"2026-01-04T16:55:07.901541+08:00","raw_data":"WikiEncrypted:tJ25FWc3qLS7BXDXgna8sLPBrd0hfSSRBk+6cPbGhrpHw250whBoIi/CZ3jtD6OMyYp0CFNkKRarAxNt59sHGvFghn09nvAT6N8YtMNmVeZtJ23T6Y2pPI0JVfAfnPhPyUOFQMe7cknLin7AonMQXFdMVxBAxbKSegRuWBK3cnW+fCDutd+9xSGqrTpZ3IV3B8HSCCW+PxtaJg9vdmYT1+izZZjAVNDr2VWNElG+D+ePa+pF3tP6ZVxvA3QneZCKnCGIZBl7WHVMX1ZF3TnYL5mWmKcoV0JKV2Z9WEgqDOtVbdPju5dpXi8BGAXjPnAuvmMu1AQcZp7Y8grTGRgMaTgTwDrMw413TEMU/3LnqhghFSgzsCEYD7ljO6eNS7PSoSm5IxLPZCm1MKFMYuguc/gOEt+2NlcOy31eWFpG1BVCYRA/Z+tfJPW9Sm2C7oZHsbzYegwRFEQk0mOCx9GnZkUwnmx29jRvZYNCqXpLh0SrWLxmBtxptTkzIja3q5KWeMzHm2P8WQaF8aqhbVp7V/W6Jt25gYPNONxVphSldNPxgSYiMePmJ+QLOL9vjerFnYlHzylrMwM/5BfeH/CZgO5b5E9z1UPRSSIVzB2JgTxLLkgq8q1d2fuADjla25GeEsrolmnT2XEr0A0lXZcf8jG4KZIXEIwzTpsUNBQCBFAO1+J620h7EYeeYEMLwHtujBihrV1mxy7Uy9ygqu0iGMIAcKJpJvKOcHm7/BL/cH+WuKtkkT67Z9bMSDxGeTfHKQf+TqkPEmgnOUfIldKl9HILjKf/VrIdIicZ+YlpsI3ZojC1QTjkzcDQl+IqnRT+NlTE04nG/yQADBmmAwsCkPbW77vY9A8z/gTLrAueoSXp1D8CJioFcGnMeVdxkfJat+MiZMyAwQpsnSZer7APxNA0eRUYPIaXzfXsqP+vjzxjVViUC1NspgzZhm6gVCFJjjR52Ogtl/lenfAQyGIQ54uQNppVkTS6LLvqawqFKUOOxGIMPxoUPLVlL85RheKKTiNXuOQLY1hL216+EDZx1OTC2Rdc7hVbs+/TyZraFeeB98BbTe2NNXUynnWLK/uqGuVFFt8zMlClvFuHzMeJC5Fj3qFYRNJqKFOhu9zKsvo2xW7b+rsEiiqzxpIzqIOuF8+ZHGSo6mXeH0ALA+xNHSvjOKlLP8IrLZuvLzHpT100s+xQk9Jb+dwdbam75giEETOWPkZRnRq2WengUHXGkEQtFqpk7gMcj5J956jOi0A=","layer_level":2},{"id":"34f4ca41-d0b5-4763-bcf4-dbce99db60af","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"跨孔测量脚本","description":"cross-hole-script","prompt":"全面文档化跨孔测量脚本的生成与管理。详细说明CCrossHoleConfig2DMainDlg和CCrossHoleConfig3DMainDlg对话框如何配置钻孔位置、电极间距和测量模式。解释MediumCrossHoleGeomative类的双孔/多孔电极布局算法和跨孔测量序列生成逻辑。描述跨孔脚本特有的XML结构元素,如钻孔坐标、电极深度和穿透测量路径。提供从钻孔配置到脚本验证的完整工作流程示例,包括孔间距离校验和测量路径冲突检测。分析跨孔脚本与普通2D/3D脚本的差异,以及在水文地质调查中的典型应用场景。文档需包含跨孔测量数据采集的特殊要求和优化建议。","parent_id":"f9b14c41-cd08-4332-9260-515b5e630379","order":2,"progress_status":"completed","dependent_files":"cpp/Managers/SptManager.cpp,cpp/crossHole/CCrossHoleConfig*.cpp,cpp/ProblemZone/MediumCrossHole*.cpp,h/crossHole/CCrossHoleConfig*.h,h/SptManager.h,cpp/Views/OpCreateSptDlg.cpp","gmt_create":"2026-01-04T14:39:14.9830763+08:00","gmt_modified":"2026-01-04T16:56:44.3151951+08:00","raw_data":"WikiEncrypted:2GoRefXUXXQ3Xwp7OyY9nuZ0Uqmww2mmehYSUx6B8Pf1Ee1xADDzse0DhNV9atacwR+KcQToIWmNKa35g0NE/l6VrUbxIV/ciA0Gs3MTOkNL0Q1WJxMXp945ha8q1DaEwJ/k6av7axZX1CXfj/brkh3PZ6sNMLKJsBFIaJrBmrmWfjwZk/Mg0l1G2nkUD+S7vGD2x2jeP03xg6y6HVktgNldzfTeF/byWd7iqo90Yi8PIZSbFBhTEM0RqcaY0I8RPppID14jqj17ZlRSd/ryA4pNkd+fkFIX+Hq84zlx5FmC3phVeMfdr4T03CC5jX7C+ExmudmbQtr6Kj+qc9yI+8FaE7ydbr+QgdAGhsFFWRFmuZWbWKY+yPY4g/Kf+NPPLXvpm5ZMEkdCXH/PAiLNwmMPmaYbZYuLO4Xu9z3vBzzPV4KEzF3dHhLa3BHK2DcRBZlJdJf03e26Neif1eIiUleLSuPg5VXuHn+QjvUTUXarnX8iRYfJcwaYQibZxAYyIZWOSkL/6R5VK5Ljijlxlwa4j61ig2P9bc7c+d7D252Tq52tePNzvU3FjoLAaT2Em0CKUVjl+8FIns3oiBvHJZ/YUre6+5Fk0+n2eY5v+11XP7kyUiBG86Gl+nbsej0nWwikDOX+uPLmdeDJLuseET7VcKo1ZIAf/VwosLcQf6XWDr6eKS7F8cwETnBVGG9LkaZ3E2o1EEMe6ffjcJWN91oiClmK24lPlzCHh/saqnrj88KcLXz9PBDI0ImvTS0CtelkBAvvNGdgEaLhTMbMaixiDRdLPLtRxn9y2hvhg6M3j9JFrFYDYyx07XS2Z6C0+eRF0/mtkTcCQfzrSEsiroa540o91/RlfkH5vlv4m/CLhfQoc+iZwQxMFVfeK6uKaUt4m8RXQctNm+zAXp3FUSj/el8AGwDcnTkbwEnLUYeejsucI6MrRbJ6+u+0WdqQB3za9ZI/HPLuCcT61ZglWgnd3wc3ctQqNDpRm+HeEgKNKe3DDV+n4+KGanoooeS17WS3aMQCIXbW3AeDIZw45RPjla1lRKLZ7KkUW4BVoAMSIRsxi+bz34Ga9IJWpKqeFN5O4Zdel+NqMupfflU8gKm0mdn9cn+U9MvmQXoaLt3eIN1i6b7fnWdSGG9WDH+dieSsSXMyA5fyfNqtBJbzz24HsiRnHFNG7C07fHC0fRvHCEMzhuRlSU1zyzmVGzwgENu3BpAAcWgwhK30Si732Pg4UqZMpm6ZGWppp4t4X30U77jD9OuSKbruxfY5iULi9VIoU4LCigsPcfJgvl2qAP6mpAZlyg0FEtoTwZDTfj+lWRviMrv6PfCmcmE03pPg4SlJy1crLngvYg75FG5ZDM1AoGlTVsFRXn9bvO97uI5RCR2ouM7s4zLcihEQBBYxkhEwl794pE1J5htv9TysxuGo2m0a5MZVZ8yAXoenw049YA2v6vvhacBGQUtNrct9IwEL4El822dGzW7Jn62meOuDjVVvUar4Fu2SvteDS64=","layer_level":2},{"id":"03d32a4f-1482-4812-8f70-a1d4563db8df","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"文件传输协议","description":"file-transfer-protocol","prompt":"详细文档化基于libcurl的文件传输协议实现。说明CFileTransfer_crul类如何封装HTTP/HTTPS文件下载功能,包括连接超时设置、进度回调、错误处理等特性。解释DownloadFile方法的执行流程,从URL验证到文件写入的完整过程。描述WriteToFile回调函数如何实现数据流式写入和完整性校验。阐述支持HTTPS但不支持SSL证书验证的安全策略。提供传输日志记录机制的实现细节,包括LOG\\filetrans_crul_log.txt的生成和格式。说明GetUrlResConValild函数如何通过HEAD请求验证资源可用性。","parent_id":"024d6bd7-96da-467e-b99b-38a2ad0e825a","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/FileTransfer_crul.cpp,cpp/Tools/FileTransfer.cpp,h/curl/curl.h","gmt_create":"2026-01-04T14:39:33.1045162+08:00","gmt_modified":"2026-01-04T15:45:54.2597852+08:00","raw_data":"WikiEncrypted:9rOj8iHuvCG7aY0HSuBL9G2jLtpmbv+K6p4MG8y2F8N83+1h2YytIuT1XjaCsJBwaFb+fZjp2peuGFM2VA5dUu5LgxxlKeEE6Adgl0IrHdpUifEAKyCM9GV2l6UBGg6dgxrd5nIVeQWyVyKsgG9FX8R4IgiN/2YSbjXtOWc3uED9/vKNdqjnlklDx9i/bm7y/mv/1qXCSCX78SWKpzbGvUqWK6u0bUqZNZjlFdab50/dyyrNI3IvdK9N7A2NC9hqPONcL2taJ1rMIQHee5umDIBJDjhCPsDa3lPkgDwC7ZSux2VK/opDVYra4qDAV9dQWgViZO2DfrMzbKmSmbCCjDeIGUeFC9etBqRaKXeZXrBSh8t8nDjhzEDPn0YO+Arl/qlchvmCW+ltEtiv3hUgAf0p5BSIbcu01AVnoUHZrvOy37OeznoU0I1N4taNDHyJ+d06H41051Go9ngar1GEfv/nq8TxtzseBFEMrM7VoGyanfjusOwYcZvvxYrWXelHXJ5IUETj9j/S70f72+9Miq0BSpiInvdNhv1jlEyGoewU/DFQ2Rm8++exy5r5LRFLV4QpQNKlnQx7eiJQ99O/ocAv7UuoRsRSxh3iYerMrqX2omEGn7Lc+vF573V1IyFa6gaK8QejV8sTN5gQx/hTDVUu3TRQnUprlwL0H2Pe/JMTOGAumL1kiV4Qxgt6uqSzu73K7Pfov2uy4HWp1sFr5EPaogiWV1hCCMwHRFOecSEYuy0YPXItiTkVa1ykofldZ8lFPoSsrAHdoe8JSmIk14CzU4EnR33WDSQhNTELWzESPyz1ZeqE8po6JryQqqMH9LDQj2dLs9Xgt1T5cPNyl55OBPyBW4acukcr8QeIMz01CWIQTlVdNoweKLnoxlZIQLJfHHVNSeRnXq6vezWizEKSrPf+93Ubo4A6wGigRqY5H6nn6vbtdQeuhtxtbaKgzNq2VBYkR571KnVlFPXajpj5AUpIsxvEAXQci2+bCgM7HW5c6xysekw6gdLbpx4SeqFW2X6Oad4CtHlBHfJMDJQ2Ggx4pHl9G3VhyIs/mQJmUVtVPQ/px3LMOlcFcGfwh7BqpWjPi4ERPG6JdN2elSMhK5K8Zsj35PagEqFuMVDJTebYNbeNCQzUwM5O/zS/D8lcGSobpqNkcbebFV4M2ZyQG8tKcBtOY10zGlm684MlIVeNmwd56mxguVGeNfUHTcc+hH+5BhGPTPz5KuZOpDANCNYI11mMlAuyb4Xyxnmg8hk0cRykCa1K0vSNSWNM","layer_level":2},{"id":"4725972e-5b6b-4bc2-9474-b2fa3d2bfb2f","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"观察者模式","description":"observer-pattern","prompt":"系统阐述MFC消息映射机制如何实现观察者模式。重点分析DECLARE_MESSAGE_MAP宏和AFX_MSG消息处理机制,说明UI组件如何通过消息映射注册对特定事件的兴趣。详细解释自定义消息WM_SCHEDULE和WM_REFRESH的定义与使用场景,描述消息发送(PostMessage/SendMessage)与处理流程,展示组件间如何实现松耦合通信。结合MainFrm、DevMngFrame等类的实际消息处理函数,说明观察者模式在界面刷新和任务调度中的应用,并讨论其线程安全性和性能影响。","parent_id":"cb10c152-afc1-4cc3-946a-3f100ebea9e2","order":2,"progress_status":"completed","dependent_files":"h/GeoMative.h,h/Constant.h","gmt_create":"2026-01-04T14:39:38.6001822+08:00","gmt_modified":"2026-01-04T16:56:28.6327429+08:00","raw_data":"WikiEncrypted:NHF5QhyRnk0exXzMU2dBwKa0isNFDH7Spvk8wmSV1+g3sM22ObbpoN7RmfrZmj5I+NRjNMpm/Ex/dCRgOC9XgyMbiebJ2VP0/KfKzrZ225tJ3boaWhYwuYoSmghV7UwhOrEYTTkGPP6Wn+5yFPmiP3PfvRvA2te2EGs6/XuJaRenOxQgYF/VNx+6lTocK1dIUPV1iOAoToLPnaXYmPTSPmwo5pwno6xZuxI0qghvqWm17GIF8vMB24yRCoENOE+J/qHXVFiguksRGeSYSJBz96Gi6qdOZgmf+l5WEm2c4UmX15TN0uXYAC5e0aRL4sZT7M+4tW0Vch8PNtno0CZ+FVqKOt8/MTVm3qjuVHdKL5BMQCf8FPggoKeKPUg4G23cBhB0ISEUGCjyXc1OxmBKQHsXP5NzYe0n3SCTxkf24TOJBMovC0Y8hhfU+MHKRBgAl0NYBSBoK+sNvmmrWt2jQh7sCrjAINreYTmkwam/e145fdf8cLIOb1zA5tNRYm2yR7drlAbyefA9kz0CGcIB0Ju21zrP4BXTYrmEPdpmf2TEVj08jCVRDVXTcW8OLGCUF5sCbzD7iTVNctYSbHG5lgQlLYiR/R5QCbVJTfuhL2GvcUQqwmfDdrJVr7uEU3V0gF1Fv1SHyZwqjSslm87ATlkBNXffMXU46KUBYpMz31xEfLBczZQbRkYl+YhCWR+TDZONocRU0hbddwtZiVHg2rC1+fz9rQRn3HzUB9tPf3c4CUxNnoD/B7biDHsSmS6lpEAr6pPexbf0dfnwX4gSrcADFnixDS/56Lm7C7O5s+gym35UDypR1excCPxiJsqUKv0i9AcLO6e+f+2T5QFx93PHDnpq93FUD856/AUauO1A7GNWSPMoOTge/6p9mg7bCdi0sfVMEXu1npSwVztn6l57+hvBTRyuu1BbxBzxMxao7E5wS8QhoID7AK6f4JuaIo/luzp8000I2R0ARBmEQW3NREar1A6kJlnKD94FLRYvTF9wdfacXy/7r3CIoBDBMMB6pyePGQfpOkhM+4TvZxUSmYWWhFHBa2A58ZmjgnaJJT2BO5wDpt9B/0W//oIUwypmczk3adxauJywCxYX2dO/0Ubo/eUgsa86zlhXEbfy9/lEz1EP0sD2j2dIgjKa","layer_level":2},{"id":"227e9457-67a7-419c-bd67-47327f71a1f3","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Operator模块","description":"operator-module","prompt":"创建全面的内容,重点介绍Operator模块中各类操作器的实现。详细说明DataOperator如何处理数据读写操作,DetcGD10Dev如何检测GD10设备连接,DevOperator如何执行设备相关操作,SptOperator如何处理脚本操作,ExecOperator如何执行测量任务,SynOperator如何处理同步操作。分析InputPasswordDial和DialCustomSptInput等对话框操作器的用户交互实现,以及UpdateDataBase如何处理数据库升级。提供操作器与管理器之间的调用关系示例,如SptManager如何调用SptOperator执行具体的脚本生成操作,展示操作器在业务流程中的具体作用。","parent_id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","order":2,"progress_status":"completed","dependent_files":"cpp/Operator/DataOperator.cpp,cpp/Operator/DetcGD10Dev.cpp,cpp/Operator/DevOperator.cpp,cpp/Operator/DialCustomSptInput.cpp,cpp/Operator/ExecOperator.cpp,cpp/Operator/InputPasswordDial.cpp,cpp/Operator/LicenseUpgrade.cpp,cpp/Operator/OperMediumPt.cpp,cpp/Operator/SptOperator.cpp,cpp/Operator/SynOperator.cpp,cpp/Operator/TaskDataOper.cpp,cpp/Operator/UpdateDataBase.cpp,cpp/Operator/delelectrode.cpp,h/DataOperator.h,h/DetcGD10Dev.h,h/DevOperator.h,h/DialCustomSptInput.h,h/ExecOperator.h,h/InputPasswordDial.h,h/LicenseUpgrade.h,h/OperMediumPt.h,h/SptOperator.h,h/SynOperator.h,h/TaskDataOper.h,h/UpdateDataBase.h,h/delelectrode.h","gmt_create":"2026-01-04T14:39:49.5829686+08:00","gmt_modified":"2026-01-04T16:58:55.6983468+08:00","raw_data":"WikiEncrypted:WmYz76ZuIeWtQgFK+sghtXRMxXSQYI6XKf4NjG3QzuJSbX37olIKZIz4bn0CYhLqjGFZZzYVX0QQsYXXvryDyo8goWIXJF6OD5250HtVTZqnDRvevZuwpWcMzyD7RRujdoCBV0FUb74Ws8LwXN1Vj581iqoE0ewshjg2Md2gKxBz2R5wiSsYf11TjiwxZ++Cfvk+Cw6re2+NRxeQUwsu2q4s/18pdNTZb3jgoEHaEEzrlgnD/swcmWqhCvXTnbFhSzHmMcBmUfQpS4i5EXwOs5SO35qf4YwQYvF30+wrxmdHbBGJ/P1aagEiDI+qzwcSFAOt+29P83NfWNbVrPC5J/iROE39A1t6BWixqhJltD5GFQWBuRMAMY40PgoYZzuDEdaBDbKT2NRGzxZ7CfslvU7bjS6D5af05iNrLEP5HRq+WJGAD5zhg+W1wSIyQcT2xgdHWC45GPwKbjFG7WPPMyLcbDBE4N8UK+fMcu8AITv2OcU0BiHauBUrkned95VTxEaZC20RS3wj2Mdc+vQa4On5E62IwpxR76T3YtU4nmBk6JWMN99toP/3QoCfKyGWNY9ehB5BxM15UerSuG8Y0MLfsQhR/t8AkhNX/hsSsvkcCBAVWQyN8pzmjsE5lgwCX+TOLu38amMmwFguMEmTxN1E/W9qO6xfpDGz0gdLLa5APJdkIULRjDfeCeQKLxKtxcAHpXG+BpEma3URTRItk1vjiJoRBWAkMNdaDp581MX7P6yrWjzhiQDUBl8IaInGE0BET8/thhmxHmxuQNqV088oV8S0USavmRb7dQGA7Lz8Z6aLyuXNY5XGIH+FBmqFZYHWhWjlacO2fusBP56zlZ5A3jV7KvTxSEXcN6wtakyVcbVp7DknR6D/ALeYgA3OLF/uUXjRUg+PiXfWFTaCoBynJqwX7S/wL9RZnchv3U+a3PUr5xOJBiQUXgjJ9+tWrBx+EuD89yPQ/0qWPiyBj1AldPjSu6ZkFnIX9VhSF2N14R6kPQ38Pi1Qp3gVLRhdFm2/ujOxhzB38b/XIYhvz1S3NjeE7cb6nYL9om23hV2czrogHkM0LpcAwyy1WHlJhxb3Teo74/KDJbWkZy1jbVu5NswuBKYJY/CbQdIx16z+c/0biAgoLCvGevXMiPUoT8ebNFqUt6N/D5nil+iBTzqve/+/UKv95bMoEpXN6c1F510aJUjuxEt1YKmwjcw7jSvfs8QSnoB5oF4gFD8scgEN6u4EOvRJsUDv9CyS0cZIiKqO/whx2yg4lxQKrTCk3JngabJua+9mB27xpm3S/YVd40BR7V4rWuFGqTkZu15sW/mmtjrsTgzbqNhsv112FDYM3pzwHxzPR3lJbwfs1rQatod1lFUH7WuMJR7QsjOIjo8xe8TjL45Pf0uqAARBWSDGHjElRr6y96FN6T10+g25ARm59zDN9cpv+xQxzzkECtfNKf93XR3gxOE8crIv9lu8c0E60qFLczkKvXiS0lFTozKcPKXoOAQr/myIDubCGNR9KMyuej8HHZVQrZlDpJIzMdU6zfqxvHlYbMifxYJKh0X1fD4WqRrO3uHxtv0f8IYHd0rXrZaRDNs7C3X7+mBY53GoJXcaB9MSLGCxTvv4wclHysDQwDvuOIvNFQ6jfWzqpFBA2rPj9N3hbW9To+NcBwnTXo/J23nx2gxwLuoX6SR/MX1N4/fGitkis+bB4BytGRqqevG1wJDtEnpIhRx0StdYXB0iUIHz8S9Gw0CP9qm8YcgqE2YWS9z1oNjrcDZ1NZkqqvLlU9njPT6AkzV2plOBrUcBet63T1ZsnIHlu5/1q5/MCLvpdyci1UlAIW/9cJF0CTkzD57rbXBmy1Tb8VwNnfQ5sijMtrCofE5k3LP2QcnTkbfgS84V8dLofqZFb2IySElLTbXg667+jH91ZAZS07BZoHSA5e/ZNc0nufXVwyF52HFrIxV1wrDKP1ram0KK7Ea3fvK2liFitk9CMRjl6Abtk6ry3gOCSr01PzIpmZIQXUdC3g+yFP97grp1QhjoD13WcXOJ4fStSgaHIqsukDkHsakNTUcxA9NdUz0vW7lNPfLB4gEcBcRJV3Flrj8rFd49PayiS55VaXhSvQQCdOwTFQTM/vlR1l85Kl/NJeYlXufPRKKqcbDmz+qFJ8ey7yd8e0KR7Qc+3H0Y6H4NPhvv2UyVlQZUCZDVhdb3ARJQHdOxG0w95NA=","layer_level":2},{"id":"abbab480-8055-4da2-8e2e-664abf629716","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"设备交互工具","description":"device-interaction-tools","prompt":"系统化记录GeomativeStudio与外部设备交互的工具组件。重点分析GD10OperCmd.cpp中定义的GD10设备通信指令集,包括命令格式、参数编码和响应解析机制;NetWorkOper.cpp实现的网络设备发现、状态查询和远程控制功能;OperPLC.cpp对PLC设备的读写操作封装。阐述HandleProcessor.cpp和StateProcessor.cpp在设备状态机管理、消息分发和事件处理中的作用,TransferCtrl.cpp对数据传输过程的流量控制与状态监控。提供设备连接初始化、参数配置、实时监控等典型交互流程的代码示例,并说明超时处理、指令重发和状态同步的最佳实践。","parent_id":"032e9cba-65a0-45f6-a932-d0cc7e0b2908","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/GD10OperCmd.cpp,cpp/Tools/NetWorkOper.cpp,cpp/Tools/OperPLC.cpp,cpp/Tools/HandleProcessor.cpp,cpp/Tools/StateProcessor.cpp,cpp/Tools/TransferCtrl.cpp","gmt_create":"2026-01-04T14:39:58.7431366+08:00","gmt_modified":"2026-01-04T16:59:08.7497823+08:00","raw_data":"WikiEncrypted:W4RZ6LTz4rg+RteR0TdbvFYj9rjr6y67Cs2BAQJrmnHKfARKLDYc0wWhhU0FfVXUvI3XUX5ouBnuknt8zSshCrebSwyEosSvC7jr+F6dSV3kHi5IJBbMa10oSXZ0nK88xbDB50FDnweAjq4t9aNnpN4Ve3BUtWdJbn74F8vQZ7R/4Q+7P3eLhufQqEIY1HvDN7kSjH2enH5tBYGpmTEOpoiHDtP2rOOgUy6qFkd65/VSso0MOuYJCyIvyPgrLNmUkihWBN3gxOZLbVWDRFc/TPSrpoTC8YXIklE79R+lwVvDMcOdPVv5HGbKZZL37Eyu0XI1ruNFobyiw/afD+A9QzEmzA20BCvdgPMsl349/5yTVTsWRmVm0/3oncTDGOhLnRNgcewB32ylwlLqrOUjUmYvUgadXcc6skxCBt8lqhptAXcx7DFSdgppWYNPyMxuxcKQfz1Uu62Is0diQXgd5w4w3H1n1MlHKxB4oVVA/VNA4k6SmIIF0Zh0/O7QfNKwc1AC6QfmOHMoTlnE0FnAYD7+ZSm2MAJRbXMQsgQTLigF/EtIeNQ5oA4eIZXEDmKn9EqadrXErGbFBNpz6xn1FUJCX8BlEEGvsxscd0zhVh0YEwMrAgeX+qi7qHehFIJ3mNIRO0oG2YyYwjywlGSVLaFk88ehxCIo8eqG62rACx+2bKoubHT+POB0wJGwCr9jq+16SQkHxD8mW5CsnQw1X5HG1fuob5a3Tftz6JSQTEG3OM8fwUnQAtSz83ma+dK2MV0l079OYmAWc3/9b/mXbzrw7fapz5OIbt2dmG4pyTOxvqB7sGpkrCm+CsSgO2qEIS9tG2CRsNnEJHiDblaun9vAohc7svWGvv3rE8FNm1Qsn/BdQgJDfiyXicJrTMk5cijIrmaUio/9PEcTXz5AkvuMZFj72LffBSt9wmS5LB/iXTLDniDtxt4KMcIeH5XaKQ/RNmqqk1aDzF6YofVFx8w8lnwvEg9PLFoqHy1PNUoC50ay31X7ruykEq5tSJyD3QGqeIPlOBpp1FBztEkY9RdO2Lej4F39JR58JoRJi2LxzCf0NlUjxbZwPM4wg4oNhFgPUrMwOBcyCKvTEQs5cM8AyuvmkF3rx3uq/V6mhUKa/afOI4/R1TU8Hhi+o21zyynKE8apJXCy8L/VS3ZOgadya5YqIMFHXO3+Qwj8+lkTZRj8ghgzesYZYL74eM+nQC7OQ7HDDSuyDhNLv+HQLQeLVrLFHrzQeprXsYEu1RSFmik+nz9c3qJMAdQ0jxpvivyxQmR+K6hAP0s1qgDvQMtf3W2Vd9o+rdvukMvual5+OhXgnPanZcl2zrQw09xs74HV+g/F576HTHE7pf4slH3MlMT+w9cjvw7q86arcdLDHYk2IKGOdlHlSsanEGvbudHbQMOZc9BDAz1WzL2S18YRMPt7DgRNa90swmGbX0LbcgjzgBb21/KPu1UWoAeeQN4yQlVnaLH/sQOBpQizzpYwYlr6Lk7eacEULf4z/ylgyh81oegKmv1/QAo9TNrZ","layer_level":2},{"id":"605c5df0-0421-4743-be73-6e1f8c7614b6","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"3D项目创建","description":"3d-project-creation","prompt":"深入文档化3D项目创建流程,重点描述三维网格信息(X/Y方向电极数量)、电极步长、电极间距等特有参数的配置。解释DialNew3DTask对话框如何根据选定的测试脚本自动计算并显示网格尺寸信息。说明电缆布线方式在三维测量中的特殊要求,以及发射周期、迭代次数等通用参数的继承与适配。阐述三维测量任务参数结构体(STTaskParam)与数据库存储的映射关系,以及任务创建成功后的ID返回机制。","parent_id":"adccf077-cfc2-4277-a027-327a9fee6508","order":2,"progress_status":"completed","dependent_files":"cpp/Views/DialNew3DTask.cpp,h/DialNew3DTask.h","gmt_create":"2026-01-04T14:40:09.0931444+08:00","gmt_modified":"2026-01-04T17:11:57.8696122+08:00","raw_data":"WikiEncrypted:aoCIZ2pRgAr9LCJFnR8EyycDzGghYapLBAWwDXZoWsBsRJhI4hf/Zu+lAK1R198ATS7uC+qWKVMYWMz1oeSWfqPM8pNu2QwueeuM0uiaECuhZ3/d2Be0GAXP+ouUAfvvGFxY9x2uwJJpc3KZae2f9aFoPUOvxdxh5i6euJZXPUqpF65QmfXERkpTZ+Lrq5Onxqw5cYjV84U9+Lz4Y/M8Kt+EuX+2tVn3Ue8S/iMhClIjVuKB5lJMGI2FI7c4m85ojnVo/qD/rO70rjwTaI5Z6Y40QL5zWJW4vuEPT+ziAf3Vz7D4xoAZ4qEHFJKKZJ1ETqc0UqTl43+LypbpFNCGBeyQ/vZGmdzvzlLk7xTi8V1IS5UbmVnYCn+mFES3jTdLO9f7gG10b0VZhHuuqTofUXy+X/XS0NUVLdrjyYtuMjwmaUvjKQkickIYQETJml63uqArrpRN1t9fppKVtMeeg8sZAiiNewEG71eVrGNAmGij4idQSrRBcpUVQgkqK9hafwWCD5uGUV9wsTEALwAZYLGvqJ9clKoSi3NDZP8d973mEYiTsWfPt002Xj1OuxaDlH3OOcvXS6Vm9n5SBE34GnnoIqcrjZyZUkgHW/2BKIWwKIQ+/U+0avote49jyIggE+d0FQCtZ2mxuNl3T09OjBSDgFwF4sCbQ1K1eVVn+ssDTVQB4AAhrqyLv9ngEvrwKNsgSV/7MdAx6iO06rL9bAqVXKi8CODMqPJC3yc8eCkqvcaBRpz5TJh3xu1uc1dFQje1y3Xd/Ij1RyCLz+0cZD2yzj0TjstpCBSBg1itwX+yn/eo5yPHx39LqcBAC2YD+4OLHmdmAqdem2eSBnbwSHnI/BIeDSI+M+emOyAeOa7ip7MkZHgMstXtX36tOgDKErh3dRpK8BI3kQR34QzDtLP9ELKludxU1PDZ68IlhTTtkttwx7P6GRdIJTVQgxP5PWIB+ZvSNxbXxv5gF3PAIlfg4yPH6HXiX7Sbtwc/hBcHAMFkcZa8tuMr7mOpK3afCvMVRZxpKuhuEnrpXbRmJ4pYnTB2QzLkrCvcKlH2jvwrBf8tvR9hzEV0Qsz8+F+L","layer_level":3},{"id":"029948f3-657d-4fa6-8947-d1f8a937d9d7","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"循环任务管理","description":"loop-task-management","prompt":"系统化文档化循环任务管理功能,包括任务查询(DialLoopTaskQuery)、任务管理(DialManageLoopTask)和任务上传(DialUploadLoopTask)三个核心环节。描述循环任务的生命周期管理,从创建、编辑、删除到批量上传的完整流程。为开发者解析任务队列的数据结构设计、内存管理策略以及与设备端的同步机制。详细说明循环任务与PLC状态监控的集成逻辑,以及任务执行过程中的异常处理和数据完整性保障措施。","parent_id":"a6014b21-ae38-490b-9031-ac94683020c4","order":2,"progress_status":"completed","dependent_files":"cpp/Views/DialLoopTaskQuery.cpp,cpp/Views/DialManageLoopTask.cpp,cpp/Views/DialUploadLoopTask.cpp,h/DialLoopTaskQuery.h,h/DialManageLoopTask.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h","gmt_create":"2026-01-04T14:40:10.5263872+08:00","gmt_modified":"2026-01-04T17:12:46.0115652+08:00","raw_data":"WikiEncrypted:o+yBb4vjz+0bpqRqEZ2fyTx7JRjrKcNdCBLTb6ghD2LpMjECbw5yhjgjeFbC+XMl7QO5Fc0MCiV3iAfdFT2ZKjOxle+P1gOkGwgSR9srxtgeLjKl9Pw4zB4aJua4PYXYGUIqB0bz0YWk5cOuPGqsda8tBg9y1kGkLEwOnJSnnnOAjEsQrRkLFN/Laoqd16qZz0VzMo4x/KodkTppzzmS6OxmeCBFlmLCTjtjsJVAvOifXIaAEAL0+HUGLRn5lOz/pEjwhLDJ+2tTQJODVERVZ93RE07YiK9dIPD53rYw07GcnFnYaA+RQ/KXAEQwRbzGbCyIeR4Hk4vFM68vkVCO3IGUzBbc3Ottu5I4i3cnfvkLdIopezuU8OkbqZIEmwHHKTmVeC9HOf4+dZg103RkglDc3sezfBJRkOTBzBDBOck8IY+mWHkm1d38ulIQVOaMvXA2YrgcHjiHSBGVv6mlIcSDsaNnEG4L9xYT9rRzTQ3v/Syvxg+6PXKSwEzFGqsL7BGG2A/X8dp4V5nX+2B/jUv+Tryzm2xj07+CfZQ3rSr3JfVM5kUU8UQhclxrVwryaNjRKRGhEOB6ckKYHitHPJahOYo28cUTAFQ/uHO4/Gq6Gom9Od60ESJlHgo3hPimhmtZuf7VVKrOpLtvHknYvQwDub3LNgG9l4jl/U0ykU3geiTNDKNwIXk2qVOaKl+VAmQhU6L1IlpIejiKIM2zpC1wyRLNaB5f2FVY3RVYtm9JfXg1sSwf1qHYmk3Pm0g+yLrBjwWrCx8WlfYFvZd822c8TS6Sj1L28qsMm4xNtV75FB8Y+y3oBiiBOtTbwwlYknWfkGXU5E/kHLvwCKsL0tmVquzl/fMF5JKyjeoaMZKOXU/NJY2u5YQIsz262KnAnzIxAdehEB1+mnHJGZdgWNTB8E+wTsYhxBhrgYF4jZX5DIQYU8WWCt5TbcKyqUQ2bB/vut3jiat7sqq+3eqy8mwxBgRGkuND+SCJYJ5ywcLrt7C581VsMWwZUTesUjXBCMGAeEd3fRHuPe5j99q4hoaiOwWM8w+ptzsaryPx+r9uBSit3CgAegvgin3Cf4kbfSp/c7G0A0Fj5FBAJj71WoXfuxqcCh11mQ7hgiRMvBJc6U78cBCpPvD55ZhYUN2LczK7NMsx4c4vGpWxZ1scgVnezW6q13Qy9pV08cYUtpi0ZsrVhso3YP7hC3vMwBzlpDPgBhpxvrjB2Dx6Z6eAxvgKnYqAEWBIR/AkpsU/vgWAcFTpbPs3uSvd4MCue19pAuvf61NEqj330jjmbJLeYEi+bx1DiQ9UDO/zSqGaw0Q=","layer_level":3},{"id":"1ef667cf-29f6-4259-b04e-44098887b4da","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"SptManager","description":"spt-manager","prompt":"创建全面的内容,重点介绍SptManager模块的职责和实现。详细说明其在生成和管理各类测量脚本(2D、3D、跨孔)中的核心功能。解释SptManager如何根据ProManager中的项目和测区信息,调用Script2D、Script3D、ScriptCE等具体类生成符合测量协议的脚本数据。分析脚本的验证、存储(如testzone.xml)和导出流程。提供脚本生成失败或逻辑错误的排查方法。包含代码示例展示从测区参数到最终脚本数据的转换过程。","parent_id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","order":2,"progress_status":"completed","dependent_files":"cpp/Managers/SptManager.cpp,h/SptManager.h,cpp/ProblemZone/Script.cpp,h/Script.h,cpp/ProblemZone/Script2D.cpp,h/Script2D.h,cpp/ProblemZone/Script3D.cpp,h/Script3D.h,cpp/ProblemZone/ScriptCE.cpp,h/ScriptCE.h","gmt_create":"2026-01-04T14:40:35.0857838+08:00","gmt_modified":"2026-01-04T17:30:25.9596936+08:00","raw_data":"WikiEncrypted:ifrvtzhNz9Otqa4HXC9x+04cfVqh3OtUU5HutmVzLradbAwiqHYsQXZwFCVgNLEtkXTDVhoQX6XYTpOOgk5qaCnRIvpwCNuQse6Qz3xtAlxJfGZP8/lc17FLgZs+67SNhl3DFTefz5+kxlWHdNPwixX5gU3K0sNWAQySgQUNlQBXUu35vULCXj87XJa0Urku3jEN9gy+GZLI6OV20io2pYw1rBbhDgMzJojwtZZC4Y17G+0Wvi0XorbiejJOcZe8IeNp/4yik1nmLK7CjNIlenRTcQOpzwHy/6Zzs9z8NAYpFuQbYV2HOdwoWsvAP2Gj0nIzScgIlnYeY4hAEYmYlZxqYDsJ9gqG56EGqBc3x8bnjCjFrvKPnKwYSdcoisCS1Z7qNBC8oKcBf40zcU6boGEons8MBH41lZDHHYF9M7/KRsCaeJsqUFFQNZlg8N0dGcj2yhfQ3VEFgXubGSEhb9JM6Y914i9TPkCq9JgulIPD51K2gjojvcRTbHzZuelf+/7fmwJ6vEeAyNMooukNmu4UiAcBzaRm0z89hz991+mPOysnatZSSkDJCpsGp504LwgiSyOveMuokwKy0ioaRau0mpnLAE6Q71aYKIZYaaN77PJfYjlDC+Zdsn+URX5ddP9k11xcJihhYGpnmfM6gR+MWEKaG0c8YczThkLJ4gzTBGJXcbV4vyKfw0G4EJUSuhj8sVVrn/5kBRMHWmURl61shRPwQRRzP3lJgmICoLWbtvNorzy3PZySEx4GNF+3AIIAD4i85p3w84MYanaN5EeXvuKSVc2h9pUOWNGv4a5/KlmbwncBSCxSHdmydnZZ9bduk6aFADf88GtlIOEPJFktVJg6yWp+2qzeLbOditqkfFe2/VNIffxwB6nxl9+EBVmhYL5uWyiJDeod1BPxP2QHEvIdgwtym09Df6YmTwLgNapl/2qDLB0Yy4zE5Dlrs9Lo324maQ4jJ338q5533WyzorKrcGxrv8O+1YCx7/9UtorhwDjK77niIhkkYrPvxGgrcWERHlt2+sKozgczDPv8zpQzb5h1kRjRRilN3DLb3i4tR5juZ1yBTdz7dzjrXSBm5eL+yeoLLArkkLoOiXQBpw/tf5Pe2MmThgrBMF8PuYlPmbScRBFcd5Pyl6UpV65DA13nWrNDIj/1FfH1vaUclkeAX5myOFpR9tJ3q7S0nxztho015kMkHHM1uhF85ANRk0M4s+VFdXWTQ81Nvk+R7sAjsPx4Xnb9gU/UdX6ru47sa5LkQ2Sa8UNoiCnMmRElAVt9zxKa90s4aJKUBg==","layer_level":3},{"id":"de287db8-8a3d-4508-b96e-a3190c747282","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"ScriptOperator","description":"script-operator","prompt":"全面开发ScriptOperator的技术文档,重点描述其在脚本生成与管理中的核心作用。详细说明SptOperator如何根据用户配置生成2D、3D及跨孔测量脚本,包括电极排列计算、测量序列生成和脚本验证逻辑。结合Script系列类解析不同测量模式(如温纳、施伦贝尔格)的实现差异。展示SptOperator与SptManager的调用关系,如创建新脚本、编辑现有脚本和脚本导出功能。提供脚本生成过程中常见错误(如电极冲突、参数越界)的处理机制。文档需包含脚本格式的内部结构说明、性能优化策略(如缓存计算结果)以及扩展自定义测量模式的开发指南。","parent_id":"227e9457-67a7-419c-bd67-47327f71a1f3","order":2,"progress_status":"completed","dependent_files":"cpp/Operator/SptOperator.cpp,h/SptOperator.h,h/Script.h,h/Script2D.h,h/Script3D.h,h/ScriptCE.h,cpp/ProblemZone/Script.cpp,cpp/Managers/SptManager.cpp","gmt_create":"2026-01-04T14:40:44.5461205+08:00","gmt_modified":"2026-01-04T17:30:25.59066+08:00","raw_data":"WikiEncrypted:JMwpWF0BBZx06HpfZvJKAgDgwyJJ+qljwdx4nZzDzoon/hwzgI83AuW1AvNHocJ76iwWt5gYRBXn8y/ZKitdq52XblleYug0vot6LME+z/QzP83Ka+tPfnUEpfqffF7lqfV09SetUG7ENtGHYyahE3ckGHYmy+KegOJBLR2BFnCKVp/PwXfRBanGDrWmR+CNsTP+tZAJZkFep9sw7DwsR1vEIaZMCBTrNHGy84AZLaw9dyp57U1byLf1maz1LfciHa7NJUQmN1cQ85JrvFCTBmflupZ7FFaAeGvzDT7rr71hAKFI3Q8foDHEOh1s05mnJCwc7QWJ4tDQALdfgih/6H7wfZTtBaShUtWbwLhMtRJ+fOZ0DoNYE4xxt2V+/ufOmU33udOS6OP/kbtjselrZfUeZaM1LDX0lbpruWxI6s+yCbeN+/6IKg+Uxfee1QYQUFuRogtFVhcdL87ojvxI3949aSEuz0E58mx51cmJ6+5VD+orMfzQdBZMrZ7cKRxYSujYf0N81TS0Iy537k4iJ/1xfJV33T4GVB5/Qkaiz0wXKnIsXk1AchmRvBO6PQs+4fpsmubOQs6PNjJLkBAT/GUO9N8s5fwRa4uF6afBnIB6jlhDiqtoh+tX39oK2qHjQibAz/JKQV3AI1cpWnA4KVy/TNiwc3hNGsGUFfOoV3J7cuGyLpYdnD7JsofJ5rVmIdZ8DYVQzkCF2hV6TFmUO9Dbb6PuLlnyc2/PDO1S4YJ0xyVIcW0mK66fquf+EfmdNvhQ/cf5rAVJz7enI6zSnDf/DZXwUzz9WW5KT6O8zAqaO+q8RX9Um8hcLOfdXxnvVAipGjVCNFkHMWAboUCW5uTIC9N7nL3cQW6i8/VQZiRZPcryYBEFrzJFu3SLVb/p14BAbGWRLHnMJbpmGheVivrwDw7cPgDZfL45Knb6gXcW9ZVYa0cmebny4b7I+VyWqTID1l3b+cSfFsPuo7G25Lpuz0YfvWWcdC8g38mMLxQttsg6ZomAYSWYE/YqexewkIFWaV13gt3q4r+IGCQLahzNhPIFVytVtuyEd6uqO+rl08v/YQZyqQ63Jit9bgKUrxbVtwwh33LxmfEKOw1kvKwP8IqDuQUDiPzu2DXIsj5opY+t+jjZ4LbPPHHYqWfLIzC5l0lt3lc3qNDNt0a+s/BF6c8tS8X0+Ex+SogfjptM77Clm1eDx66t3/ASgpdUKzSwB47S8ey83pmiPiPfj3il6VdKouVQTSwhUN8ctJ5EiIvoEQZF3jiFT+PdxJt3Uma2vr/wgtOeEwiUd/+XldIBzhliErTUKIb2aRLnjlFQxytHGYlt5//EieFNjZt2CqEj+/xAW59VfYoc02MG2jCpTzZwmHNv97QBOB/J7MjTh8RzMumeVDtLi1seFbAwet0Mdab5ILzJaqpR6kjvG0bBgG/BB1JVifdDQDzRmMC0/TX48PHtlYRrdxUkWiZa","layer_level":3},{"id":"d5ebd877-5ca0-414d-9be2-821d9680fda9","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Script数据模型","description":"script-model","prompt":"创建全面的内容,重点介绍Script类及其相关SptRecord类在测量脚本管理中的实现。详细说明Script类如何定义2D、3D及跨孔测量的任务序列,包括电极排列方式、测量模式(如温纳、施伦贝尔)、供电参数和采集频率等配置。解释SptRecord作为脚本执行记录的数据结构,包含实际执行时间、测量结果状态和异常标记。结合OpCreate3DSptDlg.cpp等UI组件,说明脚本生成与编辑的用户交互流程。分析脚本与Medium模型的关联机制,以及如何通过SptManager进行脚本的增删改查操作。提供脚本文件(.urf)的导出格式说明,并展示从脚本配置到设备指令(GD10OperCmd.h)生成的完整数据流。","parent_id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","order":2,"progress_status":"completed","dependent_files":"cpp/ProblemZone/Script.cpp,h/Script.h,cpp/ProblemZone/SptRecord.cpp,h/SptRecord.h","gmt_create":"2026-01-04T14:41:02.6672042+08:00","gmt_modified":"2026-01-04T17:30:33.1486958+08:00","raw_data":"WikiEncrypted:JMwpWF0BBZx06HpfZvJKAgM8H4NDQnyKlX0CPHanEeqdZeq5DCPhtd7Gqao2sQ8+3XOcTXbQtww2DEFJXbkZWV7zTwwY/q8QnhBC9kn3Cz0IhWdNp0o+q2aNAQiFON5zwA9RX2lh22FNiUfDkPaqFh1VnPSxWTWBQhSoNbD2q/p4fabM3n4x1KYCeBnLphufymvhXWLfg7Epr/2xyXjS/ggmi86dPHd6ALNZq1m6Rhhv6faZF5WvfWF20kRY+V4Kqn7G5M0G5A9L4+nsww4uOY8dpWcLvoO4y4b76pUsp/JmAggsis42HG6hc1Isq0qAH3FLEFYi/iCu/GolZJkCxgb1Tar0MBXKL24rHgRBZQ1RHIsdtSf+ZniHJy9vRrTRbBCthJ1OCR25X7wj/fIx7e1iM4Omb+2RUO5nxFR0R13tsIyR41ihd0FH9bLocx9JO9PyKy3zFuwIFq+rJ0bt0VRPjWiSwP0ZxceYupiQ6Lp7+LHQ4R8qAQzFYfUk3TLmKZh6n//LE7sgeW9lWn+MB+t2kb7xJK+3qCwqClgpX78WV0aFGOZEQ40KQVZmvusI1OE54MyVHvJrzLrqMgonGQNx9WSVw/WwGpQI+dP0WnVq8Gsb5/xTvAO+9ep8fBrHSNPEImpij1m/hi2GSA/YviLEhW9Q4B3CXG2/2ErZve5Kav8ryEbVolA4KcTSFOgjFeZkVrgT1/ZrBeRKXHsV/+q7XfCn6XkdhARi6qN8Y+oulna3NfFCgcT4QpU/J/LGkOvp/R2ZQSfda+2TPbMzveeycpsy/ZrSGRd//TtpDLjGFOT0V0MGo1mHQUEmD2p7t391JgAGzFOM3Hw+EtPzVbI0U1kbNxb28H4bsYvnzwkiLpTpSEzkXAIeL0v6pK/igUdKUErUNN9NFeSAer13fHxo9QOhvh5gEZa4EhLo7M/izVzHhQWdRUprN96hIn97hEYA8CFXbd3P0fOhDaC/mJ8p+3HwduE8gp3/d6aeQeqK6oMXRAFMdxFwNbiDSFwrWTWiW9i6dzEM4f7g9/2gYPHVSYPj3OctCJxIcgAtli6mhn4eMnbhEiyypT+D4fIor1LtSIW4DhpgNqtafhbNA8ISuwOq54u0HgzyrwKqZJfdXDgBCDpkzLZKF52pCWtseUszWYme8J7pU2zUTc9bMbgPupMvItvJLr5nor6IgSZCmysKLEFuo3vFqZ15IQS03Rx0pDHeMWPRx6iSZf0vbVPuq+vufBUbfertCtaWenUGRybcUAyIbKkggFuUHoLK2FfJicVHhSPksDlCdrwXdSx82UvK+LSPqH7AbITDYzE8CY05egGQkct0Ojs5iedGgBpe0zg9YEujB+wiz0Nm06xBZyDLKPF5F1d+xE5wokyJ0c8iIbNfMKq8OCGDKt2ZL49K3GycyPjV4E+cqfStFw==","layer_level":3},{"id":"86a2de17-7e9f-43eb-8549-96a5a3822451","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"文件传输协议","description":"file-transfer-protocol","prompt":"全面阐述基于Zmodem协议的可靠文件传输实现。解析Zmodem类的核心状态机,包括ZRQINIT请求初始化、ZRINIT应答、ZFILE文件信息帧、ZDATA数据帧、ZEOF文件结束和ZFIN传输结束等关键帧类型的交互流程。详细说明CRC-32校验、断点续传(通过ZRPOS携带文件偏移量)和错误恢复(ZCRC校验请求)机制的工作原理。分析SendSingleFile和ReceiveSingleFile方法中数据分块读写、帧头封装(SendBinaryHeader)和数据帧发送(SendDataFrame)的实现细节。结合FileTransfer模块,说明Zmodem协议在设备与主机间进行固件升级、脚本文件和测量数据传输的具体应用流程,包括超时重试和异常处理策略。","parent_id":"a4674837-d78e-423d-8c3d-0570f01d6981","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/Zmodem.cpp,cpp/Tools/FileTransfer.cpp,cpp/Tools/FileTransfer_crul.cpp,h/Zmodem.h,h/_zmodem.h","gmt_create":"2026-01-04T14:41:17.0375407+08:00","gmt_modified":"2026-01-04T17:32:56.6861923+08:00","raw_data":"WikiEncrypted:9rOj8iHuvCG7aY0HSuBL9G2jLtpmbv+K6p4MG8y2F8N83+1h2YytIuT1XjaCsJBwaFb+fZjp2peuGFM2VA5dUu5LgxxlKeEE6Adgl0IrHdpCVlXtplDDQktooK6Cl4gB9yp1zAdOHjws4zZ3VrDT1B4gCODREWcuAsdryxJmVRHLuuHMtqHzKh7WZMNfBYaoqW9OT/B5NYOHMYX0p79SHE7vrQBxp6ykQtXp6YYmMuh7Ozisoz4PBQfcWsosJgfIP+raoIjUofCcej+bBml/uglNFKFUI0h8RB/E6fqUxrx5kAeFrcFPAEx7qERuHFE93wAFE020dCgOZMeufw4c2ZZ7jfLDDeCooOuFFVZ/0OLI/0HRbGTE2IisTuXXAU5PXo1RXzk5eT3UjUdpihokt1hIlUv9kN8sD9/bmvMtBNh4MOGUo8hQ0ok+VgW9gyOgyM2WCluRXfrzgPafbGCcKENKwvz5DtTkXeBkZLCRyrc81fe7gkAaFUX04Uf214m3O6A1Mnd+5X4fDGoJTf6syQgbTWkGnAHfj3vJLeQ2Hhtw0KtjAW8wFBtnGwzeYIC5jkRotox69MhqUXiTKcXi9Ht8Ei7Pnel6VMQbz+YHCI9XJpx4ey+0o/UdeGoJNRBASRaM25sCTUNwcobMeu+FNa/4p1cBAXnNxVb5qVC4X4hwW4D78BHl2xN3xmzm+R/aDtOKYGWk8ckehO9pCgyu49237GTZRN072RYfnJci4KKQKk52QGySzeLu+l1+gCqp478XdHig9M9/Wq7WR2BNS/WXzSJ0bodN+DWyhe5E2h1Pr8KPYglYOvodXG4yiP0uB8z9YaEO5VYUZ98BW8f1x7+XckbIHvRYNeSILzpg3h1CzO5YQ5MyB0qAtcTjmL2arIfcj41Igpr+G7yYr40oloMcixSk4nMZHMdVY5yIqGJ8/M0zzYBCSoV4PnIjcgRbUgGUaCwfpLkHsaCRr8W3y2QH+VLszju2uIxNdKImkLrTR434sdjNCp6Umls9GluHg24Pr0fqbeYP007/Ct43/iBmkoSWKW/9h0NxIYgJZDQ7muWjbcsGW6HUusLRsin0Dh6iEq8JJKbIkDvRNArqfgfxnpZhyXif8bNyKfHU2itr8dZHACCsC9r1H8cpjlhxoNAxwCBalcelXyABwrC2LzkygE2owveaPF18HE7G2gYYAB5iyH1n3hkpfGi/hPRTnA/RGI+GhhTB3QhQ4KU0IyMRN3EJ0PFnyBnlrSSuGssGVEHiiWz7tPkJhP9Tov8PcfZonwvrQ7BVs+0W8gtob0KZ8YnRb0t2DX2v6Cx0j1Lcf+fF7lV0BbKslZBwLsABtNqBpYQcLD7iFL6071vl9dSReAax1/5zYj6dvvwNgQ1aRV4WCmkIPKnvgusipw3hvuu9HOriarYvTgU9oi8Wq1SFXy4s9CM0yUszn+j79+6DfR4+Io2cSXzpKZpclBduQ/Q3lLSSGQmCxOSDHhNJYg==","layer_level":3},{"id":"e214c335-a1e1-451d-a51e-cbae010e2434","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"项目管理界面","description":"projectmanagementui","prompt":"开发详细内容,重点介绍项目管理相关的UI组件实现。深入分析taskmngframe.cpp中任务管理框架的整体结构与导航逻辑,DialNew1DTask.cpp、DialNew2DTask.cpp、DialNew3DTask.cpp中不同类型测量任务的创建流程,DialCfgTaskPacket.cpp中的任务包配置机制,DialCfgTerrain.cpp中的地形参数设置逻辑。解释DialTaskTree.cpp和DialTaskManager.cpp中任务树形视图的构建与交互行为。结合CProManager项目管理器,说明UI层如何驱动项目数据的持久化与加载。提供代码示例展示任务参数的验证、默认值设置和跨对话框数据传递。为初学者解释任务配置的工作流,为高级开发者提供大型项目下UI响应性能优化建议。","parent_id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","order":2,"progress_status":"completed","dependent_files":"cpp/Views/taskmngframe.cpp,cpp/Views/DialNew1DTask.cpp,cpp/Views/DialNew2DTask.cpp,cpp/Views/DialNew3DTask.cpp,cpp/Views/DialCfgTaskPacket.cpp,cpp/Views/DialCfgTerrain.cpp,cpp/Views/DialTaskTree.cpp,cpp/Views/DialTaskManager.cpp,h/taskmngframe.h,h/DialNew1DTask.h,h/DialNew2DTask.h,h/DialNew3DTask.h,h/DialCfgTaskPacket.h,h/DialCfgTerrain.h,h/DialTaskTree.h,h/DialTaskManager.h","gmt_create":"2026-01-04T14:41:19.6525868+08:00","gmt_modified":"2026-01-04T17:33:24.9200558+08:00","raw_data":"WikiEncrypted:0MI1/XkBoMl0lTbK6t0Cn0J1K8zYeoV796TA9OPkk8/Rvn5KcjGXyo2s/I473x+d2KonaoXIRf+5v8UbnTWzvdbViDCkuiEiu4vQQtzCkAwYc7EXI+fzfHLcCjZD46H82DV4bUxRFkp/X6SuUKDaV9QZ2ViUWbg7kAL76Cm+/UD0+BqbAzBB9LcOEwA0AvuYUeuekueE38keixlW+VnbiXP4gjnbuXoigXhXqsxFCK/yU/qfptHUIzZ76VTC0We9N0VFwSH+4bzAg4zo/LxvoYyFcAlEhhLaqLQtCwl8AX0vhrzCoO64TTDcCYu0ArWO+g8MElsCL5VM8JigDqBAX9jXrx6GvhoCQhUQu87k389o5LPyDioDXiOA2C+mT9OI4eQ5PoZ89C49hPcIRTnRHu4y13d1pGHNRRdTPc/nDdm7LOSP1bAljW4J1N3/tVVVIypj7/v0j3VmkwCOphdcERzBOF5+9lsgkj4gTmx/DZ+IKH7b19x8yhNTmmBoaD147H2sJ8y38HIiqDzt6NMzmQzK7XEmEzPrGaAppUnCW5hUDsGnW3mOjcApKH2oJu3/L7TI+643WCQTI8vj/M+jeKB4BUVxKy+RTzORKABMyKk6rHOvjE9xZwq4qIHh71Gpdpwnxzz9CI7JWZHQPLLAOcp/raCKJ2T8w9BDrJmEO02GuuKJAFZB6nh+B9zSKWclqRkA3r84iTVNjCKCqxlWZtYo9+XI+P8+8gJP2OLPWPCO/YQQjBFEGFeNr1AXfqeg9w86MDKXXoE9vcD3XJySC8LZsgLUg4T74KJ3JdfmaaLr8Tc1G+V8mQILazRvPdim/yQI4pU9GsZIg1RJe/iO3kqBcc90lCuBPXRj7AK3RdzXro5i1D4IQNOEZxf/PNsIOWCFpzNZPx+iVwAqGwD16FRKiaHck+q6u/ioNZa56+mNr++BxZWWjqNcPV3haHx2RdkbHSAnGpOZ/0y5fpAdlSNicz/yZhEdbgd+CazaDwLTJ4XH+GsXNqd09mS1CkF/Urmt6WhAzXfJxy2G0YPmaNKwhmmaN98sJRjjBm5YjsecSaBaGP69mg0rZasthAtQ1DH1RVyM0ptqpcm1AKchxApyymxwaSQyi9KKeuIixLnYmel9yrvm5ViTu+jje+nvt8diqduYnj+gYaiD9xbDl7VoUnK4y4WrDn8OuZottcDKOc55tZmH9bjuLlwzeVu9CQiywZX3DFCFBH9NH0SZw31oPylZjtsC5gVWea5DG1GM0AOYWsi161YC1gRBWESRumGnNnOgw6uaqNKiFUOH5XC/tw1DZmvutf54wpQbiYGYYXncHm2P7MV0tKfUHCizZFZyZwjnXRk2W4SruMF5m98j+HRbrNioKaV7qPTf4sDgxC4n7kfbPr9iXC4h9xSwolZfVbzLTRDZkm4F88c0g8nLvBpDAd4fPimtDmO+YHxQS33w3E4IFHZWUlCTgobgjqlMTDKyVNT86KdG9C3RQoje9heymxnW6arucCzOqo+7DxfNMyARV7ysS9RcU0rYCn2nXjmJZJFrOB5+U8AfUQRXPiCz0cLV/Nl/qUks+BNVFBBN/aZ8kg6BYmpXzlOMMFPYL4bxJ3t4f9YlA5g5wJB8PRI3jg1gdIkmlkujPkHLIEMPpUZY32rseBwYBFLHPWishVVrUy2pZ29j8XHvB28zFgZR+BbMeyMGQU1br5fSaSc/QbRz9y9J45p1hrmiDWo0w6IxcPhJQI1mNK/Nvhigi4noT7q0POFDJIVAolVIqtDb+7Ukuesn24ifsEl6zq+wCpAi1SUGOiv3V1KfZ/Gou3Tlvx/rr4XTIF1sb709j5H3Hupkqeuw7hSAs23QbmEUt858ldh6Tb1S1h1SiA==","layer_level":3},{"id":"0d344930-82a6-4dda-8ae9-0e2a952fc6d2","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据格式处理","description":"data-format-handlers","prompt":"详细阐述Markup.cpp对XML配置文件的解析与生成逻辑,包括节点遍历、属性读取、嵌套结构处理及内存管理策略;分析OperTxtFile.cpp对文本格式测量数据的读写实现,支持多种编码与分隔符;说明OperUrfFile.cpp对URF专有数据格式的解析规则;深入Res3DDatFile.cpp对三维测量结果数据的结构化存储机制,包括二进制布局、元数据嵌入和版本兼容性处理。提供各格式在项目缓存、任务脚本导出、结果文件生成中的应用实例,并讨论解析性能优化与错误容忍策略。","parent_id":"4c064fcb-a9bc-4ef6-82c9-4c9eb26ec82e","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/Markup.cpp,cpp/Tools/OperTxtFile.cpp,cpp/Tools/OperUrfFile.cpp,cpp/Tools/Res3DDatFile.cpp,cpp/Tools/Res3DDatFileRecord.cpp","gmt_create":"2026-01-04T14:41:20.7386055+08:00","gmt_modified":"2026-01-04T17:32:41.8987092+08:00","raw_data":"WikiEncrypted:PGdHQOrMWxh6s6galmzx60r6t8T5IPQRRjYNl+Dt/hKSaftCLPCSmrhwhgnBhqrhc46YhJ275SAjkJAClVqhb4fU9s+IX2q/wDXlQORJSoWoA3A2fAWjf+0L8t+hekhUcX5BYAnxQxN1kCx38O8CT4XDoF1wWAcZUPQ3DZItPS5kMfuw7Xs/AcirMVhbtUVbpva0s4rEtqMYi431Zi1oZNS6y7M7bnIEoCcocPzQK1YeNX8lO/GuvUOCWTLyFfQ5ReoGCgLQxRfgMdXO8KuonQgKJp9yBvDHGY+a4bjb1mN7h9Iy1e/G9x+IfNa2fVlUYRBdCI8ihEPioABEi4UoeDMsBGmSmmTxJi2JJqocl92z9rAvK+gzPcJ0TmsklyBpggrLoNsvnJ0FyzeKYPN23gTtd/ADhLXAMP3r0WJGeHQt6rhrUIAhY/1fLRWMdB0lte0v5OmtI69zkyVapW+tbwDNtAwI+D34P126+ZmD2SalzCK2c5MNScOaMx0YtzgDwswvoQ+QU+qfROYO2Zvq6uX3eh+rtECIMnkctIyAQkCVkMcxvEf1FYPM2vPfmTjjCQemYmC4hWiKJJOnS0FpANzgCCjiawuny+vq4v1BlJU6EA4hWhB90JhntZTCm8B9YwP2NeF4pwyhqso6KiDVuCi7cvh0x206OHpINE0gwMx4X75t/HA963SmBs3ObXb0OuaInAVV0Z+xWEGVAUzFuepcV3pZZO38UjqnG1rPulyrqxekNrpneTmKJ+7iS/jqEoIw7bKgpFtnjPsbJMdRyZSH6kiNK1Tpg7/8JydlHikZdL5d1552XChzc0K9WgdQXk1sSGqWSGY/6nn3tUO0o+YU9A/rboakyBPcsSVSjbf7ZRDOvg1nPHT1qmybLEEjHGi9+nmYNIgqf8mGfA69NgAAYCaO7g65L3sQ3xpj3KRug+zVfK0/3NQXBYMejdaSSv4/oC+1xrX6hZQsOJRv6NUqvHm6EglRL5HDkg1U1FAh1Ofrpi86SzYfYDDtSKU6YxXrwRMhUy0PQxFVBiAU53vHHIr9RVz5WjXBANjxmvAPY9XmNXb/zVcwncmSOTck5KzVGBG1RdidFPdkQm+ysW4CJ/n3Ps//JtLFdC2LwHFS0Z7d7p6rQ+hiqdHwmgX45inSRrWYXUw+GlAkXUYjlcFV0Ycs+vMA4JdGCPTMNU+uIUGgZgPxp1Ky8T8HkINJKTa92dldOFD3B686gP8FZb5EHsRTOgAwxAluS/WiFRhSo4QUIUgIucfiNybHSV8+uNR8cz+sqElXJgZDVWD4S2kZaqBt1wooim8IUQ0EXmy/X+FR37745OmO/3akdNM5RCnRayzeMCmlaoJ+wIqE3rLcXLysUMOvzTHEfGRYGrE=","layer_level":3},{"id":"6defd122-ec6e-4fab-92d9-b9711a03af25","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"状态与流程控制","description":"state-and-flow-control","prompt":"系统化阐述HandleProcessor、StateProcessor和TransferCtrl三个组件在设备交互中的协同工作机制。详细说明状态机的设计模式,包括设备连接、就绪、测量、离线等状态的转换条件与处理逻辑。描述消息分发机制如何将底层通信事件(如数据到达、连接断开)传递至UI层和业务逻辑层。解析TransferCtrl对数据传输过程的流量控制、进度监控和错误恢复机制。结合实际测量任务流程,展示从任务启动到数据接收完成的全链路状态变迁与控制流,提供状态同步和异常恢复的最佳实践指南。","parent_id":"abbab480-8055-4da2-8e2e-664abf629716","order":2,"progress_status":"completed","dependent_files":"cpp/Tools/HandleProcessor.cpp,h/HandleProcessor.h,cpp/Tools/StateProcessor.cpp,h/StateProcessor.h,cpp/Tools/TransferCtrl.cpp,h/TransferCtrl.h","gmt_create":"2026-01-04T14:41:35.8144428+08:00","gmt_modified":"2026-01-04T17:35:02.7835563+08:00","raw_data":"WikiEncrypted:29DQGcj0Xkj5ar8OataJBNWvJqYA5NO4/LeeD1UWuPiR8Mo6gpuMcAVQTMuVlTv+rUU1ArN5xn/3OdU2ibxKpvFejeI9Pe3ejm6XnU4MCs/sS4UyKqMzErKWKJJWygyZvqIMTUsv3F9uXmH1rRw6plZ59+98fDJFk13pEu4EcSORlUDBbSGEJEbbJpfopsu11DsDZ3PTxYnWlcdgMqBJBrG+JCe6QDQNyvvT+qkQeQBafc90bd+pb02A5b8l+CkwIuJjoA0FmO1msEHodif/flM6QwxPhKXM+3Bt1fYDTNpzdBTITV9qVIG4TPmY/mlCf7yUDIMclZwRsT847qN1veEpkzYnzhw7pUsS0jZd8JiafqFHzVcehke6jL4Fv2+GRja3Nbhp+HRHzKnrm6X3rSvvP40tC/MYfsclixrgSVIGfB3+uGlZmyVUgyko5adz69sM7xt5OrQq1LS3UliAy02FmGGsTVhbM8HKrvLhhdrxkcQCro1U+2sTgWWPPYpGirhKk3odPjE6Es/fpbhIjh3wTbCOCByjT1U1fzri4OOoL7ae6C/U1A+BTDFxk/v50RN/btkvgSDcWJ2FnZyYihcE9bpgyjF/2aXn7P3wKxS99Pgwlkc5Er2E+UZftTP1ZmiZhVq6/8jngHdQO9ni6Vpj+W5lFrBTArsPpe0gBZeJC8taJIyjXqm1p+dryZJxDFAwDX0/SIbKHOhGBmp4w4yj7YsrLGuGS9XQGfbrMo6RkixyNlXAt21LyG+x9wVoEeblZmk5WyIM8C84Hpf9nEHTbqoYQyh9iI7MGyH4e0COD75QHMYhfbEl8BECSnaARCmnyiK340y0uWzIlFhFtNwaGIqib1V2CEgo01suOiuu2vJqAGbc21CvJXN4Y6NL5bsCXRShVpaACtGx9Snky12uNJc7NQuZX9ROR/NdRgEaSxBs/9kpPJptKo/gMrZId9YW14JGQiIWqNK9RWvLAgSjZTy8nU92WeCTIiKlOfycWk/XYtgMNUm8BNJ1YiJJnjK5Bp/JvigOBroaXGNIG267SCXYXbseFrwJu60M27x/Lz3ryo6A88Gb/1hJIRoa4OfFhlfDiMJewjQQ1/DqFRr3uX5e2myv5CwLefg5N7DwVR4e9g9d0CZ5I+LgffBDaNGKVLoY7tpBDA1ysdB4ckSBSXmnTbRCKvQGTFtUwA4CFms5Wl37gW9bwqKiR1rBRN8PWHlxZlu3mmNx5+kE/utYtRat26FqOb3MD57oVY5j1KpplrmkxWICzhBOZBqQ/WsES+b7JrFO1jbpKpMtPUKBs9oLmeWwxhABx4OzntGMASA1ZMHBRS/p1FNwfIGm8X4j2yFHBe7M8+hCnqYR9TRiKrbuG9vA5R4or2oFU55L36oANzacH6lYAhH/5fDlXibHpd2qtdviuxtxPeMFFoW1BchqgSozSaURNcAOqyA=","layer_level":3},{"id":"43638c5e-8384-4537-b584-16dfd6e5db53","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"循环任务上传","description":"loop-task-upload","prompt":"全面文档化循环任务上传功能的技术实现,聚焦DialUploadLoopTask类的设计。解释其继承自CNetRequestDialog的网络通信架构,包括PreNetResponse预处理机制和OnNetResponse消息响应流程。详细描述任务上传的数据封装过程,涵盖STTaskListItem列表的序列化、网络请求的构建(PostNetRequest调用)以及与GD10设备的通信协议。重点说明CDragListCtrl控件在任务拖拽排序中的应用,以及设备ID(m_dwDeviceSN)和PLC ID(m_dwPLCID)在上传流程中的作用。","parent_id":"029948f3-657d-4fa6-8947-d1f8a937d9d7","order":2,"progress_status":"completed","dependent_files":"cpp/Views/DialUploadLoopTask.cpp,h/DialUploadLoopTask.h,cpp/socket/NetRequestDialog.h","gmt_create":"2026-01-04T14:41:40.7841336+08:00","gmt_modified":"2026-01-04T17:27:20.3456087+08:00","raw_data":"WikiEncrypted:o+yBb4vjz+0bpqRqEZ2fyar+obYmzx5g7hBuDAee94UGbd5Ind4YMbJB9rZaQXd2Kunn0YGb321ATiBsHfYunuP1pKZcSKdcCS0rXZB/yw4DCUDBCFB70yg5PFPy4FHx+p1bALb0n6LtzCSurepQYMGO/+QajTnSwGVNLUYxoAnBeZC4o94nrC7YUQE6DLRor5a1WaazwqCTxjLGtG1c6xt3vuIPg1U5hUKRhxgoTtjfBEtzNtZP3HhkgOCrBmoQk69yThbvU4kolm/sRaj54e51CuMlq1EgxTGrYEDjvLK+Td0Y/iYSAF1wtaytBDjEsBEdgdwJ4cvjxiHSWsLsyupEMahPLBRfwDSae70SM1CD34V+xgAQK43/es7WQMmNPpGK8cQRVZUnMmKawUpbWIO21oZyslltxfNsxws14akGG0iQnrCAF5m9OYp3Uhxf30SVVMmBkWsBv1vflavUsrVvGGQP1zGIYCGfSYbQbUpv2ShiusK+Exo04K6tZJdXIgwS3+zqNF4Yoj3njzx1WUVj9tNPOOHcFAfCakKH1XPEfIjxnJ5ePXKUowiu+Nk5lirDoh+DrGiYADznpqM5pULNTLyvqhHcPIYIpsHTq9LoidFBv68RNEpyDEF9yDD7scNKhOTS/vguNgNJ+lqdTPBvXEiXR+iY8sp2KiwCvxKgnwsMGLVb9tyWYw6a8us6zhVXIX+SNlb0JsJ2AF+zj2B0EB8qd0JVUbF0J8JLGi0j6kfEZh1gUM/mwsi94hcr67EKf12cL5vPuBjJVe7wy35Q4XkrLwUs2+gn9zlQPnJt+lVomV1ovwG9qbySKELl0YuTMSi589AGxbF3peP5Yuarft+kDots2L4XqfHP9hBMuRauL4FfN8gYtPBQr7bxaxvwomylDdF3Agry4lBVnR57dmcVfkWdnVedqQz4re36ITFQjHgGk9MpCBgs2lhT/lmLIFB8dSOa53wRf4kfrfOeRwiXD23RRSYk81bZjz08MVqc6TQez0AERFjZb9bWAYu7xfGHGiF8rmOfvJS6VC2VyGD0KA4dN4nk7ys5WusnpglcgenXrNKguf+gP6ThW3yFGmqFflsUawfmITVzNJ+OlOTqFq/LfivwAe4Hr/TBUKDWWTqcTBExkXDjEDXuU7VPAEGjPxwgIWAC3HnM2u1NEn/MExkqKQj/KJS3r5k=","layer_level":4},{"id":"6efe8d5e-9535-4d47-81a9-2fd6cf09f928","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"激电二次场数据模型","description":"ipsp-data-model","prompt":"开发详细内容,系统阐述Ipsp系列类(Ipsp2DTd、Ipsp3DTd、IpspCETd)定义的激电二次场数据模型。说明其在时间域激电法中的物理意义,包括二次场电压、半衰时、衰减系数等关键参数的计算方法与数据结构。分析该模型如何处理不同供电周期和采样时序的数据,以及与Channel类的时序对齐机制。结合AppDataIpspCETdView.cpp中的可视化组件,解释激电剖面与衰减曲线的生成逻辑。提供完整的数据处理流程图,涵盖信号滤波、背景噪声扣除、参数提取等步骤,并说明数据质量控制策略。","parent_id":"ec4f27d1-3dea-4fce-8eb1-132ca0f96e92","order":2,"progress_status":"completed","dependent_files":"cpp/ProblemZone/Ipsp2DTd.cpp,h/Ipsp2DTd.h,cpp/ProblemZone/Ipsp3DTd.cpp,h/Ipsp3DTd.h,cpp/ProblemZone/IpspCETd.cpp,h/IpspCETd.h,cpp/Views/AppDataIpspCETdView.cpp,h/AppDataIpspCETdView.h","gmt_create":"2026-01-04T14:41:55.1371749+08:00","gmt_modified":"2026-01-04T17:28:11.8044388+08:00","raw_data":"WikiEncrypted:YptAJWf7JCafjZXR4WPLqgJcXBDOeVpq70CasIqSmfusJaoDna/VrJ5w9m077Thug87zHExhSgfmVX6JE31Qt+GjqpgQrfgEfXng9DcR6XTAutgz8M3tuWuBUtLxeIteQvbdVoqyjIN0BZdFC2ZhmnoD3xaKNRg4ONMgP4XbgtqwzjfgATYXt3nl5y6Ut4vkosEuEavPtg6RO7/rGamWDAffDqFM/FXV1+MQTmuGbrLlL7aJ3KTdgeH48L1Sv3OcEEyvC/ZYZWQLg62n5XX2gVWyBwYrJhdG3j8rh+2IORZIBaFRRIzZwXv+qEf62dQrHU9IGVvldx7X/n/syU5qjQT8EltF5xdh7oAnCVIZaFZyi/rjFlQIsdjBvx3HS4TvjhHHZNB8Np5e1wvj8DDYecvckFvIrbmJghTVBGzytdqdbUoYrMqHlXpQXPWas+KWN1ggucITRfEjhq/wXf6kauTNptgS2fpAnDOcj2bCMHhNoe//xZ005CcBgvECjt7UAukDi4leyDiAiruYo7Xx/Z2YBDS93nB1940Pb2aq40K34XjmzHKqj2PoLEB5nzHQQYSDXPk5rSQUsXHmwYwaSVoynqp+2rqn5iXZb116YifR7Y20pvgnqOA0hDUo5HKRIbyydQ+8tDRYGSuziufsScJQpU2vdZrZtEhPSWyGNmgCXeCzzjMRjWmWHNhCuYv0+mnCKk131gI96cUNWBIK2J7lG5hyvGB2O4e3X0/ZEYbrNFTvNt36pOGMOpAtqzDZo4qZF4tcqRWBEJ/wss9wBRJa4/y/xDhpSpzx/2HIXXANin+QrmgxiJK54sM/s54PW1JX/riB4mFSLwVtEnYWgQm8aeqDPSV8UxDfNTZxTG0dRYBzcAVBpSuZybdyRphJO5nlpwB+LyaROq8jKG8SPcQzXaoDIyRooIy+NKAg8OwriSaOiuCjXxQuz3X0cftDLfYQ/r/REYr5fdNUCOlJuNxzFwJf3XN447RWHn+r3c8SFRY93G3F4urlukMKyecGcMg4vniOfFhcHoHGK3mjIuyV85hAuAktzMdgGxr09akX4lcqmPAQyr0/+BuZw02LS/Yu18Am2Cy+vU9Teky8B7d66N67WO/4VCnqPP7g+ogCo7LPuQwQQGSEMlT+c3XekDDrxjXnWAJxK/kVcJ09avc0SMtSWFPep/OpNzx6tE8zWJ2nq3mTf2RYoF+JaXuEA9zqpy/2j2s7m6tauATn7YE2GIWPRGP74+BRKEGUAAAefVmXDjMqhtLLjGut409TKn8Yzc93l08ldNVAQwuBQYrDpbL4/K18U9a0T7VtGPRfzq4LmlkKovhktPHrRaZ6nZxo7NoPX3Icep7CpYm2gnYLdONdQRmAagHpx8JBksAB97UCL7Oc8gQJ0GonGFgx","layer_level":4},{"id":"00dd2207-2775-4db6-802d-c32bf4fae870","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"用户界面指南","description":"user-interface","prompt":"详细文档化应用程序的用户界面架构和主要界面组件。描述主框架窗口(MainFrm)的布局和导航结构,以及设备管理、任务管理、数据管理等主要功能框架的界面设计。解释各UI组件(视图、对话框、控件)的职责和用户交互模式。结合MFC资源文件说明界面元素的定义方式。为用户提供界面导航的直观指导,同时为开发者提供UI组件的实现细节和扩展方法。包括界面状态管理、消息处理机制和多窗口协作的说明。","order":3,"progress_status":"completed","dependent_files":"cpp/Views/MainFrm.cpp,cpp/Views/devmngframe.cpp,cpp/Views/taskmngframe.cpp,cpp/Views/datamngframe.cpp,res/GeoMative.rc2","gmt_create":"2026-01-04T14:37:17.8873012+08:00","gmt_modified":"2026-01-04T16:26:46.7454577+08:00","raw_data":"WikiEncrypted:eFStdOOCJ/uTWtXKsz8g6q9k0nWdNHmQNr5ObysYMxp2JLo9z0Hat7477gVNZBnsdo5s2CwpAh9gJiGqRLHis+iuga3PVAztYzeBDn1PLTp6YjtU6IZg+2ypjR6en6LZZsVFZRJvG2Qrup+f2Oorky54c3Kaai/jICQc5t2pxpHcjgJRvE6Op+nP03V3+fyBKNNO8BpRN9IpwbjEl7NO19hlTZjAly70oALMlrsn2RVub2NCO+x+rMj80I92uvieJLVupYtpw++D4SAdT9/w3CCI1XXu6RUMMC0sAsIQIDI2gAfK5C084i66S4I08HE3+NC0Ur8TaGFbhyrqqmAWHpTC5FsjiYtY1VGvJnS3rfsC90g80XYKZaybYKXaYI8tA9K2AcxA56yBGPyyxCZUJEdHKGKwk0SAcG4XF59leNAim7X3Y/rBtytiO/tktetNol/NNtq2/TNlFKmFYQaW8jx5YB00lBMylElQyitGMshkXHIF339k4a4h6hwKvmZ16jsZjg3Ym+BqeWyg+XIE387pWoakTJaRxKv4C7pJ5HhvNWuWJdKe/E1iE8rwVBeNqHXNxWKaiituCj80z9M1Na+EI00+ZSl8adDHmblAhizl0AwJUnE8quPhY68lfOV9dZcVbdW0o5gW4ZAb9ST/aZzBhN3Io2+DsTjZqSUDiSo580QSvzNdTfxjkStHTd6yd2UwKhijicsrq/A7Orm0XwraSPJBzaf9/PFbwmDKptMcz1i3C34bK9nAgveS3y5YN/KyOcXxM8cXWSFvgdPCc/sMp3KlTD3y/Lx84n6fc3lAwBlXZSDZqWTZ3Ul9aV1WV80J2XxXnhD2s/AyjQY6kXVjhuhCuWtq5bQc/m1IUHJSFJoh5G5C2GMMyeKqfuzr6raTFCSyCBAiKG41CsHOMousNI77KFNOTuktiVdsJfKpppkBjatZRH0PYwctl0xaqKvfPUUUtZM4U1KKfBlrIjWSK/Eu57Cm6a1tqHH5yuEg4Amcx+mReZIrM12EHsAAOpA/OsHPRTH30wqjRIkCMij7m9UKogEulMe7vFhIrL67IMCaSbn7kD4TI8moh6oCH9KO57c3Jv+GwoxR7z/QkMGpLZn5rUhN3YeYzdsV2+8znEf5CB6UwTkIzR2j5qlflSXj0qloTDkq3PMYTh4bw6CnU8RYf1mtIsarn53jBsVPhdwWGKKPjRB5BT9LmPDCkgN5rauyD5lDLDIsrgWBwXWgetw5doJGybc5wKErAORREzY2CRf/zdlkCjuI8KLkNISN5iAMvtGAHV3UstPU5g=="},{"id":"e782bc89-0c12-4b91-86f8-98dde91ed07e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据管理界面","description":"data-management-interface","prompt":"系统化文档化数据管理界面,包括测量数据浏览、实时数据监控、数据导出与导入功能。描述数据管理框架(datamngframe)与各类数据视图(如appdatatdlistview、appdatatdgrlistview)的集成方式。解释数据列表、图形化展示与详细信息面板的联动机制。为用户提供数据查询、筛选、导出(Excel/CSV/TXT/URF)和诊断报告生成的操作指南。为开发者说明如何扩展数据导出格式、集成新的数据可视化组件或优化大数据量下的界面响应性能。","parent_id":"00dd2207-2775-4db6-802d-c32bf4fae870","order":3,"progress_status":"completed","dependent_files":"cpp/Views/datamngframe.cpp,cpp/Views/appdatatdlistview.cpp,cpp/Views/appdatatddetaillistview.cpp,cpp/Views/appdatatdgrlistview.cpp,cpp/Views/DialListMeasuData.cpp,cpp/Views/DialListMeasuGR.cpp,cpp/Views/DialListRealTimeMeasuData.cpp,cpp/Views/DialListRealTimeMeasuGR.cpp,cpp/Views/DialMeasureData.cpp,cpp/Views/DialMeasureDetailInfo.cpp,cpp/Views/DialRealTimeMeasureData.cpp,cpp/Views/DownloadDataProgressDlg.cpp,cpp/Views/ioexpdlg.cpp,cpp/Views/ioexpdmsdlg.cpp,cpp/Views/ioexpsptdlg.cpp,h/DialListMeasuData.h,h/DialMeasureData.h,h/ioexpdlg.h","gmt_create":"2026-01-04T14:37:44.6717358+08:00","gmt_modified":"2026-01-04T16:51:26.7635097+08:00","raw_data":"WikiEncrypted:klcgW2PbPxJambbKMzvFt/bndc+/ykjnWV5lNXs4+z6UcA1561KxAi2Vlafho3+UIQ8Bm00Yu+UBjUh+6hZjIgJ2nBDxx+bBwzS0XjxEaL2NVhU9kCb2XqR7ARHKYm8TQKc/h1eivgkGQ/iKfsbo95EyKjmpx3jyEOd/CwAQn1fOYlFLD7HgFMdbMA6RDhUvKb1btUCWhGPN0vo5mk9RDEK+6d4zQMyPR60U/Xtn8XwtZGK0zZHvOArFwMiAAP1XydGd9odGehW+WNnI29jRxuzIlBcQI1RTl6EszSOanwVvGb0oLCKfv1hDMnoL4VtNfb2nwED0edT7FGcF6LpGu6ctBdTx+8dXZ2ZYqh+KfcqC3y0mLB7pL/gzZRWYpQEdTOZBj4E2nU7ouw7dcf/ZUeFjIn9BQNSpJr2ynVm86uwA97X+CzuDpb+ygdBTslYwYDolmDLOABQMLabfkrdnt1Inf6li4vg/6t5wFm1E+O6vwVVJ+2/uIF1VmJEytDfgO+fwm69TFCXMKWB4um9IwGYAEGAeKvW6yQEa9GztFGwTkVHhpoWzRyJrMFrLihEHJfD59qyRx6z1dJSR23Ip5Hfl3i2TWFD8Lvt7FrHQpZ5mKmQYKhwersh044I9T3emwwWSgAXAFX7S+IPMZ2w2nKA7XGhJYRW1OoIr8Z/yTdo0VaOcniHCvwDCz2aoqb5OkadNUUV60pAxy28ws0TicuQ6joDITnb4pYwh/1R7iMWQhBFag5Kcyv8vJTvLfimrePTTiQ7CeZoyk2wOMAWzRYamwi4mi3VbZsSzs3AeB47+rAm64bXvdmyNFlkMLwuoexjijT0KBa27htVRzI67NEkDXSO1WeZwyxqcXC7SRqrd4fXznjlE1r8dtfaCiOtE7D5oeFBrA58q6eg/Dq5YRBj53EzVI7GBT5lkantnnjMB5AaAF6MtCF015/CpyEpt8I8vdwF8VEFnmP4T4hV/7IpYRgqFwP5uTPBmoXF3kMB1TDvqg4BjFLrYN3sUNWtN15P+PFemPQlTBAGAQ+kVq4YCh1mOP7Gi5tubu+E8vEMBYHdwZqhpc3sOsppTjlEw85AA9MXvOJj8AEBB8V7yW0yw/XOjUWPK6wDrHzxER65W1RPKDAVECU04bQ1dcqC1+jppogQ1+Q3Hx3tb8n4yeFy+wTHRQwUNoIT1YNc/Z3cpkBZfB0qPvMKL+sfOCRp1UxJ+3XA0uYq2NforPUuUP+y/NM9+XIgfW+ir0DAkOO89wD3kpcbg+CYxZY9GiX4PldWICFUN2Reom3FNQkRyGIv8R/lefMtG4vPfLjtPq+0JaahYXun3fEkAIhPhe5KIow9DgzILGen6iG8bn9mB5NuNM0LZ9bphRfxvFHIis3OyswJ3lCPIWnZxBoLlhCpQyvgoCWB1CCqFlsW74s8u9/x8p932QO3aFlUPdSaHZ6n/Vo6j3cMeuNU/6lb1GWlxfXvD8AKWY0khjL/AuHhSGqIB+ReyzHBz2E72p9WOYAFRYe3WRYBXsGBGYNFvizCcVQUI2sX9Eg7ECXOI5dG1hu7QZWLQ44AvaXSBwYMptOeFuaaETX7K3UA03247NOWk2DoNxwlx9g1Nftr0809pwioPU+PsunVNp59d9+GUFTq7GBGTuBikrNM2LTYgDr12/fB6DPBVpymBeaEqe/tEjPrpjGzpxjsvQ9cdf3NnemfY+fgQhofyHghLVmpwdeHiMqL+QS1YKP5bYUN3BvX9p9/7DboCSfP8i+hWHeizP9P8PtbN/ryAaDJ/VQJbxC6EViUZr4ZCj/76OWoUK84zFXmy6UnYp58Fa6zsRZ02RAE6Z3MsvNM9Prgz/1sfEWsnAyBMtWYnST+ppsw7aiqsAarrw2YeiHpi030stwFhfWueAIMvaM9tIsf8qEWsgiNf","layer_level":1},{"id":"e2aa8d47-2019-4a51-8646-685c9019c17b","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测试数据管理","description":"test-data-management","prompt":"深入文档化测试数据管理模块的实现细节。详细说明CTdManager类如何管理测试数据的采集、存储和展示。解释测试数据模型中各字段的含义(如电阻率、电流、电压、自电位等)及其计算公式。描述测试数据在列表控件中的展示逻辑,包括数据格式化、单位转换和异常值处理。提供测试数据导出为Excel、CSV等格式的实现细节,以及时间窗口(Time Window)配置的管理机制。分析测试数据管理器与设备管理器、IO管理器的协作关系,以及在大数据量场景下的性能优化策略。","parent_id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","order":3,"progress_status":"completed","dependent_files":"cpp/Managers/TdManager.cpp,cpp/ProblemZone/TestingData.cpp,cpp/ProblemZone/TestingZone.cpp,h/TdManager.h,h/TestingData.h,h/TestingZone.h","gmt_create":"2026-01-04T14:37:54.5691344+08:00","gmt_modified":"2026-01-04T16:54:14.3646256+08:00","raw_data":"WikiEncrypted:Nf01RYbVAoJyyn6SI9tsX5eobcBMFEBxdW/DeX6IMKEviqedhHAEJIMmnU0sqxasPJJ/KHRo8nN0v3Prp0HlpTnJVuthrmnPkuv43dyVYbYYsl3Yp3ujrhu9zJBaDbk3cpbudE43LLOSrobKKQ+B67ZP1AedUfwaqVa79sKldCACmGR6J/GLT93sXwCHYbEMmhCuqNgyZlcrKQ26XC8bOal3+RZ+pImzVjPYx5FslkGm1M3cjjWuTwTUIDkRiGZkifqbgF+7ekaNc72d46vZUZWknvKNXYK8jYLJhq3tCbaSObcUrNfXRkWZoE50MJpzqiomTeDP/eaOnN1ul6MPce+8ZXxomgV3hf3dS3I66W/aVYpcaYeKiFt0qtfTVMYL/6/BfprD/e2GXz1hMJur34KKE0ZYV4FMRP56V0wpMRYnNKxMbfkqcoEfOClIL23FIOxtdt4ceAqX6kw6FTgL8JeLpSj5fAfJCz5816PxnBDNa0Jv1TDFIxJexmu39PiGhzN4XjG/yQdNyd+C6Pw0deMowi/JCandlD93izeAQejhA4e6QuMLU+pk3Age2PDZUJzb8cwvkF8ZWGUqnVmdtITmwsnBtqC9wr9cVhvn23047xEozsr1+ratO7S8ChVe9Gf6/eCedVJBTwb6edPlbeCOfLruFw9OEYmKM3vUYlh35Q6I3PUMR+9fi1BUhpB1VXuKqvuVG3Obwh0v+yv/JeO8V0QJpMnufRgavKfCZgi+x/Yfbq5iI0dUVri4TnWIn/wmcO3lxtafJv+fphv2NGxUETyeqImSfVG6BtAcBqWv0uXlHAM4iKK49M6MQZ8N5ltVM9/2VkbM0owHnoLicH+o9Dhh0nwbXTkAg0RyVRIeke5K+QNhM9zhY91epb158C2xebz+Ba2oGyvPGTZC8jJXum8jGZbdo0DT+F58d7DS/YMgR4tSfTA5QEduBGYurDyXsaw7KMJElD4ZK4Ppb0evSqTP9ypJzma4ofq8XDiOLAWYoAFMzqyVL3ov8HQhfhHQZVmDmrq0PUYKl5nvBqi8tIhXSB9Vil7sNf/Q22F23rPt100zEXHvgnzXg1AvnQAL/v0r1PtwU0mlQwzkpUmCoCD1SOKe0P+nDLBSrnDxal3BX3FN0P+blhlbTgZEtlWhH5z7qH0zdVXklOLptppr+4F0j87JafS1xNnS5QG0iHokTqOyu42rTWpcCzoustxDJGLVZsZOHRRspNHSdQxCdTYw6Ly7ThJwYXvSe0/jWZqTAybw+XqxnbSXHa27NTF4qFtSW8AHRmrPJN35QC01UPpUN198aDdgEf8Mp8bAq/5DPGS7JVIg5KG33GQg+zaOMk6SZ0GHVJgYS5/VVtqfhyhUDk1ukMolpOv3C6FmmD9kNP2o5g+dWkleBn2mw+FCb5UVDdKduvlGMYAT5OfTlU+R6E/dhJ3Ig3g5hOk=","layer_level":1},{"id":"e444c59b-3c2d-433e-8aeb-31ecf72625bb","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测试数据API","description":"test-data-api","prompt":"编写测试数据API的权威参考文档,聚焦TdManager类对采集数据的存储、查询和处理能力。详细描述数据记录(TdRecord)的结构设计、时间序列组织方式和索引机制。文档化所有数据访问方法的调用规范,包括实时数据流接收、历史数据检索、数据分页和过滤条件设置。提供示例代码,展示如何订阅测量数据流、执行数据聚合分析以及导出原始记录。解释数据缓存策略、内存管理机制和大数据量场景下的性能调优方案。","parent_id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","order":3,"progress_status":"completed","dependent_files":"h/TdManager.h,cpp/Managers/TdManager.cpp,h/TestingData.h,cpp/ProblemZone/TestingData.cpp,h/TdRecord.h,cpp/ProblemZone/TdRecord.cpp","gmt_create":"2026-01-04T14:38:07.7264744+08:00","gmt_modified":"2026-01-04T14:55:23.5441604+08:00","raw_data":"WikiEncrypted:Nf01RYbVAoJyyn6SI9tsX5gy0DsLL9j69wcO+IWn76z/dLsqymNL0tU++nWMktuobT0luP0sNsG87T+M864hoRJnrYsk1ZN82eY87/1cODNMYdsY14FlBznibbdQdg8Wsh5eP90mRqkk1cePJvBQO/Vkfb8Q0wYMq4dm1Un13RTmDkHQ8l2rcB6Z4rOPDKfmZsTlI/ve1XpdjTSxahi7s2qUNjx59MxsWnlDRTpPnHz2i2MBZG75Hl52wbTImgSrEhp/mFTeF4wo6wXIc/OSfuhl8KHuFAxAuXOrGeWXg/dAEGrGtwtO9iOsSlTq7LppMqIM9A52MS+voGKS5zjmhGFwbwvw1j+P72hralycV+poEs56yoF8ePiUdeHZMtnNHKFureg39yk2cd/k73EA9/eWQMlcxcpizpqtLjFzjaEdvBvWTkqpnRBoBPfxWBT0Wt+FLXu6WGnbOpur1x+UuJb5fHs+EoNFR6WLrThfyiLgGKetVxxTbvgXoMnKM6Y+emJouAstt0Fjr2kaenQvx3ut9kdpklRUsr4t60bnivGLAmaRKw/8j9/o9BmU5ThUfxzhbOg6tvd+fRNE4GPmGLO0lod1fUXMfyfAWHyLGYua+FEJZB1f+OSoHrh0NGdk+Pbkz9pIy4GgV5+Rr+9PLYP2Ls8QdoFz/NWPpkM4rN9iu9z6SHxXSEM77MQRZ/qNLR0a7iZiblSRdILftxa1TG54jxFmIKHSVHnuiGu3n66WYmH1hOejRn+7p8I1wnIFGpTGaIUKo7dG98SWRHMan9lDdKZMa+wMhNjqaQP03uYaFbAwxwwiS3Ekx/iToYr/8B9/pUqOWiaA6rgJYDtJxqdwXQenvIij2vBnX/CeWORUlLDz13uCDL4EGNKid4YcLBTm9Oz41sGr0cnkitehIGWuGl8aJ0sl0fbK++RlJH5O9O10oTHBGVQz+bjVJh7S7Mr1pZnO9rk8dN1Mv9MHUyJGo5vwAndgUGyaQuLpB0v82dqi6WY5KXSXCLEPw4IYLwIncQQjaPk9e5i5qLaQHsSjGDlhOibeMdTelU3IsaRChAYNhz+IRg9lqIYKBjSYiBNgKGcGKHFYwXnUr5thFvqczSaEl/GDmFPud7hVdoep5WCE0SxLpoF7WSkb8QRI4AMaYn70cUEt70MN3A0NsVdyuyY8BhbFysqaivVjrKpXWBKpOS2hKGcAH/zrMsPnb0id9jIWpAjlnRSr3sFVEEG2edHdGLuBNQkIopwsEldb8Cz+ALfiuG7KWnAAk99B","layer_level":1},{"id":"8b58c058-66d3-4230-b003-222b13d67e81","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"配置问题","description":"configuration_issues","prompt":"全面覆盖配置相关的问题,包括配置文件损坏、参数设置错误、版本不兼容和数据库字段不匹配等。分析config.ini中各配置项的作用范围和有效值,说明错误配置可能导致的功能异常。解释database_modify.xml在数据库版本迁移中的作用,以及字段修改记录不一致可能引发的数据访问错误。结合version_info.txt中的版本信息,说明不同版本间配置格式的变化和升级注意事项。提供配置文件备份与恢复的最佳实践,以及如何通过ProManager.cpp中的项目管理逻辑验证配置有效性。为用户提供配置验证工具的使用方法。","parent_id":"cb978e4c-d19b-4711-a81f-e657707e1e66","order":3,"progress_status":"completed","dependent_files":"config.ini,database_modify.xml,version_info.txt,cpp/Managers/ProManager.cpp","gmt_create":"2026-01-04T14:38:14.1810923+08:00","gmt_modified":"2026-01-04T14:55:23.5441604+08:00","raw_data":"WikiEncrypted:aC5ZtUyEKPSxjzg//aVllGOTAJo27wQTQ0DUvTSLMYwG6cYAFsTEhUBbuP47I3ZuWj8eThQnMMwYPOKLgzd1t9ocb7MIqb9rmuQly7wxx00Ti4R1w8x9bUzGs7SPOZipDhIycfuwJu4iG0ouu6Kp/8GVl0KGLpcukhNToh2G00FwHmIvdhTaZxQKRzsZhXTOEh38Z7AwVYG8G+YA45A8OnHnmslO3y9cVciAD+2rwTaLCMSocjxxa2/gAiyfUVTobqKx3GIaxl/wZlMEGIA470DutB5Z+UTrj/OTFOELCxZ/RyHAaxd1097MFhqFfqyEQp9OdO1Uk8Wahjfg5YpI/5XQcx3mtYXDcs79+2RyX3GUn9HmkgR05J3UgZ+D7z1nRlEFffyLT/8z3VPfaYrXdRHrIn1RVM8DgSfDbHNoMBllmuEEdCoHkK3S/iHsI+gMMzQDsadXMpnNVfW1blhF7F+vHlSE/iIm821dCQ1ND+X0v6BmeaHFOZ/WikF9LGJyl+xtVRv36hldzPlTZ1dwRgFJlDv1hHdJi5m3gdWDi2Jxh/Nu61ghaw+QPHMoxQQdN7TW2IG2TP+moNTrWjx3gvyMEaxbsTraaG46u9B/5PVJ+A5kLYnTvLkfTrCJ0+WjXwqrghZpFJBRjQnGzHp51bW1RggphHhxdhT6mD6EnFQf4YgW0EZMBRkrxKyESch5X3CN2Wx/H+PeVrme32u+7+oA1wfQ9ZPtPVQpwX2DilDS6aqYLd0j3hGmr8w6g5cTk3OdBhVwp+Tq1D2onZHZNIHF8UfV8JD+V7QR1h1LTZRFIE3ECZjgkXH/cHlKAVoP0SK0InEU56Ku/bV1r9KNCrVXy+wtqcDFuzRw9GP05zp9IHU6Vpjv3oTB3pt7sx58nc1SQApaPpf/xSGpmf1hZPszwaxnlXxVt1l0RXJ+r6mnVU1WpmOZdVbTl1rvqkqzOZQHpR25VGB0kpCJIdz268oxwBIjRCqqOxRFh8lQkW8Kc3zNw1SRhQreqBcXR3UjHAqwZx5ne9WX1qQCA74sEu8fAcDyidkYwaVp/hoZHNKqHrkTZQo8b2ZcmFIKhrDzHlrDg0eIv7rXZMxY3uFFtKMeJ+aaIAKkVCnWVPax5ZuxykO41mQqGu9v91pSDIN/ToNo6DOtC09b9u9snNDQiUGtzUAANV9nUX2I2arLs/0BxQMqtkVO48if+JDNexs1p/5k0aFQckuyuH2lc1rYpwZDJ8x6OTJuU+u4f3ng0KtEfyBFon+QJWv6CSSNz6Vmyh069TILOoHtrJShJk9KOw==","layer_level":1},{"id":"f9133572-f531-4441-b982-14c9ae6b9426","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测量数据模型","description":"measurement-data-model","prompt":"创建全面的测量数据模型文档,详细描述Td表及其关联表(如gr、ac、cm等)的结构。重点说明rect、rect_loc字段(2015.6.12)用于记录测试任务几何信息的设计,以及Espace、Edistance字段从数字类型改为文本类型的变更原因。解释task_timer表(2017.9.23)和PLCID字段(2017.9.26)在定时任务管理中的作用。涵盖TPictureInfo、TLoggingTaskInfo等新增表在测井和图像数据管理中的应用,以及TTaskInfoCoordinetes表在电极坐标同步中的角色。","parent_id":"c8d16069-7e59-4855-a785-bdbb26529326","order":3,"progress_status":"completed","dependent_files":"DB/数据库字段修改记录.txt,cpp/ProblemZone/TestingData.cpp,h/TestingData.h","gmt_create":"2026-01-04T14:38:23.4538017+08:00","gmt_modified":"2026-01-04T16:58:35.2693064+08:00","raw_data":"WikiEncrypted:q+toD7/dKEULkwX8wtq57xadr/H77wz1zTdwtpfx3fg4VsNM/SRC76n1kwwQqY2jFPXozFHaSUUKylUapEYRpSwUjedSOm3kTer1V99+7fxpnGP++jKQOZSaRNUUzzf4rDTb8/LKBjs2SNYhFcxo8MfOjtTalQUIiruNXsTcB/cRHjtEaEtc1h5hh1vnSf3tw2sHnoSopxO8qzK6L7BdD5FsfsnZOG4m4S1RaUoqOr76y3+Ia6ve8GCeGQiP7L23zWIB6JGlBm6JMKxSPPlKdxPIfAeyXc4hTuEDFkMmKjR+ejW4jO0fuByZkGYTE/HGO+P2Qq2gvOWgQAtgFJVpHH6r696hzH0DYU48bSnxXMQ4f6xZ2Pg+DKYbhQ3AKHyBkLlnt0C8J1zN4iQa0S0ZQJEmUZaVQ2MR+pzjNV3vHZHFPbz6FP7NcpSrC1DO9t0XWbcY8nZZJT9JMN82mSQEJ9uZgDlMhrz/G/h6bKyXtOPkiL1o4w1orLefKIF5L5o9gPGH0qnmL+d6/Rw0mBKUuubhmMuW+aqMvTugIlxoAfq9wN6tLCNQAYIQ6J4Bq5jGKuVSFbswxmqJ7NN8vbBHfqnxAVLFUFRwEHROnBl1DsrG8k/6/ShSbLLu52A21CDQa4fr8I8Mz7At7etcML4D86yKkybVqv9pCYkE3SVcIcTi3EqH9NAaIG51TzL5OE2xEWKvTSDIXTTeR2/IBREIwqHBWbLnIAuw2ZrjPf/4Om0tTY+UdhFHygneVWGiJMdN7S74c7qnqXeEE1WOrsu0WXs7rJTvAPCpZ6jzDTXq++2Ay3SA2IssFWshf3kpAs6eIfNxgR0rZsBaQTig1qMSC5Rwgzo22fNzSGt/q8FWBNLzjuB4LLEUY/mvxiN4YpoKEne9urcpvJEhD6jscG+8gja4s1vX+LsYjD9IVhzwKLhGQejQxR7Nk4DP0NawAcBhvpkZ2R24qofoEyR1wjVYlGobYdcIt/UxwQiCe6NdLtnL8N/IOcK+Krhwk5iQY/C5qj1Og86dQCKZ8ZE9J+LlIsdhxZdvTerooTeAm+eFD5pcNrD4g1FXRZAQmOrIK2tzAIQEma0PVdq8/AAG9EUswquiXG5Yu64bOBbSBWi5OYgkos/O9NlPnRt7pTfJrmDEa92NPK50YV3LoVqosoD/3g==","layer_level":2},{"id":"ad5b9773-a249-494b-b6ff-29d525184400","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"事务与错误处理","description":"transaction-error-handling","prompt":"创建事务与错误处理机制的详细文档,重点描述CIOManager中事务管理的实现方式,包括事务的开始、提交和回滚逻辑,确保数据一致性和完整性。说明在批量数据操作或复杂业务流程中如何使用事务保障原子性。详细阐述异常捕获机制,包括数据库连接失败、SQL执行错误和文件IO异常的处理策略。结合日志文件(如upg_geo_filetrans_log.txt)说明错误信息记录和诊断流程,并提供常见数据库错误代码的解决方案和恢复建议。","parent_id":"9c6698e3-6e8a-4c4e-979b-57426f8ebd31","order":3,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h,cpp/Tools/FileOperTools.cpp,h/FileOperTools.h,LOG/upg_geo_filetrans_log.txt","gmt_create":"2026-01-04T14:38:29.8096541+08:00","gmt_modified":"2026-01-04T15:51:53.083285+08:00","raw_data":"WikiEncrypted:pze/wTPA8hT9dADtWGlHVW1bCmj7626nCg0+NWtQnxFGGoqjeNl4pj+InRfYAv8Zas0TKb//uFUwpVJKyAvEXqYKxNiJ3e3+pyr9m1npNzjRL01iCokD5JBDnFw4JPTjHrU6x7QcywgXzLV3GQlIFoVRN4yPqNnkfU5tlafxMRnOSukG6/VPiAJqx7ATNdffVjpxkZPcgH0F+nVObsNznhKTGOc3hCzXRc04/GiFxTeYI7FdKR613/prWVzXlosGZ8LaNf+h+8Y+dxWJDFidhMdB0ldiri0+hnurADE8u9zn32E9n7bSMVOpSoR1zTTVIrBKUoVqSyZX7kgBqA0SWgAp/0qznq7ZocGbOrY0t1E7HleGA7wvA2TmHaWCKYsUcXQOmYTdRD+XktiOuYWQiJTG3qmjlpE22BR1E92T76Et2/txKzHOP25wXTOtOJBa/kWAC86N5apSO84h3FsuZ4iPjtsllEirRMWGSI0U/mn4wJHGyv7+9EKxKEZgJ/U6TXMjpQAZx+aG6CcaNQo5a+2iaV4pfFs+dt2NJyKBcziCX9nVesZQMV88mpJQZnO4RbAHxjU1JoGSMJAnnvC0CuLbfLmxxy7CvrA/nYakTY4ORwki5jITixE56BzSYi8I6jR3BoVLCllOOlSQCaU91/zd88SEKik9MmLGfxChoxMH8/SIqoOhFdmm9SkHIJcZDGh5Bwr1QDPwfGV4qMpxhIhHmmsj8+xamfcDS3L4oTb0MjGtE2Q5JE37yMIEc6eTdVBvA59dFN3CdjMphi4qU/ZVvKKB+gZInDSgL7lLgqalDfoD+d6dNcQawbwQN/A/X7VcYyNkUZXOIl3V82m0TnVIpCNjc+k7VLAgDij2pTnQlZI4+CbGPvb4yBspOqxdqt4ppejR0V5DSoMQNp7pDUIRJFnjAx+GbDd2C5Oa2MkRaatjM6g+CD0sRZrX1WkoNI5TNYwcJ1DD2MTLZF94cVxC1REiuU7g0LxMg+l0s27BP11Oj+WjaixUgVqQY0NISy8kiy91U7vpb/JxX5VSEtNgkQRXTWDDkCuJjFrTZwXlJKxRFO6T/c5sL5SZsUU4/ngZOtT1I2cyxGbxbzecxsnkt1ZdICWW4egeJapzhn0q1dx9mUygpWF98Ugf6uBdpBqHDo7z13hxNRVz4/luJ612bKyGiedYMBlXE7SDPqWNd+XeQ72nxEVK8OrLC8CcIhOsuC0oJcYatnR3DOYaEo5fwxxPKJ5CG7XKmI2/Fdu/4N3nRg5Xtljsnxygk9yH8ZSNWO9tU/Nmkal+GnkREw==","layer_level":2},{"id":"d94d8cc9-9baf-4a97-8867-b65f6582bc53","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"自定义脚本","description":"custom-script","prompt":"详细开发自定义脚本功能的文档内容。解释MediumCustom2D类如何支持用户自定义电极布局和测量序列,描述CustomSptQueryDial对话框的用户交互设计和数据输入验证机制。说明自定义脚本的XML存储格式和参数编码规则,包括电极坐标、测量类型和时间窗口的灵活配置方法。提供从空白画布创建自定义脚本的完整示例,涵盖电极拖拽、连接线绘制和测量序列定义等操作。分析自定义脚本与标准脚本的兼容性问题,以及在非标准地形测量中的应用优势。文档需包含常见错误如电极重叠检测和测量序列逻辑验证的解决方案。","parent_id":"f9b14c41-cd08-4332-9260-515b5e630379","order":3,"progress_status":"completed","dependent_files":"cpp/Managers/SptManager.cpp,cpp/ProblemZone/Script.cpp,cpp/ProblemZone/MediumCustom2D.cpp,h/SptManager.h,h/Script.h,cpp/Views/OpCreateSptDlg.cpp,cpp/Views/CustomSptQueryDial.cpp","gmt_create":"2026-01-04T14:39:14.9836733+08:00","gmt_modified":"2026-01-04T15:49:45.5057762+08:00","raw_data":"WikiEncrypted:VrTOMK0P24YINQ3w81YokbC8jaFyI4a+kuS2kjDpem7bABQEh+fs4SSbEj6Nu9FcY/DxaDD4rDpl/xbgl7FQmmbsvqGKI6MP/fbMjedD+MEQRrpYHYDLjARDOONuF6NpAIewkm44/i513oMbHCJV958oSg7RliTp8h6WPJ0s9YgfrAHRU9w2j8LOFdb7kK/aDsj9JS5h1EXfHsbzzMcI0G/4tb/h6+5z7TOTzAU7XflMSXUzJ/+2Ui2hrjlWdbsKOxkUUUzDrvJjpGEgJhAN5Cj2wZU1ZjScDO4Uclbwx8rI26xMHXYXgyYVtfTOmBbJAmfFKB2MrYHIEs5YqCzYD4JoL2n7llJyKZU/NVBtRQAZG2nSwhdEJhrgDYA7ZtyCoiW+OBEACRwpltRTdiqraRA7hWnu0t/RK7NfXc3KvsZojiPPzuoRofWO8XIGfaJSi7N+QsPGYlpnCUsfGs7nhycDtq4x7L9ADVca5/GuCnAL5dmyes4+8ZtyR1ZglWsbgswLY3rdI6Yvgi+4fMa9cBUPem1gWBA+INsGFZ+l1nudxVc7NR6ebP1EmlIWzC1wMtOJ82xCPN1ZHJ95YpHN7yjZ3OaOE//PUv3mk5z67iqgcHd4oCBcc3wzECScoxjYtBzibQjsegAADCdxX+TnrwF+r5EsdoqrUQTw79UrAmu5FYfAsoEGF32ifRd0VchvdaBLN/mH28rfO3jC+5KUgl1c8K3pODdP2tRmu58TDUqUi/PqXOSw7/DPZHd/TxKFNsHpCsSOnsR8MQI/PtsEyBwhfaAsa1QeJ1sCLcheUOcm02r9a26vUZyx9H6pOlTlgevCzwzKHWHbGnRNF1h0NpuP4p+bWkZZ6X3upodXxCkNjrcsNRTgx89UjxCt0JjfZnyBSlc6Wf0Uy5mwo1iz4gl7re91nFs4a1KbO1oMVmurBvIRnpBlSbwGGRByD1zy2KlekH4x3jSicLrOMgx66mhTxzSLBkJeexN8azHGhnwDwo4S3O58Pv00ikeulv+04bVWgChLwLfF86ROIueAY74ZTzJ1wmFE7KMvXrOvrgYLUeq1bP1ByMoxp0DVQInMMpUYFQcry2/MAD7yFG2riHNqJNQSmLmkhPPzVzwaYyBOxbthxHs+D2LcGaNfri474Uq1tbfdAfSK+3bWDCCnNbQCdsI/hhzEoH9242EZ5Yn96ivJsvDWoFU7g1tFIJyhE8jUyBWfPbjfHPF7Ngj96Cvr7PYlSTPFDXsCFmAQle9V3NS86Vvz7cjir9dpYSn21sqw2l6VozWfo3cFHA17etiBKcFV6Vg5ME5LSGydBFsFC23npBhXr595QzqcUoRJljIOpwG+rjYFLnCH6rwnvkJeUztHVKhU+LlxMvK3PYUWVqkoE9bzPhKevh89uoHRs0mWPX+DRlyjBeyWiyhMA6u5aLpmfhDaAjT6dIiRhOu0XHKJCcVBxR7zb2GPXQbRTYPdg/pp/o9EorztfFpgSw==","layer_level":2},{"id":"b735823e-8739-4422-94da-4a0dd12c659f","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"责任链模式","description":"chain-of-responsibility-pattern","prompt":"深入剖析责任链模式在设备状态管理和任务执行流程中的应用。说明CProManager、CDevManager等管理器如何形成处理链条,逐级传递和处理设备操作请求。分析CHandleProcessor和CStateProcessor在状态流转中的作用,描述请求在链条中传递的条件与终止机制。结合设备连接、任务配置等业务流程,展示责任链如何实现关注点分离和灵活的处理逻辑扩展,并通过代码示例说明异常处理和状态回滚的实现方式。","parent_id":"cb10c152-afc1-4cc3-946a-3f100ebea9e2","order":3,"progress_status":"completed","dependent_files":"h/ProManager.h,cpp/Managers/DevManager.cpp","gmt_create":"2026-01-04T14:39:38.6007809+08:00","gmt_modified":"2026-01-04T15:51:53.0992282+08:00","raw_data":"WikiEncrypted:sNOp5Qk1lEyEezulpU8L+pPK9Ut1niyjEIfXZ9pTY1AoI0SjKFPPeh+v9yinYeDad4DbMOdxnx3Q1vrAL2zFaJftMVjszK3qb/JskHsolXcEO2whxJKNDPr3bJO2vJEQCzHN0su3wZAuU69qJiank+OhbZ1Cc0lpYi0D17PH50KVd8yr4nD8RSfkBVMXjljJUNJBqgkWYRu47JDbQtfaZbB1N8iP3kZkGg5YJp+8Hn/nt9SmHQ9LXnp58dr4Qp4a+5qLLrw9GzopZawp/MqOKgdaw5ZMifrgdW+G/2jeDVQUaHq2G0Pmt/FlDZrPeEmDENeTfDl1A8+KBnHcuqv+jur/QV8F5AecxUmU93C4+/MF5QbYRsTP77qpM2WZP6mfaskxuX00FYj4IMB1Gf/kCsCd46uMnII91VNd3XfUnlyWyoH/XVS9yubrHXR0r4hwQXKb9BI5p2dJ0M/bddXHH+T1b3/n75URt4STfE35NBJLQIA46wfTVogwu1GSB5Q+ww5oFc3skjCeKXwmwSbyvveJv0UjNZgXqkLAmM1T66PU812Kdexcd2WUwNM7mdOlpAgtVGh90Zr78ymCUc8b+qGo3Vc3uVSMIJHDT3v04kQA2frjkcV8aCbLnu6hQ8TrWAP+AOAy6rKc0yjYHY+sjGvUrVVVkrLzPPyHRZ8k+es6To69IQ7bQy/nj4HfNJvxYZHMEgwwKGWoczcQGfhouz23o91L/lmbyZm7zZusuPgOia0JRuDxblqhzMHPorCP8wee279xhWEOO328oEn6GBP75tyFMgzuBNFANtPQee45gr2syFeAFDT3Z8Ofl3F4EAzEXb4E5QTRspQ5wVNriaKKgHKNnsRUkQ/mQifUdP5pkfzVD+7zEj+HtYHADj4eQXFt14hGiciWUCourGLBb5LnEP5WkWge79EU2n1/ulNUR+oXaho/W+55zqawVLyV6sgm4E6rK2Wj3tmX77WkhfnwWbZCRZafzS/UMbIuZjtmEH9Vwk2xVMRIEFEIYnBS4B4ob38skgl88g3Gf/UZVFd9aoMcNgZ5O6iajNFGrzt9m7TVtB26hVZ/MeVLQc7QcSJ+Lzs0nZjtgIBmEbREUyx+Cuue7PpCFsjB/v24MIbOTWCUL2G3Q1YrKGsBIhCj","layer_level":2},{"id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"ProblemZone模块","description":"problemzone-module","prompt":"创建全面的内容,重点介绍ProblemZone模块中的核心数据模型。详细说明Project类的项目数据结构和管理方法,Device类的设备属性和状态管理,Script类的脚本配置和生成逻辑。分析各种Medium类(如MediumA、MediumB等)代表的不同地球物理测量模型的实现差异。解释SP、Rsp、Ipsp系列类在激电测量数据处理中的角色,以及Channel、Electrode、TdRecord、SptRecord等数据记录类的结构设计。提供数据模型间的关联关系图,如项目包含多个测区,测区包含多个脚本点,脚本点关联电极配置等,展示完整的数据域模型。","parent_id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","order":3,"progress_status":"completed","dependent_files":"cpp/ProblemZone/Project.cpp,cpp/ProblemZone/Device.cpp,cpp/ProblemZone/Script.cpp,cpp/ProblemZone/TestingData.cpp,cpp/ProblemZone/Channel.cpp,cpp/ProblemZone/Electrode.cpp,cpp/ProblemZone/Medium*.cpp,cpp/ProblemZone/SP*.cpp,cpp/ProblemZone/Rsp*.cpp,cpp/ProblemZone/Ipsp*.cpp,cpp/ProblemZone/TdRecord.cpp,cpp/ProblemZone/SptRecord.cpp,h/Project.h,h/Device.h,h/Script.h,h/TestingData.h,h/Channel.h,h/Electrode.h,h/Medium*.h,h/SP*.h,h/Rsp*.h,h/Ipsp*.h,h/TdRecord.h,h/SptRecord.h","gmt_create":"2026-01-04T14:39:49.5837122+08:00","gmt_modified":"2026-01-04T15:55:12.9408327+08:00","raw_data":"WikiEncrypted:synj4vZyO2CRjmHsI8TAFDcZcEiTAfb95SdBxfHDTylZgCmb/cHgA+ogeena3YxvMuDCbNOjo3mJfi38UxE6VpnBE6G3xKugisCtC+ykMQglrZMg3d6Bsp0Dqe4OHcv3RiexuaDOF84mZL/mz9sdmqlEJ04oCzNUi9k2a0ms0P+JneolqgLbh92hXsjWTuDFHfgrDr35uu5IfhhuRYtlUj85y8Rbbv23ZG8upAwvTv2CnqEqNGTqKhllQU5yX2INHZKeKCSYoPxy/29Gcp8SXpCstHQ6/CpLNSz9a5fwjcOFx9PqHC3yUbs+4cMQ95csbjknovmf70UUOMp0zAvAh0l7o9q6FbLg5tU9iiIyYMLNUJsmfeZWXiFzxktoSlpQ+3jmPuAbKLaWE2lQiRzewbnLOd/p7td4q+zP0torDBi49fOVfw81LBATS5gUrdadoA7AUWJTeSUSvUqRI6xUumk/xYzIleRpAZ5agnWXgvRbUoB0ra7KHJ2xfnDexrJpnTO9tVbSkQ0Xq8lYMDWV/RL/DIqWMg7D7BaEZ7AH1/Pk9zRWZmKjiIGyI7uKW47Q9koutJmnK4SL5UIT7WVqDcC73o6TkNZ8DTrxQmoBkJO1QQ6+IX1LOUxdsj16MVFYbJ/eG/GuEQHvtec3PjpUf6g7RslZ8N+jLf5n+xoxypvuxf53rVn4lOP8B1ag0nhXa9MxbwJiIzEofCoZ3HiY1A9LKUli3ZKlVbsil7F7dh0efloIZjspEM8sNFB9pWlxeeu4KIsTQN/XU7MRqnh9EnzxSo1E1H/XD7hPABeQb5nMZKbKxl1fsaS6sU2n+VSEFLrZ1YiGY4xS4TMghJQVN3H++0lQ459v+BkxXQ7mde9CgT/NlmTA3DFa/wTA6gqXTq02JuXFuqGo14FN/WLV+0U/jUjioRkwjE13SU2yMa5iAwGfYOKBxvOr3dznvrSH304AYP/DYR8wtbHNV8upEqKzJrLp7GO+kpVtG3J07VC8Unkpi7lY81sKY9ugxmP9JdIi5mjm1gxt5B8Yn5w3xwZ8ZwsiWL6mIGGYrVl91HrZoC28ur4yM3dAlSnn3y4EGk/EDgdiEK9CTtCYpeMP/VJO1BNrzZglyt5w8mvIIF5BWb3lk2UwH3gMzWRVRXixafrTDrsuZ2Oj+9hfGKs6UMom1ZsO5A1SUHhrvS2RfTH3CC3Ceyfdoa/+zk3hWSl8JUiEAFh+6dqcL2Lvl2t3O5Qa25N83TuwQ5imAJET0Kz2UYRs7sRItHPqLeCJrzDUk3KJ7M0iQa3hEF0EcF6izHVuINtyKF/fOHPIJU384ztUIXzycvEk5YjxgFBapofezzRdNcdru2GyGtfoxQjwylM4BYlGNEI+UVmzsiDmydWXBHtogEPP13JLG2Hna6DRR9uDiUc66ql+u2n7i9ym9veR6eCI+fCkxaBwgGf/DCzAaaJsaOxWxLXFirz54Z6zZD1rWx8RygY1tsW+3K3wDP5fuiepYARc4h20xo8YD2ef6Ykpsn/bMdCfT1rlsGWfpK2blqucnx52IWEpv5AnhT1nDrcDRZPQEfQdOmb5sA1kbNXWjcjcSiUNPHEnSg1GfC8yikIsXJD2SH1A9xhnf+HicrqVLJhM3/35HFVCe0qeZrW4643UNH7r2wja06bRZi184VwlQYQVPJb7Tv/U6pK+s1zBlVNoCYtXuc0tAIig3QknXTgvPO2HoTrIoKQTGxAha6T1Jfm4AUnzcbz/TqfiBzLii7yk7jhZRwOcHdBFUrQzaAMWhR8yhAJycseOmlGE++GBHX6+7X4zzxVV0LQ7E5jnvlA4oiJu5FqiI+btv++nM0ARB8pNORhYdiLGrspe1pwvAqzln24M3MKCAJ4m4SeKF8VSstn3ykaQNHx97wamndrOILGUYKfq31nxcXeIwdu9jh0Bt0x2NLeddVz+TXP1CevCPKmFx+8u6QTvmyLlxBEwHMtism0oLR+l","layer_level":2},{"id":"63fb53e7-96b5-4cc9-b6ec-770efe069eb3","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"辅助工具","description":"auxiliary-tools","prompt":"全面记录GeomativeStudio中各类辅助工具的功能实现与应用场景。重点说明GUCodeCreator.cpp生成设备唯一标识码的算法逻辑与编码规则;excel.cpp实现测量数据导出为Excel文件的功能,包括格式设置、单元格合并和图表生成;checkupdate.cpp的版本检查机制,包含请求构建、响应解析和更新提示流程。阐述floatedit.cpp对浮点数输入控件的增强处理,GetProcessInfo.cpp获取系统进程信息的方法,SaveInIP.cpp和SaveInRes.cpp对测量结果的存储优化。提供这些工具在设备认证、报告生成、系统监控等场景中的集成示例,并说明资源管理、异常防护和用户体验优化策略。","parent_id":"032e9cba-65a0-45f6-a932-d0cc7e0b2908","order":3,"progress_status":"completed","dependent_files":"cpp/Tools/GUCodeCreator.cpp,cpp/Tools/excel.cpp,cpp/Tools/checkupdate.cpp,cpp/Tools/GUCodeCreator.cpp,cpp/Tools/floatedit.cpp,cpp/Tools/GetProcessInfo.cpp,cpp/Tools/SaveInIP.cpp,cpp/Tools/SaveInRes.cpp","gmt_create":"2026-01-04T14:39:58.7431366+08:00","gmt_modified":"2026-01-04T15:55:12.9460804+08:00","raw_data":"WikiEncrypted:m2kIapzkdlNhlQPV5E5ri/3yRVASV1e/RLbU5joETs6fKaKxScOhF9oSHzLLhgCUID3OniksycF3teY1WOp9l+L+UW/jvgViEIgj02QOXlCnj9pkdkMObb5HKR9JYPXWZh048mV+C7IUkNxtKtLo6s/P8BESFdRSmRX7dsU54HRO95/UljXdUTNQ/TP09WKQcJj/kK6QxX/UAtSeQU+MP5gm3p9XAI9NTNZRCwTzeI7nZ02GPk8LIJYbjvH+4gC2RLf7r0bpkocnwseuE6WGrjxWJYhyBZRfqmyrEF4oaVfs+uaG3CvV1FtSx4wKTrcRWby039XFtJwOSDe2oUSmkruqHj0pNAkIcPQ5uHjw5/P/1W8Nesa/0illMVphDc2QPmhbfQZQTE5FdE7TPeX30s378TY/xLWK6sGT3rSnALg4ZaY/Bik/ojAVDhsPGmEiXn/NYvfpMwEKc9rlXHVpXKTT4nuwyXYWZPELKlIdrkxby5ACBRGS85cT+zlPqO6KaT61D2tgdeYgQxIQNcCL7N+lzjYS0T2HhxmW2143xtG9zctIH88DsU1ndRjuncnOh8wWfQwtlnhoiWgu+Xl+/OqnrW5dxHKIMc12pGug1zyojRe2aJ377/qFzWE4hyMiRbzvz6FBpO8aVBZGIRUT6vS9aY5S5y/wpgkqX/DtwM6kW46dBFadmrU5Rg2eO5e0NckxCIoAqv1lk1BQvt/TkKdzbKHBEBlwqwzsqhlro5C/9dUj5FUgRhSpsZE6vtEmSUMLZ8UQWkAq8VR7f67rmSyovecgAqzCvHHuOSTN8Rq93Gt+kYR3hdKjetUNOGypm3LkAswqMEZdj8J5T2nXJyg40d4QjCdBR+Ljuc2rwHQcOy9S3PVAE7npgrFzY6XLRrO+D+zrYyyRtLLGAKLe6XGtNHAj9eYjrh3UIr1h6a8hyhQrn+0yrWeceoyaHu7irUcYwggDWt/psCUJNut+C/fDao34/DhXMWQ+3rlSoS4GPnogHqltxsAbqId8Wgw/L+PVKoxZolu6aEovb4C6J+GyH2LcKT/sEpEXyYzqMUlphhpNw2WDbWWeN8F+BjCqiFtik6fT5TTxaVKfVmsfNJEAuzvUkW3aUagVfHWl4FAErzr+xnRH/qbwqKEBVrbHkH8egPxq7SbE2ucFwoxHZBAWGl+lUcy84OiKFtf5YcI7qPEXKYdnv5Fp79ras3o4tZiRAxIIKTUDkYodsMPDUNjsvAbQ2g/2VMoIapvJkin/1IKomAK/7Fed+0A1FlymAfl/pXEKrIn3C55jguUDrKW7P39IA3R50v9qJZeYpyedWRGaYS+O25MusW+u2faFuZiop/tJS5oi4Ucrq/TGmv968k4sQMNrgSdzbx+4UIul/Hk0OXyXXKfvduVkYUYH7yQGKacTXZZNN2pinU/Wn3M4DaoeCz3QtoBx4pgeoX9b3WnI9dqLB7onNFcxn3FCNMndNDOYCtMZGoIpWfBol6xcy1koRqv6R3UeRBLYcSyqweR30/gka7FruJQbBHN1AkRl5bDKuTlRGB9P29Y0MQ==","layer_level":2},{"id":"e4f9d02a-b0ab-4fee-9773-296348285b92","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"TdManager","description":"td-manager","prompt":"创建全面的内容,重点介绍TdManager模块的职责和实现。详细说明其在测试数据采集、存储和管理中的作用。解释TdManager如何接收来自设备或文件的原始测量数据,通过TaskDataOper进行处理,并将结果持久化到TdRecord和TestingData对象中。分析测试数据与项目、脚本的关联机制。提供数据解析错误或存储失败的解决方案。包含代码示例展示数据接收和记录的核心流程。","parent_id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","order":3,"progress_status":"completed","dependent_files":"cpp/Managers/TdManager.cpp,h/TdManager.h,cpp/ProblemZone/TdRecord.cpp,h/TdRecord.h,cpp/ProblemZone/TestingData.cpp,h/TestingData.h,cpp/Operator/TaskDataOper.cpp,h/TaskDataOper.h","gmt_create":"2026-01-04T14:40:35.0863812+08:00","gmt_modified":"2026-01-04T17:37:23.3089591+08:00","raw_data":"WikiEncrypted:ywEpXWrhUNshbt/p27qkml0p1ZiNB9i3C3EwD7mKn3ZWJA40kt62v/xNKPpc34JupGzZh1LtCV/Iywm4kkGW8kZA4y7pIHJQ4oi5Q2VJhgtUjZV8UixREhq9iqQ77cvxa5+jw/kuO7NFIbSxPg5vK1eqRYzQg2TZNQ7ilEJuyjoCm4Vg3QD9tPu8j7NtpmMhF1tF2D/XpY2TaEb4h+cWkmKVfWQexPm655RL14NpJUZZAPOkPeHUvok3kFrmijFxY/pU9+zzzuKTeNMyDuut3M2qTPVEr5lZDrqemwFysUu3j3S1frNqybtjfV0++uNzZyoxRpP/YitpC9f3nDI/zJ/fyN9j4w7JgAgPl7wO+iEg3aKlqhWkvAWl3FUrSCW2w+8GVaEES3SYqdyuU+ow38zJNLFiQORVkLrkiiiSnjQAU/V5h5Lha1rQxyrGTtjDMEhCUGszlDn/7AJ5L8rkw+nAQWw4ONBvkFCMqC2TC3Bzo53g+C97UWo0S/DjmMCmi/vQNuPS0vLLLLsjnMivDNZh6mxpaNaDo1URriA1+LWUTv/xTm2XOSwz8FsUFzLd35UVqDAbpGTTKCgsHXICLvXIhI2qcV25ZanJUbaB6L8An7RfqSAMASfN4yNW4Yb94Y6mG5U0dYr2cJqIKo2SCvU1sgCKb0opY7rdoSQ8K0VkFhrSNfK7JoiHYx6bugFKjgJz1bQw5aEfSwivlfddgrTFiQLNRXABSypQZVxdd6f30m8ROa6RVZM00O/n1UTyC5rAEFh9IL04/SzBPP9XCxzjbV0CnFJA/KkN1rWp1Bu9Z1i8ylAYFhY9Dn9UtFGBD89YLzomSF+nOUPDETIYF6T3BWXWWpzVOgIfzF0tSQnQc/m7ejzmbjZwSHMEV6FxxOu0vdVJlEmoyFG+0Sl6B1cuRKmnDIpq4ObB/c2Rex+x8ddrn8K4YUtUhm45HxxcdIHn0hu4Y5yjiaATZ/jJ0w2FpDH1QUuYsvlT8q6EIm+ZpaKnzT4bxCAEcLMAthLYgud9qgyZbsb28xcrKpclHBLru8hks0zrnZ977OCbHcc/3IlCgKQnoyceRBV+GnguPCNVVf6N1FsMo1V+cGRP1y1rckVXb9BJ7SKIwNNSxJ/FlLERXUlTD6NUze2sbzUEWkXcO51pqkwcBUzfWbyNMg==","layer_level":3},{"id":"c3733e40-a5bc-4ddd-a13d-50f40e2597f2","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"ExecutionOperator","description":"execution-operator","prompt":"详细阐述ExecutionOperator在测量任务执行过程中的职责与实现。说明ExecOperator如何协调设备、脚本和数据管理组件完成测量任务的启动、暂停、恢复和终止。描述其与ExecManager的协作机制,包括任务状态机管理、实时数据采集和进度反馈。结合UI组件(如DialMeasureData)说明用户交互事件的处理流程。提供任务执行过程中异常情况(如设备断开、数据校验失败)的恢复策略。文档应包含性能监控指标(如采样频率、响应延迟)和优化建议,以及支持离线模式执行任务的实现细节。","parent_id":"227e9457-67a7-419c-bd67-47327f71a1f3","order":3,"progress_status":"completed","dependent_files":"cpp/Operator/ExecOperator.cpp,h/ExecOperator.h,cpp/Managers/ExecManager.cpp,h/ExecManager.h,h/DialMeasureData.h,h/AppDataSP2DTdView.h","gmt_create":"2026-01-04T14:40:44.5468152+08:00","gmt_modified":"2026-01-04T17:36:28.2161264+08:00","raw_data":"WikiEncrypted:jMgId5h0EoZtwilIIkOV3u7CEyNtfC9DIOjDgLRN0Ki8YL6fVG5XWPVk5zd0VhmwXnx55evleNKd58EUg5s5k65nMPmPrRjfF3IxYtXtzjknf060XMvT8q8r90+p5ztAdhRYS9sWmLhvy+15ehM0QSDNRdrtUpp8BZ+EkBYOoGy4msqWwqtqPIdTJBiO2uDaJKZXiCUv1p7OTmzo7Gi3VKa9CNW4IDVhsJS4YSX4SVNJRUaRTEbTa0BKhnXkpK57oQ36j4QLfE9Jv9AIA3MUMK/sD7LZSY5rG10kjSwFAfrcRYCBXnWk50ObcWHb0ewE7enEgZ2q1i3pSOYA2Up3FbHW7rS62Ovwk5EAQFlPp17b5R98vG4+0h2P6qFxgiFROBRVi5xzpwFxuhDH1L6PSiQ8SaiUi1zevWf6gGnHREAfM8Eb/ZFuqjrykNr2IAsXFo7HtAi6ofE4MHrjR2fmL5leT6M1Dr3F9IzoLHEYiKcLKNE5UDWFVD02zs12aNoYjx2wMZtV4PhWRP9ITYZcX6dFDKhS27jrq2dIW99qQmTrXGJn5woKyzPq1tOPqi8VJ7kXrJmjeGS9cvW7WTa67I9sbhSpsJJMpfbLC2QX7pRogqEqmfDh4zghB/UFLzX6R0x5laWYbSdgHqd88rwpgieSjwnVmlWAeF0Ct9H5UQoju0n04/1ANmzA02imoWyz1pJQyPx1qR3492x34pgOezvrs0BFBHyBKFBfMlQOMfIennpy466L/1HLDuUHrsDNfmJ3i/BqQu5MTrcpREOGkyxsWRZux84rec0/RaruibC4YxcjcKVheYKNB30PALnY8H7gO6IU71xobta7fVA0UOQMxwKhxHkBQdxRBl+tBizYybeqg+oJIbPUPXNYFtMLp68m1OrElML6X8Zy0jSMDX0x6J5eDpBsAysAtg0Rf14Fg1qhcoXq5I7P5JmlCnxoTyoCPNKyZ8h1r2+kKzuYONYAOrzHI8jEJD3m+Q+0g8hWUdXn9Xb6Uv9ICLnLEhxAoRVJ6QSxiq5LyBjAwFE2QFwyZkubGE2hMk7wnsaYV+VqRePo0lsUtK57DA5vbAzd7qZD9Yd8GgH1ZNb0PQjEn/PE6u9aSWOeYhdWOMs+LPDYPlGBAisLBPYlUStRWJy7mzE2HnBWVSOJtCFAOBdA9P3otGunSCHkRO01wi/pl8+QD9ptbNaJY3rlz+us+9ceqFTN0nyZMepM8NiGC7JoqS6pWL8gOSHuDb0H0BEP09XEON+zijOpQk0218InUbhdHmLVaGsXPeiZ3HGaoRrzzU7yDtvazGqjUl/db3s52V954uaAV1sGS4U8Zwf6L6p5KEL6WeyNf4hHmt4TRCHrxA==","layer_level":3},{"id":"ec4f27d1-3dea-4fce-8eb1-132ca0f96e92","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"测量数据模型","description":"measurement-data-model","prompt":"开发详细内容,全面解析GeomativeStudio中的测量数据模型体系。重点阐述TestingData类作为顶层数据容器的角色,及其与TdRecord(测量记录)、Channel(通道数据)、Electrode(电极配置)的聚合关系。深入分析SP、Rsp、Ipsp系列类分别代表的视电阻率、电阻率反演和激电二次场等地球物理参数的计算模型与数据结构。结合AppDataSP2DTdView.cpp等视图组件,说明原始测量数据到可视化曲线的转换流程。解释Channel类如何管理多通道同步采集的数据流,Electrode类如何定义电极几何布局。提供数据采集时序图,展示从设备数据包接收、解析、存储到数据库的完整路径,并说明数据校验与异常值处理机制。","parent_id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","order":3,"progress_status":"completed","dependent_files":"cpp/ProblemZone/TestingData.cpp,h/TestingData.h,cpp/ProblemZone/TdRecord.cpp,h/TdRecord.h,cpp/ProblemZone/Channel.cpp,h/Channel.h,cpp/ProblemZone/Electrode.cpp,h/Electrode.h,cpp/ProblemZone/SP*.cpp,h/SP*.h,cpp/ProblemZone/Rsp*.cpp,h/Rsp*.h,cpp/ProblemZone/Ipsp*.cpp,h/Ipsp*.h","gmt_create":"2026-01-04T14:41:02.6672042+08:00","gmt_modified":"2026-01-04T17:18:01.8005687+08:00","raw_data":"WikiEncrypted:q+toD7/dKEULkwX8wtq57xadr/H77wz1zTdwtpfx3fg4VsNM/SRC76n1kwwQqY2jFPXozFHaSUUKylUapEYRpSwUjedSOm3kTer1V99+7fwZ2pgxFwNI0P4whJJ51+AJyMo3woyGVAVUJfGU8W7SUQM3wgXNaumWMIgap/6saNpqFlw5P6zhgwUiXBAVF7cfi9iL9Dy1jg5+oQ+vmMtkkJWdDq3rzk1qowjOR09w3FTwzLDkLzb4gU3ful9kgX1RN3PfUAVVV0ti1oFacbcd6Q4qzTR0N+mY+9czkozrDOf7b+3NNj4JjkLgnQ63lz44CNHnpWdYEPDsj0OG3mF/gMZbM9jowvWGyWoJgcEXl89ilPCfl78kXhJi0ojldUGUurXTRSS8tggXsKokXYLaxbQMnojNgR9T1aj3iSovtFek5TaKDXWQzsdiJMcLGgcsSguCQ8KRuJEUnztrUC0mFCKbKuVQGdT7Yk2MuZmRJYC2lO09KKuaamZH58HTnCtDBcRI1hlqNbZgATkRVlWGXLNuazKSgjqs4o84NgI9rtRzU5Kj7xbUJVo1rxOYI7ypozryW2AQzmzZ+EGuuHRqjcdN7Y+KEKQZqSL8k/Qyr7/wXZfsbodDBxjHvnuf3M/wppAp/ryo5mGpPFb5cMLYhCwHa25hoSfrIe4FnTQGZdBSi0DOs1FWpEWDUrhP6YW1DGjKVsNXaAH4rkq/MeJbC5h3mjLdlxWlp4xNYr+TdHlIvmkXLDKIqm81sfy5QGAPHjatQPS10HmGpaBY2mw33r9HcT5dDJn05nO/VxO1RV4KNCJ2K+BRFIDhmVBVLIMHdQVXR3aeZpEH/jEel9tHly8kgEK2gK6qxbgQocYvC2GETW47BrYYlzI1nciJBv9wPzpGs9MlFstHPx2lZ2w8QoKdQ3vaaSURMjKaZ3rySKCtuQTV2XSxGmNEcotjEY1cZLz0h8t0qiFsgcw741FhrVpgq3pag2TYCh44ASJaVozZT5+f/YEd9jge1jPe8GaU8RO8BoVO0vS2kTbtH+WxpONsnHlv6OyUt3oLFiRVERdHT6R+mELg8RBE8VFTVHfPcRcvJW/VObsaaYXS09ki8XHCwN4EMM0LsnTiW3odUg9oPSgwn0oTT6xq0uNtDtaXaUm7Ko3ZfOutrF6vU0p6IvbxNu5P4yUZ6XHh/u8XKX3yATm4DYc68Kr2rqN6NHFlNSd/4mu0FbmCjZZe4RoVb7TUR7aFXXz8ix4PpwQwntRVYKHrSFhVpubZE3y0DAXn5p8JI5lEYA8YWX7oIKKRFRxyzeVZE2HK3xlf1vxlI1Bt3KY2qfCbu+O+W9yiOrjJBdzBrSSR7Mx3NAOMSK+MIO8fj9HNWXO9tXR4iCBAdK1kMy+MPLIpdCNHSoEb8vC7vQU1KsnJsvU41ftHSQ6oXPDmKZ0Id7jDVP9dTqlCWfr+jfVOHSiTc5ER6L52juv9s8Oo8vuhd3Rg8uDWMlDT0dVz8YcVKRuTOe3cngXibboskIOX+jcYrScgN2Oktc3F3Cbl/nY6u8TWA2Zj1zbXizoaE0hXGGiAeBSx1UsDlkFK5f/pW2msjOx6nzujCQWyI1XTZR6wEOaUYtGyss5c0RerGK3CjOArmhzDPFGalkqD1JvqW+gzxdv5lRj/cbcYReMnaAiLN/x871ridiC+adSHbgJqYfoDI5JvTa2wYdbtYcI+LX+A0dECvKCd3eSmboh30IdIura+LqqH+3OcAnkhBM+g4l2CvbUDhIhMWpqNS7t6OcD33cYix7ZMUz7Tzz6gRXMbpObiJQpE5dBWsHa+LAHXfX+NPuU5+LYjDm0=","layer_level":3},{"id":"b02d0059-24ac-465a-8e71-5634182da9fd","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据管理界面","description":"datamanagementui","prompt":"开发详细内容,重点介绍数据管理相关的UI组件实现。深入分析datamngframe.cpp中数据管理框架的组织结构,DialListMeasuData.cpp和DialListMeasuGR.cpp中测量数据列表的展示逻辑,DialListRealTimeMeasuData.cpp和DialListRealTimeMeasuGR.cpp中实时数据的刷新机制。解释DialMeasureData.cpp和DialMeasureDetailInfo.cpp中测量详情的查看功能,DialRealTimeMeasureData.cpp中的实时监控界面行为。结合CTdManager测试数据管理器,说明数据查询、过滤和导出功能的实现路径。提供代码示例展示大数据量下的列表控件优化技巧,如虚拟列表和分页加载。为初学者提供数据查看与导出的操作指南,为高级开发者提供高频率数据更新场景下的UI线程安全处理方案。","parent_id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","order":3,"progress_status":"completed","dependent_files":"cpp/Views/datamngframe.cpp,cpp/Views/DialListMeasuData.cpp,cpp/Views/DialListMeasuGR.cpp,cpp/Views/DialListRealTimeMeasuData.cpp,cpp/Views/DialListRealTimeMeasuGR.cpp,cpp/Views/DialMeasureData.cpp,cpp/Views/DialMeasureDetailInfo.cpp,cpp/Views/DialRealTimeMeasureData.cpp,cpp/Views/DownloadDataProgressDlg.cpp,h/datamngframe.h,h/DialListMeasuData.h,h/DialListMeasuGR.h,h/DialListRealTimeMeasuData.h,h/DialListRealTimeMeasuGR.h,h/DialMeasureData.h,h/DialMeasureDetailInfo.h,h/DialRealTimeMeasureData.h,h/DownloadDataProgressDlg.h","gmt_create":"2026-01-04T14:41:19.6525868+08:00","gmt_modified":"2026-01-04T17:18:49.4679006+08:00","raw_data":"WikiEncrypted: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","layer_level":3},{"id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"核心功能","description":"core-features","prompt":"全面文档化系统的核心功能模块。详细说明设备管理器(DevManager)如何处理设备连接、状态监控和固件升级;项目管理器(ProManager)如何管理项目生命周期和测区配置;脚本管理器(SptManager)如何生成2D/3D测量脚本;测试数据管理器(TdManager)如何处理测量数据采集和存储;以及IO管理器(IOManager)如何实现数据导入导出功能。解释各管理器的内部工作机制、关键算法和与其他组件的交互。提供功能使用示例和最佳实践。","order":4,"progress_status":"completed","dependent_files":"cpp/Managers/DevManager.cpp,cpp/Managers/ProManager.cpp,cpp/Managers/SptManager.cpp,cpp/Managers/TdManager.cpp,cpp/Managers/IOManager.cpp","gmt_create":"2026-01-04T14:37:17.8873012+08:00","gmt_modified":"2026-01-04T16:28:38.1540413+08:00","raw_data":"WikiEncrypted:luoNp8LvFa7zGThvIT9T4gfD6KbzJyTAydbcRfVv0b4BXBAF9G/unmbHb0x4cm5f5JJeO16NqGe5C5EiggSB7kHg24VVLteAXguIbetY3tbXmNS7aareH2Z1ZiofN7MzZ0BDyHimQs6b1+VkgCClJdW2Y/wRhYRKsh/lt/13HXcWsebF3xZSj3fU2wM23iBW2CWQ6hUxCLfxPs36Bdzn4CCypPaoW2ZMHh6IG95Igau3yGcj2fLFiP1qhYaPOguNoUPL02MqCrGJdZNkJUgsYrU6aeUCiFH9EFyGX0D9W8UT1KhhDI1XaPSGsQ03KGnCOq6HoBxEQHK6CycplZFd5fw/wKqR854xwtZXQShToCtLPEXz48zCcBacCNzwO/cNj5WF0bme9QUpngxbQ8JjAQcnoN51zIQg0f3vKMBHDTZrkKbs53jl+PwaqxMTpO+3+L7du7pWCg5PhXXT0Ky4PyEN5qfmnuNTwyTKtlD4p73zt4e58NO6qXC5BTEZ+wdEBFrMq8E6RZt4P4PIQDkHZ552/U6Xjjn/X/5e3ag4z6FizfSn1iR0hrR+4OxYBTAzV2hbMlqMyt4gz3SCiKtFhp35cYYAuqwci938We+Vi3mJq+pdZWxt7nqnyOZZtRRSP0pq0KjTyjsXJxwkofl7WEPUyOL1v+tSluCWl74DZUKJvMtsYho5y3/I3MuvF6f6x/2/nLh9zlpj3MWLh+NpiLYOTvCM7ytsew0bsdiSzZoz5ruoY8tUEy8jietOyeESIJ2Izr/3PuyFQXwMNyFI45jaXSWnbht0GBHIeSoAiP4xfDBaMl6k0VRvIVyWuW8aqz33VQ+qTjO6At1/+S91itiysApay8crO5cnW5nbtnafkN8jsyw0yv7CztHIt8rAe9UOGvLrF9tSQ0M400JEAPyZZU3sYGTujEnPqSWNXfRNktqQSEZiZnNqzlWoQX4JxU6hoKkYeJ7gmLeI2Ih0f3NUd1QKWW0UtrT92TsZ8A1hbZco7+aoD52PwfdblBuUzPK6mpVe1uqPKy3HibzYPXB0jmzQJwVhM6W9cOrvK4w3oWfUrWMlVf2BisT4pRmMCwKjuH3Lu433/SQdWUP4qc6PXmXWrNzjxo7vsA1IHGHDVJ2a/WQmJcv/hU+LkhN+8Kakmo85hr7xdP6sd+Dz8ouVLhlLL/VhsOB7bohuFhez1ZJ3UZGK9ZX46rkj/mZIoe3hN7jDDQoE/9pfkGpLRuvLzW5xlZoTonyJyA5v/GS+teVD2O7vhoMFw9Wcjmv9UEw/AdQa3Fes+lmnuaQ1xFh5VladJdarKTyl22gOXlK1r61K9uJCd/Kdeuqs969M"},{"id":"024d6bd7-96da-467e-b99b-38a2ad0e825a","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导入导出","description":"data-import-export","prompt":"全面文档化数据导入导出模块的架构与实现。详细说明CIOManager类如何实现数据的导入和导出功能,包括与Access数据库(.accdb)的交互机制。解释Export和Import方法的工作流程,特别是事务处理、错误回滚和文件完整性验证。描述不同数据类型(项目、测区、脚本、测试数据)的导出策略,以及导入时的数据映射和冲突解决机制。提供文件传输协议(包括Zmodem)的实现细节,以及通过串口和网络进行数据交换的配置方法。分析IO管理器在系统升级、数据迁移等场景下的应用。","parent_id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","order":4,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h,cpp/Tools/FileTransfer.cpp,cpp/Tools/FileTransfer_crul.cpp","gmt_create":"2026-01-04T14:37:54.5691344+08:00","gmt_modified":"2026-01-04T14:56:00.8917469+08:00","raw_data":"WikiEncrypted:A+6jFzoIOdmzvFFDfBg9UaRNH2hxBAH6hzJH8sDeP6uPPbTXdpCw9xcWeJ0zfRm2WN5i0Yv50l3clPw9BIrUK0iHaHMPtHs3TY8leWz3Ne5q6aOXl1QWXo6hldw2PBE875MUmTYSW9/MhdTgnJN6RipNvdCrKnZNs8pue0SFow2OXHq/g//TmT7aYvhrbONxf9tKKcddvpAVEOCSvO/zW0jz6XcdQnGiVpyabtKU1E0y6CmmUxAR8byff6eSAhOfTNt8Lb5m12Tl9v5oSCk156BfRDOcDVH8uF+Ppr+HZJuSVB5yAiAntHMQhIULcfLRQOlZMOGvpUddMtO9NDo634d6c9767wdEF9eixqNdw9vjyte9vtSQMd7Wo0EK3wryym+zLpOa2joVk2iOQUy8+AZlSVTMIqCXPhQVLneEMkaYrZat7SAJPbDRxAOcA+hkc4LQxKId/+BVVXvpdQFoY6PmrL80yyQwpBgWGqNRrV1JenIsWlyNiW8lRp/q5gUcDyD6/YXPJdRiiAtCphdbbTB+QLFPA071Jmb2zEcxqj4QLkuxoNmPwG9wG5HDkNGh729C82HuYdUyytXQZb/dHG90yfl4hJfgtXqQoLC4cRAw7h2zoOaSS49dwDjPbQJrQZOXq0u3zUXOiTBDIJm/5j9qDwCQ5sTcb6I2RMkkP+VNfGKJ/arDzlzPyuayxJ8jkTzIvkCWkGtrhtFn++mIYZTTPnVp0JBgsD6qeEpYvD6BTM4aIP8+6LI+5r/1uVIpJvjRupWjKDvPLObpn7GtDsWWNivPDeJDN4QHEpSMv/9+gmxAU9hHeVzKZz0W+wYQOp1FaEb5Xg86HL8VmiSdgjrQswI5G7M/7V2fu7+dFkbJ7GhSKSdw3AVY8/wdObPK8KBX3zM3uf7HTWPRMoM37+poVlmnyGtgICNfc/3095k6p9+SBsKYPYIKWY/jShW5OS1y49YzBzDE1hKBMkhd57HCyDypbaH4NJth6rA9mwq/Wllbd3NJUoZKniVev5rWRq4qfR3ybXcqw9mxYRbeXuahOyKCjM4eHMeoyqZsirct2CevKAS96RMDNTP2Y3797s4DCojlt2+MTNoooPODjnu4jEEKyes35nDsZPWEmgtX4KXk5nrLfHD957BZ1BIRDvwtsbUjAYww3bHSe+B+LmsZa5XkcvUs6RFxHV/idZROeQM1p9RyfczoOaduFeVCKiO19HQDbI8VJiTx4vJ38KxbfhgjNw4OnRoCDa7dxAlPa4SezLbtq3ZULKMYmU7xyxC4WFtE7oQQr9dEp3ThNQoFmkRuSZ3trAL+x4EBjDm+2oBMerdYCYjMi7W3WvD25MZ+FqpOonpstFdQyGom3VWd+Ziduouwo09OkuIV/Dc=","layer_level":1},{"id":"17c6ee18-18bb-4135-a86a-4e336aa2b946","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据导入导出API","description":"data-import-export-api","prompt":"创建数据导入导出API的全面技术文档,重点阐述IOManager类支持的多种数据格式(TXT、URF、Excel、CSV)的读写能力。详细说明每种格式的解析器实现原理、字段映射规则和编码处理机制。提供实际示例,展示如何通过API将测试数据导出为不同格式,或从外部文件导入历史数据。解释数据转换过程中的单位处理、坐标系统一和精度控制策略。分析大文件处理时的内存占用问题,并提供流式处理的最佳实践和错误恢复机制。","parent_id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","order":4,"progress_status":"completed","dependent_files":"h/IOManager.h,cpp/Managers/IOManager.cpp,h/OperTxtFile.h,cpp/Tools/OperTxtFile.cpp,h/OperUrfFile.h,cpp/Tools/OperUrfFile.cpp,h/excel.h,cpp/Tools/excel.cpp","gmt_create":"2026-01-04T14:38:07.7270761+08:00","gmt_modified":"2026-01-04T14:58:16.1618464+08:00","raw_data":"WikiEncrypted:A+6jFzoIOdmzvFFDfBg9UT0BSCAx4lZUqDa0PZON6hHK+bxMub99EAdxnXcuq+luPOYOLlTfWJrkkWPM1MmFfVqI2MGRB4jLaplvtNrYqwd3uAMqN0khq0xloYefem0FzyYxEGuhOCzS3g3jEvy5FsqzCph7Fm/dFscktxdMQbiyUJZ2QEIdd2puK12/MtLZYNQF1Ht4yzZmNdiF4GSRuHOg36U5JQLRf7xirZYoLfxz69SDem9PU9YJeeCbmL9p+PdncLONv/iN92i7ckScxRmibv8oOQiuAp0zD2S1s9WxiiGvYZHlCunecHA0ZehKHNhregSmJCNvTc43l4Qpt2eASrZ8TkPrhio4/G3OKK8IV87LyMsozyJzbIkaSxMW2QzDnJ9CCgSt1lLLv01Tz00Cm4CeUrbTcsu7kY08JF1XSMOUibLBbvIrkG69PB5jRGBQpxs2zZXbNEUS2BJ7G5C7WYlcbkZHF+WO0cLby9KrB4aFwzDH9aq7iIMyahbUCKHLOyVBq/cQBPh0MFvBsdgAiRgO0O5iNYpR1uMX5mSmDxFgcv8rioU3ivl4o3ytylYge3AiaZ1TCsqjp72/LVEW7A6RkWMHjOdTtPijhR38lVuWOkEeJNCmclaOoBhnYXog1rD/bFWKuap/XgAUc/L0TUSIDONnNuOG9Tjd7JzFdO0pH42tw6EMl9DL4V95uQfiJxs7Ue1dHZ91CG6YNpVrFIABxjTnql68o6QYluJzqkTj78+vPP7gcrpuG80Ctt86EWZb3sBPUI/G1apUO6LmBuqO4AHZpZJ4uYS5p9gCdwPVFIKDvd82mO6BmjABz+svhMJp4BGOdbhAFPnAymGWo6b4XSsIpl3lM9uCD1u1/KMxe0ES1eDQczBOun7XcCfHlWXSC3HVf3cr9qKKMyzNTAQSwO2cUmFtkSEINx2/ANAC9bhfSRqoUiuvbYOUd61ZtIUBaJs6GilYmZWktX8badmqqHCCzolewFdJGe0tBk90Sm9IYkqP8ErqgOwG5PxjdBtmvMzkVuXoZXeUBe3hSwf6NIOwIKHSaAvFJfDVoivTN4LfcRu0R7xsNaGcbIUJyEcghgfFCzee76msouGn5sh5ZQ5TgS215o/x4UzCrzP9xVAyml1K/NkA7qaPtTTIDXusESqyFRzWVrtJIpy3SEs4RmeGllwMYO8KrHQzzfPAidNvo6glp0xXJQOb6k7YcHGwzAzzZF6cHAWo2sbBma2VhQFHU/1VmJkKhBTCuWFKznra64O1mdyrvwLwqgwBv/q7hOP6LmPxIvS5evZbAyoUcq9qzfDiq02KQ30S7q0gsWLCNXOglf3sZXRZtkl0Tc6oT5d3gp2hlaortg==","layer_level":1},{"id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Views模块","description":"views-module","prompt":"创建全面的内容,重点介绍Views模块中所有UI组件的实现。详细说明MainFrm.cpp中的主框架窗口设计,devmngframe.cpp中的设备管理框架,taskmngframe.cpp中的任务管理框架,datamngframe.cpp中的数据管理框架。分析各种对话框(如DialNew2DTask、DialCfgTaskPacket等)的用户交互逻辑和数据绑定机制。解释crossHole目录下的跨孔测量UI组件,logging目录下的测井功能UI,以及ctrl目录下的自定义控件实现。提供UI消息映射机制的详细说明,展示用户操作如何通过ON_COMMAND等宏触发相应的处理函数,以及UI组件如何与后台管理器进行数据交互。","parent_id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","order":4,"progress_status":"completed","dependent_files":"cpp/Views/*.cpp,h/*.h,res/GeoMative.rc2,cpp/crossHole/*.cpp,cpp/logging/*.cpp,cpp/ctrl/*.cpp","gmt_create":"2026-01-04T14:39:49.5837122+08:00","gmt_modified":"2026-01-04T15:55:53.2009381+08:00","raw_data":"WikiEncrypted:+xFv2Pia3oYkJnsRPUl6Xq7lAehkM9bnJoGckhJnFjTirG6HknmmSNDIu2yU139yJJAWP5SoFANzyQhiHcCG6mNix2C9RYOgw6JTa73KUdX+C/5+1Vg7bRcEZaRouc2+wYoRQu6zoPGNLaorE1oMqEFwZcnRuYGBARjPL9fCgvHlTG6Y2s2PzP/ugw529B4OmCAhT+lp7tIEg74YmBXI6ZsiNumKv8AXGSL5j1f2QSEx+nzhuQ9PPv9w+frZSCtvDb2Fj/8kSKk8adPd1o98hbPDYlSRHu9L6VnplXPg6O3JNTGzlYPCzysWROOnst29Lbzz5V682KvLgjYlypLgrU4ev+HOCORK2OUPbDQtGPqWIqNXYjf3F/WiSmy7NYu77+V7QMLJYP4UG4/XBLIitGvjxrJt4DIzmK8nmSogg2VklursROkRhavgw0gGwwdO1He+g4AL+F6a1FAZvdk5fkxzB8wiLpG3PkqNGMwbzHsU+r9ASNnheU1D3keMngcqHhfFAzDNOqpPzFp+sjIzQKsXY57teeLtH3tGngVQzLDwA1ttNJJvZ980SuMoMJNUdD+vMt3S43isjcOQ1N1+RDVUF+bPx3/8VHs2xfhWkyCql0DBbrNKOf2JLGb1f5/A9i2JeAoCY5Hg9pUkWTwE7DGae3wVil6FrqMOY3ZTfNMaY3v3AfBwafb1Gwhgo7qpxgccliF+LfAA6DmKqbXXVmFPkuQOmAfUFwzqcNDUu6idjlYS1rKoU7EeWmc/mX9n2yeOL8IPTtK7mppy9STEJnpaJqswVgcOJjVPU3js7UeioGzJY0WsnO1GdQxbkujApM7SY+ar222BS87dLgZCXogWm25mg35VZwv98unc/eUNhmresoGKcg0qg2IWgS8TXmItpALsf0pYcuyFfR8YFKRQDO64CaJM11st+Gm0eX6L1F8I6M/OGed9JpBTUUnrBifsnwCQWfsDDZYGaUvkA5WmvD/LagM8j7OQve5tWnQaDRjX0B0ZCGTzsPkwnAu9AzWvuRYLeyYLc5KTr+Siurdw9Mf8dy19iriQDDaJlzuhLD/AutxRJXdVXva/bBOjmeSniWKBUmXQjGZDPp0GNybCIJ4lqQJF2bkZFLRZKO/nO8riOjEAgz9MfvZO0ptz2uDEOc73BSdxrvfaLKRai9GltS6zWBmbY+iRdckRqS7Bg9yip9M1RZ0WrFhvVFJfo1y9eH9VxaiAhW0FVVjexaHHFXUpH4bwyHu4uONNztWil977FR8m8rXWvcLERL9qe89tNDSnAl2Ct4K21tdVTL+u0rb2OiAGBiQSJ7wwQA04oLnX8HFkjw92PsuSvTUh54uZV8NM12sdDOw4Jv75ZDPv3s+iCHEPogzZICIXB+t1LSo+b5mtBMRjRmENJh2YYdj5gSZb4VSHIavhsT6B0g==","layer_level":2},{"id":"e40aa70a-a31b-4271-b573-002d0ab69156","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"IOManager","description":"io-manager","prompt":"创建全面的内容,重点介绍IOManager模块的职责和实现。详细说明其在数据导入导出功能中的核心作用,支持Excel、CSV、TXT、URF等多种格式。解释IOManager如何协调DataOperator进行数据格式转换,利用excel.cpp、OperTxtFile.cpp、OperUrfFile.cpp等工具类实现具体的文件读写操作。分析文件传输过程中的进度监控和错误处理机制。提供导出文件编码错误或格式不兼容的解决方案。包含代码示例展示从数据库记录到Excel文件的导出流程。","parent_id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","order":4,"progress_status":"completed","dependent_files":"cpp/Managers/IOManager.cpp,h/IOManager.h,cpp/Operator/DataOperator.cpp,h/DataOperator.h,cpp/Tools/FileTransfer.cpp,h/FileTransfer.h,cpp/Tools/OperTxtFile.cpp,h/OperTxtFile.h,cpp/Tools/OperUrfFile.cpp,h/OperUrfFile.h,cpp/Tools/excel.cpp,h/excel.h","gmt_create":"2026-01-04T14:40:35.0863812+08:00","gmt_modified":"2026-01-04T17:18:14.8378744+08:00","raw_data":"WikiEncrypted:1kUYJcccpEIPg+W1NvXIjF5HEAwTjQ8liR3QjdmLFxH77JNRe4leezUqI6pMoZRbfmbd/mSRKpvQSuqbGEmtRBGj+oz6eehaKZ34124IPsv/0uKdtrJ8XT4aF1zkB23Pomx/ysEwmil2AZDyydYLNTcLU/dTGTwC+Qn0yFGudfmruqUTwsfuCcNoMMYUe/MMK4OKmbmW+/bmhbnSd4ATdUSE18MEeYPzi/VI7BtGAppZ/5jAOhLNdwEb/1EfJEbqDWYY0C43uqTgZl+wHjfdo5gwM0V/fTlIhPRw4JyXKdgEDlla0pYcEvJsGuyU9e7eGRaB2COQn6r17+U/azh3EGeZuIutvMqUibx4S1zntIXphlTCkFgItfcn+WKL9R07egAi4tNKQvgPMHWKv9Qo0F0BQvsPFqIBzmckCanau4guFEThvv+r2tUf9YVJ0bXp10yH3kigdGTmxLK4cyldofL4T4xZrc00WGAp8Cijy8YwyTVvtbWYkWGlFW3LS/nnsYC3H00cIjZo/e5+NIiEQqIVdOsSxhs5II81qolyBoP4nduJ5wkeo5LuHo/z8ABVCkG49bR5eKopXuTT8t/fre42HBcU9OhyxY2LBiQ37LWCB9gQgQc1bCf6TM91OqdHhd+NDuZkcvreAlO3XzeesM4Oz8QLUlAowSqpFYBQcotV5dwmwm4bnit+bizmyn6qTpy0F6KfrUuXt4iN7NqemvP4GlSCZ5PnLbiUotR6UfEtnEF0FWYg57tZXTTR8WpLOt6zu/TkGlKhiiQ+k8X/Z2tFm1WvGzDx9PwWHpWKNiXGzzLkWUU1mGvVyo4bJ+EWIPAn23hZF41D7hUu+S+72iZ7i1+9735+K5pG4kc2ZHjEJvK57nQPDE/PnFKmVmHhvskttPBI9A2fj/BVE7TQTPSxdm6ziksgij66Mi+Wp467du+mwClWEXH4dx+k2ycf4K/8eF2yHnR0pl8GDa2/FqxpSpeN/N4ZN11TtQkkbxmCdBN0LbVBVErF1UfuFSIthcnY5yIUXM9UMZHDdb5HTVYbQz11mE7BKSrbmZuUCQxHmbC6Q8txgqNbjqEvC7o/CCQbTjWxMPgmiMGkQTfqIOhHVriMLi4k348khA/dtTsNajYugG25yoxNU9/Fv0/mrtoDSRd/n1nsnm9DH3DvHmTAJW2XOLKPPvXWs3Cc3A0R7N/l90o2GVFqqZU2EwnXriYluUtE4M/KZ2cqqrQwEGWDZTCAB+FJhiwXGyTS/eY1nxP+ykMhnVN0exL+HAAYlfqY6HqsngZqoqAeIb77iNGlu6O+tiT0GAHJ1N5+xiu88Pq8IdePygA4QZzMkgPkeT0Xuat2NfDfXEycBVh7qGVfFbNuFMG60EppQ5UcgCw=","layer_level":3},{"id":"78031a95-3cec-4a75-885f-0eea604d3ec5","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"SynchronizationOperator","description":"synchronization-operator","prompt":"深入开发SynchronizationOperator的技术文档,重点描述其在设备同步、数据同步和状态同步中的实现机制。说明SynOperator如何协调多个设备或模块的时间基准和操作序列,确保测量过程的同步性。结合OperMediumPt类解释介质点同步计算的算法逻辑。描述其与同步对话框(opsyndlg)的交互流程,包括参数配置和状态反馈。提供同步失败、时钟漂移等常见问题的诊断方法和解决方案。文档需包含同步精度的评估标准、网络延迟对同步性能的影响分析,以及优化同步稳定性的配置建议。","parent_id":"227e9457-67a7-419c-bd67-47327f71a1f3","order":4,"progress_status":"completed","dependent_files":"cpp/Operator/SynOperator.cpp,h/SynOperator.h,cpp/Operator/OperMediumPt.cpp,h/OperMediumPt.h,h/opsyndlg.h,h/DevManager.h","gmt_create":"2026-01-04T14:40:44.5468152+08:00","gmt_modified":"2026-01-04T17:20:51.8715524+08:00","raw_data":"WikiEncrypted:GmR04gMyYLtGTLY5rEmAwkX1dC1vMs9LBeeqaF3AekByHtjyzJAS2RhznH7/tIwhGEhCfr0tvyaeSYn+eDjRdaCPaYb+xfR3ZXDY3PexUYGY+dVcKRpNuA2xsKRzGrEIuqdOQKLylHq8NdEBmG+HRm/3RBc2wKiLpVFk/TmXxVNAcWtDxzz6X6qpSIltrUnWLgzISQzRcf5EAkv7XAXNgpxjKJOMyq10436klCRjfugyMzm2s21ZWX5JJOc4m8BYUwTsw9QCgU0QXTz8WNSkts+nHTKVzIkocir5Y1aWboy1Oy5ZUKuhDsag10iL1oc4RrYxDJWlmv5PsE6ObaEov2MYF1VJ9V8CYoEGyFPpz4pyMhO434cg3uSbjwCE+DelJKimTYIpGg+W00b8UwJiy/KeDUybKU4PXVOWJcWKeZYb5LJux5mXJcQOnkGHLw+A2jnymPvgzFrfYX7kFYRllDhDTagSA397EyQU/ghgOZIXb+mBYGytU7YjO3gr5DGfSWVic53+TzKsXNliS7yyWd2o0FZcvY3IqqkwTaOPClWn5uvuG6dZkgcpDp6VmkuwHhq3h/5NXgILNIrcr8YM+a6qD28XZsrDWeqppLcaTyCMO557XMXqU3qHfC50IB1Gv+Q5+LtOUYkwak9utKjg4Y8H/6iKus/ntL0aTvmbtQSpXGmnRX2Hde62WOKoNbaUVwSRhBEuIVOOwpqYlAW3vNunYkCAGL498c0odHx9gqkFUf3oCkc15/9ivVrA7/mUBDYfeLYP0njJdQm+3gpNHMvf2nE1JqH+CjAEGnA5NmR0bhDowZFpi2XVBHp6qzZEgmY+YKGATTBBpbjrbljDaZbSRBjSJhwGUy2W2yw6rzhwDkCXmEeI5lnvjCzXSksbsVC6L8+KC7bq+QozHoPSISqY8IOjvf2d1wZhVVcxcGHtlfp0bKICgdEMsqTieuoT+IVP5beBezY+zIyiv8cnzz4UifizzOsAlKziV3HvwEQv7TRgOFH5CHROKQlckTLwwyQGJZ6svqIf2vXmDycEThA2Rp6dDzPBXB3S6fowvXYMHqCskHMMPZNjq6g/1FaRg639RmCrlpdHzMKivSRj/LT+/uWZFnoAP+OlvuCD9T3V3nJxI9sOIQzU/OIq049UdgcFNt3aZzuj+MGO+CdAwZB4we0/y3G44CLn5HmGEPAqEnm9B1HFqGThKrCooe76RzAfztUwg7xQCT/G9U02niEv0rTSh28Grb6fYk+dEiRDDPAJyMRRANj1jXCRMzmDdxnLTTUit2tY6V805p2eaEtpwKmbzBHvPEqtP8hSxhOFHXG/RNbgo3n8a61VVxFE","layer_level":3},{"id":"25c14fe0-6dd0-4ef4-9cfe-270bcc309c86","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"Medium测量模型","description":"medium-model","prompt":"创建全面的内容,系统介绍Medium系列类所实现的多种地球物理测量模型。详细说明MediumA至MediumZ系列类分别对应的不同电极排列方式和测量方法,如MediumA代表温纳α装置,MediumB代表温纳β装置,MediumCrossHoleGeomative支持跨孔测量等。对比分析各模型在电极间距计算、供电-测量电极组合逻辑、数据采集序列生成等方面的实现差异。结合CCrossHoleConfig2DMainDlg.cpp等配置界面,说明用户如何选择并参数化特定测量模型。解释MediumCustom2D等类如何支持用户自定义测量方案。提供模型选择决策树,指导用户根据地质条件和勘探目标选择合适的Medium类型,并说明模型参数对最终反演结果的影响。","parent_id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","order":4,"progress_status":"completed","dependent_files":"cpp/ProblemZone/Medium*.cpp,h/Medium*.h","gmt_create":"2026-01-04T14:41:02.6679503+08:00","gmt_modified":"2026-01-04T17:20:19.2389278+08:00","raw_data":"WikiEncrypted:laOcFAqehWFstsU1DZIG7qon6fjJ8Dr9kU0imTWwUTrN+9l6wOCavnCPnPD2QiJAF6SPYfpEyjNBsXoBTT9O2BvjJ7UjQgwpZqkFwfwl77hyPlrAkjf50dqpjqYZ+/99JysFKUWGGatbPS+jL2lLvS1oCp4hJH+Tbcirbv7uV6MT3CJNyCyz/e2F9vCrNCfg9wlEBLniaznYjlATYB8/booDuLuOf0iZ+SrOswtrG+CDdrwLSldC9NzvzkzQHOoFc6Iam2uJysXGwv1LJ7fIncAQTHQRKUwQsinE3Wt49rfv31HpawC2R9ak63enEJsFNIBt+OddR5GXwbOkYakEVrI4mpk9S7Bl4iLe3FjlqDzHynx2ebZk5mPUg42Z10LuFBSK64iClZOeTt4sjt/ytksu4w3cX/BTxOckuL7T3kpEETnzhQpRzQY6tWkcqMehOBoFDE0X3r6ww5zcA1v60aCjp+A2+8FLJxED8WoWVoR0bNlEajTpxOMDQQK2R7lju+vpup93tFSwolnfkTlBeE12Z3oRKu2ECWV9yEz2C0gdjvJ7TBg1TQSs08gcRGCO6Jl3KtoDXkw+tWZu0fuX0snxDY3NqR5GIpf9hztETHIN9jZNPbRSCQlVoZeN8ronnD1P3qlsMnRUyI3/4cPy1YQZcIMKzaPSWhajibqfBDTS/6WnELFXkJs7xa5jNa5nAKVX4qdFRR5tPZHWNcYYND+R4+id9aWU1+EwmYI7Q+9qkBG28Tbzvmd/yU9rfBa1xaZJlFk617t6rP3YVTVz3i0UG5e3SmCIfTWlVr9Iw9v6iK7wNf7APjhlc6ZID/eQ9QQV0qkU5Dz1jNViL1TC9r5icBkpH8yzvGXS3SC3e4/jpLp5Km9Wf6VX2D4x/nCvgi2sEdQWArFD1IUDryuVjt1IvRZB1xgMBOErYFK5sbUKUW4b5ho1P/75tGDytqX3y92G7T1hI4He9WmlaAXa5Vjorqird3Kns4LM9IkzIsZTzS+fIE8n5Wks223NV4J9u7cy7gVzcCKUWsauTH+AYU06Vcy/Hey7YEMsReT0zwGqIhjYgRciv83r6iP+E50U8tZ/ax3QG8T+Kpto6imse1G9qBNn1SB3IOmDYOsMFttRAws5c1JMJZYbdl+uFcJe3hq4xXYXy2x2/gtV0UJYHGrX60POWwUlsCqsw2qLV2Q4chVtl9dZNsSDvjst1GEJsuzn83Z9C4q5KPOC3GpC0jttHTyuDd2QfcYpEyGLek8+vThGZ71p1o1u6Fp5LEiiSOA+TmFMJA1ph+GJDU6wZDJ+gC9SodqkObFEAy/jmfSDut01cgMHMXHo3WtidP3AnTvvODx4NLir0tNylUkgRVIHIJ6iuFie0oPaVXfvqUryCI+jlI55Fx8rgLY6TPCu","layer_level":3},{"id":"a4fa83fb-f861-405e-a30a-a9c0729902ed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"专用功能界面","description":"specializedui","prompt":"开发详细内容,重点介绍专用功能UI组件的实现。深入分析crossHole目录下CCrossHoleConfig2DMainDlg.cpp和CCrossHoleConfig3DMainDlg.cpp中跨孔测量配置对话框的设计,COption2DGeometryDlg.cpp和COption3DGeometryDlg.cpp中几何参数设置逻辑。解释logging目录下CDialogLoggingWnd.cpp、CDialogLoggingParameterSetting.cpp和CDialogLoggingLithologicWnd.cpp中测井功能的用户界面实现。说明ctrl目录下CDragListCtrl.cpp和CListTextColorCtrl.cpp中自定义控件的绘制与交互机制。结合具体应用场景,展示这些专用UI如何与后台算法模块协同工作。提供代码示例说明自定义控件的消息处理和重绘逻辑,以及复杂参数配置的验证与默认值管理。为初学者提供跨孔测量和测井功能的操作流程说明,为高级开发者提供自定义控件扩展的最佳实践。","parent_id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","order":4,"progress_status":"completed","dependent_files":"cpp/crossHole/CCrossHoleConfig2DMainDlg.cpp,cpp/crossHole/CCrossHoleConfig3DMainDlg.cpp,cpp/crossHole/COption2DGeometryDlg.cpp,cpp/crossHole/COption3DGeometryDlg.cpp,cpp/logging/CDialogLoggingWnd.cpp,cpp/logging/CDialogLoggingParameterSetting.cpp,cpp/logging/CDialogLoggingLithologicWnd.cpp,cpp/ctrl/CDragListCtrl.cpp,cpp/ctrl/CListTextColorCtrl.cpp,h/crossHole/CCrossHoleConfig2DMainDlg.h,h/crossHole/CCrossHoleConfig3DMainDlg.h,h/crossHole/COption2DGeometryDlg.h,h/crossHole/COption3DGeometryDlg.h,h/logging/CDialogLoggingWnd.h,h/logging/CDialogLoggingParameterSetting.h,h/logging/CDialogLoggingLithologicWnd.h,h/ctrl/CDragListCtrl.h,h/ctrl/CListTextColorCtrl.h","gmt_create":"2026-01-04T14:41:19.6525868+08:00","gmt_modified":"2026-01-04T17:22:15.9562109+08:00","raw_data":"WikiEncrypted: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","layer_level":3},{"id":"fb64045b-28ff-45d0-99f1-29f11b15a147","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"数据库设计","description":"database-design","prompt":"创建全面的数据库模型文档。基于数据库字段修改记录文件,详细说明系统使用的Access数据库的表结构、字段定义、数据类型和约束条件。描述主要实体(项目、设备、脚本、测量数据)之间的关系和关联方式。解释数据访问模式和持久化机制,包括通过ADO进行数据库操作的实现细节。提供数据库ER图、关键查询示例和性能优化建议。说明数据版本控制和迁移策略。","order":5,"progress_status":"completed","dependent_files":"DB/数据库字段修改记录.txt,cpp/Managers/IOManager.cpp,cpp/ProblemZone/Project.cpp,cpp/ProblemZone/Device.cpp","gmt_create":"2026-01-04T14:37:17.8873012+08:00","gmt_modified":"2026-01-04T16:30:28.7354929+08:00","raw_data":"WikiEncrypted:veTYwq2y4io5qXerCTrkkBwdhOAmcMQTz+AJLOFORhNFeFTAN7xitXLxeRr3T1sKrh0z/6NFLuxfhi+XJSCnWtAbW/Uudfw6lCf7WLtLPJ/fXbXhubLVt7h3eOCU9so/HnwaczPen3zCTEQdiNd/CaLMunvM0mwH/cZGfgHKrbOq7kvzVVH42C6pI52cqahe4ibyXTGZKoTOkZa+OKrVT/RQY2FlDrIx7oA9YkcxPbh4PKdE8HnJGUA3gerQAvnT7tEE5LsGBP/7YCVRSpX3SZ41yNcj0MLSG4l1X65LV75NkG64uXK9nLVJgkAMNi6KouPTCYZH1suEHSaWjJEujFto/mQsXwbvY0N5t8VT9tbjktu3m65DxpP8VCUNXQ9BxtqO1rqQSsZfumnFFpsT//CIuX1k3ijcbT5w6il/nsn7klRwRToiC0eQuZ5U69stFV2e0AwXq+WmKrhfdiNDA6WYd3gqlRAykIsktNzmCDY/Tcsf44OzTd5BbP3c3F6W1td0IXx+ItOLCBL+3qgBF4KVHC74U/nbBVZlRkN27XavaKxUtgwJCAaGIj5RizZveFe61t9tx4w4qqsZFlj2cl5RME79YuBSlFi8gKq94KzjfE0b3oqcT6Ox7b/R1TWkJKJSCHZ4O6A/VvLwUQmCF+OsYnK+k10vqWFvWfRPGWohADosQ4sl+9QgcIgXSjxI97csCIbxngGwiHxyUQS4nuNADhNByeHZtiPdsHqna3LS/E3Q1GVqwubnQ/pB76U/7oMFNHJUDmjepGmjuGs72et4Pyw/bI1c/SG3xN7qddhcC5oxVH3UwG9pth96ikDTVnJBFlPFgR19D8413mz86fMRxMnoao2B6F3UW+GpGbEOudKtHpVIN1JUadX5BO7EQMI97ZdGZVuSSbo1OZVeX3UWlFTqOVk3I4Rf4pu+FqPAhwxm8rUFk5q4wIEPuUAkR3i/W0HFE0nkwukffU8CAqeL1hmXydpFY2+6da5Pk+iuSoowJjFtMA4e4JAPkVVCF9PB4N6zP1yPbvp8Rcp/w1a+cCFjBh1ifosleJtcfTiqzvhAhX4d4dg+hVDN0wZDoiBLlrH/BPZdCrMoJtKnDGmMJQaQSJJMTYQQNvaWZB4pL1mNI97VVDrfsLWKJD18"},{"id":"bb5bc1e7-09b4-4fc5-b483-34ce72a8692e","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"开发者指南","description":"developer-guide","prompt":"为开发者创建深入的技术指南。解释应用程序的整体代码结构和模块化设计,包括各目录(cpp/Managers、cpp/Operator等)的职责划分。说明核心架构模式的应用,如单例模式(CGeoMativeApp)、工厂模式(CProManager::GetDMS)和观察者模式(消息映射)。文档化关键常量、全局函数和工具类的使用方法。提供代码贡献指南、调试技巧和扩展开发的最佳实践。帮助新开发者快速理解代码库并进行有效开发。","order":6,"progress_status":"completed","dependent_files":"h/GeoMative.h,h/Constant.h,cpp/Main/Global.cpp,cpp/Tools","gmt_create":"2026-01-04T14:37:17.8879991+08:00","gmt_modified":"2026-01-04T16:30:39.189906+08:00","raw_data":"WikiEncrypted:F3QgleoEfoy16cQggYe9C5IaSqlGa9MAZLOFAWytoRMydW9CaKFacxmHFMFvq4MO4qJbomNzYz9hncXLdeBzq39LG+rF1NsW3JkTSc9Z+J6ML2j0OwCttHR3fCaRUsOKnPD1Hfdk6DIfpOVLlFaIa+NH/jLCMEyQKFEHJchowrZnHSXcdVMrjFY/18ejPp905mm8FHjsxJMNNHnNSGPZcKoU4hR1Yhde5LSEip9P6t0j2OeSbWFAHClcnILbD27Ggwf+9OMpAwEekceGGxIj4bUSQAtf1aGTdIfAwQ8VTSKDyrWOmiFFLPKMr9m5HlAaEaLX/H/7XeMuCW1/aynfJFNAbnC7PwISpzKA60laUekvSIR/3gwkvBDI2PjjCs9+QKMj7yi1aXiGXDEaugDZAm2y0Y9r1Jwk1ZKlShwU4Xb/GU/3U5lMYiLKdLv5sIl9YIrCsvds1UDFHdmgYqRnCm3OFnVpxB0H8r78TuD4/zbNPQMgut7vGv+yIBgWTQvF5up1bNlL2A5ZQXeymso/9tSn6gb6MXguLDG2JIIXT5RD7slhzvAqbDP5dYJ4+XrYWIoDQCLqK7metSgqAdzBIDb7NbRUKJ/ErfbRl2jG23Fam3leoJ1B14tmGUQ6VonITnTrHZcfpwvRVdRpBo+MCyCGXLSF+nkYrGW3+skiOwVPq/z7GL6696FSlmvJCwEqB2pXDz6HYNG6a6ix1kUoOF57N3uP5ptZwSuUSp+2pfw7SileRgvHqN+OWy6nNAFNyQ9qHA1P5TQ/b6eVLsUvHpWwjFmLx0c42qKsG5XnsdabaHxpn1RdstcMYT6SJSbAYJGsp0eF3zW3E/DAaUczO9wdriuVoxGq2I4cWBGlOc0WzaI5zEqcj0Z2Aj0o/HUCCSNFcbh6A7W4QGhv/14Lm8Lwl0IZsy9A2BJxYPzHnCjJDm7d2HUykWScS7lGn7KpEWW2e250YpRumYDMbS70WIIPU78QTBN1FGg9SMUxGEOEvFtIBfb18ZbAlkM0nUk3C0nWM9rJPT2y1oujZWHpxPnfNy8y240Oc7znWzQaf6IYgWGtFVt6Mu4QTp7A4i0iAo6Ng7WAlXWkyib8rf2M9gPX8gprnsq0eME8siaYknA="},{"id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"API参考","description":"api-reference","prompt":"创建详细的API参考文档。针对每个管理器类(DevManager、ProManager、SptManager、TdManager、IOManager)的公共接口,文档化所有方法的签名、参数、返回值和异常情况。解释各API的使用场景、调用顺序和线程安全性。提供实际代码示例,展示如何在不同场景下正确使用这些API。说明API之间的依赖关系和调用链。为集成开发和自动化脚本提供必要的技术参考。","order":7,"progress_status":"completed","dependent_files":"h/DevManager.h,h/ProManager.h,h/SptManager.h,h/TdManager.h,h/IOManager.h","gmt_create":"2026-01-04T14:37:17.8879991+08:00","gmt_modified":"2026-01-04T16:33:34.0182182+08:00","raw_data":"WikiEncrypted:C34GewOyK1SlumqKiPsSg+WPNa2UHH7yP2PPjE4/OPkUytUlTK+XtmhJqDmkbtEHo91XkwLiNL0Bd2UuNVmgvyCIqjY1ZdbbQiMx3Ep8LK2fp7h440qG6rDnaH3tcC0OdMYYOUNooSe/iDiHccQ15I5tfKZYxCcI+TuEZVHKAWI5fgaS7r8/dLbgnixIj2Muhl/dOwPpi7eaB2rCc41mmYgQ3PkFRis02Anh0kpyWO2/aeBa6paw7Hf0vkJ7y2dBGtGDivjSmbW4kmJimrXuFFITv5H1X8GA3aFENLb6PU73aR1FHf+UIXyXEY2tu1kVZv/S8fYFQt8bV5U5h1LQ/5FNyTQINbiE5cmE38lOfBQKypeJeqz7fd5RqFTSjKlq6/fvAxVda67EzKZdLILKwckOtwIWoyIuZHNGDqCGT5ZRiH7dwuGI0+xu8tXjTHrIQp2j69o7xnpb+BTN8zn0ig1TWGBW6ENnUX1+ky5bozFg0G9ey1Fcvu33Rd3+BY68dxdU7Cj/zQrDZR97bKvvJrWsavxEkm/b0m3LGcnWkiEJZrq7kakB1xBjWd764NaA/Le5Xt92pJHXpkj+GEhAhLjb5zXsYq8kN4Vr3iAlNkjSGLRsb8MvU2ecG/ZbsFIfmJnNuYJExtlY8B5S92lP5VdTR9Wdd5PHq6C9Ii92Pcz9/hVZhzsenf+do0ajg0tCQpVZh9a8ttpf1C2PcxCFLQzpKgx/jASfHfvJJssWATm91TAh2JwDT6sY0+U1qog6RSDllN9ACtk9m0HQ9Soi9cycvu3xA+uW9GArzpK0S7nhq/CgjPpYhiVP0p4r3fYypV1YcOY5UJjU3ACKZu3k8JyBrnsKzyJlwvWHewSp6FshZzz/aqME9DdVIVdt45M6j6mdUE4zFapTaiDPFNqpIrY6hMvmQAthnW9Uw65yeUEpT/h1RvMFhPs1xix6OqrBmCfgrhCVBD2VBgqVXVrN4rUNYLUj35nd/tY7gdtMG2crLRSI4z1sbC0jtoUdRolDKuEnlbaoHAgwF3xQwaYa1mQopGH6wUQvRdnrADmooyyyLRAbH3X9YVgRATrBEZEi2QiYGBsvaYKvuEwmeOA+rJKtERGqUgVbGgGwN6Th7ZU="},{"id":"cb978e4c-d19b-4711-a81f-e657707e1e66","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"故障排除","description":"troubleshooting","prompt":"创建全面的故障排除指南。基于系统日志文件分析常见问题模式,包括设备连接失败、固件升级错误、数据传输问题和配置异常等。文档化错误代码的含义和相应的解决方案。提供诊断工具的使用方法和日志分析技巧。解释设备检测模块的工作机制和常见检测失败的原因。为技术支持人员和高级用户提供系统性的问题排查流程和修复建议。","order":8,"progress_status":"completed","dependent_files":"LOG/upg_geo_filetrans_log.txt,Install/Geomative Studio/LOG/detect_gd20_log.txt,cpp/Operator/DetcGD10Dev.cpp,cpp/Tools/checkupdate.cpp","gmt_create":"2026-01-04T14:37:17.8879991+08:00","gmt_modified":"2026-01-04T16:34:05.5566516+08:00","raw_data":"WikiEncrypted:CaKOW8OSSWs4aEYk06Hu0hGGy7zXJE5t3XZJK+9x87Wqy/1Xzi+22LbOfczFZkieMj5WEpLZAHMOxW2WrQJBBFLwgdqRrsN8M16oMz/8+2HKqnKNh6fTUcevC3kMzwMPIVfFHYv2NadQ8yW5BNW+0iw4ODAY2auzTMWpwEgVQtAWOUIFTdfyzKrX4eLsJLdPBSbrABFsrBVxaMnQN4D32ky4H8KjfeqaOyink38kYPnRwubv3oWJ4m/INpUgS6e+AGVtZWyzGp/CmUbo4wiMFbuBHENtuTMJDkUIA6nd36GzgERhoxlCXcqDDehy0KFa/T4cWN+6NtfBdlhiEUdjPqSk89U2X5yXUgvFfUObwakp4JanAkYRvc//nVdPN39EiNWCLgUSScTL9f/7TZi+wl/C8RQyCnzX3Xp6qCAkaziKFUk5AzB4HG3Gaa9aMVQP2bDI3bWkmZjMRmWQTfyJxiL8BQRWgSZJ1l3O2OqFDebaq6m3+tEAQ3M9zKWaiLa9ibUl5IXAxy47Z/1b7Ly3VArgZ37tMHFzVn6nNPOflyxBgj3vyDdKVLjmxOCXXjcAztDgtsnjLTRbFAMBUEorK3S01sBipXspbokuloOBn1DNPqoodlSFcp0DPm3U4NhqERX1JYbo9bSZ9eIIL6NyfrdGxQmJbiPnbaKOdemQnV6qPPClWoN0CHUXjykXaj4WLYH5x16L272xx6rPlyyO+TEr5G1b2pFfNgluogqERJ3v2OWevXbge13aXdeBxPmOZXxwu96icXpOugcP/M1OJ1gGXXjcqGIJGzaehY+F7ic+0mllpM8n3U8xKHNWkSQ14CHMD5Agfui0INt7dkXoI4PiyTDCMvGSxaSutE4YkhweiOiO0ZkAC7Qfyus5DlQXix6jQ4yY//etxwT6YXTEbyLCDtzHqPshEVaINXc0GV2D/0axD/LwSF/1VFnKxDpju5vch7v5a+EVA+JHrTmu0SgjYbiHLhe42KiUs1MzDscBxRbujwdyUnaUCpEiAxYFKwE5dP0+2pPmPi6FqisfooPzMNeBOh5dZ+PbvWnwP2VCxJ/GP/XQ1K7PmclQk6F0hIzoDeq3LSe54F39/BLiU7ajDL2OsUu4gnzhBILhM8+R9NIrTojPAYguf2dOTfnI0TzUfOTLt8XSKjSyZbIXHA=="},{"id":"76e8fdb1-2d14-4fe8-ae9b-bf687b520684","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"版本历史","description":"version-history","prompt":"文档化项目的版本演进历史。基于版本信息文件和历史记录,详细说明每个版本的发布日期、版本号、新功能、改进和修复的缺陷。解释版本号的命名规则和发布周期。描述数据库模式的演变过程和向后兼容性考虑。为用户提供升级路径指导,包括从旧版本迁移的注意事项和兼容性信息。帮助用户理解功能演进和技术变更。","order":9,"progress_status":"completed","dependent_files":"version_info.txt,README-2021.txt,database_modify.xml","gmt_create":"2026-01-04T14:37:17.8879991+08:00","gmt_modified":"2026-01-04T16:31:47.7668806+08:00","raw_data":"WikiEncrypted:qxrd7b85cOncM3z4VFX/6GhhaySpieIXOEIiGj1JLm32N0Tlcb48WMk7wO3Gzy5Foai7NOqvL2mSwtJwzCe2xetpjETAj/QWFsfoNKpQJBq3yiJODp207nEwdIm/jqzF3hF7XwPAPSisU37VAQT9wmy+f/Y7uV2lndcwZvZH/stxEyYypxOkOZYblKmR0sxCzqLQM8f59iw2NyAY8OndPvTLxe08HAPkO+4WhagUJdhml5zaS7c9wbvD5/0cVywWup5MIWtEvvPWrC3ivbBpQFsRQf3nVoVHJAUFvdQ59LhtKHdIezS+3gKidEPTQ8mSiUnKTH/U39gE7UyvVTIfSM9t4mSYKIl9p+T06kFgVsSzDMj7KiDJFby3YyYpTiZ7MQgVSYi3+QrntnfmTQlXU3WQWkXbj3aUaV+XZq0pqdEZdoty7SmbThSY/9pZ6ZmOjDu4FSaxAN7E/yT9HBTBk8ViURnV5LkBtUcqJ4Cdh+f6N+2UZi45pEFsY0Gs9S3Yk05BtIOzHXH1fcIQZSuwzqWnfJtdolCJt5QyPiJ9xF/dFy0lqJaLjbN/rKJhZ74L9XUhr/ySNTL0X7XbmfQG1m5/CfsdP77HD8k0aW5CUMKF5UkapTVlVbWNxocWmh+bStbB/LGFYS0TizELqteQ6BggfruewdnjgxAlgYhR7TZF62aGm++c4i54Lxk+cMieWOz146yi31UeSVOCIbYxSckA84VsnO2Y8sWA/dwyhjJmpvUZNHBfnn7nqqjlY6AGDi8pQxg5vsbx12JHpa2WyWVPG3S29W4lu2rs2qfcjWMwuZOCKG09cgIjBIZLFcMk+txSgGxxSLZ6vKWLHuWXT7vPdwolcar4Ecz6Pd8VhbOHR/xsIkyQFaLnVIeAmfjfUfWqIrKOduX2FOSs56XD8g=="}],"wiki_items":[{"catalog_id":"5d08bb05-e9b3-4371-98d3-840eb06d48e1","title":"安装与配置","description":"installation-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"e55d96fb-1cdc-444e-956e-9fe82a885fff","gmt_create":"2026-01-04T14:44:50.4632542+08:00","gmt_modified":"2026-01-04T14:44:50.4669605+08:00"},{"catalog_id":"e444c59b-3c2d-433e-8aeb-31ecf72625bb","title":"测试数据API","description":"test-data-api","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"3290128f-7ce1-4374-b5d9-3435fd15fbff","gmt_create":"2026-01-04T14:54:03.7704317+08:00","gmt_modified":"2026-01-04T14:55:23.5441604+08:00"},{"catalog_id":"8b58c058-66d3-4230-b003-222b13d67e81","title":"配置问题","description":"configuration_issues","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"4e02285b-87c7-42f6-ad5e-0910c01e4fc5","gmt_create":"2026-01-04T14:54:24.3212876+08:00","gmt_modified":"2026-01-04T14:55:23.5569478+08:00"},{"catalog_id":"024d6bd7-96da-467e-b99b-38a2ad0e825a","title":"数据导入导出","description":"data-import-export","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"44b120f3-5bfa-469f-9710-51701ff521da","gmt_create":"2026-01-04T14:56:00.8892584+08:00","gmt_modified":"2026-01-04T14:56:00.8917469+08:00"},{"catalog_id":"1ea8cb84-e3db-4c9e-99ca-904804c1610e","title":"应用配置详解","description":"application-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"1b20ed67-b65a-4c2f-8ce5-8110ae05492d","gmt_create":"2026-01-04T14:56:39.8489102+08:00","gmt_modified":"2026-01-04T14:58:16.182218+08:00"},{"catalog_id":"95f4fcdf-f367-443d-ab29-282046521b21","title":"项目数据模型","description":"project-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"194b2363-a70e-488e-bd91-f3ec216738f6","gmt_create":"2026-01-04T14:57:10.1919754+08:00","gmt_modified":"2026-01-04T14:58:16.1321148+08:00"},{"catalog_id":"17c6ee18-18bb-4135-a86a-4e336aa2b946","title":"数据导入导出API","description":"data-import-export-api","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"5512dcf7-1cba-4a41-b479-8e1ad308a133","gmt_create":"2026-01-04T14:57:25.4416956+08:00","gmt_modified":"2026-01-04T14:58:16.1618464+08:00"},{"catalog_id":"75ef0b41-d7a9-4ed0-9f2d-aadb12478669","title":"数据库连接管理","description":"database-connection-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"2968124d-2baf-4f33-94ed-36050431a0b1","gmt_create":"2026-01-04T15:01:52.6750949+08:00","gmt_modified":"2026-01-04T15:01:52.6790864+08:00"},{"catalog_id":"29c02313-425b-4f8e-b34c-82bf2adf1d59","title":"设备连接与发现","description":"device-connection-discovery","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"830d8319-572c-4fff-ae66-26b437e2ffd1","gmt_create":"2026-01-04T15:02:00.0150949+08:00","gmt_modified":"2026-01-04T15:02:00.0182009+08:00"},{"catalog_id":"adccf077-cfc2-4277-a027-327a9fee6508","title":"项目创建与管理","description":"project-creation-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a6c92c92-db5f-4e00-8e76-b1e97c6359f1","gmt_create":"2026-01-04T15:03:23.9334326+08:00","gmt_modified":"2026-01-04T15:04:19.2741001+08:00"},{"catalog_id":"1b40bedf-1c17-436f-8981-66836d03576c","title":"项目生命周期管理","description":"project-lifecycle-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"0c24c1ea-5d3c-4182-be00-c608f90a6d50","gmt_create":"2026-01-04T15:06:53.8302578+08:00","gmt_modified":"2026-01-04T15:07:11.7534639+08:00"},{"catalog_id":"59d469e5-a5bf-48f6-874e-78c0505bf1e6","title":"测量数据浏览","description":"measurement-data-browsing","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"34164858-a3f0-4468-a9e0-e728668bd665","gmt_create":"2026-01-04T15:07:10.3519197+08:00","gmt_modified":"2026-01-04T15:07:11.7280181+08:00"},{"catalog_id":"73de9042-25da-401a-a3bc-94817aaa1997","title":"设备连接与注册","description":"device-connection-registration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"bfdf2edf-9cdf-4b76-bfaa-1866d8c2f007","gmt_create":"2026-01-04T15:07:49.811564+08:00","gmt_modified":"2026-01-04T15:07:49.815365+08:00"},{"catalog_id":"a8734725-c93a-4709-8687-8eb15b0fda94","title":"2D脚本生成","description":"2d-script-generation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"42536e87-e738-4305-ad94-dcf254053c6f","gmt_create":"2026-01-04T15:13:33.0601446+08:00","gmt_modified":"2026-01-04T15:13:33.0641353+08:00"},{"catalog_id":"a99f2fd8-1cbb-4b4a-b261-d6dd4752cc15","title":"数据采集与存储","description":"data-acquisition-storage","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"41147acf-42b0-46ae-8539-adea6b760731","gmt_create":"2026-01-04T15:13:50.1629879+08:00","gmt_modified":"2026-01-04T15:13:50.1667932+08:00"},{"catalog_id":"5e7df12c-6942-445b-bb94-08ded11d6a49","title":"单例模式","description":"singleton-pattern","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"21b7c707-1e62-43ad-a3b0-bafaa0f099c5","gmt_create":"2026-01-04T15:15:22.8555074+08:00","gmt_modified":"2026-01-04T15:16:09.4858868+08:00"},{"catalog_id":"d19506d8-24d9-40af-82ed-40c03ce9f02d","title":"Main模块","description":"main-module","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"5f30dd4e-5a55-40e9-86b2-7b46ae90ea83","gmt_create":"2026-01-04T15:15:40.4232178+08:00","gmt_modified":"2026-01-04T15:16:09.4839248+08:00"},{"catalog_id":"64612403-adfa-49c3-9cb2-b6c2cc3db2df","title":"版本与数据库配置","description":"version-database-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"af766158-e2ea-4a79-b166-d3eb06923126","gmt_create":"2026-01-04T15:19:48.7222662+08:00","gmt_modified":"2026-01-04T15:19:48.7261822+08:00"},{"catalog_id":"a4674837-d78e-423d-8c3d-0570f01d6981","title":"通信工具","description":"communication-tools","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"03fcc407-58e1-4d77-9b9f-82ced34810c8","gmt_create":"2026-01-04T15:20:51.1065009+08:00","gmt_modified":"2026-01-04T15:21:34.2007944+08:00"},{"catalog_id":"bc6a7505-0c86-4bba-b7f8-17eea3bd8dc1","title":"数据导出","description":"data-export","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"bc528def-9b23-4e4d-81dc-d309bc7aff9f","gmt_create":"2026-01-04T15:21:02.3086718+08:00","gmt_modified":"2026-01-04T15:21:34.2002849+08:00"},{"catalog_id":"2a6c2f5e-03d7-4ca9-8b62-21cd1ff41a74","title":"CRUD操作实现","description":"crud-operation-implementation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"cd71c744-210f-4cbb-97da-3ff4edd7bad6","gmt_create":"2026-01-04T15:23:31.9310122+08:00","gmt_modified":"2026-01-04T15:23:31.9333345+08:00"},{"catalog_id":"d8598142-439d-46a3-a120-be2bc887d53e","title":"设备数据模型","description":"device-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"2b8988a1-e54d-421f-9f91-c36d0469d870","gmt_create":"2026-01-04T15:23:52.8167733+08:00","gmt_modified":"2026-01-04T15:24:25.6205763+08:00"},{"catalog_id":"62061c22-5074-4f8f-8f28-653e7aee694c","title":"设备参数管理","description":"device-parameter-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"28edbcc1-150b-4bc3-bf0b-dae3bd54b4bd","gmt_create":"2026-01-04T15:24:32.0565847+08:00","gmt_modified":"2026-01-04T15:24:32.0598466+08:00"},{"catalog_id":"559a43c8-fbac-4b5b-aa06-2f3398432231","title":"设备状态管理","description":"device-status-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"ed265c88-2627-4571-b65a-b21d7c73bf4f","gmt_create":"2026-01-04T15:26:35.778414+08:00","gmt_modified":"2026-01-04T15:26:35.7810328+08:00"},{"catalog_id":"a6014b21-ae38-490b-9031-ac94683020c4","title":"任务配置与调度","description":"task-configuration-scheduling","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a09fe212-b526-4bb5-9f17-32f70fef711c","gmt_create":"2026-01-04T15:27:20.3674104+08:00","gmt_modified":"2026-01-04T15:27:36.1631266+08:00"},{"catalog_id":"3738bfa4-7add-4ddb-a561-58cd2f4d0685","title":"实时数据监控","description":"real-time-data-monitoring","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"54b78dd4-75c4-431c-bf8a-3642f04da851","gmt_create":"2026-01-04T15:27:42.0695112+08:00","gmt_modified":"2026-01-04T15:27:42.0730386+08:00"},{"catalog_id":"c7c35cdd-8235-49a6-a588-4e7604b30441","title":"数据展示与分析","description":"data-display-analysis","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"39214adc-213f-438c-aef7-de90b0a644b6","gmt_create":"2026-01-04T15:29:18.6245474+08:00","gmt_modified":"2026-01-04T15:29:18.628636+08:00"},{"catalog_id":"6942b6c3-2ec7-4266-9790-158a45335919","title":"测区管理","description":"test-zone-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"08b092eb-c308-467c-8280-2b5e2555f625","gmt_create":"2026-01-04T15:29:33.5198458+08:00","gmt_modified":"2026-01-04T15:29:33.5222805+08:00"},{"catalog_id":"bf7e786e-d90b-45df-9e1e-c5e77940ea1d","title":"工厂模式","description":"factory-pattern","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"6a5613fc-0aed-4f09-9abc-d31faec1ec0f","gmt_create":"2026-01-04T15:31:32.6326691+08:00","gmt_modified":"2026-01-04T15:31:32.6380952+08:00"},{"catalog_id":"e867de61-ecf4-4e39-9b18-736afdf97001","title":"数据导入","description":"data-import","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"4cbe9628-e104-4b39-b871-81f1305cb751","gmt_create":"2026-01-04T15:31:44.1362293+08:00","gmt_modified":"2026-01-04T15:31:44.1396895+08:00"},{"catalog_id":"7158e835-c163-43d3-9c4f-0afbf2022ac1","title":"3D脚本生成","description":"3d-script-generation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"28a6b715-04da-4a95-a1c9-4fe4f3d796d1","gmt_create":"2026-01-04T15:33:12.704881+08:00","gmt_modified":"2026-01-04T15:33:58.519688+08:00"},{"catalog_id":"cbfbef48-a531-451c-a225-dd219e00e45c","title":"脚本数据模型","description":"script-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"cdc0f7f6-27bd-4b95-b7e0-641be3079f6a","gmt_create":"2026-01-04T15:35:10.0039732+08:00","gmt_modified":"2026-01-04T15:35:10.0067059+08:00"},{"catalog_id":"d9e5b288-5047-454a-95ad-6cfb1b7c2b95","title":"Managers模块","description":"managers-module","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"b69bdfa1-26c5-46c6-8250-089b2f901453","gmt_create":"2026-01-04T15:35:37.1522036+08:00","gmt_modified":"2026-01-04T15:36:50.4555109+08:00"},{"catalog_id":"4c064fcb-a9bc-4ef6-82c9-4c9eb26ec82e","title":"数据处理工具","description":"data-processing-tools","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"32727227-23cc-409f-8721-d8b7df03f284","gmt_create":"2026-01-04T15:37:14.6078028+08:00","gmt_modified":"2026-01-04T15:37:14.6109147+08:00"},{"catalog_id":"c2bdac48-4858-49c7-bb16-86c2440ab9f5","title":"设备状态监控","description":"device-status-monitoring","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a35834ac-9d23-4233-a3b8-a2940dbc45bd","gmt_create":"2026-01-04T15:37:58.7761813+08:00","gmt_modified":"2026-01-04T15:37:58.7792272+08:00"},{"catalog_id":"6fd314a5-610f-4d29-ae56-3f2c4363ad3f","title":"数据导入导出","description":"data-import-export","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"55941e22-3991-463b-a404-9f41204a54d3","gmt_create":"2026-01-04T15:38:56.2835052+08:00","gmt_modified":"2026-01-04T15:39:53.736807+08:00"},{"catalog_id":"5fe93fb7-5e86-4d4b-abc8-6d4c851d749e","title":"离线任务管理","description":"offline-task-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"2c2f0671-cc51-4c25-aac5-53872cc7ebac","gmt_create":"2026-01-04T15:40:15.3857758+08:00","gmt_modified":"2026-01-04T15:40:15.3883709+08:00"},{"catalog_id":"a3dc4344-b70c-4c0a-af7b-1b6a707f1873","title":"固件升级","description":"firmware-upgrade","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"b696a9e8-93b2-4b4d-81b0-3004fa072762","gmt_create":"2026-01-04T15:41:53.1979719+08:00","gmt_modified":"2026-01-04T15:42:53.1387383+08:00"},{"catalog_id":"0ef9b91b-3542-4796-bba1-5036c2e12cac","title":"数据导出与导入","description":"data-export-import","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"94cf9244-f24f-4d7d-8d20-f4f1d1ea0645","gmt_create":"2026-01-04T15:42:43.5109552+08:00","gmt_modified":"2026-01-04T15:42:53.1218212+08:00"},{"catalog_id":"1ab00b5d-b5a8-46d3-9a6e-8a633e05ef6c","title":"任务配置","description":"task-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"83402f3f-753e-4155-bcec-91d7fdb39b8c","gmt_create":"2026-01-04T15:42:54.493364+08:00","gmt_modified":"2026-01-04T15:42:54.4963495+08:00"},{"catalog_id":"03d32a4f-1482-4812-8f70-a1d4563db8df","title":"文件传输协议","description":"file-transfer-protocol","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"03b6cb3a-1e67-44b5-90d0-80ac63b4b73a","gmt_create":"2026-01-04T15:45:31.2236305+08:00","gmt_modified":"2026-01-04T15:45:54.2603854+08:00"},{"catalog_id":"d94d8cc9-9baf-4a97-8867-b65f6582bc53","title":"自定义脚本","description":"custom-script","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"68f776e5-ec90-4d3d-9259-1822b956e64c","gmt_create":"2026-01-04T15:49:45.50227+08:00","gmt_modified":"2026-01-04T15:49:45.506382+08:00"},{"catalog_id":"ad5b9773-a249-494b-b6ff-29d525184400","title":"事务与错误处理","description":"transaction-error-handling","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"4bf8fe55-b927-4050-bf77-1795eaeec888","gmt_create":"2026-01-04T15:50:39.9991859+08:00","gmt_modified":"2026-01-04T15:51:53.0839166+08:00"},{"catalog_id":"b735823e-8739-4422-94da-4a0dd12c659f","title":"责任链模式","description":"chain-of-responsibility-pattern","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"73ef0a81-f49e-45b0-88ac-46a2c2e377c4","gmt_create":"2026-01-04T15:51:02.7116421+08:00","gmt_modified":"2026-01-04T15:51:53.0992282+08:00"},{"catalog_id":"63fb53e7-96b5-4cc9-b6ec-770efe069eb3","title":"辅助工具","description":"auxiliary-tools","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"030507d0-1ac1-489f-8bf4-212596428ea2","gmt_create":"2026-01-04T15:53:38.8353016+08:00","gmt_modified":"2026-01-04T15:55:12.9460804+08:00"},{"catalog_id":"7ea2d798-0bab-4f5b-a7a7-4c060b34a34c","title":"ProblemZone模块","description":"problemzone-module","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"43b1de20-62e3-42c3-bb1c-e5531b157f77","gmt_create":"2026-01-04T15:53:48.3345846+08:00","gmt_modified":"2026-01-04T15:55:12.9408327+08:00"},{"catalog_id":"429c3f18-30bb-49d6-b00f-e8bc3b572d39","title":"Views模块","description":"views-module","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"69a7c0a4-5638-4ecf-ad1f-f5122209f26a","gmt_create":"2026-01-04T15:55:53.1976993+08:00","gmt_modified":"2026-01-04T15:55:53.2009381+08:00"},{"catalog_id":"de6baa18-6124-4e80-9c45-acecd702ba98","title":"1D项目创建","description":"1d-project-creation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"da35bd27-ab52-4591-9d00-4a2ec468ec82","gmt_create":"2026-01-04T15:57:05.7982204+08:00","gmt_modified":"2026-01-04T15:57:53.2467303+08:00"},{"catalog_id":"3c39381a-1e17-4ea1-88e5-d892372a2d89","title":"测区创建与配置","description":"test-zone-creation-config","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"97c68b5c-2e5d-4bbb-a1b2-7273fff28d30","gmt_create":"2026-01-04T15:58:41.4871415+08:00","gmt_modified":"2026-01-04T15:58:41.4907622+08:00"},{"catalog_id":"a6bf10f8-e51e-4237-b929-6436520f9419","title":"任务包与地形配置","description":"task-package-terrain-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"7dd50439-0077-4163-9185-954769e5fc4e","gmt_create":"2026-01-04T15:58:54.949641+08:00","gmt_modified":"2026-01-04T15:58:54.9527454+08:00"},{"catalog_id":"696443d8-d0f1-4195-9e65-9726c29326ca","title":"任务参数配置","description":"task-parameter-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"ff3cd976-4777-4323-8934-a01fe742ae28","gmt_create":"2026-01-04T16:00:05.7763491+08:00","gmt_modified":"2026-01-04T16:01:00.5479898+08:00"},{"catalog_id":"20a50e61-00d5-4baf-ae48-9ec863999547","title":"DevManager","description":"dev-manager","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"ba4bc18c-e67e-41c8-92f1-e7f835bbc63b","gmt_create":"2026-01-04T16:02:40.2465462+08:00","gmt_modified":"2026-01-04T16:04:14.5284999+08:00"},{"catalog_id":"f8bad557-23a7-4bce-b595-9f1b5cf389e8","title":"Project数据模型","description":"project-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"66bc7430-a11e-4ce2-9c9b-9cf26fdcf822","gmt_create":"2026-01-04T16:03:07.3523766+08:00","gmt_modified":"2026-01-04T16:04:14.5397734+08:00"},{"catalog_id":"b9087a1b-f589-4b27-aa5c-e9ab7a4aa1ac","title":"数据校验工具","description":"data-validation-tools","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"ab08ae93-d0d8-4e58-9629-eb8595a7517f","gmt_create":"2026-01-04T16:05:21.9399606+08:00","gmt_modified":"2026-01-04T16:05:21.9426113+08:00"},{"catalog_id":"0fdddb23-266b-4fb4-a944-11658b63c39d","title":"串口通信","description":"serial-communication","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"e3810dc4-620f-4ca2-bbd1-52d00dd43335","gmt_create":"2026-01-04T16:06:02.228969+08:00","gmt_modified":"2026-01-04T16:06:02.2330704+08:00"},{"catalog_id":"83b56e2d-a191-423f-9839-724c0d0fa133","title":"主界面","description":"mainui","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"13cb9dd8-c308-4147-a221-96fc1c55615a","gmt_create":"2026-01-04T16:07:33.6870741+08:00","gmt_modified":"2026-01-04T16:07:33.6915872+08:00"},{"catalog_id":"e1b10a9d-bacc-44c3-bd1a-4dc511d3ed6a","title":"2D项目创建","description":"2d-project-creation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"6410bdc9-0ee3-4296-880c-abebfe544864","gmt_create":"2026-01-04T16:08:16.2223592+08:00","gmt_modified":"2026-01-04T17:41:51.3564069+08:00"},{"catalog_id":"662d9009-78eb-4fbc-86d0-f372e350f87d","title":"设备指令系统","description":"device-command-system","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"1351096d-a234-4c62-9007-b6c321211bd2","gmt_create":"2026-01-04T16:10:06.2241637+08:00","gmt_modified":"2026-01-04T16:10:06.2281782+08:00"},{"catalog_id":"dad2c3a3-555a-4751-bc75-e616efa4387a","title":"定时任务管理","description":"scheduled-task-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"1588dacf-8dcb-4ed8-a818-c069c0e0b263","gmt_create":"2026-01-04T16:11:57.3276264+08:00","gmt_modified":"2026-01-04T16:11:57.3307409+08:00"},{"catalog_id":"a5409405-24c2-4b50-b5d7-00efa99fbe8c","title":"项目概述","description":"project-overview","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"0128ec1e-e5fd-40ca-864e-a46f92ee29c0","gmt_create":"2026-01-04T16:24:20.6145363+08:00","gmt_modified":"2026-01-04T16:24:20.6175042+08:00"},{"catalog_id":"211eb959-f12c-46d4-a088-c9ab116978c4","title":"技术栈与依赖","description":"technology-stack","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"026164ac-3f45-40d4-9c9c-1b0a0d671902","gmt_create":"2026-01-04T16:24:59.5715074+08:00","gmt_modified":"2026-01-04T16:24:59.5738947+08:00"},{"catalog_id":"00dd2207-2775-4db6-802d-c32bf4fae870","title":"用户界面指南","description":"user-interface","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"68e7e5ce-cd49-4b4c-8b4f-59594f4a256d","gmt_create":"2026-01-04T16:26:46.7385801+08:00","gmt_modified":"2026-01-04T16:26:46.7464666+08:00"},{"catalog_id":"d49a24e1-9fb3-497f-ba9f-fa22ff86f8d4","title":"核心功能","description":"core-features","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"508b03ce-941c-418d-b949-5dbb3c6fb6eb","gmt_create":"2026-01-04T16:28:38.1489992+08:00","gmt_modified":"2026-01-04T16:28:38.1540413+08:00"},{"catalog_id":"fb64045b-28ff-45d0-99f1-29f11b15a147","title":"数据库设计","description":"database-design","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"dd454307-3f7d-40b7-87fb-dd4c6f0c3e2d","gmt_create":"2026-01-04T16:30:28.7291578+08:00","gmt_modified":"2026-01-04T16:30:28.7354929+08:00"},{"catalog_id":"bb5bc1e7-09b4-4fc5-b483-34ce72a8692e","title":"开发者指南","description":"developer-guide","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"c001c1c1-cf27-45c4-a1b0-9093c96616ea","gmt_create":"2026-01-04T16:30:39.1870942+08:00","gmt_modified":"2026-01-04T16:30:39.189906+08:00"},{"catalog_id":"76e8fdb1-2d14-4fe8-ae9b-bf687b520684","title":"版本历史","description":"version-history","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"7954d405-f060-4192-8db2-cc27be6b9d77","gmt_create":"2026-01-04T16:31:47.7640706+08:00","gmt_modified":"2026-01-04T16:31:47.7668806+08:00"},{"catalog_id":"17080c81-daa2-48ce-aaf3-d9f2b90d066a","title":"安装指南","description":"installation-guide","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a6e66269-cdbd-441a-82b5-a14aa3bb3bb2","gmt_create":"2026-01-04T16:33:11.0445983+08:00","gmt_modified":"2026-01-04T16:33:11.0480104+08:00"},{"catalog_id":"03e54bde-3cd8-4a8d-ac56-e43499743adc","title":"API参考","description":"api-reference","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"f5daf4d5-df45-4dcf-b442-91eabc17b3a2","gmt_create":"2026-01-04T16:33:33.981637+08:00","gmt_modified":"2026-01-04T16:33:34.0186038+08:00"},{"catalog_id":"cb978e4c-d19b-4711-a81f-e657707e1e66","title":"故障排除","description":"troubleshooting","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"7a0c4eaf-3a93-4d8f-8a82-4087fb69a400","gmt_create":"2026-01-04T16:34:05.5526208+08:00","gmt_modified":"2026-01-04T16:34:05.5566516+08:00"},{"catalog_id":"ccd67a46-59bf-464f-a3e9-2bc2ddb2f5a7","title":"主界面","description":"main-interface","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"184ff123-ea1e-4b4f-a7ef-962056e4f110","gmt_create":"2026-01-04T16:35:15.2415492+08:00","gmt_modified":"2026-01-04T16:35:15.245876+08:00"},{"catalog_id":"2436cc10-dec7-4d38-a8e8-fd3c9d859b2a","title":"设备管理","description":"device-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"0a5c205d-20df-49a3-b446-06bddc0b1680","gmt_create":"2026-01-04T16:35:56.0914555+08:00","gmt_modified":"2026-01-04T16:35:56.0960368+08:00"},{"catalog_id":"c8d16069-7e59-4855-a785-bdbb26529326","title":"数据库模式","description":"database-schema","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"9d460989-9038-4886-b930-75fde703b85a","gmt_create":"2026-01-04T16:36:27.893705+08:00","gmt_modified":"2026-01-04T16:36:27.897708+08:00"},{"catalog_id":"dfac6b4a-ffe1-44cc-bf8f-fd87f4adea71","title":"设备管理API","description":"device-management-api","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"856a8ca3-0575-4faa-81a2-21f81a064bdc","gmt_create":"2026-01-04T16:38:06.2869803+08:00","gmt_modified":"2026-01-04T16:38:06.2915155+08:00"},{"catalog_id":"e440e501-acde-43e6-b1bb-fa2943f92232","title":"设备连接问题","description":"device_connection_issues","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"dc63ba9a-7889-47b6-97ea-89f9a9d91c77","gmt_create":"2026-01-04T16:38:09.0931143+08:00","gmt_modified":"2026-01-04T16:38:09.0978021+08:00"},{"catalog_id":"c99ff4dd-849e-4490-a052-a2a902f7b49b","title":"代码结构","description":"code-structure","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"d308dd10-246d-4a3d-9604-be2f9e0c65de","gmt_create":"2026-01-04T16:38:12.7777202+08:00","gmt_modified":"2026-01-04T16:38:12.7807888+08:00"},{"catalog_id":"3f537301-6406-42a1-984c-2ba217f77900","title":"设备管理界面","description":"device-management-interface","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"5ffeacb4-cd43-436e-9e69-02e8b057b817","gmt_create":"2026-01-04T16:40:48.9360692+08:00","gmt_modified":"2026-01-04T16:40:48.9393481+08:00"},{"catalog_id":"eee36cb6-1e0f-444a-b200-b449d083bf18","title":"配置说明","description":"configuration-guide","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"49b4ae80-281a-447a-9199-b08e31be92ae","gmt_create":"2026-01-04T16:40:56.8056996+08:00","gmt_modified":"2026-01-04T16:40:56.8106211+08:00"},{"catalog_id":"9c6698e3-6e8a-4c4e-979b-57426f8ebd31","title":"数据访问层","description":"data-access-layer","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"efebf330-1aec-4357-8dda-3aa55f72e750","gmt_create":"2026-01-04T16:41:34.8102289+08:00","gmt_modified":"2026-01-04T16:41:34.8138002+08:00"},{"catalog_id":"cb10c152-afc1-4cc3-946a-3f100ebea9e2","title":"核心架构模式","description":"core-arch-patterns","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"5d223f35-36cd-4c64-bbe1-36addb8970d1","gmt_create":"2026-01-04T16:44:20.0082433+08:00","gmt_modified":"2026-01-04T16:44:20.0104463+08:00"},{"catalog_id":"d9ce7c4b-eb9a-4a34-a88d-17c36c4f5296","title":"项目管理","description":"project-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"34f4b73d-9fbd-48b6-ab21-2a7efb710d60","gmt_create":"2026-01-04T16:44:29.167562+08:00","gmt_modified":"2026-01-04T16:44:29.1711366+08:00"},{"catalog_id":"67157177-6234-4898-a1fc-0d9216a740db","title":"项目管理API","description":"project-management-api","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"37354c44-be31-4252-85d7-fef333a2d166","gmt_create":"2026-01-04T16:45:54.3144121+08:00","gmt_modified":"2026-01-04T16:45:54.3175331+08:00"},{"catalog_id":"349b6900-fda5-4de0-95df-d0b09642241d","title":"固件升级问题","description":"firmware_upgrade_issues","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"89fdf1ab-0f40-4603-8378-8bb1da2edf32","gmt_create":"2026-01-04T16:46:18.374858+08:00","gmt_modified":"2026-01-04T16:46:18.3798329+08:00"},{"catalog_id":"aa89218f-27dc-4295-b248-d1c3aa8f69d2","title":"项目与任务界面","description":"project-task-interface","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"b8832f40-0232-41b8-b6fb-833ff21b1e1e","gmt_create":"2026-01-04T16:47:58.47151+08:00","gmt_modified":"2026-01-04T16:47:58.4748157+08:00"},{"catalog_id":"f9b14c41-cd08-4332-9260-515b5e630379","title":"脚本管理","description":"script-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"1c800fc3-a71b-4132-ae76-6e656ac7a3a4","gmt_create":"2026-01-04T16:49:01.8242771+08:00","gmt_modified":"2026-01-04T16:49:01.8272224+08:00"},{"catalog_id":"5e6cdab5-b260-421e-83c9-3f6de8ba6c5a","title":"脚本管理API","description":"script-management-api","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"6f1b93ab-54ca-455a-ac44-2448554ce0bb","gmt_create":"2026-01-04T16:49:05.1336049+08:00","gmt_modified":"2026-01-04T16:49:05.1366451+08:00"},{"catalog_id":"032e9cba-65a0-45f6-a932-d0cc7e0b2908","title":"开发工具与实用程序","description":"dev-tools-utilities","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"58e7e03d-a930-4dbf-aefb-0c384cdc6533","gmt_create":"2026-01-04T16:49:21.1582442+08:00","gmt_modified":"2026-01-04T16:49:21.1610294+08:00"},{"catalog_id":"e782bc89-0c12-4b91-86f8-98dde91ed07e","title":"数据管理界面","description":"data-management-interface","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a7884509-aa98-4d4d-8ba9-735aa7f72b58","gmt_create":"2026-01-04T16:51:26.7611661+08:00","gmt_modified":"2026-01-04T16:51:26.7635097+08:00"},{"catalog_id":"5bcdd80a-60db-405d-aafe-94cd1ab4963e","title":"数据传输问题","description":"data_transfer_issues","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"ec52034d-9596-4a5e-8513-a053065d113a","gmt_create":"2026-01-04T16:51:30.5008469+08:00","gmt_modified":"2026-01-04T16:51:30.5054159+08:00"},{"catalog_id":"e2aa8d47-2019-4a51-8646-685c9019c17b","title":"测试数据管理","description":"test-data-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"2e081472-bd7b-425a-b185-cf33bd4b2254","gmt_create":"2026-01-04T16:54:14.3613315+08:00","gmt_modified":"2026-01-04T16:54:14.3652276+08:00"},{"catalog_id":"42290843-3a35-48d7-9e27-35e71442dc7c","title":"数据导出","description":"data-export","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"189ec6c4-80c6-48e4-998e-fe40432907c4","gmt_create":"2026-01-04T16:55:07.8988161+08:00","gmt_modified":"2026-01-04T16:55:07.9021401+08:00"},{"catalog_id":"4725972e-5b6b-4bc2-9474-b2fa3d2bfb2f","title":"观察者模式","description":"observer-pattern","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"8538c109-b882-4b9b-afe6-c1d3bd3c99bc","gmt_create":"2026-01-04T16:56:28.6265132+08:00","gmt_modified":"2026-01-04T16:56:28.6327429+08:00"},{"catalog_id":"34f4ca41-d0b5-4763-bcf4-dbce99db60af","title":"跨孔测量脚本","description":"cross-hole-script","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"152af444-d80c-479d-bf39-d83bb428c8e7","gmt_create":"2026-01-04T16:56:44.3103183+08:00","gmt_modified":"2026-01-04T16:56:44.3151951+08:00"},{"catalog_id":"f9133572-f531-4441-b982-14c9ae6b9426","title":"测量数据模型","description":"measurement-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"3e1c3c6c-c0c3-4789-ac2b-a550797c9b49","gmt_create":"2026-01-04T16:58:35.2671431+08:00","gmt_modified":"2026-01-04T16:58:35.2693064+08:00"},{"catalog_id":"227e9457-67a7-419c-bd67-47327f71a1f3","title":"Operator模块","description":"operator-module","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"cf27ef6a-2d36-4cf6-b6fb-fefab6ffc56e","gmt_create":"2026-01-04T16:58:55.6952727+08:00","gmt_modified":"2026-01-04T16:58:55.6983468+08:00"},{"catalog_id":"abbab480-8055-4da2-8e2e-664abf629716","title":"设备交互工具","description":"device-interaction-tools","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"63e2568f-ba26-4a7e-8834-bbabf6065da4","gmt_create":"2026-01-04T16:59:08.7456139+08:00","gmt_modified":"2026-01-04T16:59:08.7497823+08:00"},{"catalog_id":"dd13c81c-b5cf-4242-91be-19e9b1c08c9b","title":"ProManager","description":"pro-manager","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a4b8ab09-7206-4926-a713-2e693507f5f2","gmt_create":"2026-01-04T17:01:11.847446+08:00","gmt_modified":"2026-01-04T17:01:11.8509779+08:00"},{"catalog_id":"bea951cf-dedd-4ce4-b297-5c9734bcd7e5","title":"测区数据同步","description":"test-zone-data-sync","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"0dfb3525-0a00-4ae0-96a5-4b78f0facf7a","gmt_create":"2026-01-04T17:02:55.0689874+08:00","gmt_modified":"2026-01-04T17:02:55.0721412+08:00"},{"catalog_id":"a7e589d6-be7a-438f-b0ae-f09a43d23e5b","title":"DeviceOperator","description":"device-operator","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"36ba229f-4152-49df-86e3-69f5133f51cd","gmt_create":"2026-01-04T17:03:12.5671537+08:00","gmt_modified":"2026-01-04T17:03:12.5726082+08:00"},{"catalog_id":"d592fcc6-5f6f-4e80-a7a7-d84d9bcf3772","title":"Device数据模型","description":"device-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"eaeb293e-72f0-422d-aecb-3eb16c57cdad","gmt_create":"2026-01-04T17:05:24.4012138+08:00","gmt_modified":"2026-01-04T17:05:24.4043455+08:00"},{"catalog_id":"05ca0639-8191-434a-ad47-018b5c57cf36","title":"任务验证与存储","description":"task-validation-storage","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"8d9fdd45-2485-47d4-bfdf-49df81439d77","gmt_create":"2026-01-04T17:05:36.0737577+08:00","gmt_modified":"2026-01-04T17:05:36.0778372+08:00"},{"catalog_id":"c7c17761-1da8-4bf3-a97d-2baba0370dc3","title":"DataOperator","description":"data-operator","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"b70cc4b8-a276-40b1-a93a-4fa9b63c6ad0","gmt_create":"2026-01-04T17:06:29.5837616+08:00","gmt_modified":"2026-01-04T17:06:29.5884684+08:00"},{"catalog_id":"447635e0-ff80-4507-953e-d44ae51f5a0b","title":"网络通信","description":"network-communication","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"90c0915c-61db-4f1a-b61c-712e0eaead6d","gmt_create":"2026-01-04T17:09:02.7094039+08:00","gmt_modified":"2026-01-04T17:09:02.7133831+08:00"},{"catalog_id":"1dcead39-abbb-4e5d-96ed-1695d4b45061","title":"设备管理界面","description":"devicemanagementui","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"758e1963-e3b8-499a-994b-6673ddeb7f0b","gmt_create":"2026-01-04T17:09:14.0419308+08:00","gmt_modified":"2026-01-04T17:09:14.044975+08:00"},{"catalog_id":"48fd5016-ef3d-4400-84f6-4b8955e5c133","title":"文件操作封装","description":"file-operation-utilities","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"2ab3832e-d677-42d3-83a8-c3168d885b78","gmt_create":"2026-01-04T17:09:33.8138668+08:00","gmt_modified":"2026-01-04T17:09:33.8169401+08:00"},{"catalog_id":"605c5df0-0421-4743-be73-6e1f8c7614b6","title":"3D项目创建","description":"3d-project-creation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"54ceab12-6f7d-41fa-aff5-4b48a2cc6763","gmt_create":"2026-01-04T17:11:57.8659714+08:00","gmt_modified":"2026-01-04T17:11:57.8696122+08:00"},{"catalog_id":"009ec926-f536-4248-b60e-9d51fa0609a2","title":"网络设备操作","description":"network-device-operation","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"bd855fa5-c959-46a3-840c-79732c1e4a01","gmt_create":"2026-01-04T17:12:35.6854996+08:00","gmt_modified":"2026-01-04T17:12:35.6887231+08:00"},{"catalog_id":"029948f3-657d-4fa6-8947-d1f8a937d9d7","title":"循环任务管理","description":"loop-task-management","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"c8ff3f38-ba57-42d8-bdfe-e2c660c1be67","gmt_create":"2026-01-04T17:12:46.0079579+08:00","gmt_modified":"2026-01-04T17:12:46.0115652+08:00"},{"catalog_id":"ec4f27d1-3dea-4fce-8eb1-132ca0f96e92","title":"测量数据模型","description":"measurement-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a263d410-4bc9-4284-91d4-c0918983317e","gmt_create":"2026-01-04T17:18:01.7975074+08:00","gmt_modified":"2026-01-04T17:18:01.8005687+08:00"},{"catalog_id":"e40aa70a-a31b-4271-b573-002d0ab69156","title":"IOManager","description":"io-manager","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"0a3669c7-8091-4868-a036-07bd5faa35e1","gmt_create":"2026-01-04T17:18:14.8339209+08:00","gmt_modified":"2026-01-04T17:18:14.8378744+08:00"},{"catalog_id":"b02d0059-24ac-465a-8e71-5634182da9fd","title":"数据管理界面","description":"datamanagementui","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"c882e5a7-9823-4486-9618-3a0d08a3e2d3","gmt_create":"2026-01-04T17:18:49.4641782+08:00","gmt_modified":"2026-01-04T17:18:49.4679006+08:00"},{"catalog_id":"25c14fe0-6dd0-4ef4-9cfe-270bcc309c86","title":"Medium测量模型","description":"medium-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"fecd00a7-0d57-4b20-85d1-4ea48c050c87","gmt_create":"2026-01-04T17:20:19.2356233+08:00","gmt_modified":"2026-01-04T17:20:19.2395204+08:00"},{"catalog_id":"78031a95-3cec-4a75-885f-0eea604d3ec5","title":"SynchronizationOperator","description":"synchronization-operator","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"73d8e147-3a76-4527-8eb1-1a264c1bea90","gmt_create":"2026-01-04T17:20:51.8673863+08:00","gmt_modified":"2026-01-04T17:20:51.8715524+08:00"},{"catalog_id":"a4fa83fb-f861-405e-a30a-a9c0729902ed","title":"专用功能界面","description":"specializedui","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"b8b1d5bb-dd11-411c-8083-69420141a0da","gmt_create":"2026-01-04T17:22:15.9530989+08:00","gmt_modified":"2026-01-04T17:22:15.9562109+08:00"},{"catalog_id":"bdc518a5-c239-4116-be6d-1e6fe3b25e0c","title":"循环任务查询","description":"loop-task-query","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"ba47f361-afaa-4385-a2d0-fb7d3de10703","gmt_create":"2026-01-04T17:22:28.5923199+08:00","gmt_modified":"2026-01-04T17:22:28.5938911+08:00"},{"catalog_id":"c55a8cd9-460a-4a5e-986b-43f67392434c","title":"任务包配置","description":"task-packet-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"9e82fc88-a74c-45d7-9161-b740db781b7c","gmt_create":"2026-01-04T17:24:23.4428213+08:00","gmt_modified":"2026-01-04T17:24:23.4456545+08:00"},{"catalog_id":"e7d51db5-de2c-4ede-8850-07319692e5b0","title":"视电阻率数据模型","description":"sp-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"b918729d-c599-4160-bcf9-75d8c7baf8ec","gmt_create":"2026-01-04T17:24:23.6726811+08:00","gmt_modified":"2026-01-04T17:24:23.6772+08:00"},{"catalog_id":"9145cb88-65a7-4ff6-afcd-07a62cf78eab","title":"循环任务管理界面","description":"loop-task-management-ui","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"f5f0bc43-c0c7-4dee-968a-5974054b7be7","gmt_create":"2026-01-04T17:24:32.9056465+08:00","gmt_modified":"2026-01-04T17:24:32.9091562+08:00"},{"catalog_id":"0c1bbf14-6e98-4566-9f36-9731f0ff72eb","title":"地形配置","description":"terrain-configuration","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"c8ebf039-e8e5-441e-b90e-5dde835984d1","gmt_create":"2026-01-04T17:26:35.8840743+08:00","gmt_modified":"2026-01-04T17:26:35.8865671+08:00"},{"catalog_id":"ba7781a3-7780-44a9-b4e3-8f09e44570fb","title":"电阻率反演数据模型","description":"rsp-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"73d7b0b8-bcb0-4cdc-bc2c-6c4268188a32","gmt_create":"2026-01-04T17:26:44.5293493+08:00","gmt_modified":"2026-01-04T17:26:44.5322204+08:00"},{"catalog_id":"43638c5e-8384-4537-b584-16dfd6e5db53","title":"循环任务上传","description":"loop-task-upload","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"086cc09f-1d09-438d-8014-bd2d7436f399","gmt_create":"2026-01-04T17:27:20.3427662+08:00","gmt_modified":"2026-01-04T17:27:20.3461565+08:00"},{"catalog_id":"6efe8d5e-9535-4d47-81a9-2fd6cf09f928","title":"激电二次场数据模型","description":"ipsp-data-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"6225325f-0332-4dfe-9948-5f46ddf4ee8d","gmt_create":"2026-01-04T17:28:11.7988662+08:00","gmt_modified":"2026-01-04T17:28:11.8044388+08:00"},{"catalog_id":"de287db8-8a3d-4508-b96e-a3190c747282","title":"ScriptOperator","description":"script-operator","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"d11b5848-8ffc-4270-bdd2-6ca10f3bb1a7","gmt_create":"2026-01-04T17:30:25.5874936+08:00","gmt_modified":"2026-01-04T17:30:25.5912552+08:00"},{"catalog_id":"1ef667cf-29f6-4259-b04e-44098887b4da","title":"SptManager","description":"spt-manager","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"d60f4422-6a7c-4c58-828d-653626df5ee1","gmt_create":"2026-01-04T17:30:25.9596936+08:00","gmt_modified":"2026-01-04T17:30:25.9596936+08:00"},{"catalog_id":"d5ebd877-5ca0-414d-9be2-821d9680fda9","title":"Script数据模型","description":"script-model","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"4552baab-4a8e-4d35-a142-817d4c675e87","gmt_create":"2026-01-04T17:30:33.1465181+08:00","gmt_modified":"2026-01-04T17:30:33.1492996+08:00"},{"catalog_id":"0d344930-82a6-4dda-8ae9-0e2a952fc6d2","title":"数据格式处理","description":"data-format-handlers","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"546c538a-6c32-4b97-b822-33b24ba7eccf","gmt_create":"2026-01-04T17:32:41.8961775+08:00","gmt_modified":"2026-01-04T17:32:41.8987092+08:00"},{"catalog_id":"86a2de17-7e9f-43eb-8549-96a5a3822451","title":"文件传输协议","description":"file-transfer-protocol","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"26792b5c-e78b-4c25-8c10-09afaebfc4b3","gmt_create":"2026-01-04T17:32:56.6826709+08:00","gmt_modified":"2026-01-04T17:32:56.6861923+08:00"},{"catalog_id":"e214c335-a1e1-451d-a51e-cbae010e2434","title":"项目管理界面","description":"projectmanagementui","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"f618e5ce-f7b7-4862-86f1-ce86b294f51c","gmt_create":"2026-01-04T17:33:24.9159364+08:00","gmt_modified":"2026-01-04T17:33:24.9207025+08:00"},{"catalog_id":"6defd122-ec6e-4fab-92d9-b9711a03af25","title":"状态与流程控制","description":"state-and-flow-control","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"a6397422-6628-4fed-a83c-1c02c5809368","gmt_create":"2026-01-04T17:35:02.7798988+08:00","gmt_modified":"2026-01-04T17:35:02.7835563+08:00"},{"catalog_id":"c3733e40-a5bc-4ddd-a13d-50f40e2597f2","title":"ExecutionOperator","description":"execution-operator","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"3d5c53d3-53d1-486f-a8c6-e7aa5f4604a8","gmt_create":"2026-01-04T17:36:28.2129803+08:00","gmt_modified":"2026-01-04T17:36:28.2161264+08:00"},{"catalog_id":"e4f9d02a-b0ab-4fee-9773-296348285b92","title":"TdManager","description":"td-manager","extend":"{}","progress_status":"completed","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","id":"211d358b-1eb1-49c0-a1b1-b45debfa9a97","gmt_create":"2026-01-04T17:37:23.3051984+08:00","gmt_modified":"2026-01-04T17:37:23.3095592+08:00"}],"wiki_overview":{"content":"\u003cblog\u003e\n# GeomativeStudio 项目综合分析\n\n## 1. 项目介绍\n\nGeomativeStudio 是一个用于地球物理勘探设备管理与数据处理的专业桌面应用程序。该项目主要服务于地质勘探、地球物理测量等领域的专业用户,提供设备管理、项目配置、脚本生成、数据采集与分析等功能。\n\n### 核心目标与目的\n- 实现对 GD 系列地球物理工作站的全面管理\n- 提供多维度(1D/2D/3D)测量任务的配置与执行\n- 支持跨孔、地表等多种测量模式\n- 实现设备与软件之间的数据同步与交互\n- 提供完整的项目生命周期管理\n\n### 目标受众\n- 地质勘探工程师\n- 地球物理测量技术人员\n- 设备维护与管理人员\n- 数据分析与处理专家\n\n## 2. 技术架构\n\n### 组件分解\nGeomativeStudio 采用典型的 MFC 桌面应用程序架构,基于 Visual Studio 2015 开发,使用 C++ 语言实现。项目结构清晰,模块化程度高。\n\n```mermaid\nflowchart TD\n A[客户端应用] --\u003e B[UI 层]\n A --\u003e C[业务逻辑层]\n A --\u003e D[数据访问层]\n A --\u003e E[设备通信层]\n B --\u003e F[视图组件]\n C --\u003e G[管理器模块]\n D --\u003e H[数据库访问]\n E --\u003e I[串口/网络通信]\n H --\u003e J[(GeoMativeDB.accdb)]\n I --\u003e K[GD10 设备]\n```\n\n### 设计模式\n项目采用了多种经典设计模式:\n- **单例模式**:`CGeoMativeApp` 应用程序对象\n- **工厂模式**:`CProManager::GetDMS()` 用于创建不同类型的管理对象\n- **观察者模式**:通过消息映射机制实现 UI 事件处理\n- **责任链模式**:设备状态管理和任务执行流程\n\n### 系统关系\n系统各组件之间通过清晰的接口进行交互,核心组件包括:\n\n```mermaid\ngraph TD\n App[CGeoMativeApp] --\u003e DevManager[CDevManager]\n App --\u003e ProManager[CProManager]\n App --\u003e SptManager[CSptManager]\n App --\u003e TdManager[CTdManager]\n App --\u003e ExecManager[CExecManager]\n App --\u003e IOManager[CIOManager]\n \n DevManager --\u003e Database[(数据库)]\n ProManager --\u003e Database\n SptManager --\u003e Database\n TdManager --\u003e Database\n ExecManager --\u003e Database\n IOManager --\u003e Database\n \n DevManager --\u003e Device[设备通信]\n IOManager --\u003e Network[网络通信]\n SptManager --\u003e Script[脚本生成]\n```\n\n### 数据流图\n```mermaid\nflowchart LR\n User[用户操作] --\u003e UI[UI 层]\n UI --\u003e Controller[控制器]\n Controller --\u003e Service[业务服务]\n Service --\u003e DAO[数据访问对象]\n DAO --\u003e DB[(GeoMativeDB.accdb)]\n DB --\u003e DAO\n DAO --\u003e Service\n Service --\u003e UI\n UI --\u003e User\n Device[GD10 设备] --\u003e IOManager\n IOManager --\u003e Database\n```\n\n## 3. 关键实现\n\n### 主要入口点\n- `cpp\\Main\\GeoMative.cpp`:应用程序主入口,负责初始化和启动\n- `GeoMative.sln`:Visual Studio 解决方案文件\n\n### 核心模块\n- **设备管理模块**:`cpp\\Managers\\DevManager.cpp`\n- **项目管理模块**:`cpp\\Managers\\ProManager.cpp`\n- **脚本管理模块**:`cpp\\Managers\\SptManager.cpp`\n- **测试数据管理模块**:`cpp\\ProblemZone\\Project.cpp`\n\n### 配置方法\n- `config.ini`:主要配置文件,包含 UI 语言、传输信息、导出数据设置等\n- `database_modify.xml`:数据库修改记录\n- `version_info.txt`:版本信息文件\n\n### 外部依赖\n- **数据库**:Microsoft Access 数据库 (GeoMativeDB.accdb)\n- **通信库**:WinSock 用于网络通信\n- **XML 处理**:CMarkup 用于 XML 文件读写\n- **串口通信**:SComPort 系列类\n\n### 集成点\n- **设备集成**:通过 USB/串口与 GD10 设备通信\n- **网络集成**:支持在线模式下的数据传输\n- **数据库集成**:使用 ADO 连接和操作 Access 数据库\n\n### 组件关系图\n```mermaid\ngraph LR\n Main[GeoMative.cpp] --\u003e Managers\n Managers --\u003e DevManager\n Managers --\u003e ProManager\n Managers --\u003e SptManager\n Managers --\u003e TdManager\n Managers --\u003e ExecManager\n Managers --\u003e IOManager\n \n DevManager --\u003e Database\n ProManager --\u003e Database\n SptManager --\u003e Database\n TdManager --\u003e Database\n ExecManager --\u003e Database\n IOManager --\u003e Database\n \n DevManager --\u003e Device\n IOManager --\u003e Network\n SptManager --\u003e ScriptFiles\n ProManager --\u003e ProjectFiles\n \n subgraph \"数据存储\"\n Database[(GeoMativeDB.accdb)]\n ScriptFiles[脚本文件]\n ProjectFiles[项目文件]\n end\n```\n\n## 4. 关键特性\n\n### 功能概述\n- 多语言支持(中英文)\n- 设备管理与状态监控\n- 项目与测区管理\n- 2D/3D 测量脚本生成\n- 跨孔测量支持\n- 数据采集与传输\n- 在线/离线模式切换\n\n### 实现亮点\n- **动态脚本生成**:支持多种测量模式的脚本自动生成\n- **设备状态管理**:实时监控设备连接状态和工作状态\n- **数据同步机制**:实现设备与软件之间的数据同步\n- **配置灵活性**:通过配置文件实现系统参数的灵活调整\n\n### 功能架构图\n```mermaid\nstateDiagram-v2\n [*] --\u003e 启动\n 启动 --\u003e 初始化: 加载配置\n 初始化 --\u003e 设备检测: 检查连接\n 设备检测 --\u003e 主界面: 显示状态\n 主界面 --\u003e 项目管理: 创建/打开项目\n 主界面 --\u003e 设备管理: 配置设备\n 主界面 --\u003e 脚本管理: 生成测量脚本\n 主界面 --\u003e 数据采集: 执行测量任务\n 数据采集 --\u003e 数据存储: 保存结果\n 数据存储 --\u003e 数据分析: 处理数据\n 分析结果 --\u003e 报告生成: 输出报告\n 报告生成 --\u003e [*]\n \n 主界面 --\u003e 系统设置: 配置参数\n 系统设置 --\u003e 语言切换: 中英文\n 系统设置 --\u003e 传输设置: USB/网络\n```\n\n**重要说明**:本分析基于项目文件结构和关键代码文件的内容,重点关注系统架构和核心功能模块。项目采用传统的 MFC 框架开发,具有良好的模块化设计,便于维护和扩展。\n\nSources:\n- [GeoMative.cpp](cpp/Main/GeoMative.cpp)\n- [DevManager.cpp](cpp/Managers/DevManager.cpp)\n- [ProManager.cpp](cpp/Managers/ProManager.cpp)\n- [SptManager.cpp](cpp/Managers/SptManager.cpp)\n- [Project.cpp](cpp/ProblemZone/Project.cpp)\n- [config.ini](config.ini)\n\u003c/blog\u003e","gmt_create":"2026-01-04T14:35:01.3571683+08:00","gmt_modified":"2026-01-04T14:35:01.3571683+08:00","id":"3b3149ea-9f5d-435f-81a7-05fc5a743a6c","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25"},"wiki_readme":{"content":"No readme file","gmt_create":"2026-01-04T14:32:34.4075335+08:00","gmt_modified":"2026-01-04T14:32:34.4075335+08:00","id":"5801b319-7405-4396-924e-733bbd88b9d3","repo_id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25"},"wiki_repo":{"id":"f154a166-8f86-48a0-ad5a-dc8b88c4fd25","name":"GeomativeStudio","progress_status":"completed","wiki_present_status":"COMPLETED","optimized_catalog":"\".\\n├── CACHE\\\\\\n│ ├── project.xml\\n│ └── testzone.xml\\n├── DB\\\\\\n│ └── 数据库字段修改记录.txt\\n├── Install\\\\\\n│ ├── GD_10\\\\\\n│ │ ├── x64\\\\\\n│ │ │ ├── STtube.inf\\n│ │ │ ├── dpinst.xml\\n│ │ │ ├── stmcdc.inf\\n│ │ │ └── stmcdc_g.inf\\n│ │ └── x86\\\\\\n│ │ ├── STtube.inf\\n│ │ ├── dpinst.xml\\n│ │ ├── stmcdc.inf\\n│ │ └── stmcdc_g.inf\\n│ ├── Geomative Studio\\\\\\n│ │ ├── LOG\\\\\\n│ │ │ ├── general\\\\\\n│ │ │ │ └── 20211110.txt\\n│ │ │ └── detect_gd20_log.txt\\n│ │ ├── tools\\\\\\n│ │ │ ├── dfu_tools\\\\\\n│ │ │ │ └── COPYING.txt\\n│ │ │ ├── IAP-GD10.bat\\n│ │ │ └── License-GD10.bat\\n│ │ ├── config.ini\\n│ │ ├── database_modify.xml\\n│ │ └── version_info.txt\\n│ ├── test1\\\\Script Files\\\\\\n│ │ ├── Setup.map\\n│ │ └── Setup.rul\\n│ └── geomativestudio.nsi\\n├── LOG\\\\\\n│ └── upg_geo_filetrans_log.txt\\n├── Release\\\\\\n│ ├── DB\\\\\\n│ │ └── 数据库字段修改记录.txt\\n│ ├── GeoMative.tlog\\\\\\n│ │ └── GeoMative.lastbuildstate\\n│ ├── config.ini\\n│ ├── msado15.tlh\\n│ ├── msado15.tli\\n│ ├── msadox.tlh\\n│ └── msadox.tli\\n├── cpp\\\\\\n│ ├── Lock\\\\\\n│ │ └── AutoLock.cpp\\n│ ├── Main\\\\\\n│ │ ├── GeoMative.cpp\\n│ │ └── Global.cpp\\n│ ├── Managers\\\\\\n│ │ ├── DevManager.cpp\\n│ │ ├── ExecManager.cpp\\n│ │ ├── IOManager.cpp\\n│ │ ├── PasswordMng.cpp\\n│ │ ├── ProManager.cpp\\n│ │ ├── SptManager.cpp\\n│ │ ├── TdManager.cpp\\n│ │ └── TestManager.cpp\\n│ ├── Operator\\\\\\n│ │ ├── DataOperator.cpp\\n│ │ ├── DetcGD10Dev.cpp\\n│ │ ├── DevOperator.cpp\\n│ │ ├── DialCustomSptInput.cpp\\n│ │ ├── ExecOperator.cpp\\n│ │ ├── InputPasswordDial.cpp\\n│ │ ├── LicenseUpgrade.cpp\\n│ │ ├── OperMediumPt.cpp\\n│ │ ├── SptOperator.cpp\\n│ │ ├── SynOperator.cpp\\n│ │ ├── TaskDataOper.cpp\\n│ │ ├── UpdateDataBase.cpp\\n│ │ └── delelectrode.cpp\\n│ ├── ProblemZone\\\\\\n│ │ ├── Channel.cpp\\n│ │ ├── DataMngStruct.cpp\\n│ │ ├── DevLinkRecord.cpp\\n│ │ ├── Device.cpp\\n│ │ ├── Electrode.cpp\\n│ │ ├── Ipsp2DTd.cpp\\n│ │ ├── Ipsp2DTdRecord.cpp\\n│ │ ├── Ipsp3DTd.cpp\\n│ │ ├── Ipsp3DTdRecord.cpp\\n│ │ ├── IpspCETd.cpp\\n│ │ ├── IpspCETdRecord.cpp\\n│ │ ├── Medium.cpp\\n│ │ ├── Medium3D.cpp\\n│ │ ├── MediumA.cpp\\n│ │ ├── MediumAM.cpp\\n│ │ ├── MediumAMN.cpp\\n│ │ ├── MediumB.cpp\\n│ │ ├── MediumBasicWenAndSch.cpp\\n│ │ ├── MediumC.cpp\\n│ │ ├── MediumCrossHoleGeomative.cpp\\n│ │ ├── MediumCrossHoleGeomativeAM.cpp\\n│ │ ├── MediumCustom2D.cpp\\n│ │ ├── MediumD.cpp\\n│ │ ├── MediumE.cpp\\n│ │ ├── MediumEdgeGradient.cpp\\n│ │ ├── MediumK.cpp\\n│ │ ├── MediumLandfillAdjacent.cpp\\n│ │ ├── MediumLandfillDiagonally.cpp\\n│ │ ├── MediumLogging.cpp\\n│ │ ├── MediumMidGardientScan.cpp\\n│ │ ├── MediumQ.cpp\\n│ │ ├── MediumR.cpp\\n│ │ ├── MediumS.cpp\\n│ │ ├── MediumS3P.cpp\\n│ │ ├── MediumStrongGradient.cpp\\n│ │ ├── MediumStrongWenAndSch.cpp\\n│ │ ├── MediumT.cpp\\n│ │ ├── MediumTwoSideAMN.cpp\\n│ │ ├── MediumU.cpp\\n│ │ ├── MediumUnityProfile.cpp\\n│ │ ├── MediumV.cpp\\n│ │ ├── MediumW.cpp\\n│ │ ├── MediumX.cpp\\n│ │ ├── MediumY.cpp\\n│ │ ├── MediumZ.cpp\\n│ │ ├── MediumZA.cpp\\n│ │ ├── MediumZB.cpp\\n│ │ ├── MediumZC.cpp\\n│ │ ├── MeidumBipoleUpHole.cpp\\n│ │ ├── Project.cpp\\n│ │ ├── Rsp2DTd.cpp\\n│ │ ├── Rsp2DTdRecord.cpp\\n│ │ ├── RspCETd.cpp\\n│ │ ├── RspCETdRecord.cpp\\n│ │ ├── SP2DTd.cpp\\n│ │ ├── SP2DTdRecord.cpp\\n│ │ ├── SP3DTd.cpp\\n│ │ ├── SP3DTdRecord.cpp\\n│ │ ├── SPCETd.cpp\\n│ │ ├── SPCETdRecord.cpp\\n│ │ ├── Script.cpp\\n│ │ ├── Script2D.cpp\\n│ │ ├── Script3D.cpp\\n│ │ ├── ScriptCE.cpp\\n│ │ ├── Scriptor3D.cpp\\n│ │ ├── SptPtSort.cpp\\n│ │ ├── SptRecord.cpp\\n│ │ ├── TdChannel.cpp\\n│ │ ├── TdRecord.cpp\\n│ │ ├── TestingData.cpp\\n│ │ ├── TestingZone.cpp\\n│ │ └── appdevolgrlistview.cpp\\n│ ├── Scheduler\\\\\\n│ │ └── scheduler.cpp\\n│ ├── Tools\\\\\\n│ │ ├── Crc16.cpp\\n│ │ ├── Crc32.cpp\\n│ │ ├── FileOperTools.cpp\\n│ │ ├── FileTransfer.cpp\\n│ │ ├── FileTransfer_crul.cpp\\n│ │ ├── GD10OperCmd.cpp\\n│ │ ├── GUCodeCreator.cpp\\n│ │ ├── GetProcessInfo.cpp\\n│ │ ├── HandleProcessor.cpp\\n│ │ ├── HttpDownload.cpp\\n│ │ ├── Markup.cpp\\n│ │ ├── MyCopyFile.cpp\\n│ │ ├── NetWorkOper.cpp\\n│ │ ├── OperPLC.cpp\\n│ │ ├── OperTxtFile.cpp\\n│ │ ├── OperUrfFile.cpp\\n│ │ ├── Res3DDatFile.cpp\\n│ │ ├── Res3DDatFileRecord.cpp\\n│ │ ├── SComPort.cpp\\n│ │ ├── SComPort_winxp.cpp\\n│ │ ├── SaveInIP.cpp\\n│ │ ├── SaveInRes.cpp\\n│ │ ├── StateProcessor.cpp\\n│ │ ├── StdAfx.cpp\\n│ │ ├── TcpClient.cpp\\n│ │ ├── TransferCtrl.cpp\\n│ │ ├── Zmodem.cpp\\n│ │ ├── checkupdate.cpp\\n│ │ ├── excel.cpp\\n│ │ ├── floatedit.cpp\\n│ │ └── scriptor.c\\n│ ├── Views\\\\\\n│ │ ├── AppDataCEIpCurveDlg.cpp\\n│ │ ├── AppDataCEIpCurveGraphView.cpp\\n│ │ ├── AppDataCESTdGrListView.cpp\\n│ │ ├── AppDataIpsp3DTdConListView.cpp\\n│ │ ├── AppDataIpsp3DTdView.cpp\\n│ │ ├── AppDataIpspCETdConListView.cpp\\n│ │ ├── AppDataIpspCETdView.cpp\\n│ │ ├── AppDataRsp3DTdConListView.cpp\\n│ │ ├── AppDataRsp3DTdView.cpp\\n│ │ ├── AppDataSP2DTdConListView.cpp\\n│ │ ├── AppDataSP2DTdView.cpp\\n│ │ ├── AppDataSP3DTdConListView.cpp\\n│ │ ├── AppDataSP3DTdView.cpp\\n│ │ ├── AppDataSPCETdConListView_.cpp\\n│ │ ├── AppDataSPCETdView.cpp\\n│ │ ├── AppData_CE_IP_Td_Gr_ListView.cpp\\n│ │ ├── AppMarineTdDetailListView.cpp\\n│ │ ├── Browse2DScriptDlg.cpp\\n│ │ ├── Browse2DScriptView.cpp\\n│ │ ├── CDialog3DScriptDrawingBoard.cpp\\n│ │ ├── ChildFrm.cpp\\n│ │ ├── ChildView.cpp\\n│ │ ├── CombineDlg.cpp\\n│ │ ├── CustomSptQueryDial.cpp\\n│ │ ├── DailLogin.cpp\\n│ │ ├── Dial2DTaskTree.cpp\\n│ │ ├── Dial3DTaskTree.cpp\\n│ │ ├── DialCesptNew3PVes.cpp\\n│ │ ├── DialCfgTaskPacket.cpp\\n│ │ ├── DialCfgTerrain.cpp\\n│ │ ├── DialCombine3DTask.cpp\\n│ │ ├── DialCreateNew3DSpt.cpp\\n│ │ ├── DialDeleteTaskOption.cpp\\n│ │ ├── DialDevStatusTimerShow.cpp\\n│ │ ├── DialExpDiagnosis.cpp\\n│ │ ├── DialFindComShow.cpp\\n│ │ ├── DialListDetailInfoData.cpp\\n│ │ ├── DialListDetailInfoGR.cpp\\n│ │ ├── DialListMeasuData.cpp\\n│ │ ├── DialListMeasuGR.cpp\\n│ │ ├── DialListRealTimeMeasuData.cpp\\n│ │ ├── DialListRealTimeMeasuGR.cpp\\n│ │ ├── DialLoopTaskCancel.cpp\\n│ │ ├── DialLoopTaskQuery.cpp\\n│ │ ├── DialManageLoopTask.cpp\\n│ │ ├── DialMeasuLoopTest.cpp\\n│ │ ├── DialMeasuTaskPacket.cpp\\n│ │ ├── DialMeasureData.cpp\\n│ │ ├── DialMeasureDetailInfo.cpp\\n│ │ ├── DialNew1DTask.cpp\\n│ │ ├── DialNew2DTask.cpp\\n│ │ ├── DialNew3DTask.cpp\\n│ │ ├── DialOfflineDeviceTaskManager.cpp\\n│ │ ├── DialPlcStatusSetting.cpp\\n│ │ ├── DialPlcStatusShow.cpp\\n│ │ ├── DialQueryPLCStatus.cpp\\n│ │ ├── DialRealTimeMeasureData.cpp\\n│ │ ├── DialRollCallCable.cpp\\n│ │ ├── DialShowDevParam.cpp\\n│ │ ├── DialTaskManager.cpp\\n│ │ ├── DialTaskManagerOffline.cpp\\n│ │ ├── DialTaskTree.cpp\\n│ │ ├── DialTaskTreeOffline.cpp\\n│ │ ├── DialTimerTask.cpp\\n│ │ ├── DialTimerTaskMeasu.cpp\\n│ │ ├── DialUpgDeviceInfo.cpp\\n│ │ ├── DialUploadLoopTask.cpp\\n│ │ ├── Disp2DRSPGrapDlg.cpp\\n│ │ ├── DownloadDataProgressDlg.cpp\\n│ │ ├── InputElectrodeNumDlg.cpp\\n│ │ ├── MainFrm.cpp\\n│ │ ├── ModifyIpCurveDlg.cpp\\n│ │ ├── OLSynOperato.cpp\\n│ │ ├── OnLineSynDevDlg.cpp\\n│ │ ├── OnLineSynTdDlg.cpp\\n│ │ ├── OpCreate3DSptDlg.cpp\\n│ │ ├── OpExecCERSPTestTdScrollView.cpp\\n│ │ ├── OpTGD_3D_Dlg.cpp\\n│ │ ├── ProgressDlg.cpp\\n│ │ ├── Rsp3DTd.cpp\\n│ │ ├── Rsp3DTdRecord.cpp\\n│ │ ├── SaveFilePathDlg.cpp\\n│ │ ├── SaveSpcFilePath.cpp\\n│ │ ├── Splash.cpp\\n│ │ ├── TaskProgressDlg.cpp\\n│ │ ├── UpDateTimeWindow.cpp\\n│ │ ├── appcesptconlistview.cpp\\n│ │ ├── appcesptview.cpp\\n│ │ ├── appdatadevdetaillistview.cpp\\n│ │ ├── appdatadevview.cpp\\n│ │ ├── appdataipsp2dtdconlistview.cpp\\n│ │ ├── appdataipsp2dtdview.cpp\\n│ │ ├── appdataprodetaillistview.cpp\\n│ │ ├── appdataprolistview.cpp\\n│ │ ├── appdataproview.cpp\\n│ │ ├── appdatarsp2dtdconlistview.cpp\\n│ │ ├── appdatarsp2dtdview.cpp\\n│ │ ├── appdatarspcetdconlistview.cpp\\n│ │ ├── appdatarspcetdview.cpp\\n│ │ ├── appdatatddetaillistview.cpp\\n│ │ ├── appdatatdgrlistview.cpp\\n│ │ ├── appdatatdlistview.cpp\\n│ │ ├── appdatatzdetaillistview.cpp\\n│ │ ├── appdatatzlistview.cpp\\n│ │ ├── appdatatzview.cpp\\n│ │ ├── appdevdetaillistview.cpp\\n│ │ ├── appdevolacview.cpp\\n│ │ ├── appdevoldetaillistview.cpp\\n│ │ ├── appdevolview.cpp\\n│ │ ├── appdevview.cpp\\n│ │ ├── appsptchannellistview.cpp\\n│ │ ├── appsptconlistview.cpp\\n│ │ ├── appsptdetaillistview.cpp\\n│ │ ├── appsptview.cpp\\n│ │ ├── blankview.cpp\\n│ │ ├── datamngframe.cpp\\n│ │ ├── devmngframe.cpp\\n│ │ ├── dispcerspgrapdlg.cpp\\n│ │ ├── dispgrap2drsptdview.cpp\\n│ │ ├── dispgrapcersptdview.cpp\\n│ │ ├── disptdrecsplinesgrapdlg.cpp\\n│ │ ├── disptdrecsplinesgrapview.cpp\\n│ │ ├── ioexpdlg.cpp\\n│ │ ├── ioexpdmsdlg.cpp\\n│ │ ├── ioexpsptdlg.cpp\\n│ │ ├── navdataprodlg.cpp\\n│ │ ├── navdataview.cpp\\n│ │ ├── navdevview.cpp\\n│ │ ├── navspt2ddlg.cpp\\n│ │ ├── navspt3ddlg.cpp\\n│ │ ├── navsptcedlg.cpp\\n│ │ ├── navsptview.cpp\\n│ │ ├── opcespt3pvesdlg.cpp\\n│ │ ├── opcespt4pvesdlg.cpp\\n│ │ ├── opcesptcustomdlg.cpp\\n│ │ ├── opcesptdipoledlg.cpp\\n│ │ ├── opcesptrectgldlg.cpp\\n│ │ ├── opcreatecesptdlg.cpp\\n│ │ ├── opcreatedmsdlg.cpp\\n│ │ ├── opcreateprojectdlg.cpp\\n│ │ ├── opcreatesfdlg.cpp\\n│ │ ├── opcreatesptdlg.cpp\\n│ │ ├── opcreatesptframe.cpp\\n│ │ ├── opcreatesptgndlg.cpp\\n│ │ ├── opcreatesptinfoview.cpp\\n│ │ ├── opcreatesptreclistview.cpp\\n│ │ ├── opcreatesptview.cpp\\n│ │ ├── opcreatetzdlg.cpp\\n│ │ ├── opdevcableheadmodifydlg.cpp\\n│ │ ├── opdevpammodifydlg.cpp\\n│ │ ├── opexec2drsptestdlg.cpp\\n│ │ ├── opexec2drsptestframe.cpp\\n│ │ ├── opexec2drsptestgrlistview.cpp\\n│ │ ├── opexec2drsptestgrview.cpp\\n│ │ ├── opexec2drsptestsetdlg.cpp\\n│ │ ├── opexec2drsptesttdlistview.cpp\\n│ │ ├── opexec2drsptesttdview.cpp\\n│ │ ├── opexeccersprecframe.cpp\\n│ │ ├── opexeccersptestdlg.cpp\\n│ │ ├── opexeccersptestframe.cpp\\n│ │ ├── opexeccersptestsptlistview.cpp\\n│ │ ├── opexeccersptesttdlistview.cpp\\n│ │ ├── opexeccersptesttdview.cpp\\n│ │ ├── opexeccersptesttpview.cpp\\n│ │ ├── opexectd2dsptseldlg.cpp\\n│ │ ├── opexectdcesptseldlg.cpp\\n│ │ ├── opselectscondlg.cpp\\n│ │ ├── opselspttpdlg.cpp\\n│ │ ├── opsortspttpdlg.cpp\\n│ │ ├── opsyndlg.cpp\\n│ │ ├── opsynsptdlg.cpp\\n│ │ ├── opsyntddlg.cpp\\n│ │ ├── optd2dto3ddlg.cpp\\n│ │ ├── optgddlg.cpp\\n│ │ ├── sptmngframe.cpp\\n│ │ └── taskmngframe.cpp\\n│ ├── WkeWindow\\\\\\n│ │ └── WkeWindow.cpp\\n│ ├── crossHole\\\\\\n│ │ ├── C2DSimulationDlg.cpp\\n│ │ ├── C3DSimulationDlg.cpp\\n│ │ ├── CCrossHoleConfig2DMainDlg.cpp\\n│ │ ├── CCrossHoleConfig3DMainDlg.cpp\\n│ │ ├── CCrosshole2dDrawingBoardDlg.cpp\\n│ │ ├── CCrosshole3dDrawingBoardDlg.cpp\\n│ │ ├── COption2DBoreholeDlg.cpp\\n│ │ ├── COption2DGeometryDlg.cpp\\n│ │ ├── COption2DSettingDlg.cpp\\n│ │ ├── COption2DSurfaceDlg.cpp\\n│ │ ├── COption3DBoreholeDlg.cpp\\n│ │ ├── COption3DGeometryDlg.cpp\\n│ │ ├── COption3DSettingDlg.cpp\\n│ │ └── COption3DSurfaceDlg.cpp\\n│ ├── ctrl\\\\\\n│ │ ├── CDragListCtrl.cpp\\n│ │ ├── CDragListCtrl.h\\n│ │ ├── CListHeaderTextColorCtrl.cpp\\n│ │ ├── CListHeaderTextColorCtrl.h\\n│ │ ├── CListTextColorCtrl.cpp\\n│ │ ├── CListTextColorCtrl.h\\n│ │ ├── DragList.cpp\\n│ │ └── DragList.h\\n│ ├── logging\\\\\\n│ │ ├── CDialogLoggingCreateTaskWnd.cpp\\n│ │ ├── CDialogLoggingEditSymbolBoard.cpp\\n│ │ ├── CDialogLoggingLithologicWnd.cpp\\n│ │ ├── CDialogLoggingParameterSetting.cpp\\n│ │ ├── CDialogLoggingSelectComPortWnd.cpp\\n│ │ ├── CDialogLoggingSymbolEditor.cpp\\n│ │ ├── CDialogLoggingTestMainWnd.cpp\\n│ │ ├── CDialogLoggingWnd.cpp\\n│ │ └── CLoggingDataOper.cpp\\n│ ├── miniblink\\\\\\n│ │ ├── RenderGDI.h\\n│ │ ├── Resource.h\\n│ │ ├── test.cpp\\n│ │ ├── wke.h\\n│ │ └── wkeBrowser.cpp\\n│ └── socket\\\\\\n│ ├── Concurrentlist.h\\n│ ├── NetRequestDialog.cpp\\n│ ├── NetRequestDialog.h\\n│ ├── StdThread.cpp\\n│ └── StdThread.h\\n├── h\\\\\\n│ ├── Lock\\\\\\n│ │ └── AutoLock.h\\n│ ├── WkeWindow\\\\\\n│ │ ├── WkeWindow.h\\n│ │ └── wke.h\\n│ ├── crossHole\\\\\\n│ │ ├── C2DSimulationDlg.h\\n│ │ ├── C3DSimulationDlg.h\\n│ │ ├── CCrossHoleConfig2DMainDlg.h\\n│ │ ├── CCrossHoleConfig3DMainDlg.h\\n│ │ ├── CCrosshole2dDrawingBoardDlg.h\\n│ │ ├── CCrosshole3dDrawingBoardDlg.h\\n│ │ ├── COption2DBoreholeDlg.h\\n│ │ ├── COption2DGeometryDlg.h\\n│ │ ├── COption2DSettingDlg.h\\n│ │ ├── COption2DSurfaceDlg.h\\n│ │ ├── COption3DBoreholeDlg.h\\n│ │ ├── COption3DGeometryDlg.h\\n│ │ ├── COption3DSettingDlg.h\\n│ │ └── COption3DSurfaceDlg.h\\n│ ├── curl\\\\\\n│ │ ├── curl.h\\n│ │ ├── curlbuild.h\\n│ │ ├── curlrules.h\\n│ │ ├── curlver.h\\n│ │ ├── easy.h\\n│ │ ├── mprintf.h\\n│ │ ├── multi.h\\n│ │ ├── stdcheaders.h\\n│ │ ├── system.h\\n│ │ ├── typecheck-gcc.h\\n│ │ └── urlapi.h\\n│ ├── httpClient\\\\\\n│ │ └── http_client.h\\n│ ├── logging\\\\\\n│ │ ├── CDialogLoggingCreateTaskWnd.h\\n│ │ ├── CDialogLoggingEditSymbolBoard.h\\n│ │ ├── CDialogLoggingLithologicWnd.h\\n│ │ ├── CDialogLoggingParameterSetting.h\\n│ │ ├── CDialogLoggingSelectComPortWnd.h\\n│ │ ├── CDialogLoggingSymbolEditor.h\\n│ │ ├── CDialogLoggingTestMainWnd.h\\n│ │ ├── CDialogLoggingWnd.h\\n│ │ └── CLoggingDataOper.h\\n│ ├── AppDataCEIpCurveDlg.h\\n│ ├── AppDataCEIpCurveGraphView.h\\n│ ├── AppDataCESTdGrListView.h\\n│ ├── AppDataIpsp3DTdConListView.h\\n│ ├── AppDataIpsp3DTdView.h\\n│ ├── AppDataIpspCETdConListView.h\\n│ ├── AppDataIpspCETdView.h\\n│ ├── AppDataRsp3DTdConListView.h\\n│ ├── AppDataRsp3DTdView.h\\n│ ├── AppDataSP2DTdConListView.h\\n│ ├── AppDataSP2DTdView.h\\n│ ├── AppDataSP3DTdConListView.h\\n│ ├── AppDataSP3DTdView.h\\n│ ├── AppDataSPCETdConListView_.h\\n│ ├── AppDataSPCETdView.h\\n│ ├── AppData_CE_IP_Td_Gr_ListView.h\\n│ ├── AppMarineTdDetailListView.h\\n│ ├── Browse2DScriptDlg.h\\n│ ├── Browse2DScriptView.h\\n│ ├── CDialog3DScriptDrawingBoard.h\\n│ ├── Channel.h\\n│ ├── ChildFrm.h\\n│ ├── ChildView.h\\n│ ├── CombineDlg.h\\n│ ├── Constant.h\\n│ ├── Crc16.h\\n│ ├── Crc32.h\\n│ ├── CtrlProtocolDef.h\\n│ ├── CustomSptQueryDial.h\\n│ ├── DailLogin.h\\n│ ├── DataMngStruct.h\\n│ ├── DataOperator.h\\n│ ├── DetcGD10Dev.h\\n│ ├── DevLinkRecord.h\\n│ ├── DevManager.h\\n│ ├── DevOperator.h\\n│ ├── Device.h\\n│ ├── Dial2DTaskTree.h\\n│ ├── Dial3DTaskTree.h\\n│ ├── DialCesptNew3PVes.h\\n│ ├── DialCfgTaskPacket.h\\n│ ├── DialCfgTerrain.h\\n│ ├── DialCombine3DTask.h\\n│ ├── DialCreateNew3DSpt.h\\n│ ├── DialCustomSptInput.h\\n│ ├── DialDeleteTaskOption.h\\n│ ├── DialDevStatusTimerShow.h\\n│ ├── DialExpDiagnosis.h\\n│ ├── DialFindComShow.h\\n│ ├── DialListDetailInfoData.h\\n│ ├── DialListDetailInfoGR.h\\n│ ├── DialListMeasuData.h\\n│ ├── DialListMeasuGR.h\\n│ ├── DialListRealTimeMeasuData.h\\n│ ├── DialListRealTimeMeasuGR.h\\n│ ├── DialLoopTaskCancel.h\\n│ ├── DialLoopTaskQuery.h\\n│ ├── DialManageLoopTask.h\\n│ ├── DialMeasuLoopTest.h\\n│ ├── DialMeasuTaskPacket.h\\n│ ├── DialMeasureData.h\\n│ ├── DialMeasureDetailInfo.h\\n│ ├── DialNew1DTask.h\\n│ ├── DialNew2DTask.h\\n│ ├── DialNew3DTask.h\\n│ ├── DialOfflineDeviceTaskManager.h\\n│ ├── DialPlcStatusSetting.h\\n│ ├── DialPlcStatusShow.h\\n│ ├── DialQueryPLCStatus.h\\n│ ├── DialRealTimeMeasureData.h\\n│ ├── DialRollCallCable.h\\n│ ├── DialShowDevParam.h\\n│ ├── DialTaskManager.h\\n│ ├── DialTaskManagerOffline.h\\n│ ├── DialTaskTree.h\\n│ ├── DialTaskTreeOffline.h\\n│ ├── DialTimerTask.h\\n│ ├── DialTimerTaskMeasu.h\\n│ ├── DialUpgDeviceInfo.h\\n│ ├── DialUploadLoopTask.h\\n│ ├── Disp2DRSPGrapDlg.h\\n│ ├── DownloadDataProgressDlg.h\\n│ ├── EasySize.h\\n│ ├── Electrode.h\\n│ ├── ExecManager.h\\n│ ├── ExecOperator.h\\n│ ├── FileOperTools.h\\n│ ├── FileTransfer.h\\n│ ├── FileTransfer_crul.h\\n│ ├── GD10OperCmd.h\\n│ ├── GUCodeCreator.h\\n│ ├── GeoMative.h\\n│ ├── GetProcessInfo.h\\n│ ├── HandleProcessor.h\\n│ ├── HttpDownload.h\\n│ ├── IOManager.h\\n│ ├── InputElectrodeNumDlg.h\\n│ ├── InputPasswordDial.h\\n│ ├── Ipsp2DTd.h\\n│ ├── Ipsp2DTdRecord.h\\n│ ├── Ipsp3DTd.h\\n│ ├── Ipsp3DTdRecord.h\\n│ ├── IpspCETd.h\\n│ ├── IpspCETdRecord.h\\n│ ├── LicenseUpgrade.h\\n│ ├── LinkList.h\\n│ ├── MainFrm.h\\n│ ├── Markup.h\\n│ ├── Medium.h\\n│ ├── Medium3D.h\\n│ ├── MediumA.h\\n│ ├── MediumAM.h\\n│ ├── MediumAMN.h\\n│ ├── MediumB.h\\n│ ├── MediumBasicWenAndSch.h\\n│ ├── MediumC.h\\n│ ├── MediumCrossHoleGeomative.h\\n│ ├── MediumCrossHoleGeomativeAM.h\\n│ ├── MediumCustom2D.h\\n│ ├── MediumD.h\\n│ ├── MediumE.h\\n│ ├── MediumEdgeGradient.h\\n│ ├── MediumK.h\\n│ ├── MediumLandfillAdjacent.h\\n│ ├── MediumLandfillDiagonally.h\\n│ ├── MediumLogging.h\\n│ ├── MediumMidGardientScan.h\\n│ ├── MediumQ.h\\n│ ├── MediumR.h\\n│ ├── MediumS.h\\n│ ├── MediumS3P.h\\n│ ├── MediumStrongGradient.h\\n│ ├── MediumStrongWenAndSch.h\\n│ ├── MediumT.h\\n│ ├── MediumTwoSideAMN.h\\n│ ├── MediumU.h\\n│ ├── MediumUnityProfile.h\\n│ ├── MediumV.h\\n│ ├── MediumW.h\\n│ ├── MediumX.h\\n│ ├── MediumY.h\\n│ ├── MediumZ.h\\n│ ├── MediumZA.h\\n│ ├── MediumZB.h\\n│ ├── MediumZC.h\\n│ ├── MeidumBipoleUpHole.h\\n│ ├── ModifyIpCurveDlg.h\\n│ ├── MyCopyFile.h\\n│ ├── NetWorkOper.h\\n│ ├── OLSynOperato.h\\n│ ├── OnLineSynDevDlg.h\\n│ ├── OnLineSynTdDlg.h\\n│ ├── OpCreate3DSptDlg.h\\n│ ├── OpExecCERSPTestTdScrollView.h\\n│ ├── OpRspCEMarineSettingDlg.cpp\\n│ ├── OpRspCEMarineSettingDlg.h\\n│ ├── OpTGD_3D_Dlg.h\\n│ ├── OperMediumPt.h\\n│ ├── OperPLC.h\\n│ ├── OperTxtFile.h\\n│ ├── OperUrfFile.h\\n│ ├── PasswordMng.h\\n│ ├── ProManager.h\\n│ ├── ProgressDlg.h\\n│ ├── Project.h\\n│ ├── Res3DDatFile.h\\n│ ├── Res3DDatFileRecord.h\\n│ ├── RingBuffer.h\\n│ ├── Rsp2DTd.h\\n│ ├── Rsp2DTdRecord.h\\n│ ├── Rsp3DTd.h\\n│ ├── Rsp3DTdRecord.h\\n│ ├── RspCETd.h\\n│ ├── RspCETdRecord.h\\n│ ├── SComPort.h\\n│ ├── SP2DTd.h\\n│ ├── SP2DTdRecord.h\\n│ ├── SP3DTd.h\\n│ ├── SP3DTdRecord.h\\n│ ├── SPCETd.h\\n│ ├── SPCETdRecord.h\\n│ ├── SaveFilePathDlg.h\\n│ ├── SaveInIP.h\\n│ ├── SaveInRes.h\\n│ ├── SaveSpcFilePath.h\\n│ ├── Script.h\\n│ ├── Script2D.h\\n│ ├── Script3D.h\\n│ ├── ScriptCE.h\\n│ ├── Scriptor3D.h\\n│ ├── Splash.h\\n│ ├── SptManager.h\\n│ ├── SptOperator.h\\n│ ├── SptPtSort.h\\n│ ├── SptRecord.h\\n│ ├── StateProcessor.h\\n│ ├── StdAfx.h\\n│ ├── SynOperator.h\\n│ ├── TaskDataOper.h\\n│ ├── TaskProgressDlg.h\\n│ ├── TcpClient.h\\n│ ├── TdChannel.h\\n│ ├── TdManager.h\\n│ ├── TdRecord.h\\n│ ├── TestManager.h\\n│ ├── TestingData.h\\n│ ├── TestingZone.h\\n│ ├── TransferCtrl.h\\n│ ├── UpDateTimeWindow.h\\n│ ├── UpdateDataBase.h\\n│ ├── Zmodem.h\\n│ ├── _zmodem.h\\n│ ├── appcesptconlistview.h\\n│ ├── appcesptview.h\\n│ ├── appdatadevdetaillistview.h\\n│ ├── appdatadevview.h\\n│ ├── appdataipsp2dtdconlistview.h\\n│ ├── appdataipsp2dtdview.h\\n│ ├── appdataprodetaillistview.h\\n│ ├── appdataprolistview.h\\n│ ├── appdataproview.h\\n│ ├── appdatarsp2dtdconlistview.h\\n│ ├── appdatarsp2dtdview.h\\n│ ├── appdatarspcetdconlistview.h\\n│ ├── appdatarspcetdview.h\\n│ ├── appdatatddetaillistview.h\\n│ ├── appdatatdgrlistview.h\\n│ ├── appdatatdlistview.h\\n│ ├── appdatatzdetaillistview.h\\n│ ├── appdatatzlistview.h\\n│ ├── appdatatzview.h\\n│ ├── appdevdetaillistview.h\\n│ ├── appdevolacview.h\\n│ ├── appdevoldetaillistview.h\\n│ ├── appdevolgrlistview.h\\n│ ├── appdevolview.h\\n│ ├── appdevview.h\\n│ ├── appsptchannellistview.h\\n│ ├── appsptconlistview.h\\n│ ├── appsptdetaillistview.h\\n│ ├── appsptview.h\\n│ ├── blankview.h\\n│ ├── checkupdate.h\\n│ ├── datamngframe.h\\n│ ├── delelectrode.h\\n│ ├── devmngframe.h\\n│ ├── dispcerspgrapdlg.h\\n│ ├── dispgrap2drsptdview.h\\n│ ├── dispgrapcersptdview.h\\n│ ├── disptdrecsplinesgrapdlg.h\\n│ ├── disptdrecsplinesgrapview.h\\n│ ├── excel.h\\n│ ├── floatedit.h\\n│ ├── geo_meta_helper.h\\n│ ├── ioexpdlg.h\\n│ ├── ioexpdmsdlg.h\\n│ ├── ioexpsptdlg.h\\n│ ├── navdataprodlg.h\\n│ ├── navdataview.h\\n│ ├── navdevview.h\\n│ ├── navspt2ddlg.h\\n│ ├── navspt3ddlg.h\\n│ ├── navsptcedlg.h\\n│ ├── navsptview.h\\n│ ├── opcespt3pvesdlg.h\\n│ ├── opcespt4pvesdlg.h\\n│ ├── opcesptcustomdlg.h\\n│ ├── opcesptdipoledlg.h\\n│ ├── opcesptrectgldlg.h\\n│ ├── opcreatecesptdlg.h\\n│ ├── opcreatedmsdlg.h\\n│ ├── opcreateprojectdlg.h\\n│ ├── opcreatesfdlg.h\\n│ ├── opcreatesptdlg.h\\n│ ├── opcreatesptframe.h\\n│ ├── opcreatesptgndlg.h\\n│ ├── opcreatesptinfoview.h\\n│ ├── opcreatesptreclistview.h\\n│ ├── opcreatesptview.h\\n│ ├── opcreatetzdlg.h\\n│ ├── opdevcableheadmodifydlg.h\\n│ ├── opdevpammodifydlg.h\\n│ ├── opexec2drsptestdlg.h\\n│ ├── opexec2drsptestframe.h\\n│ ├── opexec2drsptestgrlistview.h\\n│ ├── opexec2drsptestgrview.h\\n│ ├── opexec2drsptestsetdlg.h\\n│ ├── opexec2drsptesttdlistview.h\\n│ ├── opexec2drsptesttdview.h\\n│ ├── opexeccersprecframe.h\\n│ ├── opexeccersptestdlg.h\\n│ ├── opexeccersptestframe.h\\n│ ├── opexeccersptestsptlistview.h\\n│ ├── opexeccersptesttdlistview.h\\n│ ├── opexeccersptesttdview.h\\n│ ├── opexeccersptesttpview.h\\n│ ├── opexectd2dsptseldlg.h\\n│ ├── opexectdcesptseldlg.h\\n│ ├── opselectscondlg.h\\n│ ├── opselspttpdlg.h\\n│ ├── opsortspttpdlg.h\\n│ ├── opsyndlg.h\\n│ ├── opsynsptdlg.h\\n│ ├── opsyntddlg.h\\n│ ├── optd2dto3ddlg.h\\n│ ├── optgddlg.h\\n│ ├── scheduler.h\\n│ ├── scriptor.h\\n│ ├── sptmngframe.h\\n│ └── taskmngframe.h\\n├── res\\\\\\n│ └── GeoMative.rc2\\n├── tools\\\\\\n│ ├── dfu_tools\\\\\\n│ │ └── COPYING.txt\\n│ ├── IAP-GD10.bat\\n│ ├── IAP-GD20.bat\\n│ ├── License-GD10.bat\\n│ └── License-GD20.bat\\n├── .gitignore\\n├── GeoMative.rc\\n├── GeoMative.sln\\n├── GeoMative.vcxproj\\n├── GeoMative.vcxproj.filters\\n├── GeoMative.vcxproj.user\\n├── README-2021.txt\\n├── README.md\\n├── Resource.h\\n├── config.ini\\n├── database_modify.xml\\n└── version_info.txt\\n\"","current_document_structure":"WikiEncrypted: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","catalogue_think_content":"WikiEncrypted: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","recovery_checkpoint":"wiki_generation_completed","last_commit_id":"0000000000000000000000000000000000000000","last_commit_update":"2026-01-04T17:37:23.3159793+08:00","gmt_create":"2026-01-04T14:24:07.1049603+08:00","gmt_modified":"2026-03-10T14:00:22.1491881+08:00","extend_info":"{\"language\":\"zh\",\"active\":true,\"branch\":\"Q0DeR-MaG1C-BrAnCh-Fo2-NoN-GiT-Or-No-C0MmIt\",\"shareStatus\":\"WIKI_HAS_CHANGE\",\"server_error_code\":\"\",\"cosy_version\":\"\"}"}} |