feat(order): 添加单一商品订单的formId更新逻辑

- 在OrderBusinessService中添加单一商品订单的formId设置功能
- 在ShopOrderServiceImpl中实现订单商品数量为1时的formId更新逻辑
- 确保只有当订单中只有一个商品时才更新formId字段
This commit is contained in:
2026-01-28 17:13:32 +08:00
parent 5a95375cda
commit ad2562c06e
2 changed files with 9 additions and 0 deletions

View File

@@ -73,6 +73,11 @@ public class OrderBusinessService {
// 4. 应用业务规则 // 4. 应用业务规则
applyBusinessRules(shopOrder, loginUser); applyBusinessRules(shopOrder, loginUser);
// 如果商品仅有一个则更新formId
if (request.getGoodsItems().size() == 1) {
shopOrder.setFormId(request.getGoodsItems().get(0).getGoodsId());
}
// 5. 保存订单 // 5. 保存订单
boolean saved = shopOrderService.save(shopOrder); boolean saved = shopOrderService.save(shopOrder);
if (!saved) { if (!saved) {

View File

@@ -233,6 +233,10 @@ public class ShopOrderServiceImpl extends ServiceImpl<ShopOrderMapper, ShopOrder
if (order.getTotalPrice() == null) { if (order.getTotalPrice() == null) {
throw new RuntimeException("订单金额为null"); throw new RuntimeException("订单金额为null");
} }
// 如果商品仅有一个则更新formId
if (order.getOrderGoods() != null && order.getOrderGoods().size() == 1) {
order.setFormId(order.getOrderGoods().get(0).getGoodsId());
}
// 根据支付类型检查OpenID // 根据支付类型检查OpenID
if (order.getPayType().equals(1)) { if (order.getPayType().equals(1)) {