From 996b2f16afaa271ce8aad6abf6858aa5db503eb3 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期六, 25 四月 2026 14:07:34 +0800
Subject: [PATCH] 代码生成

---
 server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java |   66 ++++++++++++--------------------
 1 files changed, 25 insertions(+), 41 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
index 888e25a..6198ee9 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
@@ -1526,7 +1526,7 @@
 
         wrapper.eq(status != null, Orders::getStatus, status)
                 .in(statusList != null && !Constants.equalsInteger(combinedStatus, Constants.SEVEN), Orders::getStatus, statusList)
-                .orderByDesc(Orders::getCreateTime);
+                .orderByDesc(Orders::getId);
 
         IPage<Orders> orderPage = ordersMapper.selectJoinPage(p, Orders.class, wrapper);
         List<MyOrderVO> voList = new ArrayList<>();
@@ -1950,7 +1950,8 @@
                     .set(Orders::getTakeLocation, order.getDepositLocation())
                     .set(Orders::getTakeLocationRemark, order.getDepositLocationRemark())
                     .set(Orders::getTakeLat, order.getDepositLat())
-                    .set(Orders::getTakeLgt, order.getDepositLgt());
+                    .set(Orders::getTakeLgt, order.getDepositLgt())
+                    .set(Orders::getExpectedTakeTime, new Date());
             if (Constants.equalsInteger(status, Constants.OrderStatus.accepted.getStatus())) {
                 updateWrapper.lambda()
                         .set(Orders::getAcceptDriver, null)
@@ -2665,7 +2666,7 @@
             if (!shopId.equals(order.getDepositShopId())) {
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "璇ヨ鍗曚笉灞炰簬褰撳墠闂ㄥ簵锛屾棤娉曟牳閿�");
             }
-            order.setStatus(Constants.OrderStatus.deposited.getStatus());
+            order.setStatus(Constants.equalsInteger(order.getType(),Constants.ZERO)?Constants.OrderStatus.arrived.getStatus():Constants.OrderStatus.deposited.getStatus());
             order.setDepositTime(now);
             // 閲婃斁褰撳墠鏍搁攢鐮侊紝鐢熸垚鏂扮殑鏍搁攢鐮佷緵鍙栦欢鏃朵娇鐢�
             String verifyCode = order.getMemberVerifyCode();
