# 接口变更记录 — 2026-04-02 13:06

> **提交** `d5c18baa` · **作者** wx · **时间** 2026-04-02 13:06:01 +0800
>
> feat: 产品等级功能——支持轻奢/高档等级分组

## 变更总览

- **产品服务**
  - Product (+1)

---

## 产品服务

### Product

> 📖 **接口文档**: [http://192.168.100.236:8085/doc.html](http://192.168.100.236:8085/doc.html) → 标签 **「产品管理」**

### 🆕 `GET` /admin/product/item/grade-groups — 查询等级分组列表（管理端选择关联等级产品用）

**参数**

  - `lineId` (`Long`) — 查询参数：按产品线ID筛选

---

## 📦 其他数据对象变更

> 以下变更未直接关联到本次接口变更，但可能影响现有接口的请求/响应

### 产品服务

#### 🆕 GradeOptionVO

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `productId` | `String` | 产品ID |
| `productGrade` | `String` | 等级编码: LIGHT_LUXURY=轻奢, HIGH_END=高档 |
| `productGradeLabel` | `String` | 等级中文标签 |
| `startPrice` | `BigDecimal` | 起步价 |
| `startPriceLabel` | `String` | 起步价标签：'起' 或 '订金起' |

#### ✏️ MpProductListVO

  - 🆕 `productGrade` (`String`) — 产品等级编码(null=无等级): LIGHT_LUXURY=轻奢, HIGH_END=高档
  - 🆕 `productGradeLabel` (`String`) — 产品等级中文标签
  - 🆕 `gradeGroupId` (`String`) — 等级分组ID(null=独立产品)
  - 🆕 `gradeOptions` (`List<GradeOptionVO>`) — 同组所有等级选项(含自己，按gradeSort排序)

#### ✏️ ProductCreateRequest

  - 🆕 `productGrade` (`String`) — 产品等级: LIGHT_LUXURY=轻奢, HIGH_END=高档(不传=无等级)
  - 🆕 `gradeGroupId` (`Long`) — 等级分组ID(关联已有等级产品时传入)
  - 🆕 `gradeSort` (`Integer`) — 等级排序(同组内)

#### ✏️ ProductListVO

  - 🆕 `productGrade` (`String`) — 产品等级编码(null=无等级)
  - 🆕 `productGradeLabel` (`String`) — 产品等级中文
  - 🆕 `gradeGroupId` (`String`) — 等级分组ID(null=独立产品)

#### ✏️ ProductSaveRequest

  - 🆕 `productGrade` (`String`) — 产品等级: LIGHT_LUXURY=轻奢, HIGH_END=高档(不传=无等级)
  - 🆕 `gradeGroupId` (`Long`) — 等级分组ID(关联已有等级产品时传入该产品的gradeGroupId，首个等级产品不传)
  - 🆕 `gradeSort` (`Integer`) — 等级排序(同组内，越小越靠前)

#### ✏️ ProductUpdateRequest

  - 🆕 `productGrade` (`String`) — 产品等级: LIGHT_LUXURY=轻奢, HIGH_END=高档(不传=无等级)
  - 🆕 `gradeGroupId` (`Long`) — 等级分组ID(关联已有等级产品时传入)
  - 🆕 `gradeSort` (`Integer`) — 等级排序(同组内)

#### ✏️ ProductVO

  - 🆕 `productGrade` (`String`) — 产品等级编码(null=无等级): LIGHT_LUXURY=轻奢, HIGH_END=高档
  - 🆕 `productGradeLabel` (`String`) — 产品等级中文标签
  - 🆕 `gradeGroupId` (`String`) — 等级分组ID(null=独立产品)
  - 🆕 `gradeOptions` (`List<GradeOptionVO>`) — 同组所有等级选项(含自己，按gradeSort排序)

<details>
<summary>📁 全部变更文件 (点击展开)</summary>

```
M	hl-product-service/src/main/java/com/hulalv/product/constant/ProductConstants.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/ProductController.java
M	hl-product-service/src/main/java/com/hulalv/product/dto/ProductCreateRequest.java
M	hl-product-service/src/main/java/com/hulalv/product/dto/ProductSaveRequest.java
M	hl-product-service/src/main/java/com/hulalv/product/dto/ProductUpdateRequest.java
M	hl-product-service/src/main/java/com/hulalv/product/entity/Product.java
M	hl-product-service/src/main/java/com/hulalv/product/service/ProductService.java
A	hl-product-service/src/main/java/com/hulalv/product/vo/GradeOptionVO.java
M	hl-product-service/src/main/java/com/hulalv/product/vo/MpProductListVO.java
M	hl-product-service/src/main/java/com/hulalv/product/vo/ProductListVO.java
M	hl-product-service/src/main/java/com/hulalv/product/vo/ProductVO.java
```
</details>