From 77fc61a25c14071584e45731476207959137d6b6 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 04 三月 2026 17:17:39 +0800
Subject: [PATCH] 小程序 接口开发
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java | 22 +++++++++++++---------
1 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
index 7f9c503..9c0c299 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -857,12 +857,14 @@
if(!Constants.equalsInteger(goods.getStatus(),Constants.ZERO)||!Constants.equalsInteger(goods.getIsdeleted(),Constants.ZERO)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀛樺湪鍟嗗搧宸插垹闄ゆ垨宸蹭笅鏋讹紝鏃犳硶涓嬪崟");
}
- if(goodsSku.getStock().compareTo(new BigDecimal(Constants.formatIntegerNum(payDetailRequest.getGoodsNum())))<Constants.ZERO){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀛樺湪鍟嗗搧搴撳瓨涓嶈冻锛屾棤娉曚笅鍗曪紒");
+ if(Objects.nonNull(goodsSku.getStock())){
+ if(goodsSku.getStock().compareTo(new BigDecimal(Constants.formatIntegerNum(payDetailRequest.getGoodsNum())))<Constants.ZERO){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀛樺湪鍟嗗搧搴撳瓨涓嶈冻锛屾棤娉曚笅鍗曪紒");
+ }
+ //鍟嗗搧搴撳瓨鎵i櫎
+ goodsSku.setStock(goodsSku.getStock().subtract(new BigDecimal(Constants.formatIntegerNum(payDetailRequest.getGoodsNum()))));
+ goodsSkuMapper.updateById(goodsSku);
}
- //鍟嗗搧搴撳瓨鎵i櫎
- goodsSku.setStock(goodsSku.getStock().subtract(new BigDecimal(Constants.formatIntegerNum(payDetailRequest.getGoodsNum()))));
- goodsSkuMapper.updateById(goodsSku);
GoodsorderDetail goodsOrderDetail = new GoodsorderDetail();
goodsOrderDetail.setCreator(member.getId());
goodsOrderDetail.setCreateDate(new Date());
@@ -1443,6 +1445,7 @@
orderPayConfirmResponse.setCouponAmount(couponAmount);
//鑾峰彇鍙互浣跨敤鐨勪紭鎯犲埜
List<MemberCoupon> memberCouponList = memberCouponService.getApplyCoupon(request.getPayDetailRequestList(),request.getMemberId());
+
if(CollectionUtils.isNotEmpty(memberCouponList)){
orderPayConfirmResponse.setMemberCouponList(memberCouponList);
if(Objects.nonNull(request.getCouponId())&&Constants.equalsInteger(request.getCouponId(),-Constants.ONE)&&Objects.nonNull(memberCouponList)){
@@ -1456,11 +1459,11 @@
}
memberCoupon = memberCoupons.get(Constants.ZERO);
couponAmount = memberCoupon.getValidAmount();
- memberCouponService.calculateCouponRata(memberCoupon,goodsCalculateList,amount);
+// memberCouponService.calculateCouponRata(memberCoupon,goodsCalculateList,amount);
orderPayConfirmResponse.setMemberCoupon(memberCoupon);
}
}else {
- if(Objects.nonNull(request.getCouponId())){
+ if(Objects.nonNull(request.getCouponId())&&!Constants.equalsInteger(request.getCouponId(),-Constants.ONE)){
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犲彲鐢ㄤ紭鎯犲埜锛岃鍒锋柊鏌ョ湅");
}
}
@@ -1533,7 +1536,7 @@
orderPayConfirmResponse.setIntegralAmount(integralAmount);
}
//浣跨敤浼樻儬鍒� 鍑忓幓浼樻儬鍒告姷鎵i噾棰�
- if(Objects.nonNull(request.getCouponId())){
+ if(Objects.nonNull(orderPayConfirmResponse.getMemberCoupon())){
orderPayConfirmResponse.setCouponAmount(couponAmount);
}
//瀹為檯鏀粯閲戦 鍑忓幓浼樻儬鍒搞�佺Н鍒嗘姷鎵i噾棰�
@@ -2285,6 +2288,7 @@
List<Goodsorder> goodsorderList = goodsorderMapper.selectList(new QueryWrapper<Goodsorder>().lambda()
.eq(Goodsorder::getIsdeleted,Constants.ZERO)
.eq(Goodsorder::getReceiveType,Constants.ONE)
+ .isNotNull(Goodsorder::getExchangeCode)
.in(Goodsorder::getStatus,Constants.OrderStatus.WAIT_RECEIVE.getKey(),
Constants.OrderStatus.WAIT_PAY.getKey(),
Constants.OrderStatus.PAY_DONE.getKey())
@@ -2325,7 +2329,7 @@
List<Goodsorder> goodsorderList = goodsorderMapper.selectList(new QueryWrapper<Goodsorder>().lambda()
.eq(Goodsorder::getIsdeleted, Constants.ZERO)
.eq(Goodsorder::getStatus, Constants.OrderStatus.WAIT_PAY.getKey())
- .ge(Goodsorder::getCreateDate, "DATE_SUB(NOW(), INTERVAL 15 MINUTE)")
+ .apply(" CREATE_DATE > DATE_SUB(NOW(), INTERVAL 15 MINUTE) ")
);
if(CollectionUtils.isNotEmpty(goodsorderList)){
for (Goodsorder goodsorder:goodsorderList) {
--
Gitblit v1.9.3