yangjj-iso opened a new pull request, #7601:
URL: https://github.com/apache/shenyu/pull/7601

   Fixes #7593.
   
   Restore `GET /apidoc/getDocItem?id=...` and read the document viewer's menu 
and detail from the persisted `api.document` data. The menu previously used an 
unwritten in-memory map and the detail endpoint was missing.
   
   Menu leaves now contain database API ids, which the detail endpoint uses to 
return the stored `DocItem`. Group persisted Swagger documents by context path 
and module, preserve module/API ordering, and skip malformed or incompatible 
records. Updates and deletions are visible on the next read without requiring 
re-import. The viewer consumes legacy `DocItem` documents; OpenAPI-operation 
payloads remain available through the existing `/api/{id}` detail route.
   
   Validation:
   - 31 tests passed, including controller route/response coverage, 
document-manager tests, and an H2 test covering persisted menu/detail, document 
updates, and deletion.
   - Swagger import and parser tests passed, including the existing MCP import 
coverage.
   - Checkstyle passed across the 34-module admin dependency reactor.
   - `shenyu-admin` Apache RAT check passed.
   
   ```bash
   ./mvnw -pl shenyu-admin -am test 
-Dtest=ApiDocControllerTest,DocManagerImplTest,ApiMapperTest,SwaggerImportServiceTest,SwaggerImportServiceImplTest,SwaggerDocParserTest
 -Dsurefire.failIfNoSpecifiedTests=false -Dmaven.javadoc.skip=true 
-Djacoco.skip=true -Drat.skip=true
   ./mvnw -pl shenyu-admin apache-rat:check
   ```
   
   - [x] I have read the contribution guidelines.
   - [x] Test cases back the changes.
   - [ ] Full repository `./mvnw clean install -Dmaven.javadoc.skip=true` 
(targeted validation above).
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to