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 |   57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 54 insertions(+), 3 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 3680761..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
@@ -2378,9 +2378,60 @@
                 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