From f138375f15c072d10335c20ecec9b35f1da78ee4 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 03 七月 2024 16:17:59 +0800
Subject: [PATCH] bug修改

---
 ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/TGoodsController.java |   73 +++++++++++++++---------------------
 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java  |    1 
 2 files changed, 30 insertions(+), 44 deletions(-)

diff --git a/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/TGoodsController.java b/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/TGoodsController.java
index a9a60a1..cce1686 100644
--- a/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/TGoodsController.java
+++ b/ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/TGoodsController.java
@@ -88,14 +88,9 @@
 
         // 类型匹配 todo
         if (goodQuery.getType() != null && goodQuery.getType().size() > 0) {
-            StringBuilder temp = new StringBuilder("");
             for (String s : goodQuery.getType()) {
-                temp.append(s);
-                temp.append(",");
+                wrapper.apply("FIND_IN_SET('" + s + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
             }
-            String string = temp.toString();
-            String substring = string.substring(0, string.length() - 1);
-            wrapper.eq("typeIds",substring);
         }
         wrapper.eq("isDelete", 0);
         // sort排序
@@ -116,15 +111,10 @@
         QueryWrapper<TGoods> wrapper = new QueryWrapper<>();
         wrapper = keywords != null && !"".equals(keywords.trim()) ? wrapper.like("name", keywords) : wrapper;
         // 类型匹配 todo
-        if (goodQuery.getType() != null && !goodQuery.getType().isEmpty()) {
-            StringBuilder temp = new StringBuilder("");
+        if (goodQuery.getType() != null && goodQuery.getType().size() > 0) {
             for (String s : goodQuery.getType()) {
-                temp.append(s);
-                temp.append(",");
+                wrapper.apply("FIND_IN_SET('" + s + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
             }
-            String string = temp.toString();
-            String substring = string.substring(0, string.length() - 1);
-            wrapper.eq("typeIds",substring);
         }
         wrapper.eq("isDelete", 0);
         // sort排序
@@ -291,33 +281,24 @@
 
     @GetMapping("/exchangeRecordParent")
     @ApiOperation(value = "家长端-兑换记录", tags = {"家长端-兑换记录"})
-    public R<Page<TOrder>> exchangeRecordParent(Integer pageNumber, Integer pageSize) {
+    public R<List<ExchangeRecordVO>> exchangeRecordParent() {
         if (tokenService.getLoginUser1() == null) {
             return R.tokenError("登录失效");
         }
-        Page<TOrder> page = orderService.page(new Page<>(pageNumber, pageSize), new QueryWrapper<TOrder>().eq("userId", tokenService.getLoginUser1().getUserid())
-                .orderByDesc("createTime"));
-        List<TOrder> records = page.getRecords();
-        for (TOrder tOrder : records) {
-            TGoods byId = goodsService.getById(tOrder.getGoodsId());
-            tOrder.setName(byId.getName());
-            tOrder.setImg(byId.getCoverImg());
-            StringBuilder stringBuilder = new StringBuilder();
-            if (StringUtils.hasLength(byId.getTypeIds())) {
-                String[] split = byId.getTypeIds().split(",");
-                for (String s : split) {
-                    TGoodsType byId1 = goodsTypeService.getById(s);
-                    if (byId1 != null) {
-                        stringBuilder.append(byId1.getName()).append("|");
-                    }
-                }
-                // 去除最后一个字符
-                stringBuilder.deleteCharAt(stringBuilder.length() - 1);
-                tOrder.setType(stringBuilder.toString());
+        List<ExchangeRecordVO> exchangeRecord = orderService.exchangeRecord(tokenService.getLoginUser1().getUserid());
+        for (ExchangeRecordVO record : exchangeRecord) {
+            TGoods goods = goodsService.getById(record.getGoodsId());
+            List<String> typeList;
+            if (null != goods) {
+                List<TGoodsType> goodsTypes = goodsTypeService.lambdaQuery().in(TGoodsType::getId, Arrays.stream(goods.getTypeIds().split(",")).collect(Collectors.toList()))
+                        .eq(TGoodsType::getIsDelete, 0).list();
+                typeList = goodsTypes.stream().map(TGoodsType::getName).collect(Collectors.toList());
+            } else {
+                typeList = new ArrayList<>();
             }
+            record.setGoodsType(typeList);
         }
-
-        return R.ok(page);
+        return R.ok(exchangeRecord);
     }
 
     /**
@@ -335,6 +316,7 @@
         }
         TOrder byId = orderService.getById(id);
         byId.setState(3);
+        byId.setCompleteTime(new Date());
         return R.ok(orderService.updateById(byId));
     }
 
@@ -604,13 +586,19 @@
         if (tokenService.getLoginUser1() == null) {
             return R.tokenError("登录失效");
         }
-        Recipient userId = recipientService.getById(recipientId);
-        TOrder byId = orderService.getById(orderId);
-        byId.setConsigneeName(userId.getRecipient());
-        byId.setConsigneePhone(userId.getRecipientPhone());
-        byId.setConsigneeAddress(userId.getAddress());
-        orderService.updateById(byId);
-        return R.ok("修改成功");
+        Recipient recipient = recipientService.getById(recipientId);
+        TOrder order = orderService.getById(orderId);
+        if (null == order) {
+            throw new GlobalException("订单不存在!");
+        }
+        if (!Constants.ONE.equals(order.getState())) {
+            throw new GlobalException("订单已发货,无法修改收货地址!");
+        }
+        order.setConsigneeName(recipient.getAddress());
+        order.setConsigneePhone(recipient.getRecipientPhone());
+        order.setConsigneeAddress(recipient.getAddress());
+        orderService.updateById(order);
+        return R.ok();
     }
 
     @GetMapping("/updateOrderAddress")
@@ -724,7 +712,6 @@
      */
     @GetMapping("/goodDetailParent")
     @ApiOperation(value = "商品详情", tags = {"家长端-商城"})
-    @ApiOperationSupport(order = 24)
     @ApiImplicitParams({
             @ApiImplicitParam(value = "商品id", name = "goodId", dataType = "String", required = true)
     })
diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java
index 36d81e5..63f340d 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java
@@ -929,7 +929,6 @@
                 Calendar calendar = Calendar.getInstance();
                 calendar.setTime(new Date());
                 calendar.add(Calendar.MONTH, -byId.getCount());
-                Date dateAfterOneMonth = calendar.getTime();
                 Integer userId = byId.getUserId();
                 TUser byId1 = userService.getById(userId);
                 // 判断用户是不是第一次充值

--
Gitblit v1.7.1