From 06fb22228bf5e5ca769b0f121594eca391d4e0ce Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 17 十月 2024 18:22:05 +0800
Subject: [PATCH] 评价

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java |   17 ++++++++++++++++-
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderEvaluateVO.java                |    3 ++-
 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TOrderEvaluateMapper.xml                  |    4 ++--
 3 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderEvaluateVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderEvaluateVO.java
index 769dd96..d1548bf 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderEvaluateVO.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderEvaluateVO.java
@@ -2,6 +2,7 @@
 
 import com.ruoyi.order.api.model.TOrderEvaluate;
 import com.ruoyi.order.api.model.TOrderEvaluateTag;
+import com.ruoyi.other.api.domain.TEvaluationTag;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -22,6 +23,6 @@
     private String carName;
 
     @ApiModelProperty(value = "评价标签列表")
-    private List<TOrderEvaluateTag> orderEvaluateTags;
+    private List<TEvaluationTag> orderEvaluateTags;
 
 }
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
index 6c39482..78d1c96 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
@@ -193,7 +193,22 @@
             BigDecimal reviewRate = new BigDecimal(goodCount).divide(new BigDecimal(tChargingOrders.size()),2, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP);
             siteDetailEvaluateVO.setReviewRate(reviewRate);
             siteDetailEvaluateVO.setEvaluateCount(tChargingOrders.size());
-            siteDetailEvaluateVO.setOrderEvaluateVOS(tChargingOrders.stream().limit(3).collect(Collectors.toList()));
+            List<TOrderEvaluateVO> collect = tChargingOrders.stream().limit(3).collect(Collectors.toList());
+            // 查询评价下的标签
+            List<Long> orderIds = collect.stream().map(TOrderEvaluateVO::getId).collect(Collectors.toList());
+            if(!CollectionUtils.isEmpty(orderIds)){
+                List<TOrderEvaluateTag> tOrderEvaluateTags = orderEvaluateTagMapper.selectList(Wrappers.lambdaQuery(TOrderEvaluateTag.class)
+                        .in(TOrderEvaluateTag::getOrderEvaluateId, orderIds));
+                for (TOrderEvaluateVO tOrderEvaluateVO : collect) {
+                    List<TOrderEvaluateTag> tOrderEvaluateTagList = tOrderEvaluateTags.stream().filter(e -> e.getOrderEvaluateId().equals(tOrderEvaluateVO.getId())).collect(Collectors.toList());
+                    if(!CollectionUtils.isEmpty(tOrderEvaluateTagList)){
+                        List<Integer> tagIds = tOrderEvaluateTagList.stream().map(TOrderEvaluateTag::getEvaluationTagId).collect(Collectors.toList());
+                        List<TEvaluationTag> data = evaluationTagClient.getListByIds(tagIds).getData();
+                        tOrderEvaluateVO.setOrderEvaluateTags(data);
+                    }
+                }
+            }
+            siteDetailEvaluateVO.setOrderEvaluateVOS(collect);
         }
         return siteDetailEvaluateVO;
     }
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TOrderEvaluateMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TOrderEvaluateMapper.xml
index f766a28..02e93b7 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TOrderEvaluateMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TOrderEvaluateMapper.xml
@@ -66,7 +66,7 @@
                     WHEN img_url IS NOT NULL THEN 0
                     ELSE 1
                     END ASC,
-                    create_time DESC;
+                    create_time DESC
                 </otherwise>
             </choose>
         </if>
@@ -76,7 +76,7 @@
             WHEN img_url IS NOT NULL THEN 0
             ELSE 1
             END ASC,
-            create_time DESC;
+            create_time DESC
         </if>
     </select>
     <select id="getOrderEvaluateBySiteId" resultType="com.ruoyi.order.api.vo.TOrderEvaluateVO">

--
Gitblit v1.7.1