商品中心模块 (ruoyi-mall-product)
模块简介
ruoyi-mall-product 是商城系统的商品中心模块,负责商品全生命周期管理,包括商品(SPU)、SKU、分类、品牌等核心功能。
功能特性
1. 商品管理 (SPU)
- ✅ 商品CRUD操作
- ✅ 商品上架/下架
- ✅ 商品浏览量和销量统计
- ✅ 商品详情管理
2. SKU管理
- ✅ SKU CRUD操作
- ✅ 库存管理
- ✅ 库存扣减和恢复
- ✅ 规格属性管理
3. 商品分类管理 ✅
- ✅ 分类树形结构查询(支持三级分类)
- ✅ 分类CRUD操作(列表、详情、新增、修改、删除)
- ✅ 分类排序
- ✅ 分类导出功能
- ⏳ 分类图标管理(字段已支持,需前端集成文件上传功能)
4. 品牌管理 ✅
- ✅ 品牌CRUD操作(列表、详情、新增、修改、删除)
- ✅ 品牌描述管理
- ✅ 品牌排序
- ✅ 品牌状态管理(启用/禁用)
- ✅ 品牌导出功能
- ⏳ 品牌Logo上传(字段已支持,需前端集成文件上传功能)
数据库表
mall_product- 商品表mall_sku- SKU表mall_category- 商品分类表mall_brand- 品牌表mall_attribute_template- 属性模板表mall_attribute- 属性表mall_attribute_value- 属性值表mall_product_attribute- 商品属性关联表
详细表结构请参考:script/sql/ry_mall.sql
模块结构
org.dromara.mall.product
├── controller
│ ├── admin // 管理端API
│ │ ├── AdminMallCategoryController.java
│ │ ├── AdminMallBrandController.java
│ │ ├── AdminMallAttributeTemplateController.java
│ │ ├── AdminMallAttributeController.java
│ │ ├── AdminMallAttributeValueController.java
│ │ └── AdminMallProductAttributeController.java
│ └── app // 用户端API
│ ├── AppMallCategoryController.java
│ └── AppMallBrandController.java
├── domain
│ ├── MallCategory.java
│ ├── MallBrand.java
│ ├── MallAttributeTemplate.java
│ ├── MallAttribute.java
│ ├── MallAttributeValue.java
│ ├── MallProductAttribute.java
│ ├── bo // 业务对象
│ │ ├── MallCategoryBo.java
│ │ ├── MallBrandBo.java
│ │ ├── MallAttributeTemplateBo.java
│ │ ├── MallAttributeBo.java
│ │ ├── MallAttributeValueBo.java
│ │ └── MallProductAttributeBo.java
│ └── vo // 视图对象
│ ├── MallCategoryVo.java
│ ├── MallBrandVo.java
│ ├── MallAttributeTemplateVo.java
│ ├── MallAttributeVo.java
│ ├── MallAttributeValueVo.java
│ └── MallProductAttributeVo.java
├── mapper
│ ├── MallCategoryMapper.java
│ ├── MallBrandMapper.java
│ ├── MallAttributeTemplateMapper.java
│ ├── MallAttributeMapper.java
│ ├── MallAttributeValueMapper.java
│ └── MallProductAttributeMapper.java
├── service
│ ├── MallCategoryService.java
│ ├── MallBrandService.java
│ ├── MallAttributeTemplateService.java
│ ├── MallAttributeService.java
│ ├── MallAttributeValueService.java
│ ├── MallProductAttributeService.java
│ └── impl
│ ├── MallCategoryServiceImpl.java
│ ├── MallBrandServiceImpl.java
│ ├── MallAttributeTemplateServiceImpl.java
│ ├── MallAttributeServiceImpl.java
│ ├── MallAttributeValueServiceImpl.java
│ └── MallProductAttributeServiceImpl.java
├── enums // 枚举类
│ └── AttributeType.java
└── config
└── MallProductAutoConfiguration.java
依赖模块
ruoyi-common-*- 通用工具模块
API接口
管理端接口
商品分类管理 (/mall/product/category)
GET /mall/product/category/list- 查询商品分类列表(分页)GET /mall/product/category/tree- 查询商品分类树形列表GET /mall/product/category/{id}- 获取商品分类详情POST /mall/product/category- 新增商品分类PUT /mall/product/category- 修改商品分类DELETE /mall/product/category/{ids}- 删除商品分类POST /mall/product/category/export- 导出商品分类列表
品牌管理 (/mall/product/brand)
GET /mall/product/brand/list- 查询品牌列表(分页)GET /mall/product/brand/{id}- 获取品牌详情POST /mall/product/brand- 新增品牌PUT /mall/product/brand- 修改品牌DELETE /mall/product/brand/{ids}- 删除品牌POST /mall/product/brand/export- 导出品牌列表
移动端接口
商品分类 (/app/mall/product/category)
GET /app/mall/product/category/tree- 查询商品分类树形列表(仅启用分类)
品牌 (/app/mall/product/brand)
GET /app/mall/product/brand/list- 查询品牌列表(仅启用品牌)
属性模板管理 (/mall/product/attribute/template)
GET /mall/product/attribute/template/list- 查询属性模板列表(分页)GET /mall/product/attribute/template/{id}- 获取属性模板详情POST /mall/product/attribute/template- 新增属性模板PUT /mall/product/attribute/template- 修改属性模板DELETE /mall/product/attribute/template/{ids}- 删除属性模板POST /mall/product/attribute/template/export- 导出属性模板列表
属性管理 (/mall/product/attribute)
GET /mall/product/attribute/list- 查询属性列表(分页)GET /mall/product/attribute/{id}- 获取属性详情GET /mall/product/attribute/template/{templateId}- 根据模板ID查询属性列表POST /mall/product/attribute- 新增属性PUT /mall/product/attribute- 修改属性DELETE /mall/product/attribute/{ids}- 删除属性POST /mall/product/attribute/export- 导出属性列表
属性值管理 (/mall/product/attribute/value)
GET /mall/product/attribute/value/list- 查询属性值列表(分页)GET /mall/product/attribute/value/{id}- 获取属性值详情GET /mall/product/attribute/value/attribute/{attributeId}- 根据属性ID查询属性值列表POST /mall/product/attribute/value- 新增属性值PUT /mall/product/attribute/value- 修改属性值DELETE /mall/product/attribute/value/{ids}- 删除属性值POST /mall/product/attribute/value/export- 导出属性值列表
商品属性关联管理 (/mall/product/attribute/product)
GET /mall/product/attribute/product/{id}- 获取商品属性关联详情GET /mall/product/attribute/product/product/{productId}- 根据商品ID查询商品属性关联列表POST /mall/product/attribute/product- 新增商品属性关联POST /mall/product/attribute/product/batch- 批量新增商品属性关联POST /mall/product/attribute/product/product/{productId}- 保存商品属性关联(先删除旧的,再插入新的)PUT /mall/product/attribute/product- 修改商品属性关联DELETE /mall/product/attribute/product/{ids}- 删除商品属性关联DELETE /mall/product/attribute/product/product/{productId}- 根据商品ID删除商品属性关联
5. 商品属性管理 ✅
- ✅ 属性模板管理
- ✅ 属性模板CRUD操作
- ✅ 属性模板绑定分类(可选)
- ✅ 属性模板导出功能
- ✅ 属性管理
- ✅ 属性CRUD操作
- ✅ 属性类型管理(文本、数字、日期、枚举)
- ✅ 属性绑定模板(可选)
- ✅ 属性必填设置
- ✅ 属性导出功能
- ✅ 属性值管理
- ✅ 属性值CRUD操作
- ✅ 属性值绑定属性
- ✅ 属性值排序
- ✅ 属性值导出功能
- ✅ 商品属性关联
- ✅ 商品关联属性值
- ✅ 批量保存商品属性
- ✅ 根据商品ID查询属性
- ✅ 支持枚举类型属性值选择
- ✅ 支持文本/数字/日期类型自定义值
待实现功能
- [ ] 规格模板定义
- [ ] 规格值管理
- [ ] 规格模板与商品关联
- 商品搜索功能
- 全文搜索(集成Elasticsearch或类似方案)
- 商品筛选(按分类、品牌、价格等)