|
- package com.example.webapi.controller;
-
- import com.example.webapi.dto.SupplierQueryDTO;
- import com.example.webapi.entity.Supplier;
- import com.example.webapi.service.SupplierService;
- import com.example.webapi.dto.ApiResponse;
- import io.swagger.v3.oas.annotations.tags.Tag;
- import io.swagger.v3.oas.annotations.Operation;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.data.domain.Page;
- import org.springframework.data.domain.PageRequest;
- import org.springframework.web.bind.annotation.*;
-
- import java.util.Optional;
-
- @Tag(name = "供应商信息管理")
- @RestController
- @RequestMapping("/supplier")
- public class SupplierController {
-
- @Autowired
- private SupplierService service;
-
-
- @Operation(summary = "条件查询供应商信息(分页)")
- @PostMapping("/page/conditions")
- public ApiResponse<Page<Supplier>> pageByConditions(@RequestBody SupplierQueryDTO queryDTO) {
- return ApiResponse.success(service.findByConditions(queryDTO));
- }
-
- @Operation(summary = "根据ID查询供应商信息")
- @GetMapping("/{id}")
- public ApiResponse<Supplier> getById(@PathVariable Integer id) {
- Optional<Supplier> result = service.findById(id);
- return result.map(ApiResponse::success).orElseGet(() -> ApiResponse.error("未找到该供应商信息"));
- }
-
- @Operation(summary = "新增供应商信息")
- @PostMapping
- public ApiResponse<Supplier> create(@RequestBody Supplier entity) {
- return ApiResponse.success(service.save(entity));
- }
-
- @Operation(summary = "更新供应商信息")
- @PutMapping("/{id}")
- public ApiResponse<Supplier> update(@PathVariable Integer id, @RequestBody Supplier entity) {
- entity.setId(id);
- return ApiResponse.success(service.save(entity));
- }
-
- @Operation(summary = "删除供应商信息")
- @DeleteMapping("/{id}")
- public ApiResponse<Void> delete(@PathVariable Integer id) {
- service.deleteById(id);
- return ApiResponse.success();
- }
- }
|