From b5ead35c1d955f2a0e2e10da79254860d0ba95e9 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 23 五月 2025 14:50:27 +0800
Subject: [PATCH] 大屏接口bug修改

---
 ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java |   65 +++++++++++++++++++++-----------
 1 files changed, 43 insertions(+), 22 deletions(-)

diff --git a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java
index c9e3635..4acf1bf 100644
--- a/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java
+++ b/ruoyi-service/ruoyi-user/src/main/java/com/ruoyi/user/controller/OrderController.java
@@ -35,6 +35,7 @@
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.Optional;
 import java.util.stream.Collectors;
 
@@ -104,21 +105,21 @@
     })
     public R<BigDecimal> estimate(@RequestParam String orderId, String city) {
         Order order = orderClient.detail(orderId).getData();
-        RecoveryServe recoveryServe = recoveryServeService.lambdaQuery()
-                .eq(RecoveryServe::getId, order.getServeId())
-                .eq(RecoveryServe::getIsDelete, 0).one();
-        BigDecimal money = recoveryServe.getDefaultPrice();
-        if (StringUtils.isNotBlank(city)) {
-            CityInfoVO info = GaoDeMapUtil.getAddressInfo(city).getDatas();
-            RecoveryServePrice price = recoveryServePriceService.lambdaQuery()
-                    .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId())
-                    .eq(RecoveryServePrice::getCityCode, info.getCode())
-                    .eq(RecoveryServePrice::getIsDelete, Constants.ZERO).one();
-            if (null != price) {
-                money = price.getRecoveryPrice();
-            }
-        }
-        return R.ok(money);
+//        RecoveryServe recoveryServe = recoveryServeService.lambdaQuery()
+//                .eq(RecoveryServe::getId, order.getServeId())
+//                .eq(RecoveryServe::getIsDelete, 0).one();
+//        BigDecimal money = recoveryServe.getDefaultPrice();
+//        if (StringUtils.isNotBlank(city)) {
+//            CityInfoVO info = GaoDeMapUtil.getAddressInfo(city).getDatas();
+//            RecoveryServePrice price = recoveryServePriceService.lambdaQuery()
+//                    .eq(RecoveryServePrice::getRecoveryServeId, recoveryServe.getId())
+//                    .eq(RecoveryServePrice::getCity, info.getCode())
+//                    .eq(RecoveryServePrice::getIsDelete, Constants.ZERO).one();
+//            if (null != price) {
+//                money = price.getRecoveryPrice();
+//            }
+//        }
+        return R.ok(order.getServePrice());
     }
 
     @GetMapping("/detail")
@@ -150,8 +151,8 @@
      */
     @GetMapping("/prizeList")
     @ApiOperation(value = "获取奖品列表", tags = {"用户端-订单"})
-    public R<List<Prize>> prizeList() {
-        return R.ok(adminClient.prizeList().getData());
+    public R<List<Prize>> prizeList(@RequestParam("serveId") String serveId) {
+        return R.ok(adminClient.prizeList(Integer.valueOf(serveId)).getData());
     }
 
     /**
@@ -161,8 +162,8 @@
      */
     @GetMapping("/allowance")
     @ApiOperation(value = "抽奖获取津贴", tags = {"用户端-订单"})
-    public R<Object> obtainAllowance() {
-        return R.ok(orderService.obtainAllowance(adminClient.prizeList().getData()));
+    public R<Object> obtainAllowance(@RequestParam("serveId") String serveId) {
+        return R.ok(orderService.obtainAllowance(adminClient.prizeList(Integer.valueOf(serveId)).getData()));
     }
 
     /**
@@ -172,14 +173,18 @@
      */
     @GetMapping("/allowanceMoney")
     @ApiOperation(value = "补充订单津贴金额", tags = {"用户端-订单"})
-    public R<Object> allowanceMoney(@RequestParam("orderId") String orderId, @RequestParam("prizeId") String prizeId) {
+    public R<Object> allowanceMoney(@RequestParam("orderId") String orderId,
+                                    @RequestParam("prizeId") String prizeId,
+                                    @RequestParam("serveId") String serveId) {
         Prize data = adminClient.prizeDetail(prizeId).getData();
         if (null == data) {
             return R.fail(adminClient.prizeDetail(prizeId).getMsg());
         }
         String prizeMoney;
-        if (data.getPrizeName().contains(Constants.SUBSIDY_MONEY)) {
-            prizeMoney = data.getPrizeName().substring(Constants.ONE);
+        if (data.getPrizeType() == 1) {
+            // 查询服务回收补贴金
+            RecoveryServe recoveryServe = recoveryServeService.getById(serveId);
+            prizeMoney = recoveryServe.getRecycleSubsidy().toString();
         } else {
             prizeMoney = "0";
         }
@@ -208,4 +213,20 @@
         return result ? R.ok() : R.fail();
     }
 
+    /**
+     * 领取补贴金
+     *
+     */
+    @GetMapping("/receivingSubsidies")
+    @ApiOperation(value = "领取补贴金", tags = {"用户端-订单-领取补贴金[2.0]"})
+    public R<Object> receivingSubsidies(@RequestParam("serveId") String serveId,@RequestParam("orderId") String orderId) {
+        // 查询补贴金
+        RecoveryServe recoveryServe = recoveryServeService.getById(serveId);
+        if (Objects.isNull(recoveryServe)) {
+            return R.fail("该服务不存在!");
+        }
+        orderClient.receiving(orderId,recoveryServe.getRecycleSubsidy());
+        return R.ok();
+    }
+
 }

--
Gitblit v1.7.1