diff --git a/changelogs/2026-04/2026-04-02_1515_bb42f73e_refactor_gradeGro.md b/changelogs/2026-04/2026-04-02_1515_bb42f73e_refactor_gradeGro.md new file mode 100644 index 0000000..91e57a8 --- /dev/null +++ b/changelogs/2026-04/2026-04-02_1515_bb42f73e_refactor_gradeGro.md @@ -0,0 +1,127 @@ +# 接口变更记录 — 2026-04-02 15:15 + +> **提交** `bb42f73e` · **作者** wx · **时间** 2026-04-02 15:15:02 +0800 +> +> refactor: 删除gradeGroupId,用lineId做版本分组 + 产品线详情接口 + +## 变更总览 + +- **产品服务** + - InternalMpProduct (+1) + - Product (-1) +- **小程序聚合服务** + - MpProduct (+1) + +--- + +## 产品服务 + +### InternalMpProduct + +> 📖 **接口文档**: [http://192.168.100.236:8085/doc.html](http://192.168.100.236:8085/doc.html) → 标签 **「【内部接口】小程序产品(Feign调用)」** + +### 🆕 `GET` /internal/mp/product/line/{lineId}/products — 产品线下所有已上架产品(不做版本去重) + +> 按产品线ID查询所有已上架产品,用于产品线详情页展示。 + +**参数** + + - `{lineId}` (`Long`) — 路径参数 + +**响应** `Result>` + +| 字段 | 类型 | 说明 | +| --- | --- | --- | +| `productId` | `String` | 产品ID | +| `productType` | `String` | 产品类型:CORE=核心产品 ROUTE=线路产品 CUSTOM=定制产品 GROUP=小蒙马拼团 | +| `gradeOptions` | `List` | 同产品线版本选项(null=独立产品或产品线仅一个产品) | +| `name` | `String` | 产品名称 | +| `subtitle` | `String` | 副标题 | +| `tripDays` | `Integer` | 行程天数 | +| `tripNights` | `Integer` | 行程晚数 | +| `departureCity` | `String` | 出发城市 | +| `destinationCity` | `String` | 目的地城市 | +| `tags` | `List` | 产品标签列表 | +| `seasons` | `List` | 适用季节列表(编码) | +| `seasonLabels` | `List` | 适用季节列表(中文) | +| `coverImageUrl` | `String` | 封面图URL | +| `lineName` | `String` | 产品线名称 | +| `startPrice` | `BigDecimal` | 起步价:全款模式=最低售价,订金模式=最低订金额 | +| `startPriceLabel` | `String` | 起步价标签:'起' 或 '订金起' | +| `paymentMode` | `String` | 支付模式:FULL=全款 DEPOSIT=订金+尾款 | +| `routeMapUrl` | `String` | 路径图URL | +| `creatorName` | `String` | 创作者姓名 | +| `creatorAvatarUrl` | `String` | 定制师头像URL | + +### Product + +> 📖 **接口文档**: [http://192.168.100.236:8085/doc.html](http://192.168.100.236:8085/doc.html) → 标签 **「产品管理」** + +### ❌ ~~`GET` /admin/product/item/grade-groups — 查询等级分组列表(管理端选择关联等级产品用)~~ + +--- + +## 小程序聚合服务 + +### MpProduct + +> 📖 **接口文档**: [http://192.168.100.236:8086/doc.html](http://192.168.100.236:8086/doc.html) → 标签 **「C端 - 产品接口」** + +### 🆕 `GET` /mp/product/line/{lineId} — 产品线详情 + +> 返回产品线信息 + 该线下所有已上架产品摘要 + 第一个产品的完整详情。 + +**参数** + + - `{lineId}` (`Long`) — 路径参数:产品线ID + +**响应** `Result>` + +--- + +## 📦 其他数据对象变更 + +> 以下变更未直接关联到本次接口变更,但可能影响现有接口的请求/响应 + +### 产品服务 + +#### ✏️ ProductCreateRequest + + - ❌ ~~`gradeGroupId`~~ (`Long`) — 版本分组ID(关联已有版本产品时传入) + +#### ✏️ ProductListVO + + - ❌ ~~`gradeGroupId`~~ (`String`) — 版本分组ID(null=独立产品) + +#### ✏️ ProductSaveRequest + + - ❌ ~~`gradeGroupId`~~ (`Long`) — 版本分组ID(关联已有版本产品时传入该产品的gradeGroupId,首个版本产品不传) + +#### ✏️ ProductUpdateRequest + + - ❌ ~~`gradeGroupId`~~ (`Long`) — 版本分组ID(关联已有版本产品时传入) + +#### ✏️ ProductVO + + - ❌ ~~`gradeGroupId`~~ (`String`) — 版本分组ID(null=独立产品) + - ✏️ `gradeOptions`: 说明 "同组所有版本选项(含自己)" → "同产品线版本选项(null=独立产品或产品线仅一个产品)" + +
+📁 全部变更文件 (点击展开) + +``` +M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpProductController.java +M hl-mp-service/src/main/java/com/hulalv/mp/feign/MpProductFeignClient.java +M hl-mp-service/src/main/java/com/hulalv/mp/feign/MpProductFeignFallbackFactory.java +M hl-product-service/src/main/java/com/hulalv/product/controller/InternalMpProductController.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 +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 +``` +
\ No newline at end of file