From fafae77d59bc333a11c6b43e8f8606e190341e4a Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 10 六月 2025 16:53:13 +0800
Subject: [PATCH] 部分代码

---
 ruoyi-service/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/TGoodsController.java |  132 +++++++++++++++++++++++++++++++++----------
 1 files changed, 100 insertions(+), 32 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 cce1686..c87a3ae 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
@@ -1,8 +1,8 @@
 package com.ruoyi.goods.controller;
+import java.util.Date;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.constant.Constants;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.exception.GlobalException;
@@ -18,6 +18,7 @@
 import com.ruoyi.goods.vo.TOrderVO;
 import com.ruoyi.study.api.domain.TUser;
 import com.ruoyi.study.api.feignClient.StudyClient;
+import com.ruoyi.study.api.vo.UserPersonalCenterVO;
 import com.ruoyi.system.api.model.LoginUserParent;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -59,7 +60,38 @@
     private IRegionService regionService;
     @Resource
     private TokenService tokenService;
-
+    @PostMapping("/testAddData")
+    @ApiOperation(value = "测试分片", tags = {"测试分片"})
+    public R<Object> testAddData() {
+        TOrder tOrder = new TOrder();
+        tOrder.setOrderNumber("");
+        tOrder.setUserId(63);
+        tOrder.setInsertTime(new Date());
+        tOrder.setGoodsId(0);
+        tOrder.setCount(0);
+        tOrder.setState(0);
+        tOrder.setExpress("");
+        tOrder.setExpressNumber("");
+        tOrder.setExpressTime(new Date());
+        tOrder.setIntegral(0);
+        tOrder.setCompleteTime(new Date());
+        tOrder.setConsigneeName("");
+        tOrder.setImg("");
+        tOrder.setName("");
+        tOrder.setType("");
+        tOrder.setConsigneePhone("");
+        tOrder.setConsigneeAddress("");
+        tOrder.setProvince("");
+        tOrder.setCity("");
+        tOrder.setRemark("");
+        tOrder.setDisabled(false);
+        tOrder.setCreateBy("");
+        tOrder.setCreateTime(new Date());
+        tOrder.setUpdateBy("");
+        tOrder.setUpdateTime(new Date());
+        orderService.save(tOrder);
+        return R.ok();
+    }
     @PostMapping("/listType")
     @ApiOperation(value = "列表查询", tags = {"后台-商品类型管理"})
     public R<PageInfo<TGoodsType>> listType(@RequestBody GoodsTypeQuery query) {
@@ -88,8 +120,12 @@
 
         // 类型匹配 todo
         if (goodQuery.getType() != null && goodQuery.getType().size() > 0) {
-            for (String s : goodQuery.getType()) {
-                wrapper.apply("FIND_IN_SET('" + s + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
+            for (int i = 0; i < goodQuery.getType().size(); i++) {
+//                if (i == 0){
+//                    wrapper.apply("FIND_IN_SET('" + goodQuery.getType().get(i) + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
+//                }else{
+                    wrapper.or().apply("FIND_IN_SET('" + goodQuery.getType().get(i) + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
+//                }
             }
         }
         wrapper.eq("isDelete", 0);
@@ -112,14 +148,18 @@
         wrapper = keywords != null && !"".equals(keywords.trim()) ? wrapper.like("name", keywords) : wrapper;
         // 类型匹配 todo
         if (goodQuery.getType() != null && goodQuery.getType().size() > 0) {
-            for (String s : goodQuery.getType()) {
-                wrapper.apply("FIND_IN_SET('" + s + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
+            for (int i = 0; i < goodQuery.getType().size(); i++) {
+                if (i == 0){
+                    wrapper.apply("FIND_IN_SET('" + goodQuery.getType().get(i) + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
+                }else{
+                    wrapper.or().apply("FIND_IN_SET('" + goodQuery.getType().get(i) + "', typeIds)"); // 将每个类型 ID 应用于 FIND_IN_SET 函数
+                }
             }
         }
         wrapper.eq("isDelete", 0);
         // sort排序
         wrapper.orderByAsc("CASE WHEN sort IS NULL THEN 1 ELSE 0 END")
-                .orderByAsc("sort")
+                .orderByDesc("sort")
                 .orderByDesc("createTime");
         return R.ok(goodsService.page(new PageInfo<>(goodQuery.getPageNumber(), goodQuery.getPageSize()), wrapper));
     }
@@ -216,7 +256,7 @@
     @ApiOperation(value = "修改", tags = {"后台-商品管理"})
     public R updateGoods(@RequestBody TGoods dto) {
         TGoods byId = goodsService.getById(dto.getId());
-        if (!Objects.equals(byId.getTotal(), dto.getTotal())){
+        if (byId.getTotal()!=null && dto.getTotal()!=null &&!Objects.equals(byId.getTotal(), dto.getTotal())){
             // 如果修改了商品总数 那么需要再判断当前商品已被购买了多少
             List<TOrder> list = orderService.list(new QueryWrapper<TOrder>()
                     .eq("goodsId", dto.getId()));
@@ -225,7 +265,7 @@
                 temp += tOrder.getCount();
             }
             if (dto.getTotal()<temp){
-                return R.fail("商品总数不能小于当前商品已兑换数量,"+"当前商品已兑换数量为:"+temp);
+                return R.fail("商品总数不能小于当前商品已兑换数量,"+"当前商品已兑换数量为:"+temp);
             }
         }
         goodsService.updateById(dto);
@@ -258,14 +298,15 @@
      */
     @GetMapping("/exchangeRecord")
     @ApiOperation(value = "学习端-兑换记录", tags = {"学习端-商城"})
-    public R<List<ExchangeRecordVO>> exchangeRecord() {
+    public R<PageInfo<ExchangeRecordVO>> exchangeRecord(Integer pageNumber,Integer pageSize) {
+        PageInfo<ExchangeRecordVO> res = new PageInfo<>(pageNumber, pageSize);
         LoginUserParent loginUserStudy = tokenService.getLoginUserStudy();
         if (null == loginUserStudy) {
             return R.tokenError("登录失效!");
         }
-        List<ExchangeRecordVO> exchangeRecord = orderService.exchangeRecord(tokenService.getLoginUserStudy().getUserid());
+        List<ExchangeRecordVO> exchangeRecord = orderService.exchangeRecord(res,tokenService.getLoginUserStudy().getUserid());
         for (ExchangeRecordVO record : exchangeRecord) {
-            TGoods goods = goodsService.getById(record.getGoodsId());
+            TGoods goods = goodsService.getById1(record.getGoodsId());
             List<String> typeList;
             if (null != goods) {
                 List<TGoodsType> goodsTypes = goodsTypeService.lambdaQuery().in(TGoodsType::getId, Arrays.stream(goods.getTypeIds().split(",")).collect(Collectors.toList()))
@@ -276,18 +317,21 @@
             }
             record.setGoodsType(typeList);
         }
-        return R.ok(exchangeRecord);
+        res.setRecords(exchangeRecord);
+        res.setTotal(exchangeRecord.size());
+        return R.ok(res);
     }
 
     @GetMapping("/exchangeRecordParent")
     @ApiOperation(value = "家长端-兑换记录", tags = {"家长端-兑换记录"})
-    public R<List<ExchangeRecordVO>> exchangeRecordParent() {
+    public R<PageInfo<ExchangeRecordVO>> exchangeRecordParent(Integer pageNumber,Integer pageSize) {
+        PageInfo<ExchangeRecordVO> res = new PageInfo<>(pageNumber, pageSize);
         if (tokenService.getLoginUser1() == null) {
             return R.tokenError("登录失效");
         }
-        List<ExchangeRecordVO> exchangeRecord = orderService.exchangeRecord(tokenService.getLoginUser1().getUserid());
+        List<ExchangeRecordVO> exchangeRecord = orderService.exchangeRecord(res,tokenService.getLoginUser1().getUserid());
         for (ExchangeRecordVO record : exchangeRecord) {
-            TGoods goods = goodsService.getById(record.getGoodsId());
+            TGoods goods = goodsService.getById1(record.getGoodsId());
             List<String> typeList;
             if (null != goods) {
                 List<TGoodsType> goodsTypes = goodsTypeService.lambdaQuery().in(TGoodsType::getId, Arrays.stream(goods.getTypeIds().split(",")).collect(Collectors.toList()))
@@ -298,7 +342,9 @@
             }
             record.setGoodsType(typeList);
         }
-        return R.ok(exchangeRecord);
+        res.setRecords(exchangeRecord);
+        res.setTotal(exchangeRecord.size());
+        return R.ok(res);
     }
 
     /**
@@ -310,11 +356,12 @@
     @ApiImplicitParams({
             @ApiImplicitParam(value = "订单id", name = "id", dataType = "String", required = true)
     })
-    public R<Boolean> confirm(@RequestParam Integer id) {
+    public R<Boolean> confirm(@RequestParam String id) {
         if (tokenService.getLoginUser1() == null) {
             return R.tokenError("登录失效");
         }
         TOrder byId = orderService.getById(id);
+        byId.setUserId(null);
         byId.setState(3);
         byId.setCompleteTime(new Date());
         return R.ok(orderService.updateById(byId));
@@ -329,11 +376,12 @@
     @ApiImplicitParams({
             @ApiImplicitParam(value = "订单id", name = "id", dataType = "String", required = true)
     })
-    public R<Boolean> confirmStudy(@RequestParam Integer id) {
+    public R<Boolean> confirmStudy(@RequestParam String id) {
         if (tokenService.getLoginUserStudy() == null) {
             return R.tokenError("登录失效");
         }
         TOrder byId = orderService.getById(id);
+        byId.setUserId(null);
         byId.setState(3);
         byId.setCompleteTime(new Date());
         return R.ok(orderService.updateById(byId));
@@ -582,7 +630,7 @@
             @ApiImplicitParam(value = "订单id", name = "orderId", dataType = "String", required = true),
             @ApiImplicitParam(value = "地址信息id", name = "recipientId", dataType = "String", required = true)
     })
-    public R updateOrderAddressParent(@RequestParam Integer orderId, @RequestParam Integer recipientId) {
+    public R updateOrderAddressParent(@RequestParam String orderId, @RequestParam Integer recipientId) {
         if (tokenService.getLoginUser1() == null) {
             return R.tokenError("登录失效");
         }
@@ -594,9 +642,10 @@
         if (!Constants.ONE.equals(order.getState())) {
             throw new GlobalException("订单已发货,无法修改收货地址!");
         }
-        order.setConsigneeName(recipient.getAddress());
+        order.setUserId(null);
+        order.setConsigneeName(recipient.getRecipient());
         order.setConsigneePhone(recipient.getRecipientPhone());
-        order.setConsigneeAddress(recipient.getAddress());
+        order.setConsigneeAddress(recipient.getProvince()+recipient.getCity()+recipient.getAddress());
         orderService.updateById(order);
         return R.ok();
     }
@@ -608,7 +657,7 @@
             @ApiImplicitParam(value = "订单id", name = "orderId", dataType = "String", required = true),
             @ApiImplicitParam(value = "地址信息id", name = "recipientId", dataType = "String", required = true)
     })
-    public R updateOrderAddress(@RequestParam Integer orderId, @RequestParam Integer recipientId) {
+    public R updateOrderAddress(@RequestParam String orderId, @RequestParam Integer recipientId) {
         if (tokenService.getLoginUserStudy() == null) {
             return R.tokenError("登录失效");
         }
@@ -620,9 +669,10 @@
         if (!Constants.ONE.equals(order.getState())) {
             throw new GlobalException("订单已发货,无法修改收货地址!");
         }
-        order.setConsigneeName(recipient.getAddress());
+        order.setUserId(null);
+        order.setConsigneeName(recipient.getRecipient());
         order.setConsigneePhone(recipient.getRecipientPhone());
-        order.setConsigneeAddress(recipient.getAddress());
+        order.setConsigneeAddress(recipient.getProvince()+recipient.getCity()+recipient.getAddress());
         orderService.updateById(order);
         return R.ok();
     }
@@ -649,7 +699,20 @@
         if (null == loginUserStudy) {
             return R.tokenError("登录失效!");
         }
-        return R.ok(goodsService.goodRecommend(loginUserStudy.getUserid()));
+        UserPersonalCenterVO data = studyClient.userInfo().getData();
+        List<TGoodsVO> tGoodsVOS = goodsService.goodRecommend(loginUserStudy.getUserid());
+        List<TGoodsVO> res = new ArrayList<>();
+        int temp = 0;
+        for (TGoodsVO re : tGoodsVOS) {
+            if (temp>=3){
+                break;
+            }
+            if (data.getUser().getIntegral()>=re.getIntegral()){
+                res.add(re);
+                temp++;
+            }
+        }
+        return R.ok(res);
     }
 
     /**
@@ -689,7 +752,10 @@
         if (null != goods.getBasicCount()) {
             number += goods.getBasicCount();
         }
-        number += orderService.getGoodBuyNumber(goods.getId());
+        List<TOrder> list = orderService.list(new QueryWrapper<TOrder>().eq("goodsId", goods.getId()));
+        for (TOrder tOrder : list) {
+            number+=tOrder.getCount();
+        }
         // 剩余兑换数量
         Integer residueNumber = null;
         if (null != goods.getTotal()) {
@@ -731,7 +797,10 @@
         if (null != goods.getBasicCount()) {
             number += goods.getBasicCount();
         }
-        number += orderService.getGoodBuyNumber(goods.getId());
+        List<TOrder> list = orderService.list(new QueryWrapper<TOrder>().eq("goodsId", goods.getId()));
+        for (TOrder tOrder : list) {
+            number+=tOrder.getCount();
+        }
         // 剩余兑换数量
         Integer residueNumber = null;
         if (null != goods.getTotal()) {
@@ -861,9 +930,9 @@
     @PostMapping("/getOrderInfo/{id}")
     @ApiOperation(value = "查看详情", tags = {"后台-订单管理"})
     @ApiOperationSupport(order = 11)
-    public R<TOrderVO> getOrderInfo(@PathVariable("id") Integer id) {
+    public R<TOrderVO> getOrderInfo(@PathVariable("id") String id) {
         TOrder byId = orderService.getById(id);
-        TGoods byId2 = goodsService.getById(byId.getGoodsId());
+        TGoods byId2 = goodsService.getById1(byId.getGoodsId());
         TOrderVO tGoodsVO = new TOrderVO();
         BeanUtils.copyProperties(byId, tGoodsVO);
         tGoodsVO.setName(byId2.getName());
@@ -881,6 +950,7 @@
     @ApiOperationSupport(order = 12)
     public R getGoodsInfo1(@RequestBody OrderDTO dto) {
         TOrder byId = orderService.getById(dto.getId());
+        byId.setUserId(null);
         byId.setState(2);
         byId.setExpress(dto.getExpress());
         byId.setExpressNumber(dto.getExpressNumber());
@@ -930,8 +1000,6 @@
                     list1.add(tOrderVO);
                 }
             }
-
-
         }
         PageInfo<TOrderVO> res = new PageInfo<>(query.getPageNumber(), query.getPageSize());
         res.setRecords(list1);

--
Gitblit v1.7.1