Files
his/openhis-server-new/openhis-application/src/main/java/com/openhis/web/AGENTS.md
chenqi 6179a89b6c fix: 删除有依赖冲突的文件(处方审核、门诊报表)
- PrescriptionReviewAppServiceImpl 依赖 doctorstation DTO 变更
- OutpatientManageReportAppServiceImpl 依赖 encounterService 新方法
- 这些功能需要与 doctorstation 模块一起合并

暂时删除以保持编译通过,后续可单独评估合并
2026-03-10 18:49:54 +08:00

1.3 KiB

Web Layer - API Controllers

Module: openhis-application/web Role: API endpoint layer - all REST controllers for frontend communication

OVERVIEW

46 web modules serving REST APIs for all business functionality.

STRUCTURE

web/
├── [module-name]/
│   ├── controller/     # REST endpoints (@RestController)
│   ├── dto/           # Data transfer objects
│   ├── mapper/        # MyBatis mappers (if module-specific)
│   └── appservice/    # Application service layer
│       └── impl/

WHERE TO LOOK

Task Location
API endpoints */controller/*Controller.java
Request/Response schemas */dto/*.java
Business logic orchestration */appservice/*.java

CONVENTIONS

  • Controllers: @RestController, @RequestMapping("/module-name")
  • Standard response: AjaxResult from core-common
  • DTO naming: XxxRequest, XxxResponse, XxxDTO
  • Service pattern: interface in appservice/, impl in appservice/impl/
  • API naming: listXxx(), getXxx(), addXxx(), updateXxx(), deleteXxx()

ANTI-PATTERNS

  • Never put business logic in controllers - delegate to appservice
  • Never return raw entities - use DTOs
  • Never bypass AjaxResult wrapper
  • Never create module-specific mappers without justification