From 03c6572c7918beaa20365e69c9694a11f0d9948a Mon Sep 17 00:00:00 2001
From: hjl <1657978663@qq.com>
Date: 星期一, 01 七月 2024 10:13:26 +0800
Subject: [PATCH] feat: 代码初始化

---
 ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 53 insertions(+), 4 deletions(-)

diff --git a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java
index 0abdc49..8a17a9c 100644
--- a/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java
+++ b/ruoyi-service/ruoyi-worker/src/main/java/com/ruoyi/worker/service/impl/MasterWorkerServiceImpl.java
@@ -4,7 +4,6 @@
 import com.ruoyi.common.core.constant.Constants;
 import com.ruoyi.common.core.domain.Result;
 import com.ruoyi.common.core.utils.GaoDeMapUtil;
-import com.ruoyi.common.core.utils.bean.BeanUtils;
 import com.ruoyi.worker.entity.MasterWorker;
 import com.ruoyi.worker.entity.Order;
 import com.ruoyi.worker.entity.RecoveryServe;
@@ -46,21 +45,52 @@
 
     @Override
     public List<OrderListVO> orderNotHandle(Integer userid, String longitude, String latitude) {
-        List<Order> orderList = orderService.lambdaQuery().eq(Order::getServerId, userid).eq(Order::getState, Constants.TWO)
-                .eq(Order::getIsDelete, 0).eq(Order::getType, Constants.ZERO).list();
+        List<Order> orderList = orderService.lambdaQuery().eq(Order::getServerId, userid)
+                .eq(Order::getState, Constants.ONE)
+                .eq(Order::getIsDelete, 0)
+                .eq(Order::getType, Constants.ZERO)
+                .orderByAsc(Order::getTopSort).list();
         // 根据经纬度距离封装
         List<OrderNotHandleVO> list = new ArrayList<>();
         for (Order order : orderList) {
             // 用户下单经纬度
             Double orderLongitude = order.getLongitude();
             Double orderLatitude = order.getLatitude();
+            Integer topSort = order.getTopSort();
             String orderPosition = orderLongitude + "," + orderLatitude;
             // 根据经纬度计算与师傅的距离
             Result<Long> result = GaoDeMapUtil.getDistance(orderPosition, longitude + "," + latitude);
             Long distance = result.getDatas();
+            // 回收服务信息
+            RecoveryServe recoveryServe = recoveryServeService.lambdaQuery().eq(RecoveryServe::getId, order.getServeId())
+                    .eq(RecoveryServe::getIsDelete, 0).one();
             // vo类信息封装
             OrderListVO orderListVO = new OrderListVO(order.getServeId());
-            BeanUtils.copyProperties(orderListVO, orderListVO);
+            orderListVO.setOrderId(order.getId());
+            orderListVO.setOrderNumber(order.getOrderNumber());
+            orderListVO.setSiteId(order.getSiteId());
+            orderListVO.setSiteName(order.getSiteName());
+            orderListVO.setServeId(order.getServeId());
+            orderListVO.setServeName(order.getServeName());
+            orderListVO.setServePicture(recoveryServe.getCover());
+            orderListVO.setServePrice(recoveryServe.getDefaultPrice());
+            orderListVO.setUserId(userid);
+            orderListVO.setReservationName(order.getReservationName());
+            orderListVO.setReservationPhone(order.getReservationPhone());
+            orderListVO.setReservationAddress(order.getReservationAddress());
+            orderListVO.setTime(order.getTime());
+            orderListVO.setServerId(order.getServerId());
+            orderListVO.setServerName(order.getServerName());
+            orderListVO.setServerPhone(order.getServerPhone());
+            orderListVO.setReservationRemark(order.getReservationRemark());
+            orderListVO.setOrderMoney(order.getOrderMoney());
+            orderListVO.setState(order.getState());
+            orderListVO.setAcceptTime(order.getAcceptTime());
+            orderListVO.setArriveTime(order.getArriveTime());
+            orderListVO.setType(order.getType());
+            orderListVO.setLongitude(order.getLongitude());
+            orderListVO.setLatitude(order.getLatitude());
+            orderListVO.setTopSort(topSort);
             OrderNotHandleVO vo = new OrderNotHandleVO(distance, orderListVO);
             list.add(vo);
         }
@@ -79,4 +109,23 @@
         return resultList;
     }
 
+    @Override
+    public Boolean orderTop(Integer orderId, Integer userid) {
+        // 订单代办列表
+        List<Order> orderList = orderService.lambdaQuery().eq(Order::getServerId, userid)
+                .eq(Order::getState, Constants.ONE)
+                .eq(Order::getIsDelete, 0)
+                .eq(Order::getType, Constants.ZERO)
+                .orderByAsc(Order::getTopSort).list();
+        List<Order> orders = orderList.stream().filter(data -> null != data.getTopSort()).collect(Collectors.toList());
+        int itemSort = 2;
+        for (Order order : orders) {
+            order.setTopSort(itemSort);
+            itemSort++;
+        }
+        return orderService.lambdaUpdate().set(Order::getTopSort, Constants.ONE)
+                .eq(Order::getServerId, userid)
+                .eq(Order::getIsDelete, 0).update();
+    }
+
 }

--
Gitblit v1.7.1