diff --git a/yami-shop-api/src/main/java/com/yami/shop/api/controller/ProdTagController.java b/yami-shop-api/src/main/java/com/yami/shop/api/controller/ProdTagController.java index d1a1e65..8f38a58 100644 --- a/yami-shop-api/src/main/java/com/yami/shop/api/controller/ProdTagController.java +++ b/yami-shop-api/src/main/java/com/yami/shop/api/controller/ProdTagController.java @@ -25,27 +25,39 @@ import org.springframework.web.bind.annotation.RestController; import java.util.List; /** + * 商品分组标签相关的接口控制器类,主要负责向外提供获取商品分组标签列表信息的接口, + * 通过调用对应的服务层(ProdTagService)方法获取原始标签数据,并进行数据格式转换后返回给客户端。 + * * @author lanhai */ @RestController +// 设置该控制器类对应的请求映射路径,后续类中的接口方法路径会基于此进行拼接,这里表明是与商品分组标签相关接口所在的基础路径。 @RequestMapping("/prod/tag") +// 使用 @Tag 注解为该控制器类添加标签说明,用于在 API 文档(如 Swagger 生成的文档)中对该类下的接口进行分类展示,这里表明是“商品分组标签接口”相关的一组接口。 @Tag(name = "商品分组标签接口") +// 通过Lombok的 @AllArgsConstructor 注解生成包含所有参数的构造函数,用于依赖注入ProdTagService实例,方便后续调用其业务方法获取标签数据。 @AllArgsConstructor public class ProdTagController { + // 注入ProdTagService,用于处理与商品分组标签相关的业务逻辑,例如从数据库中查询所有商品分组标签列表等操作。 private ProdTagService prodTagService; - - /** - * 商品分组标签列表接口 + * 商品分组标签列表接口方法,用于获取所有的商品分组标签列表信息,并将其返回给客户端。 + * 通过 @GetMapping 注解将该方法映射到 HTTP 的 GET 请求方式,请求路径为“/prodTagList”,客户端可以通过该路径发送GET请求来获取商品分组标签数据。 + * @Operation 注解用于在 API 文档中对该接口进行详细描述,包括接口的简要说明(summary)和详细描述(description),方便接口使用者了解接口的功能,这里表明是获取商品分组标签列表的功能。 + * + * @return 返回一个包含商品分组标签信息的ServerResponseEntity对象,若获取成功则响应体中包含标签列表数据(以ProdTagDto列表形式返回),否则返回相应错误信息。 */ @GetMapping("/prodTagList") - @Operation(summary = "商品分组标签列表" , description = "获取所有的商品分组列表") + @Operation(summary = "商品分组标签列表", description = "获取所有的商品分组列表") public ServerResponseEntity> getProdTagList() { + // 调用ProdTagService的listProdTag方法,从数据库或其他数据源获取商品分组标签的原始数据列表(以ProdTag对象形式返回)。 List prodTagList = prodTagService.listProdTag(); + // 使用hutool的BeanUtil工具类,将ProdTag对象列表转换为ProdTagDto对象列表,ProdTagDto可能是用于对外展示的、经过筛选或格式调整后的视图对象, + // 这样可以避免直接将内部的业务实体对象暴露给客户端,更好地控制数据的展示格式和安全性。 List prodTagDtoList = BeanUtil.copyToList(prodTagList, ProdTagDto.class); + // 将转换后的ProdTagDto列表封装在表示成功的ServerResponseEntity对象中返回给客户端,遵循统一的接口响应格式规范。 return ServerResponseEntity.success(prodTagDtoList); } - -} +} \ No newline at end of file