From b3c8303ecd936182e2df4933dbf1ad167b81266e Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 25 Oct 2023 14:26:23 +0800
Subject: [PATCH] 版本管理

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminChatServiceImpl.java |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminChatServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminChatServiceImpl.java
index 286ef51..7a2eff1 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminChatServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminChatServiceImpl.java
@@ -10,6 +10,7 @@
 import cc.mrbird.febs.mall.service.IAdminChatService;
 import cc.mrbird.febs.mall.vo.*;
 import cc.mrbird.febs.rabbit.producter.AgentProducer;
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -22,6 +23,7 @@
 import org.springframework.util.StringUtils;
 
 import java.math.BigDecimal;
+import java.util.List;
 
 @Slf4j
 @Service
@@ -44,6 +46,25 @@
     }
 
     @Override
+    public IPage<AdminChatUserPerkVo> getUserPerkList(ChatUser chatUser, QueryRequest request) {
+        Page<AdminChatUserPerkVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+        IPage<AdminChatUserPerkVo> chatUserPerkVoIPage = this.baseMapper.selectUserPerkListInPage(page, chatUser);
+        List<AdminChatUserPerkVo> records = chatUserPerkVoIPage.getRecords();
+        if(CollUtil.isNotEmpty(records)){
+            for(AdminChatUserPerkVo adminChatUserPerkVo : records){
+                Long userId = adminChatUserPerkVo.getUserId();
+                List<AdminChatRedBagVo> group = this.baseMapper.selectListByMsgType(userId,"GROUP", null);
+                adminChatUserPerkVo.setGroupRedBagNum(CollUtil.isEmpty(group) ? 0 : group.size());
+                BigDecimal redBagTotalAmount = group.stream().map(AdminChatRedBagVo::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+                adminChatUserPerkVo.setRedBagTotalAmount(redBagTotalAmount);
+                BigDecimal redBagAvaAmount = group.stream().map(AdminChatRedBagVo::getAmountAva).reduce(BigDecimal.ZERO, BigDecimal::add);
+                adminChatUserPerkVo.setRedBagAvaAmount(redBagAvaAmount);
+            }
+        }
+        return chatUserPerkVoIPage;
+    }
+
+    @Override
     public FebsResponse openAccount(String userId) {
         ChatUser chatUser = this.baseMapper.selectByUserId(userId);
         if(ObjectUtil.isEmpty(chatUser)) {

--
Gitblit v1.9.1