feat: 新增SKU表 - ProductGoodsSkuEntity

- ProductGoodsSkuEntity: goodsId/skuCode/attrs(JSON)/price/stock/image/status
- ProductGoodsSkuMapper/Service/ServiceImpl: CRUD
- AdminProductGoodsSkuController: Admin端SKU接口(page/add/update/delete/info)
This commit is contained in:
OpenCode
2026-07-28 13:48:35 +08:00
parent 3c339f7f43
commit fcc52c317b
5 changed files with 81 additions and 0 deletions
@@ -0,0 +1,21 @@
package com.cool.modules.product.controller.admin;
import cn.hutool.json.JSONObject;
import com.cool.core.annotation.CoolRestController;
import com.cool.core.base.BaseController;
import com.cool.modules.product.entity.ProductGoodsSkuEntity;
import com.cool.modules.product.service.ProductGoodsSkuService;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Tag(name = "商品SKU管理", description = "商品SKU管理")
@CoolRestController(api = {"add", "delete", "update", "page", "info"})
public class AdminProductGoodsSkuController extends BaseController<ProductGoodsSkuService, ProductGoodsSkuEntity> {
@Override
protected void init(HttpServletRequest request, JSONObject requestParams) {
setPageOption(createOp());
}
}
@@ -0,0 +1,34 @@
package com.cool.modules.product.entity;
import com.cool.core.base.TenantEntity;
import com.mybatisflex.annotation.Table;
import com.cool.core.annotation.ColumnDefine;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
@Table(value = "product_goods_sku", comment = "商品SKU表")
public class ProductGoodsSkuEntity extends TenantEntity<ProductGoodsSkuEntity> {
@ColumnDefine(comment = "商品ID", type = "bigint")
private Long goodsId;
@ColumnDefine(comment = "SKU编码")
private String skuCode;
@ColumnDefine(comment = "规格组合", type = "text")
private String attrs;
@ColumnDefine(comment = "价格")
private Double price;
@ColumnDefine(comment = "库存")
private Integer stock;
@ColumnDefine(comment = "规格图")
private String image;
@ColumnDefine(comment = "状态 0:禁用 1:启用", defaultValue = "1")
private Integer status;
}
@@ -0,0 +1,7 @@
package com.cool.modules.product.mapper;
import com.mybatisflex.core.BaseMapper;
import com.cool.modules.product.entity.ProductGoodsSkuEntity;
public interface ProductGoodsSkuMapper extends BaseMapper<ProductGoodsSkuEntity> {
}
@@ -0,0 +1,7 @@
package com.cool.modules.product.service;
import com.cool.core.base.BaseService;
import com.cool.modules.product.entity.ProductGoodsSkuEntity;
public interface ProductGoodsSkuService extends BaseService<ProductGoodsSkuEntity> {
}
@@ -0,0 +1,12 @@
package com.cool.modules.product.service.impl;
import com.cool.core.base.BaseServiceImpl;
import com.cool.modules.product.entity.ProductGoodsSkuEntity;
import com.cool.modules.product.mapper.ProductGoodsSkuMapper;
import com.cool.modules.product.service.ProductGoodsSkuService;
import org.springframework.stereotype.Service;
@Service
public class ProductGoodsSkuServiceImpl extends BaseServiceImpl<ProductGoodsSkuMapper, ProductGoodsSkuEntity> implements
ProductGoodsSkuService {
}