From 347909bae241fff128b628ea6d12992d7e5b4b10 Mon Sep 17 00:00:00 2001 From: xin <1099200748@qq.com> Date: Fri, 30 May 2025 18:35:43 +0800 Subject: [PATCH] 响应信息主体 --- oying-system/src/main/java/com/oying/modules/pc/category/rest/PlatformCategoryAdminController.java | 83 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 83 insertions(+), 0 deletions(-) diff --git a/oying-system/src/main/java/com/oying/modules/pc/category/rest/PlatformCategoryAdminController.java b/oying-system/src/main/java/com/oying/modules/pc/category/rest/PlatformCategoryAdminController.java new file mode 100644 index 0000000..fd2668e --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/pc/category/rest/PlatformCategoryAdminController.java @@ -0,0 +1,83 @@ +package com.oying.modules.pc.category.rest; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.oying.annotation.Log; +import com.oying.modules.pc.category.converter.PlatformCategoryViewAssembler; +import com.oying.modules.pc.category.domain.PlatformCategory; +import com.oying.modules.pc.category.domain.dto.PlatformCategoryCreateRequest; +import com.oying.modules.pc.category.domain.dto.PlatformCategoryQueryCriteria; +import com.oying.modules.pc.category.domain.dto.PlatformCategoryUpdateDto; +import com.oying.modules.pc.category.domain.dto.PlatformCategoryUpdateRequest; +import com.oying.modules.pc.category.service.PlatformCategoryService; +import com.oying.modules.pc.category.view.PlatformCategoryView; +import com.oying.utils.R; +import com.oying.utils.PageResult; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; +import java.util.stream.Collectors; + +/** + * @author lzp + * @date 2025-04-28 + **/ +@RestController +@RequiredArgsConstructor +@Api(tags = "平台类目") +@RequestMapping("/api/pc/admin/platformCategory") +public class PlatformCategoryAdminController { + + private final PlatformCategoryService categoryService; + private final PlatformCategoryViewAssembler assembler; + + @GetMapping + @ApiOperation("查询平台类目(支持分页)") + @PreAuthorize("@el.check('admin:platformCategory:list')") + public ResponseEntity<?> queryPlatformCategory(PlatformCategoryQueryCriteria criteria) { + Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize()); + PageResult<PlatformCategory> pageResult = categoryService.queryAll(criteria, page); + List<PlatformCategoryView> responseList = Optional.ofNullable(pageResult.getContent()).orElse(new ArrayList<>()).stream().map(assembler::toPlatformCategoryResponse).collect(Collectors.toList()); + PageResult<PlatformCategoryView> responsePageResult = new PageResult<>(responseList, pageResult.getTotalElements()); + return ResponseEntity.ok(R.success(responsePageResult)); + } + + @PostMapping + @ApiOperation("新增平台类目") + //@PreAuthorize("@el.check('admin:platformCategory:create')") + public ResponseEntity<?> create(@Validated @RequestBody PlatformCategoryCreateRequest request) { + categoryService.create(request); + return ResponseEntity.status(HttpStatus.CREATED).build(); + } + + @PutMapping("/{categoryId}") + @ApiOperation("修改平台类目") + //@PreAuthorize("@el.check('admin:platformCategory:updateById')") + public ResponseEntity<?> updateById(@PathVariable Long categoryId, + @Validated @RequestBody PlatformCategoryUpdateRequest request) { + PlatformCategoryUpdateDto updateDto = new PlatformCategoryUpdateDto(); + BeanUtils.copyProperties(request, updateDto); + updateDto.setCategoryId(categoryId); + categoryService.update(updateDto); + return ResponseEntity.noContent().build(); + } + + @DeleteMapping + @Log("删除平台类目") + @ApiOperation("删除平台类目") + //@PreAuthorize("@el.check('admin:platformCategory:batchDel')") + public ResponseEntity<?> batchDelete(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) { + categoryService.deleteAll(ids); + return ResponseEntity.noContent().build(); + } +} -- Gitblit v1.9.3