From b9da8289051937fbbbd47bbda97414ad6c769a90 Mon Sep 17 00:00:00 2001
From: hjl <1657978663@qq.com>
Date: 星期四, 18 七月 2024 14:37:00 +0800
Subject: [PATCH] feat: 代码重构

---
 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java |   45 +++++++++++++++++++++++++++++++++------------
 1 files changed, 33 insertions(+), 12 deletions(-)

diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java
index 6a2ed6a..6045314 100644
--- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java
+++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/controller/OrderController.java
@@ -109,11 +109,24 @@
         if (null == loginUser) {
             return R.loginExpire("登录失效!");
         }
-        List<String> userCity = new ArrayList<>();
         if (loginUser.getIsFranchisee()) {
-            userCity = loginUser.getCityList();
+            orderQueryRequest.setCityList(loginUser.getCityList());
         }
-        return R.ok(orderClient.queryPage(orderQueryRequest).getData());
+        Page<Order> data = orderClient.queryPage(orderQueryRequest).getData();
+        if (null != data) {
+            for (Order record : data.getRecords()) {
+                // 回收服务信息
+                Integer serverId = record.getServerId();
+                MasterWorker masterWorker = masterWorkerService.lambdaQuery()
+                        .eq(MasterWorker::getId, serverId)
+                        .eq(MasterWorker::getIsDelete, 0).one();
+                if (null != masterWorker) {
+                    record.setServerName(masterWorker.getRealName());
+                    record.setServerPhone(masterWorker.getPhone());
+                }
+            }
+        }
+        return R.ok(data);
     }
 
     /**
@@ -208,6 +221,7 @@
         MasterWorker masterWorker = masterWorkerService.lambdaQuery()
                 .eq(MasterWorker::getId, workerId)
                 .eq(MasterWorker::getIsDelete, 0).one();
+        Order item = orderClient.detail(orderId).getData();
         Order order = orderClient.exchangeOrder(type, orderId, workerId,
                 masterWorker.getRealName(), masterWorker.getPhone()).getData();
         // 订单派单
@@ -216,19 +230,23 @@
             if (order.getState().equals(Constants.SIX) || order.getState().equals(Constants.THREE)) {
                 orderClient.updateState(order.getId(), Constants.ONE);
             }
+            // 订单状态为 待完工时,需要更改状态 待上门且清空师傅到达预约点时间
+            if (order.getState().equals(Constants.TWO)) {
+                orderClient.updateStateAndArrivalTime(orderId, Constants.ONE);
+            }
             // 生成改派信息
             ChangeDispatch changeDispatch = new ChangeDispatch();
-            changeDispatch.setWorkerId(order.getServerId());
-            changeDispatch.setWorkerName(order.getServerName());
+            changeDispatch.setWorkerId(item.getServerId());
+            changeDispatch.setWorkerName(item.getServerName());
             changeDispatch.setApplyReason(applyReason);
             changeDispatch.setApplyTime(new Date());
             changeDispatch.setState(Constants.ONE);
-            changeDispatch.setOrderId(order.getId());
-            changeDispatch.setOrderNumber(order.getOrderNumber());
-            if (null != order.getUserId()) {
-                changeDispatch.setUserId(order.getUserId());
+            changeDispatch.setOrderId(orderId);
+            changeDispatch.setOrderNumber(item.getOrderNumber());
+            if (null != item.getUserId()) {
+                changeDispatch.setUserId(item.getUserId());
             }
-            changeDispatch.setUserName(order.getReservationName());
+            changeDispatch.setUserName(item.getReservationName());
             changeDispatch.setIsDelete(Constants.ZERO);
             result = dispatchClient.saveRecord(changeDispatch).getData();
         }
@@ -296,11 +314,14 @@
             masterWorkerList = masterWorkerService.lambdaQuery()
                     .eq(MasterWorker::getIsDelete, 0).list();
         }
-        Map<Integer, String> map = masterWorkerList.stream().collect(Collectors.toMap(MasterWorker::getId,
+        Map<Integer, String> profilePictureMap = masterWorkerList.stream().collect(Collectors.toMap(MasterWorker::getId,
                 mw -> Optional.ofNullable(mw.getProfilePicture()).orElse("")));
+        Map<Integer, String> realNameMap = masterWorkerList.stream().collect(Collectors.toMap(MasterWorker::getId,
+                mw -> Optional.ofNullable(mw.getRealName()).orElse("")));
         for (OrderCountVO record : data.getRecords()) {
             Integer workerId = record.getWorkerId();
-            record.setProfilePicture(map.get(workerId));
+            record.setRealName(realNameMap.get(workerId));
+            record.setProfilePicture(profilePictureMap.get(workerId));
         }
         return R.ok(data);
     }

--
Gitblit v1.7.1