@@ -3544,26 +3545,20 @@
 
     /**
      * 灏卞湴瀵勫瓨閫炬湡澶╂暟璁$畻
-     * 杩囦簡棰勮鍙栦欢鏃堕棿褰撳ぉ鐨�24:00锛堟鏃�00:00锛夊悗鎵嶇畻绗竴澶�
+     * 杩囦簡棰勮鍙栦欢鏃ユ湡鐨勬鏃ワ紙鍙瘮杈冨勾鏈堟棩锛夊悗寮�濮嬭閫炬湡澶╂暟
      */
     private int calcLocalOverdueDays(Date now, Date expectedTakeTime) {
-        if (expectedTakeTime == null || !now.after(expectedTakeTime)) {
+        if (expectedTakeTime == null) {
             return 0;
         }
-        // 鍩哄噯鏃堕棿 = 棰勮鍙栦欢鏃ユ湡鐨勬鏃� 00:00锛堝嵆褰撳ぉ24:00锛�
+        // 鍙彇骞存湀鏃�
         Calendar baseCal = Calendar.getInstance();
         baseCal.setTime(expectedTakeTime);
         baseCal.set(Calendar.HOUR_OF_DAY, 0);
         baseCal.set(Calendar.MINUTE, 0);
         baseCal.set(Calendar.SECOND, 0);
         baseCal.set(Calendar.MILLISECOND, 0);
-        baseCal.add(Calendar.DAY_OF_MONTH, 1); // 娆℃棩00:00 = 褰撳ぉ24:00
-        Date baseTime = baseCal.getTime();
 
-        if (!now.after(baseTime)) {
-            return 0;
-        }
-        // 閫炬湡澶╂暟 = 褰撳墠鏃ユ湡 - 鍩哄噯鏃ユ湡锛堟寜澶╁彇宸級
         Calendar nowCal = Calendar.getInstance();
         nowCal.setTime(now);
         nowCal.set(Calendar.HOUR_OF_DAY, 0);
@@ -3571,40 +3566,31 @@
         nowCal.set(Calendar.SECOND, 0);
         nowCal.set(Calendar.MILLISECOND, 0);
 
-        Calendar baseDateCal = Calendar.getInstance();
-        baseDateCal.setTime(baseTime);
-        baseDateCal.set(Calendar.HOUR_OF_DAY, 0);
-        baseDateCal.set(Calendar.MINUTE, 0);
-        baseDateCal.set(Calendar.SECOND, 0);
-        baseDateCal.set(Calendar.MILLISECOND, 0);
-
-        long diffMs = nowCal.getTimeInMillis() - baseDateCal.getTimeInMillis();
-        int days = (int) (diffMs / (1000 * 60 * 60 * 24));
-        return Math.max(days, 0);
+        // 鍩哄噯鏃ユ湡 = 棰勮鍙栦欢鏃ユ湡鐨勬鏃ワ紝褰撳ぉ鍙婁箣鍓嶄笉绠楅�炬湡
+        if (nowCal.before(baseCal)) {
+            return 0;
+        }
+        // 閫炬湡澶╂暟 = 褰撳墠鏃ユ湡 - 鍩哄噯鏃ユ湡
+        long diffMs = nowCal.getTimeInMillis() - baseCal.getTimeInMillis();
+        return (int) (diffMs / (1000 * 60 * 60 * 24));
     }
 
     /**
      * 寮傚湴瀵勫瓨閫炬湡澶╂暟璁$畻
-     * 杩囦簡杞Щ鍒板簵鏃堕棿褰撳ぉ鐨勬櫄涓�12鐐癸紙24:00锛夊悗鎵嶇畻绗竴澶�
+     * 杩囦簡杞Щ鍒板簵鏃ユ湡鐨勬鏃ワ紙鍙瘮杈冨勾鏈堟棩锛夊悗寮�濮嬭閫炬湡澶╂暟
      */
     private int calcRemoteOverdueDays(Date now, Date arriveTime) {
-        if (arriveTime == null || !now.after(arriveTime)) {
+        if (arriveTime == null) {
             return 0;
         }
-        // 鍩哄噯鏃堕棿 = 杞Щ鍒板簵鏃ユ湡鐨勬鏃� 00:00锛堝嵆褰撳ぉ24:00锛�
+        // 鍙彇骞存湀鏃�
         Calendar baseCal = Calendar.getInstance();
         baseCal.setTime(arriveTime);
         baseCal.set(Calendar.HOUR_OF_DAY, 0);
         baseCal.set(Calendar.MINUTE, 0);
         baseCal.set(Calendar.SECOND, 0);
         baseCal.set(Calendar.MILLISECOND, 0);
-        baseCal.add(Calendar.DAY_OF_MONTH, 1); // 娆℃棩00:00 = 褰撳ぉ24:00
-        Date baseTime = baseCal.getTime();
 
-        if (!now.after(baseTime)) {
-            return 0;
-        }
-        // 閫炬湡澶╂暟 = 褰撳墠鏃ユ湡 - 鍩哄噯鏃ユ湡
         Calendar nowCal = Calendar.getInstance();
         nowCal.setTime(now);
         nowCal.set(Calendar.HOUR_OF_DAY, 0);
@@ -3612,16 +3598,14 @@
         nowCal.set(Calendar.SECOND, 0);
         nowCal.set(Calendar.MILLISECOND, 0);
 
-        Calendar baseDateCal = Calendar.getInstance();
-        baseDateCal.setTime(baseTime);
-        baseDateCal.set(Calendar.HOUR_OF_DAY, 0);
-        baseDateCal.set(Calendar.MINUTE, 0);
-        baseDateCal.set(Calendar.SECOND, 0);
-        baseDateCal.set(Calendar.MILLISECOND, 0);
-
-        long diffMs = nowCal.getTimeInMillis() - baseDateCal.getTimeInMillis();
-        int days = (int) (diffMs / (1000 * 60 * 60 * 24));
-        return Math.max(days, 0);
+        // 鍩哄噯鏃ユ湡 = 鍒板簵鏃ユ湡鐨勬鏃ワ紝褰撳ぉ鍙婁箣鍓嶄笉绠楅�炬湡
+        baseCal.add(Calendar.DAY_OF_MONTH, 1);
+        if (nowCal.before(baseCal)) {
+            return 0;
+        }
+        // 閫炬湡澶╂暟 = 褰撳墠鏃ユ湡 - 鍩哄噯鏃ユ湡
+        long diffMs = nowCal.getTimeInMillis() - baseCal.getTimeInMillis();
+        return (int) (diffMs / (1000 * 60 * 60 * 24));
     }
 
     @Override

--
Gitblit v1.9.3