From b51f6f0d5564b843aeb11f088873faa5aa2116ce Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 23 Jun 2026 22:22:54 +0800
Subject: [PATCH] feat(mall): 为订单支付流程添加订单号生成和更新功能
---
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 31 ++++++++++++++++++++++++++-----
1 files changed, 26 insertions(+), 5 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 72462ca..2a55786 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -71,6 +71,7 @@
private final IApiMallMemberService memberService;
private final IMallMoneyFlowService mallMoneyFlowService;
private final RedisUtils redisUtils;
+ private final MallCountryDeliveryMapper mallCountryDeliveryMapper;
private final AgentProducer agentProducer;
private final ApiChatPayService apiChatPayService;
@@ -116,8 +117,6 @@
this.baseMapper.insert(orderInfo);
BigDecimal total = BigDecimal.ZERO;
- //运费
- BigDecimal delivaryAmount = addOrderDto.getDeliveryAmount() == null ? BigDecimal.ZERO : addOrderDto.getDeliveryAmount();
for (AddOrderItemDto item : addOrderDto.getItems()) {
MallOrderItem orderItem = new MallOrderItem();
@@ -140,8 +139,6 @@
if(1 != goodsResult){
throw new FebsException("Discontinued");
}
-
- delivaryAmount = delivaryAmount.add(mallGoods.getCarriageAmount());
BigDecimal amount = sku.getPresentPrice().multiply(BigDecimal.valueOf(item.getCnt()));
orderItem.setAmount(amount);
@@ -167,6 +164,24 @@
}
mallOrderItemMapper.insert(orderItem);
}
+
+
+
+ //运费
+ MallCountryDelivery delivery = mallCountryDeliveryMapper.selectOne(
+ Wrappers.lambdaQuery(MallCountryDelivery.class)
+ .eq(MallCountryDelivery::getCountryCode, addOrderDto.getCountryCode().toUpperCase())
+ .eq(MallCountryDelivery::getStatus, 1)
+ );
+ MallCountryDelivery defaultDelivery = mallCountryDeliveryMapper.selectOne(
+ Wrappers.lambdaQuery(MallCountryDelivery.class)
+ .eq(MallCountryDelivery::getCountryCode, "DEFAULT")
+ .eq(MallCountryDelivery::getStatus, 1)
+ );
+ BigDecimal delivaryAmount = defaultDelivery.getShippingFee();
+ if (delivery != null) {
+ delivaryAmount = delivery.getShippingFee();
+ }
orderInfo.setCarriage(delivaryAmount);
total = total.add(delivaryAmount);
@@ -175,7 +190,13 @@
orderInfo.setName(address.getFristName() + address.getName());
orderInfo.setPhone(address.getPhone());
- orderInfo.setAddress(address.getArea()+ address.getAddress()+address.getCity()+address.getProvince() + address.getCountry() );
+ orderInfo.setAddress(
+ address.getAddress() +" - "
+ +address.getArea() +" - "
+ +address.getCity() +" - "
+ +address.getProvince() +" - "
+ +address.getCountryName() +" - "
+ + address.getCountry() );
orderInfo.setLatitude(address.getLatitude());
orderInfo.setLongitude(address.getLongitude());
this.baseMapper.updateById(orderInfo);
--
Gitblit v1.9.1