From 92b586e7d47167421f6500be641734acebeacd79 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 15 三月 2024 20:39:30 +0800 Subject: [PATCH] 分类管理、字段管理接口 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFieldCategoryController.java | 109 ++++++++++++++++++++++++++++-------------------------- 1 files changed, 56 insertions(+), 53 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFieldCategoryController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFieldCategoryController.java index c0b5ffd..6a4ea9d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFieldCategoryController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbFieldCategoryController.java @@ -1,9 +1,9 @@ package com.ruoyi.web.controller.api; -import com.ruoyi.common.basic.PageVO; -import com.ruoyi.common.core.domain.AjaxResult; -import com.ruoyi.common.utils.bean.BeanUtils; +import com.ruoyi.common.basic.PageDTO; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.utils.BeanUtils; import com.ruoyi.system.domain.TbFieldCategory; import com.ruoyi.system.dto.FieldCategoryDTO; import com.ruoyi.system.dto.ShowHideDTO; @@ -11,15 +11,16 @@ import com.ruoyi.system.query.FieldCategoryQuery; import com.ruoyi.system.service.TbFieldCategoryService; import com.ruoyi.system.vo.FieldCategoryDetailVO; +import com.ruoyi.system.vo.FieldCategoryVO; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import javax.validation.constraints.NotNull; import java.util.List; +import java.util.Objects; /** * <p> @@ -29,58 +30,58 @@ * @author mitao * @since 2024-03-13 */ -@Api(tags = "字段分类管理") -@Validated +@Slf4j @RestController @RequestMapping("/field-category") @RequiredArgsConstructor +@Api(tags = "字段分类管理相关接口") public class TbFieldCategoryController { + private final TbFieldCategoryService tbFieldCategoryService; /** * 添加 * @param dto 字段分类数据传输对象 - * @return AjaxResult + * @return R */ @PostMapping("/add") @ApiOperation("添加") - public AjaxResult add(@RequestBody FieldCategoryDTO dto) { + public R<Object> add(@RequestBody @Validated FieldCategoryDTO dto) { try { tbFieldCategoryService.add(dto); } catch (Exception e) { + log.error("添加分类异常", e); throw new RuntimeException("操作失败"); } - return AjaxResult.success(); + return R.ok(); } /** * 根据id获取字段分类详情 * @param id 字段分类id - * @return AjaxResult + * @return R */ @GetMapping("/getById") @ApiOperation("根据id获取字段分类详情") - @ApiImplicitParam(name = "id", value = "字段分类id", required = true) - public AjaxResult<FieldCategoryDetailVO> getById(@RequestParam(value = "id") @NotNull(message = "id不能为空") Integer id) { + public R<FieldCategoryDetailVO> getById(@RequestParam(value = "id") Integer id) { TbFieldCategory oneCategory = tbFieldCategoryService.getById(id); - FieldCategoryDetailVO vo = new FieldCategoryDetailVO(); - BeanUtils.copyBeanProp(vo, oneCategory); + if (Objects.isNull(oneCategory)) { + return R.ok(new FieldCategoryDetailVO()); + } + FieldCategoryDetailVO vo = BeanUtils.copyBean(oneCategory, FieldCategoryDetailVO.class); //根据一级分类id,查询二级分类 List<TbFieldCategory> twoCategoryList = tbFieldCategoryService.lambdaQuery().eq(TbFieldCategory::getParentId, oneCategory.getId()).list(); twoCategoryList.forEach(item->{ - FieldCategoryDetailVO twoCategoryVO = new FieldCategoryDetailVO(); - BeanUtils.copyBeanProp(twoCategoryVO, item); + FieldCategoryDetailVO twoCategoryVO = BeanUtils.copyBean(item, FieldCategoryDetailVO.class); vo.getChildren().add(twoCategoryVO); //根据二级分类id,查询三级分类 List<TbFieldCategory> threeCategoryList = tbFieldCategoryService.lambdaQuery().eq(TbFieldCategory::getParentId, item.getId()).list(); threeCategoryList.forEach(threeCategory->{ - FieldCategoryDetailVO threeCategoryVO = new FieldCategoryDetailVO(); - BeanUtils.copyBeanProp(threeCategoryVO, threeCategory); + FieldCategoryDetailVO threeCategoryVO = BeanUtils.copyBean(threeCategory, FieldCategoryDetailVO.class); twoCategoryVO.getChildren().add(threeCategoryVO); }); - vo.getChildren().add(twoCategoryVO); }); - return AjaxResult.success(vo); + return R.ok(vo); } /** @@ -90,59 +91,61 @@ */ @PostMapping("/page") @ApiOperation("分页条件查询") - public AjaxResult<PageVO<FieldCategoryDetailVO>> page(@RequestBody FieldCategoryQuery query) { - return AjaxResult.success(tbFieldCategoryService.queryPage(query)); + public R<PageDTO<FieldCategoryVO>> page(@RequestBody FieldCategoryQuery query) { + return R.ok(tbFieldCategoryService.queryPage(query)); } /** * 隐藏显示操作 * @param dto 显示隐藏操作数据传输对象 - * @return AjaxResult + * @return R */ - @PostMapping("/show-hide") + @PutMapping("/show-hide") @ApiOperation("隐藏显示操作") - public AjaxResult showHide(@RequestBody ShowHideDTO dto) { - try { - tbFieldCategoryService.showHide(dto); - } catch (Exception e) { - throw new RuntimeException("操作失败"); - } - return AjaxResult.success(); + public R<Object> showHide(@RequestBody ShowHideDTO dto) { + tbFieldCategoryService.showHide(dto); + return R.ok(); } - @GetMapping("/delete-children") + /** + * 删除分类子节点 + * @param id id + * @return R + */ + @DeleteMapping("/delete-children") @ApiOperation("编辑页面删除子字段分类") - @ApiImplicitParam(name = "id", value = "字段分类id", required = true) - public AjaxResult deleteChildren(@RequestParam(value = "id") @NotNull(message = "id不能为空") Integer id){ + public R<Object> deleteChildren(@RequestParam(value = "id") Integer id){ try { tbFieldCategoryService.deleteChildren(id); } catch (Exception e) { + log.error("编辑页面删除子字段分类失败",e); throw new RuntimeException("操作失败"); } - return AjaxResult.success(); + return R.ok(); } - @GetMapping("/delete") + /** + * 删除分类 + * @param id id + * @return R + */ + @DeleteMapping("/delete") @ApiOperation("列表页面删除分类") - @ApiImplicitParam(name = "id", value = "字段分类id", required = true) - public AjaxResult delete(@RequestParam(value = "id") @NotNull(message = "id不能为空") Integer id){ - try { - tbFieldCategoryService.delete(id); - } catch (Exception e) { - throw new RuntimeException("操作失败"); - } - return AjaxResult.success(); + public R<Void> delete(@RequestParam(value = "id") Integer id){ + tbFieldCategoryService.delete(id); + return R.ok(); } - @PostMapping("/edit") + /** + * 编辑分类 + * @param dto 字段分类更新数据传输对象 + * @return R + */ + @PutMapping("/edit") @ApiOperation("编辑") - public AjaxResult edit(@RequestBody FieldCategoryUpdateDTO dto) { - try { - tbFieldCategoryService.edit(dto); - } catch (Exception e) { - throw new RuntimeException("操作失败"); - } - return AjaxResult.success(); + public R<Object> edit(@RequestBody FieldCategoryUpdateDTO dto) { + tbFieldCategoryService.edit(dto); + return R.ok(); } } -- Gitblit v1.7.1