From e8d2211654aadc73afc13be705ada77bdea993ab Mon Sep 17 00:00:00 2001
From: phpcjl <phpcjl@gmail.com>
Date: 星期五, 29 十一月 2024 18:26:22 +0800
Subject: [PATCH] 1.添加字段

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java    |   54 ++++++++++++++++-
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java                     |    2 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java            |    5 +
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java             |    7 ++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java       |   10 ++-
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java                |   34 +++++++++++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java                       |    2 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java       |    2 
 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java                  |    4 +
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java          |    2 
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java |   12 ++--
 11 files changed, 118 insertions(+), 16 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java
index 9a98d9d..1878f6b 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/UserPoint.java
@@ -44,6 +44,10 @@
     @TableField("variable_point")
     private BigDecimal variablePoint;
 
+    @ApiModelProperty(value = "变动后余额")
+    @TableField("balance")
+    private BigDecimal balance;
+
     @ApiModelProperty(value = "变动时间")
     @TableField("create_time")
     private LocalDateTime createTime;
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
index 4152c2c..6015842 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/UserPointController.java
@@ -6,6 +6,7 @@
 import com.ruoyi.account.vo.UserPointVO;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.page.TableDataInfo;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -18,6 +19,7 @@
 import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * <p>
@@ -49,11 +51,13 @@
      */
     @GetMapping("/getUserPointDetail")
     @ApiOperation("获取变更明细")
-    public R<UserPointDetailVO> getUserPointDetail(@ApiParam("指定日期") LocalDateTime date,
-                                                   @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " +
+    public TableDataInfo getUserPointDetail(@ApiParam("指定日期") LocalDateTime date,
+                                            @ApiParam("变动类型(1=消费积分,2=返佣积分,3=拉新人积分,4=兑换商品 " +
                                                            "5 = 门店业绩积分 6 =门店返佣积分7=技师业绩积分8 =转赠积分 9 =做工积分 " +
                                                            "10 =注册积分)") Integer type){
-        return R.ok();
+        startPage();
+        List<UserPointDetailVO> list = userPointService.getUserPointDetail(SecurityUtils.getUserId(), date, type);
+        return getDataTable(list);
     }
 
     /**
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java
new file mode 100644
index 0000000..7b2f61b
--- /dev/null
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/PointChangeType.java
@@ -0,0 +1,34 @@
+package com.ruoyi.account.enums;
+
+import lombok.Getter;
+
+@Getter
+public enum PointChangeType {
+    CONSUME(1, "消费积分"),
+    COMMISSION_RETURN(2, "返佣积分"),
+    NEW_USER_REFERRAL(3, "拉新人积分"),
+    EXCHANGE_GOODS(4, "兑换商品"),
+    STORE_PERFORMANCE(5, "门店业绩积分"),
+    STORE_COMMISSION_RETURN(6, "门店返佣积分"),
+    TECHNICIAN_PERFORMANCE(7, "技师业绩积分"),
+    TRANSFER_POINTS(8, "转赠积分"),
+    WORK_PERFORMANCE(9, "做工积分"),
+    REGISTRATION(10, "注册积分");
+
+    private final int code;
+    private final String description;
+
+    PointChangeType(int code, String description) {
+        this.code = code;
+        this.description = description;
+    }
+
+    public static PointChangeType fromCode(int code) {
+        for (PointChangeType type : values()) {
+            if (type.getCode() == code) {
+                return type;
+            }
+        }
+        throw new IllegalArgumentException("Invalid code: " + code);
+    }
+}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/WithdrawalAuditStatus.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java
similarity index 91%
rename from ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/WithdrawalAuditStatus.java
rename to ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java
index 3daa060..4788fd6 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/WithdrawalAuditStatus.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/enums/WithdrawalAuditStatus.java
@@ -1,4 +1,4 @@
-package com.ruoyi.account;
+package com.ruoyi.account.enums;
 
 import lombok.Getter;
 
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java
index 1e104a9..4092f6f 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/UserPointService.java
@@ -2,7 +2,11 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.account.api.model.UserPoint;
+import com.ruoyi.account.vo.UserPointDetailVO;
 import com.ruoyi.account.vo.UserPointVO;
+
+import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * <p>
@@ -15,4 +19,7 @@
 public interface UserPointService extends IService<UserPoint> {
 
     UserPointVO getUserPoint(Long userId);
+
+
+    List<UserPointDetailVO> getUserPointDetail(Long userId, LocalDateTime date, Integer type);
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java
index f010f2e..c94835c 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java
@@ -1,15 +1,29 @@
 package com.ruoyi.account.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.account.mapper.UserPointMapper;
+import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.model.AppUser;
 import com.ruoyi.account.api.model.UserPoint;
+import com.ruoyi.account.enums.PointChangeType;
+import com.ruoyi.account.mapper.UserPointMapper;
 import com.ruoyi.account.service.UserPointService;
+import com.ruoyi.account.vo.UserPointDetailVO;
 import com.ruoyi.account.vo.UserPointVO;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
 /**
  * <p>
- *  服务实现类
+ * 服务实现类
  * </p>
  *
  * @author luodangjia
@@ -17,10 +31,42 @@
  */
 @Service
 public class UserPointServiceImpl extends ServiceImpl<UserPointMapper, UserPoint> implements UserPointService {
+    @Resource
+    private AppUserClient appUserClient;
 
     @Override
     public UserPointVO getUserPoint(Long userId) {
-        // TODO 待实现
-        return null;
+        AppUser appUser = appUserClient.getAppUserById(userId);
+        List<UserPoint> userPointList = list(new LambdaQueryWrapper<UserPoint>()
+                .eq(UserPoint::getAppUserId, userId));
+
+        Map<Integer, BigDecimal> userBalanceMap = userPointList.stream()
+                .collect(Collectors.toMap(UserPoint::getType, UserPoint::getBalance));
+
+        BigDecimal lavePoint = appUser.getLavePoint();
+        UserPointVO userPointVO = new UserPointVO();
+        userPointVO.setTotalPoint(lavePoint);
+        userPointVO.setShopPoint(userBalanceMap.get(PointChangeType.CONSUME.getCode()));
+        userPointVO.setSharePoint(userBalanceMap.get(PointChangeType.COMMISSION_RETURN.getCode()));
+        userPointVO.setPullNewPoint(userBalanceMap.get(PointChangeType.NEW_USER_REFERRAL.getCode()));
+        userPointVO.setShopAchievementPoint(userBalanceMap.get(PointChangeType.STORE_PERFORMANCE.getCode()));
+        userPointVO.setShopSharePoint(userBalanceMap.get(PointChangeType.STORE_COMMISSION_RETURN.getCode()));
+        return userPointVO;
+    }
+
+    @Override
+    public List<UserPointDetailVO> getUserPointDetail(Long userId, LocalDateTime date, Integer type) {
+        List<UserPoint> userPointList = list(new LambdaQueryWrapper<UserPoint>()
+                .eq(UserPoint::getAppUserId, userId));
+        if (CollectionUtil.isNotEmpty(userPointList)) {
+            return userPointList.stream().map(p -> {
+                UserPointDetailVO userPointDetailVO = new UserPointDetailVO();
+                userPointDetailVO.setType(p.getType());
+                userPointDetailVO.setVariablePoint(p.getVariablePoint());
+                userPointDetailVO.setCreateTime(p.getCreateTime());
+                return userPointDetailVO;
+            }).collect(Collectors.toList());
+        }
+        return Collections.emptyList();
     }
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java
index ba74390..c6f7b55 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/WalletServiceImpl.java
@@ -1,7 +1,7 @@
 package com.ruoyi.account.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.ruoyi.account.WithdrawalAuditStatus;
+import com.ruoyi.account.enums.WithdrawalAuditStatus;
 import com.ruoyi.account.api.model.AppUser;
 import com.ruoyi.account.api.model.WithdrawalRequests;
 import com.ruoyi.account.service.AppUserService;
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java
index d81b7c9..a3dc126 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/UserPointVO.java
@@ -12,7 +12,7 @@
 public class UserPointVO {
 
     @ApiModelProperty(value = "总积分")
-    private Integer totalPoint;
+    private BigDecimal totalPoint;
 
     @ApiModelProperty(value = "消费积分数")
     private BigDecimal shopPoint;
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java
index cd40477..6161981 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/OrderService.java
@@ -21,4 +21,6 @@
     OrderDetailVO getOrderDetail(Long orderId);
 
     boolean check(String orderNumber, Long shopId);
+
+    void writeOff(String code);
 }
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index 07e2af9..d67a708 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -121,4 +121,9 @@
                 .eq(Order::getShopId, shopId));
         return order != null;
     }
