feat: add Swagger annotations for Firearm, Modification, and Tag controllers

This commit is contained in:
2026-04-13 14:38:50 +08:00
parent 5e9b29c186
commit 75abbb0a2a
3 changed files with 16 additions and 2 deletions
@@ -4,6 +4,8 @@ import com.onixbyte.deltaforceguide.domain.dto.FirearmResponse;
import com.onixbyte.deltaforceguide.domain.dto.PageResponse; import com.onixbyte.deltaforceguide.domain.dto.PageResponse;
import com.onixbyte.deltaforceguide.enumeration.FirearmType; import com.onixbyte.deltaforceguide.enumeration.FirearmType;
import com.onixbyte.deltaforceguide.service.FirearmService; import com.onixbyte.deltaforceguide.service.FirearmService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min; import jakarta.validation.constraints.Min;
import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.PageRequest;
@@ -15,7 +17,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
@Validated @Tag(name = "武器管理", description = "与武器有关的操作")
@RestController @RestController
@RequestMapping("/firearms") @RequestMapping("/firearms")
public class FirearmController { public class FirearmController {
@@ -26,6 +28,8 @@ public class FirearmController {
this.firearmService = firearmService; this.firearmService = firearmService;
} }
@Operation(description = "获取分页武器数据")
@Validated
@GetMapping @GetMapping
public PageResponse<FirearmResponse> pageQuery( public PageResponse<FirearmResponse> pageQuery(
@RequestParam(defaultValue = "0") @Min(0) int page, @RequestParam(defaultValue = "0") @Min(0) int page,
@@ -37,6 +41,7 @@ public class FirearmController {
return firearmService.pageQuery(type, PageRequest.of(page, size, Sort.by(direction, sortBy))); return firearmService.pageQuery(type, PageRequest.of(page, size, Sort.by(direction, sortBy)));
} }
@Operation(description = "获取指定武器的数据")
@GetMapping("/{id}") @GetMapping("/{id}")
public FirearmResponse queryById(@PathVariable Long id) { public FirearmResponse queryById(@PathVariable Long id) {
return firearmService.queryById(id); return firearmService.queryById(id);
@@ -3,6 +3,8 @@ package com.onixbyte.deltaforceguide.controller;
import com.onixbyte.deltaforceguide.domain.dto.ModificationResponse; import com.onixbyte.deltaforceguide.domain.dto.ModificationResponse;
import com.onixbyte.deltaforceguide.domain.dto.PageResponse; import com.onixbyte.deltaforceguide.domain.dto.PageResponse;
import com.onixbyte.deltaforceguide.service.ModificationService; import com.onixbyte.deltaforceguide.service.ModificationService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.constraints.Max; import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min; import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.Positive; import jakarta.validation.constraints.Positive;
@@ -17,7 +19,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
@Validated @Tag(name = "改装管理", description = "对枪械改装的管理")
@RestController @RestController
@RequestMapping("/modifications") @RequestMapping("/modifications")
public class ModificationController { public class ModificationController {
@@ -28,6 +30,8 @@ public class ModificationController {
this.modificationService = modificationService; this.modificationService = modificationService;
} }
@Operation(description = "分页查询改装信息")
@Validated
@GetMapping @GetMapping
public PageResponse<ModificationResponse> pageQuery( public PageResponse<ModificationResponse> pageQuery(
@RequestParam(defaultValue = "0") @Min(0) int page, @RequestParam(defaultValue = "0") @Min(0) int page,
@@ -40,6 +44,7 @@ public class ModificationController {
return modificationService.pageQuery(firearmId, tags, PageRequest.of(page, size, Sort.by(direction, sortBy))); return modificationService.pageQuery(firearmId, tags, PageRequest.of(page, size, Sort.by(direction, sortBy)));
} }
@Operation(description = "查询指定改装的信息")
@GetMapping("/{id}") @GetMapping("/{id}")
public ModificationResponse queryById(@PathVariable Long id) { public ModificationResponse queryById(@PathVariable Long id) {
return modificationService.queryById(id); return modificationService.queryById(id);
@@ -1,5 +1,7 @@
package com.onixbyte.deltaforceguide.controller; package com.onixbyte.deltaforceguide.controller;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
@@ -8,6 +10,7 @@ import com.onixbyte.deltaforceguide.service.ModificationService;
import java.util.List; import java.util.List;
@Tag(name = "标签管理", description = "管理标签信息")
@RestController @RestController
@RequestMapping("/tags") @RequestMapping("/tags")
public class TagController { public class TagController {
@@ -18,6 +21,7 @@ public class TagController {
this.modificationService = modificationService; this.modificationService = modificationService;
} }
@Operation(description = "查询指定武器或所有武器的标签")
@GetMapping @GetMapping
public List<String> getTags(@RequestParam(required = false) Long firearmId) { public List<String> getTags(@RequestParam(required = false) Long firearmId) {
return modificationService.findAllTags(firearmId); return modificationService.findAllTags(firearmId);