From eb7a808aaf7dd0a6dd2ff70f9ef3f8ce0b1e31d1 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 22 五月 2026 18:27:32 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/gtzxinglijicun

---
 server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 54 insertions(+), 5 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
index 64a3ac6..b90ecac 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
@@ -226,6 +226,29 @@
         if (Objects.isNull(driverInfo)) {
             throw new BusinessException(ResponseStatus.DATA_EMPTY);
         }
+        // 鏌ヨ瀹℃壒浜哄悕绉�
+        if (driverInfo.getAuditUser() != null) {
+            try {
+                SystemUser auditUser = systemUserService.findById(driverInfo.getAuditUser());
+                if (auditUser != null) {
+                    driverInfo.setAuditUserName(auditUser.getRealname());
+                }
+            } catch (Exception e) {
+                // 瀹℃壒浜哄凡鍒犻櫎绛夊紓甯稿拷鐣�
+            }
+        }
+        // 鏌ヨ鐪佸競鍖轰俊鎭�
+        if (driverInfo.getAreaId() != null) {
+            Areas district = areasBiz.resolveArea(driverInfo.getAreaId());
+            if (district != null) {
+                driverInfo.setDistrictId(district.getId());
+                driverInfo.setDistrictName(district.getName());
+                driverInfo.setCityId(district.getCityId());
+                driverInfo.setCityName(district.getCityName());
+                driverInfo.setProvinceId(district.getProvinceId());
+                driverInfo.setProvinceName(district.getProvinceName());
+            }
+        }
         return driverInfo;
     }
 
@@ -246,7 +269,6 @@
         IPage<DriverInfo> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
         MPJLambdaWrapper<DriverInfo> queryWrapper = new MPJLambdaWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
-        pageWrap.getModel().setDeleted(Constants.ZERO);
 
         // 鍙告満濮撳悕/鎵嬫満鍙凤紙鍏抽敭瀛楁ā绯婃煡璇級
         if (StringUtils.isNotBlank(pageWrap.getModel().getKeyword())) {
@@ -282,7 +304,8 @@
         queryWrapper.selectAll(DriverInfo.class)
                 .select(" ( select ifnull(sum(r.OPT_TYPE * r.AMOUNT),0) from revenue r where r.MEMBER_TYPE = 1 and r.MEMBER_ID= t.id and r.VAILD_STATUS = 1 ) as memberAmount ")
                 .selectAs(Category::getName,DriverInfo::getCarTypeName)
-                .leftJoin(Category.class, Category::getId,DriverInfo::getCarType);
+                .leftJoin(Category.class, Category::getId,DriverInfo::getCarType)
+                .eq(DriverInfo::getDeleted, Constants.ZERO);
         queryWrapper.orderByDesc(DriverInfo::getId);
         PageData<DriverInfo> pageData = PageData.from(driverInfoMapper.selectPage(page, queryWrapper));
         for (DriverInfo d : pageData.getRecords()) {
@@ -560,8 +583,13 @@
             driverInfoMapper.insert(newChange);
             saveDriverAttachments(newChange.getId(), request, now);
             // 鏍囪鍘嗗彶鐨勫彉鏇寸増鏈负鍒犻櫎
-
-
+            driverInfoMapper.update(new UpdateWrapper<DriverInfo>().lambda()
+                    .set(DriverInfo::getDeleted, Constants.ONE)
+                    .set(DriverInfo::getUpdateTime, now)
+                    .eq(DriverInfo::getMemberId, memberId)
+                    .eq(DriverInfo::getVersionType, Constants.ONE)
+                    .eq(DriverInfo::getDeleted, Constants.ZERO)
+                    .ne(DriverInfo::getId, newChange.getId()));
 
         } else {
             // auditStatus=0/2锛氱洿鎺ユ洿鏂板彉鏇寸増鏈�
@@ -970,6 +998,18 @@
                 }
             } catch (Exception e) {
                 // 瀹℃壒浜哄凡鍒犻櫎绛夊紓甯稿拷鐣�
+            }
+        }
+        // 鏌ヨ鐪佸競鍖轰俊鎭�
+        if (driverInfo.getAreaId() != null) {
+            Areas district = areasBiz.resolveArea(driverInfo.getAreaId());
+            if (district != null) {
+                driverInfo.setDistrictId(district.getId());
+                driverInfo.setDistrictName(district.getName());
+                driverInfo.setCityId(district.getCityId());
+                driverInfo.setCityName(district.getCityName());
+                driverInfo.setProvinceId(district.getProvinceId());
+                driverInfo.setProvinceName(district.getProvinceName());
             }
         }
         return driverInfo;
@@ -1881,6 +1921,9 @@
         if (!driverId.equals(order.getAcceptDriver())) {
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鏃犳潈鎿嶄綔璇ヨ鍗�");
         }
+        if (Constants.equalsInteger(order.getExceptionStatus(), Constants.ONE)) {
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "寮傚父璁㈠崟鏃犳硶杩涜纭閫佽揪");
+        }
 
         // 3. 淇濆瓨閫佽揪鍥剧墖
         Date now = new Date();
@@ -2271,7 +2314,13 @@
                 .eq(status != null, Orders::getStatus, status)
                 .eq(Orders::getDeleted, Constants.ZERO)
                 .orderByDesc(Orders::getAcceptTime);
-
+        // 鍏抽敭璇嶆悳绱細鏀朵欢浜�/鏀朵欢浜虹數璇濇ā绯娿�佽鍗曞彿绮惧噯
+        if (StringUtils.isNotBlank(model.getKeyword())) {
+            String kw = model.getKeyword().trim();
+            wrapper.and(w -> w.like(Orders::getTakeUser, kw)
+                    .or().like(Orders::getTakePhone, kw)
+                    .or().like(Orders::getCode, kw));
+        }
         IPage<Orders> orderPage = ordersMapper.selectJoinPage(p, Orders.class, wrapper);
 
         List<DriverGrabOrderVO> voList = new ArrayList<>();

--
Gitblit v1.9.3