From bf7b975c7ebe94ac801d72671cefc4d6ec01d56e Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 23 三月 2026 09:39:07 +0800
Subject: [PATCH] 小程序 接口开发
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java | 177 +++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 137 insertions(+), 40 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..5f89bbe 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
@@ -286,7 +286,7 @@
Constants.UserActionType.CHANGE_ORDER_KD,
userActionMapper,
update.getEditDate(),
- new String[]{goodsorder.getKdInfo()},
+ StringUtils.isNotBlank(goodsorder.getKdInfo())?new String[]{query.getKdInfo()}:null,
JSONObject.toJSONString(update) ,
query.getKdName()+"(鍗曞彿锛�"+query.getKdCode()+")",
goodsorder.getKdName()+"(鍗曞彿锛�"+goodsorder.getKdCode()+")");
@@ -296,7 +296,7 @@
//鍙戦�佸彂璐х珯鍐呬俊
Notice notice = Notice.getNotice(
Constants.NoticeType.NOTICE_ORDER_SEND,
- goodsorder.getMemberId(),
+ query.getMemberId(),
goodsorder.getId()
);
notice.setContent(notice.getContent().replace("{param}",goodsorder.getCode().toString()));
@@ -787,12 +787,13 @@
if(Objects.isNull(member.getBindShopId())){
memberMapper.update(new UpdateWrapper<Member>().lambda()
.set(Member::getBindShopId,shop.getId())
+ .set(Member::getBindShopDate,new Date())
.eq(Member::getId,member.getId())
);
}
goodsorder.setPickUpShopId(shop.getId());
goodsorder.setDistributionShopId(shop.getId());
- goodsorder.setLinkname(member.getName());
+ goodsorder.setLinkname(StringUtils.isNotBlank(member.getName())?member.getName():member.getNickname());
goodsorder.setLinkphone(member.getPhone());
if(Objects.isNull(member.getBindShopId())){
member.setBindShopId(shop.getId());
@@ -835,8 +836,8 @@
.eq(MemberCoupon::getId,orderPayConfirmResponse.getMemberCoupon().getId())
);
}
- goodsorder.setReturnCustomerIntegral(getBackIntegral(goodsorder.getPrice(),Constants.ONE));
- goodsorder.setReturnMemberIntegral(getBackIntegral(goodsorder.getPrice(),Constants.ZERO));
+ goodsorder.setReturnCustomerIntegral(getBackIntegral(goodsorder.getPrice().subtract(goodsorder.getMailPrice()),Constants.ONE));
+ goodsorder.setReturnMemberIntegral(getBackIntegral(goodsorder.getPrice().subtract(goodsorder.getMailPrice()),Constants.ZERO));
goodsorderMapper.insert(goodsorder);
List<OrderGoodsCalculateResponse> goodsCalculateList = orderPayConfirmResponse.getGoodsCalculateList();
if(CollectionUtils.isEmpty(goodsCalculateList)){
@@ -844,7 +845,8 @@
}
List<GoodsorderDetail> goodsOrderDetailList = new ArrayList<>();
BigDecimal shopSettlement = BigDecimal.ZERO;
- for (OrderGoodsCalculateResponse payDetailRequest:goodsCalculateList) {
+ for (int i = 0; i < goodsCalculateList.size(); i++) {
+ OrderGoodsCalculateResponse payDetailRequest = goodsCalculateList.get(i);
//鏌ヨ鍟嗗搧
GoodsSku goodsSku = goodsSkuMapper.selectById(payDetailRequest.getSkuId());
if(Objects.isNull(goodsSku)||!Constants.equalsInteger(goodsSku.getIsdeleted(),Constants.ZERO)){
@@ -857,12 +859,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());
@@ -894,10 +898,10 @@
//缁忛攢鍟嗕紭鎯犳壙鎷呭崰姣�
BigDecimal shopRate = new BigDecimal("100").subtract(platformConfigDTO.getTotalRate());
//璁$畻缁忛攢鍟嗕紭鎯犳壙鎷呴噾棰� 锛堜紭鎯犲埜鎶垫墸閲戦 + 绉垎鎶垫墸閲戦锛� * 鍗犳瘮姣斾緥
- BigDecimal shopDeductAmount = payDetailRequest.getCouponDeductCash().add(payDetailRequest.getIntegralDeductCash())
+ BigDecimal shopDeductAmount = payDetailRequest.getCouponDeductCash().add(Constants.equalsInteger(orderPayRequest.getUseIntegral(),Constants.ONE)?payDetailRequest.getIntegralDeductCash():BigDecimal.ZERO)
.multiply(shopRate).divide(new BigDecimal("100"),2, RoundingMode.HALF_UP);
//鏍规嵁缁忛攢鍟嗛攢鍞ā寮� 璁$畻搴旂粨绠楅噾棰�
- if(shop.getSaleType().equals(Constants.ONE)){
+ if(Constants.equalsInteger(shop.getSaleType(),Constants.ONE)&&Constants.equalsInteger(goodsorder.getReceiveType(),Constants.ONE)){
goodsOrderDetail.setShopSettlement(goodsOrderDetail.getPrice().subtract(shopDeductAmount));
}else {
//骞冲彴閾鸿揣
@@ -942,6 +946,10 @@
//瀛樺湪鐜伴噾鏀粯
if(Constants.equalsInteger(goodsorder.getPayMethod(),Constants.ZERO)){
+ goodsorderMapper.update(null,new UpdateWrapper<Goodsorder>().lambda()
+ .set(Goodsorder::getShopSettlement,shopSettlement)
+ .eq(Goodsorder::getId,goodsorder.getId())
+ );
PayResponse payResponse = this.wxPay(goodsorder,member);
payResponse.setLockKey(lockKey);
return payResponse;
@@ -952,7 +960,7 @@
.set(Goodsorder::getShopSettlement,shopSettlement)
.set(Goodsorder::getPayStatus,Constants.OrderStatus.PAY_DONE.getKey())
.set(Goodsorder::getPayDate,DateUtil.getCurrDateTime())
- .set(Goodsorder::getId,goodsorder.getId())
+ .eq(Goodsorder::getId,goodsorder.getId())
);
PayResponse payResponse = new PayResponse();
payResponse.setOrderId(goodsorder.getId());
@@ -1310,7 +1318,7 @@
Goods goods = goodsMapper.selectById(goodsSku.getGoodsId());
goodsName = goods.getName();
}
- if(!Objects.isNull(goodsSku)){
+ if(!Objects.isNull(goodsSku)&&Objects.nonNull(goodsSku.getStock())){
goodsSku.setStock(goodsSku.getStock().add(new BigDecimal(Constants.formatIntegerNum(goodsorderDetail.getGoodsNum()))));
goodsSkuMapper.updateById(goodsSku);
}
@@ -1439,10 +1447,11 @@
amount = amount.add(response.getSkuAmount());
}
}
- MemberCoupon memberCoupon = new MemberCoupon();
+ MemberCoupon memberCoupon = null;
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,14 +1465,19 @@
}
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(),"鏃犲彲鐢ㄤ紭鎯犲埜锛岃鍒锋柊鏌ョ湅");
}
}
+ if(Objects.nonNull(memberCoupon)){
+ //璁$畻浼樻儬鍒稿崰姣�
+ memberCouponService.calculateCouponRata(memberCoupon,goodsCalculateList,amount);
+ }
+
//鏌ヨ鐢ㄦ埛鎬荤Н鍒�
Member member = memberMapper.selectById(request.getMemberId());
//鏈�浣庡彲鐢ㄥ惎鐢ㄧН鍒�
@@ -1477,6 +1491,7 @@
orderPayConfirmResponse.setDeductIntegral(deductIntegral);
orderPayConfirmResponse.setIntegralAmount(integralAmount);
if(Constants.equalsInteger(orderPayConfirmResponse.getIntegralStatus(),Constants.ZERO)){
+ //璁$畻绉垎鍗犳瘮
integralAmount = this.calculateIntegralRata(orderPayConfirmResponse,goodsCalculateList,member.getIntegral());
}else{
orderPayConfirmResponse.setSurplusIntegral(member.getIntegral());
@@ -1533,7 +1548,7 @@
orderPayConfirmResponse.setIntegralAmount(integralAmount);
}
//浣跨敤浼樻儬鍒� 鍑忓幓浼樻儬鍒告姷鎵i噾棰�
- if(Objects.nonNull(request.getCouponId())){
+ if(Objects.nonNull(orderPayConfirmResponse.getMemberCoupon())){
orderPayConfirmResponse.setCouponAmount(couponAmount);
}
//瀹為檯鏀粯閲戦 鍑忓幓浼樻儬鍒搞�佺Н鍒嗘姷鎵i噾棰�
@@ -1563,12 +1578,12 @@
if(Constants.equalsInteger(type,Constants.ZERO)){
if( Constants.equalsInteger(platformConfigDTO.getReturnMemberIntegralStatus(),Constants.ZERO)
&& Objects.nonNull(platformConfigDTO.getReturnMemberIntegral())){
- integralBack = payAmount.multiply(platformConfigDTO.getReturnMemberIntegral()).divide(BigDecimal.ONE,0,BigDecimal.ROUND_DOWN);
+ integralBack = payAmount.divide(platformConfigDTO.getReturnMemberIntegral(),2,BigDecimal.ROUND_DOWN);
}
}else{
if( Constants.equalsInteger(platformConfigDTO.getReturnShopIntegralStatus(),Constants.ZERO)
&& Objects.nonNull(platformConfigDTO.getReturnShopIntegral())){
- integralBack = payAmount.multiply(platformConfigDTO.getReturnShopIntegral()).divide(BigDecimal.ONE,0,BigDecimal.ROUND_DOWN);
+ integralBack = payAmount.divide(platformConfigDTO.getReturnShopIntegral(),2,BigDecimal.ROUND_DOWN);
}
}
return integralBack;
@@ -1588,6 +1603,12 @@
.multiply(i.getDeductRata()).divide(new BigDecimal("100"),2,RoundingMode.DOWN)).reduce(BigDecimal.ZERO,BigDecimal::add);
//绉垎-鐜伴噾鍏戞崲姣斾緥锛圶XX绉垎鎶垫墸1鍏冿級
BigDecimal cashToIntegralRata = new BigDecimal(systemDictDataBiz.queryByCode(Constants.INTEGRAL_SET,Constants.INTERALSET_DEDUCTINTEGRALLIMIT).getCode());
+ //绉垎鏈�澶у彲鎶垫墸閲戦
+ BigDecimal deductionCash = totalIntegral.divide(cashToIntegralRata,2,RoundingMode.DOWN);
+ BigDecimal surDeductionCash = deductionCash;
+ BigDecimal goodUseIntegral = BigDecimal.ZERO;
+ BigDecimal surUseIntegral = totalIntegral;
+
//褰撳墠閫夋嫨鍟嗗搧鎶垫墸闇�瑕佷娇鐢ㄧ殑绉垎
BigDecimal maxDeductionIntegral = maxDeductionCash.multiply(cashToIntegralRata);
//鑾峰彇褰撳墠闇�瑕佹敮浠樼殑鐜伴噾鎬婚
@@ -1598,15 +1619,26 @@
BigDecimal realDeductionCash = BigDecimal.ZERO;
for (int j = 0; j < goodsCalculateList.size(); j++) {
//鑾峰彇鏈�澶у彲鎶垫墸閲戦
- BigDecimal deductionCash = goodsCalculateList.get(j).getSkuAmount().subtract(goodsCalculateList.get(j).getCouponDeductCash())
+ BigDecimal goodDeductionCash = goodsCalculateList.get(j).getSkuAmount().subtract(goodsCalculateList.get(j).getCouponDeductCash())
.multiply(goodsCalculateList.get(j).getDeductRata()).divide(new BigDecimal("100"),2,RoundingMode.DOWN);
- goodsCalculateList.get(j).setIntegralMaxDeductCash(deductionCash);
+ goodsCalculateList.get(j).setIntegralMaxDeductCash(goodDeductionCash);
+ BigDecimal rata = goodDeductionCash.divide(maxDeductionCash,2,BigDecimal.ROUND_HALF_UP);
//濡傛灉鍓╀綑绉垎澶т簬鍙互浣跨敤绉垎 鍒欑洿鎺ユ弧棰濊绠� 鍙嶄箣 鍓╀綑绉垎涓嶈兘婊¤冻鍏ㄩ儴鎶垫墸 鍗曠嫭璁$畻姣忎釜鍟嗗搧鍗犳瘮
if(totalIntegral.compareTo(maxDeductionIntegral)<Constants.ZERO){
- deductionCash = deductionCash.divide(payCash).multiply(totalIntegral);
+ if(Constants.equalsInteger(j+1,goodsCalculateList.size())){
+ goodDeductionCash = surDeductionCash;
+ goodUseIntegral = surUseIntegral;
+ }else{
+ goodDeductionCash = (goodDeductionCash.multiply(deductionCash)).divide(maxDeductionCash,2,BigDecimal.ROUND_HALF_UP);
+ surDeductionCash = surDeductionCash.subtract(goodDeductionCash);
+ goodUseIntegral = (goodDeductionCash.multiply(totalIntegral)).divide(maxDeductionCash,2,BigDecimal.ROUND_HALF_UP);
+ surUseIntegral = totalIntegral.subtract(goodUseIntegral);
+ }
}
- goodsCalculateList.get(j).setIntegralDeductCash(deductionCash);
- realDeductionCash = realDeductionCash.add(deductionCash);
+ goodsCalculateList.get(j).setIntegralDeductCash(goodDeductionCash);
+ goodsCalculateList.get(j).setIntegralDeduct(goodUseIntegral);
+ realDeductionCash = realDeductionCash.add(goodDeductionCash);
+
}
//鍓╀綑绉垎鍊�
orderPayConfirmResponse.setSurplusIntegral(totalIntegral);
@@ -1754,7 +1786,22 @@
if(Objects.isNull(coupon)||Constants.equalsInteger(coupon.getIsdeleted(),Constants.ONE)&&num>Constants.ZERO){
continue;
}
+ if(coupon.getNum()>Constants.ZERO){
+ //鏌ヨ宸查鍙栨暟閲�
+ Integer getNum = memberCouponMapper.selectCount(new QueryWrapper<MemberCoupon>().lambda()
+ .eq(MemberCoupon::getIsdeleted,Constants.ZERO)
+ .eq(MemberCoupon::getCouponId,couponId)
+ .ne(MemberCoupon::getGetMethod,Constants.TWO)
+ ).intValue();
+ if(getNum >= coupon.getNum()){
+ continue;
+ }
+ if(num>(coupon.getNum() - getNum)){
+ num = coupon.getNum().intValue() - getNum;
+ }
+ }
MemberCoupon memberCoupon = MemberCoupon.couponToBean(coupon,inviteMember,new Date(),Constants.ONE,null);
+
for (int i = 0; i < num; i++) {
//婊″噺鍗蜂笉浼氱敓鎴恗axPrice 闇�瑕佹牴鎹紭鎯犲埜鍑忓皯閲戦璁剧疆
if(Constants.equalsInteger(coupon.getCouponType(),Constants.ZERO)){
@@ -1820,9 +1867,9 @@
if(Objects.isNull(shop)){
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌璁㈠崟鍏宠仈缁忛攢鍟嗕俊鎭�,璇疯仈绯荤鐞嗗憳");
}
-// if(!Constants.equalsInteger(shop.getMemberId(),memberId)){
-// throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"["+shop.getName()+"]闈炴偍缁戝畾鐨勭粡閿�鍟嗭紝鏃犳硶杩涜璇ユ搷浣滐紒");
-// }
+ if(!Constants.equalsInteger(shop.getId(),memberId)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝褰撳墠璁㈠崟鏍搁攢闂ㄥ簵涓篬"+shop.getName()+"]锛屾偍鏃犳硶杩涜璇ユ搷浣滐紒");
+ }
goodsorder.setStatus(Constants.OrderStatus.DONE.getKey());
goodsorder.setDoneDate(new Date());
goodsorderMapper.updateById(goodsorder);
@@ -1859,11 +1906,10 @@
if(Objects.isNull(goodsorder.getDistributionShopId()) || Constants.equalsInteger(goodsorder.getPayMethod(),Constants.ONE)){
return;
}
- BigDecimal backIntegral = getBackIntegral(goodsorder.getPrice(),Constants.ONE);
- if (backIntegral.compareTo(BigDecimal.ZERO) > 0) {
+ if (goodsorder.getReturnCustomerIntegral().compareTo(BigDecimal.ZERO) > 0) {
//鏇存柊浣欓淇℃伅 娣诲姞绉垎鍙樺姩璁板綍
DealIntegralRequest dealIntegralRequest = new DealIntegralRequest();
- dealIntegralRequest.setIntegralNum(backIntegral);
+ dealIntegralRequest.setIntegralNum(goodsorder.getReturnCustomerIntegral());
dealIntegralRequest.setDealType(Constants.ZERO);
dealIntegralRequest.setMemberId(goodsorder.getDistributionShopId());
dealIntegralRequest.setObjId(goodsorder.getId());
@@ -1908,11 +1954,10 @@
if(Constants.equalsInteger(goodsorder.getPayMethod(),Constants.ONE)){
return;
}
- BigDecimal backIntegral = getBackIntegral(goodsorder.getPrice(),Constants.ZERO);
- if (backIntegral.compareTo(BigDecimal.ZERO) > 0) {
+ if (goodsorder.getReturnMemberIntegral().compareTo(BigDecimal.ZERO) > 0) {
//鏇存柊浣欓淇℃伅 娣诲姞绉垎鍙樺姩璁板綍
DealIntegralRequest dealIntegralRequest = new DealIntegralRequest();
- dealIntegralRequest.setIntegralNum(backIntegral);
+ dealIntegralRequest.setIntegralNum(goodsorder.getReturnMemberIntegral());
dealIntegralRequest.setDealType(Constants.ZERO);
dealIntegralRequest.setMemberId(goodsorder.getMemberId());
dealIntegralRequest.setObjId(goodsorder.getId());
@@ -2211,7 +2256,7 @@
.eq(Notice::getIsdeleted,Constants.ZERO)
.eq(Notice::getMemberId,member.getId())
.eq(Notice::getStatus,Constants.ZERO)
- )>=Constants.ZERO?Constants.ZERO:Constants.ONE
+ )>Constants.ZERO?Constants.ZERO:Constants.ONE
);
return homeInfoResponse;
@@ -2285,6 +2330,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,16 +2371,67 @@
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) {
this.cancel(goodsorder,null,"璁㈠崟鏈敮浠樿秴鏃惰嚜鍔ㄥ彇娑�");
}
}
-
-
-
}
+
+
+ /**
+ * 鑷姩瀹屾垚 7 澶╂湭纭鏀惰揣鐨勭墿娴佸彂璐ц鍗�
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void autoCompleteOrder(){
+ //鏌ヨ鍙戣揣鍚� 7 澶╂湭纭鏀惰揣鐨勮鍗曟暟鎹紙浠呭鐞嗗揩閫掗厤閫佽鍗曪級
+ List<Goodsorder> goodsOrderList = goodsorderMapper.selectList(
+ new QueryWrapper<Goodsorder>()
+ .eq("STATUS", Constants.OrderStatus.WAIT_RECEIVE.getKey())
+ .eq("RECEIVE_TYPE", Constants.ZERO) // 浠呭鐞嗗揩閫掗厤閫佽鍗�
+ .isNotNull("KD_CODE") // 鏈夌墿娴佸崟鍙�
+ .ne("KD_CODE", "") // 鐗╂祦鍗曞彿涓嶄负绌�
+ .apply(" KD_DATE IS NOT NULL ") // 鏈夊彂璐ф椂闂�
+ .apply(" NOW() >= DATE_SUB(KD_DATE, INTERVAL -7 DAY) ") // 鍙戣揣鍚� 7 澶�
+ );
+
+ if (!goodsOrderList.isEmpty()) {
+ for (Goodsorder order : goodsOrderList) {
+ try {
+ Goodsorder updateOrder = new Goodsorder();
+ updateOrder.setId(order.getId());
+ updateOrder.setStatus(Constants.OrderStatus.DONE.getKey());
+ updateOrder.setDoneDate(new Date());
+ updateOrder.setDoneInfo("鍙戣揣 7 澶╁悗绯荤粺鑷姩纭鏀惰揣");
+ goodsorderMapper.updateById(updateOrder);
+
+ //瀛樺湪鐜伴噾鏀粯 璧犻�� 绉垎
+ if(Constants.equalsInteger(updateOrder.getPayMethod(),Constants.ZERO)){
+ //璧犻�佹秷璐硅�呯Н鍒�
+ this.orderAddMemberIntegral(order);
+ //涓嬪崟瀹屾垚 鏍规嵁淇℃伅纭鏄惁闇�瑕佽禒閫侀個璇疯�呬紭鎯犲埜
+ this.orderDoneRewardInviteCoupon(order);
+ //缁忛攢鍟� 娣诲姞璧犻�佺Н鍒�
+ this.orderAddShopIntegral(order);
+ //缁忛攢鍟� 缁撶畻閲戦
+ this.orderAddShopCash(order);
+ }
+
+
+ System.out.println("璁㈠崟鑷姩瀹屾垚锛氳鍗� ID=" + order.getId() + ", 璁㈠崟缂栧彿=" + order.getCode());
+ } catch (Exception e) {
+ System.out.println("璁㈠崟鑷姩瀹屾垚澶辫触锛氳鍗� ID=" + order.getId() + ", 閿欒锛�" + e.getMessage());
+ }
+ }
+ }
+ }
+
+
+
+
+
}
--
Gitblit v1.9.3