From ecca9ab70a9a87bcb60977c92fbf81053b8fc1bb Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期三, 04 九月 2024 09:17:55 +0800
Subject: [PATCH] 新增优化

---
 ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java |   67 ++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 22 deletions(-)

diff --git a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java
index 1a811ea..cd54160 100644
--- a/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-admin/src/main/java/com/ruoyi/admin/service/impl/OrderServiceImpl.java
@@ -5,6 +5,7 @@
 import com.alibaba.excel.write.builder.ExcelWriterBuilder;
 import com.alibaba.excel.write.metadata.WriteSheet;
 import com.alibaba.fastjson2.JSONObject;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.admin.entity.*;
 import com.ruoyi.admin.mapper.OrderMapper;
@@ -16,7 +17,7 @@
 import com.ruoyi.admin.vo.*;
 import com.ruoyi.common.core.constant.Constants;
 import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.exception.GlobalException;
+import com.ruoyi.order.api.entity.OrderQueryRequest;
 import com.ruoyi.order.api.entity.ServeRecord;
 import com.ruoyi.order.api.feignClient.EvaluateClient;
 import com.ruoyi.order.api.feignClient.OrderClient;
@@ -168,49 +169,56 @@
         }
         if (null != serveRecord) {
             orderByServeRecord.setPhoto(Arrays.stream(serveRecord.getPhoto().split(",")).collect(Collectors.toList()));
+            orderByServeRecord.setCardPic(serveRecord.getCardPic());
+            orderByServeRecord.setPaperPic(serveRecord.getPaperPic());
+            orderByServeRecord.setMachinePic(serveRecord.getMachinePic());
         }
         result.setServeRecordInfo(orderByServeRecord);
     }
 
     private void workerInfo(OrderDetailVO result, com.ruoyi.order.api.entity.Order order) {
         MasterWorker worker = masterWorkerService.getById(order.getServerId());
+        OrderByWorkerVO orderByWorker = new OrderByWorkerVO();
         if (null != worker) {
-            OrderByWorkerVO orderByWorker = new OrderByWorkerVO();
             orderByWorker.setProfilePicture(worker.getProfilePicture());
             orderByWorker.setName(worker.getRealName());
             orderByWorker.setPhone(worker.getPhone());
             orderByWorker.setSex(worker.getSex());
-            result.setWorkerInfo(orderByWorker);
+        } else {
+            orderByWorker.setName(order.getServerName());
+            orderByWorker.setPhone(order.getServerPhone());
         }
+        result.setWorkerInfo(orderByWorker);
     }
 
     private void serveInfo(OrderDetailVO result, com.ruoyi.order.api.entity.Order order) {
         RecoveryServe recoveryServe = recoveryServeService.getById(order.getServeId());
-        if (null == recoveryServe) {
-            throw new GlobalException("回收服务信息异常,请重试");
-        }
-        RecoveryClassify recoveryClassify = recoveryClassifyService.getById(recoveryServe.getClassifyId());
-        if (null == recoveryClassify) {
-            throw new GlobalException("回收服务分类信息异常,请重试");
-        }
         OrderByServeVO orderByServe = new OrderByServeVO();
-        orderByServe.setServeName(recoveryServe.getServeName());
-        orderByServe.setCover(recoveryServe.getCover());
-        orderByServe.setSupClassify(recoveryClassify.getSupClassify());
-        orderByServe.setSubClassify(recoveryClassify.getSubClassify());
+        if (null != recoveryServe) {
+            RecoveryClassify recoveryClassify = recoveryClassifyService.getById(recoveryServe.getClassifyId());
+            orderByServe.setServeName(recoveryServe.getServeName());
+            orderByServe.setCover(recoveryServe.getCover());
+            if (null != recoveryClassify) {
+                orderByServe.setSupClassify(recoveryClassify.getSupClassify());
+                orderByServe.setSubClassify(recoveryClassify.getSubClassify());
+            }
+        } else {
+            orderByServe.setServeName(order.getServeName());
+        }
         orderByServe.setPrice(order.getServePrice());
+        orderByServe.setSubsidy(order.getSubsidy());
         result.setServeInfo(orderByServe);
     }
 
     private void orderInfo(OrderDetailVO result, com.ruoyi.order.api.entity.Order order) {
-        if (null == order) {
-            throw new GlobalException("订单信息异常,请重试");
-        }
         // 订单信息
         OrderInfoVO orderInfo = new OrderInfoVO();
-        orderInfo.setOrderNumber(order.getOrderNumber());
-        orderInfo.setPlaceOrderTime(order.getCreateTime());
-        orderInfo.setState(order.getState());
+        if (null != order) {
+            orderInfo.setOrderNumber(order.getOrderNumber());
+            orderInfo.setPlaceOrderTime(order.getCreateTime());
+            orderInfo.setState(order.getState());
+            orderInfo.setReservationRemark(order.getReservationRemark());
+        }
         result.setOrderInfo(orderInfo);
     }
 
@@ -224,9 +232,24 @@
         }
         orderByUserInfo.setReservationName(order.getReservationName());
         orderByUserInfo.setReservationPhone(order.getReservationPhone());
-        orderByUserInfo.setReservationAddress(order.getReservationAddress());
+        if (order.getAddress()!=null) {
+            orderByUserInfo.setReservationAddress(order.getReservationAddress() + order.getAddress());
+        }else {
+            orderByUserInfo.setReservationAddress(order.getReservationAddress());
+        }
         orderByUserInfo.setTime(order.getTime());
         result.setUserInfo(orderByUserInfo);
     }
-
+    /**
+     * 订单id列表
+     *
+     * @param orderQueryRequest 订单列表查询参数
+     *  @return 订单id列表
+     */
+    @Override
+    public List<String> queryIdList(OrderQueryRequest orderQueryRequest) {
+        // 基础查询
+        Page<com.ruoyi.order.api.entity.Order> pageList = orderClient.queryPage(orderQueryRequest).getData();
+        return pageList.getRecords().stream().map(com.ruoyi.order.api.entity.Order::getId).collect(Collectors.toList());
+    }
 }

--
Gitblit v1.7.1