+
+    @Override
+    public void writeOff(String code) {
+
+    }
 }
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java
index a57807b..e2a2d77 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/SeckillActivityInfoController.java
@@ -11,6 +11,8 @@
 import com.ruoyi.other.api.vo.GetSeckillActivityInfo;
 import com.ruoyi.other.service.GoodsSeckillService;
 import com.ruoyi.other.service.SeckillActivityInfoService;
+import com.ruoyi.other.vo.SeckillActivityDetailVO;
+import com.ruoyi.other.vo.SeckillActivityVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
@@ -49,10 +51,10 @@
      */
     @GetMapping("/list")
     @ApiOperation(value = "秒杀活动列表",tags = {"小程序-商城-首页-秒杀活动列表"})
-    public AjaxResult list(Goods goods)
+    public R<List<SeckillActivityVO>> list(Goods goods)
     {
         startPage();
-        return AjaxResult.success(seckillActivityInfoService.listSeckillActivity(goods));
+        return R.ok(seckillActivityInfoService.listSeckillActivity(goods));
     }
 
     /**
@@ -60,16 +62,14 @@
      */
     @GetMapping("/detail/{id}")
     @ApiOperation(value = "秒杀活动详情", tags = {"小程序-商城-首页-秒杀活动列表-秒杀活动详情"})
-    public AjaxResult detail(@PathVariable("id") Integer id)
+    public R<SeckillActivityDetailVO> detail(@PathVariable("id") Integer id)
     {
-        return AjaxResult.success(seckillActivityInfoService.detail(id));
+        return R.ok(seckillActivityInfoService.detail(id));
     }
     
     
     /**
      * 根据商品id和会员等级获取对应的秒杀活动
-     * @param info
-     * @return
      */
     @PostMapping("/getSeckillActivityInfo")
     public R<GoodsSeckill> getSeckillActivityInfo(@RequestBody GetSeckillActivityInfo info){

--
Gitblit v1.7.1