🔄Update: 创建 product 相关模块
This commit is contained in:
@@ -0,0 +1,49 @@
|
|||||||
|
package cn.hezhaohui.pc.controller;
|
||||||
|
|
||||||
|
import cn.hezhaohui.pc.entity.Product;
|
||||||
|
import cn.hezhaohui.pc.service.ProductService;
|
||||||
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/product")
|
||||||
|
@Tag(name = "商品")
|
||||||
|
public class ProductController {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ProductService productService;
|
||||||
|
|
||||||
|
@GetMapping
|
||||||
|
@Operation(summary = "列出所有商品")
|
||||||
|
public List<Product> listAll() {
|
||||||
|
return productService.listAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
@Operation(summary = "通过id查找商品")
|
||||||
|
public Product findById(@PathVariable Long id) {
|
||||||
|
return productService.getById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping
|
||||||
|
@Operation(summary = "添加商品")
|
||||||
|
public void add(@RequestBody Product product) {
|
||||||
|
productService.saveProduct(product);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping
|
||||||
|
@Operation(summary = "更新商品")
|
||||||
|
public void update(@RequestBody Product product) {
|
||||||
|
productService.updateProduct(product);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
@Operation(summary = "删除商品")
|
||||||
|
public void delete(@PathVariable Long id) {
|
||||||
|
productService.deleteProduct(id);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package cn.hezhaohui.pc.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@TableName("products")
|
||||||
|
public class Product {
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
private String name;
|
||||||
|
private String description;
|
||||||
|
private Double price;
|
||||||
|
private LocalDateTime createdAt;
|
||||||
|
private LocalDateTime updatedAt;
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
package cn.hezhaohui.pc.mapper;
|
||||||
|
|
||||||
|
import cn.hezhaohui.pc.entity.Product;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
public interface ProductMapper extends BaseMapper<Product> {
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
package cn.hezhaohui.pc.service;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import cn.hezhaohui.pc.entity.Product;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface ProductService {
|
||||||
|
List<Product> listAll();
|
||||||
|
Product getById(Long id);
|
||||||
|
void saveProduct(Product Product);
|
||||||
|
void updateProduct(Product Product);
|
||||||
|
void deleteProduct(Long id);
|
||||||
|
}
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
package cn.hezhaohui.pc.service.impl;
|
||||||
|
|
||||||
|
import cn.hezhaohui.pc.entity.Product;
|
||||||
|
import cn.hezhaohui.pc.mapper.ProductMapper;
|
||||||
|
import cn.hezhaohui.pc.service.ProductService;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class ProductServiceImpl implements ProductService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ProductMapper productMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Product> listAll() {
|
||||||
|
return productMapper.selectList(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Product getById(Long id) {
|
||||||
|
return productMapper.selectById(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void saveProduct(Product Product) {
|
||||||
|
LocalDateTime now = LocalDateTime.now();
|
||||||
|
Product.setCreatedAt(now);
|
||||||
|
Product.setUpdatedAt(now);
|
||||||
|
productMapper.insert(Product);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateProduct(Product Product) {
|
||||||
|
LocalDateTime now = LocalDateTime.now();
|
||||||
|
Product.setUpdatedAt(now);
|
||||||
|
productMapper.updateById(Product);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteProduct(Long id) {
|
||||||
|
productMapper.deleteById(id);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user