Kaynağa Gözat

docs(api): 为健康数据接口添加 Swagger 注解

- 为血糖、血压、心率和体格数据控制器添加 @Tag 注解
- 为各控制器的添加和查询方法添加 @Operation 注解
- 为 BMI 计算接口补充 Swagger 描述信息
- 统一健康数据相关接口的 API 文档描述
- 增强接口文档的可读性和可维护性
mcbaiyun 2 ay önce
ebeveyn
işleme
68589ca730

+ 5 - 0
src/main/java/work/baiyun/chronicdiseaseapp/controller/BloodGlucoseDataController.java

@@ -6,6 +6,8 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
 import work.baiyun.chronicdiseaseapp.common.R;
 import work.baiyun.chronicdiseaseapp.model.vo.AddBloodGlucoseDataRequest;
 import work.baiyun.chronicdiseaseapp.model.vo.BloodGlucoseDataResponse;
@@ -15,11 +17,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 
 @RestController
 @RequestMapping("/blood-glucose")
+@Tag(name = "Blood Glucose", description = "血糖相关接口")
 public class BloodGlucoseDataController {
 
     @Autowired
     private BloodGlucoseDataService service;
 
+    @Operation(summary = "添加血糖数据", description = "添加血糖测量记录,包含测量类型和值")
     @PostMapping(path = "/add", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> add(@RequestBody AddBloodGlucoseDataRequest req) {
         try {
@@ -30,6 +34,7 @@ public class BloodGlucoseDataController {
         }
     }
 
+    @Operation(summary = "分页查询血糖数据", description = "根据时间范围和分页参数查询血糖记录")
     @PostMapping(path = "/list", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> list(@RequestBody BaseQueryRequest req) {
         try {

+ 5 - 0
src/main/java/work/baiyun/chronicdiseaseapp/controller/BloodPressureDataController.java

@@ -6,6 +6,8 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
 import work.baiyun.chronicdiseaseapp.common.R;
 import work.baiyun.chronicdiseaseapp.model.vo.AddBloodPressureDataRequest;
 import work.baiyun.chronicdiseaseapp.model.vo.BloodPressureDataResponse;
@@ -15,11 +17,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 
 @RestController
 @RequestMapping("/blood-pressure")
+@Tag(name = "Blood Pressure", description = "血压相关接口")
 public class BloodPressureDataController {
 
     @Autowired
     private BloodPressureDataService service;
 
+    @Operation(summary = "添加血压数据", description = "添加收缩压和舒张压的测量记录")
     @PostMapping(path = "/add", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> add(@RequestBody AddBloodPressureDataRequest req) {
         try {
@@ -30,6 +34,7 @@ public class BloodPressureDataController {
         }
     }
 
+    @Operation(summary = "分页查询血压数据", description = "根据时间范围和分页参数查询血压记录")
     @PostMapping(path = "/list", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> list(@RequestBody BaseQueryRequest req) {
         try {

+ 5 - 0
src/main/java/work/baiyun/chronicdiseaseapp/controller/HeartRateDataController.java

@@ -6,6 +6,8 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
 import work.baiyun.chronicdiseaseapp.common.R;
 import work.baiyun.chronicdiseaseapp.model.vo.AddHeartRateDataRequest;
 import work.baiyun.chronicdiseaseapp.model.vo.HeartRateDataResponse;
@@ -15,11 +17,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 
 @RestController
 @RequestMapping("/heart-rate")
+@Tag(name = "Heart Rate", description = "心率相关接口")
 public class HeartRateDataController {
 
     @Autowired
     private HeartRateDataService service;
 
+    @Operation(summary = "添加心率数据", description = "添加心率测量记录")
     @PostMapping(path = "/add", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> add(@RequestBody AddHeartRateDataRequest req) {
         try {
@@ -30,6 +34,7 @@ public class HeartRateDataController {
         }
     }
 
+    @Operation(summary = "分页查询心率数据", description = "根据时间范围和分页参数查询心率记录")
     @PostMapping(path = "/list", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> list(@RequestBody BaseQueryRequest req) {
         try {

+ 6 - 0
src/main/java/work/baiyun/chronicdiseaseapp/controller/PhysicalDataController.java

@@ -6,6 +6,8 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
 import work.baiyun.chronicdiseaseapp.common.R;
 import work.baiyun.chronicdiseaseapp.model.vo.AddPhysicalDataRequest;
 import work.baiyun.chronicdiseaseapp.model.vo.PhysicalDataResponse;
@@ -19,11 +21,13 @@ import java.util.Map;
 
 @RestController
 @RequestMapping("/physical")
+@Tag(name = "Physical Data", description = "体格数据相关接口")
 public class PhysicalDataController {
 
     @Autowired
     private PhysicalDataService physicalDataService;
 
+    @Operation(summary = "添加体格数据", description = "添加身高/体重等体格测量记录")
     @PostMapping(path = "/add", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> addPhysicalData(@RequestBody AddPhysicalDataRequest req) {
         try {
@@ -34,6 +38,7 @@ public class PhysicalDataController {
         }
     }
 
+    @Operation(summary = "分页查询体格数据", description = "根据时间范围和分页参数查询体格测量记录")
     @PostMapping(path = "/list", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> listPhysicalData(@RequestBody BaseQueryRequest req) {
         try {
@@ -44,6 +49,7 @@ public class PhysicalDataController {
         }
     }
 
+    @Operation(summary = "计算 BMI", description = "根据 height(cm) 和 weight(kg) 返回 BMI 值")
     @PostMapping(path = "/bmi", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
     public R<?> calculateBmi(@RequestBody Map<String, Object> body) {
         try {