From 7cac09fcadbb53fc0441d738bfd336555b8c16ab Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 30 Oct 2023 16:23:40 +0800
Subject: [PATCH] 用户收益列表
---
src/main/java/cc/mrbird/febs/mall/service/impl/AdminChatServiceImpl.java | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 219 insertions(+), 9 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 6e218ca..38f2c51 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
@@ -2,18 +2,15 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.mall.YesOrNoEnum;
import cc.mrbird.febs.mall.dto.AdminSystemPayDto;
-import cc.mrbird.febs.mall.entity.ChatAmountFlow;
-import cc.mrbird.febs.mall.entity.ChatUser;
-import cc.mrbird.febs.mall.entity.MemberCoinWithdraw;
-import cc.mrbird.febs.mall.mapper.ChatAmountFlowMapper;
-import cc.mrbird.febs.mall.mapper.ChatUserMapper;
+import cc.mrbird.febs.mall.entity.*;
+import cc.mrbird.febs.mall.mapper.*;
import cc.mrbird.febs.mall.service.IAdminChatService;
-import cc.mrbird.febs.mall.vo.AdminChatAmountFlowVo;
-import cc.mrbird.febs.mall.vo.AdminChatCahrgeVo;
-import cc.mrbird.febs.mall.vo.AdminChatUserVo;
-import cc.mrbird.febs.mall.vo.AdminChatWithDrawVo;
+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;
@@ -23,8 +20,10 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.StringUtils;
import java.math.BigDecimal;
+import java.util.List;
@Slf4j
@Service
@@ -33,12 +32,44 @@
public class AdminChatServiceImpl extends ServiceImpl<ChatUserMapper, ChatUser> implements IAdminChatService {
private final ChatAmountFlowMapper chatAmountFlowMapper;
+ private final DataDictionaryMapper dataDictionaryMapper;
+ private final ChatGroupMapper chatGroupMapper;
+ private final ChatVersionMapper chatVersionMapper;
+ private final AgentProducer agentProducer;
+ private final RedisUtils redisUtils;
@Override
public IPage<AdminChatUserVo> getUserList(ChatUser chatUser, QueryRequest request) {
Page<AdminChatUserVo> page = new Page<>(request.getPageNum(), request.getPageSize());
IPage<AdminChatUserVo> chatUserIPage = this.baseMapper.selectUserListInPage(page, chatUser);
return chatUserIPage;
+ }
+
+ @Override
+ public IPage<AdminChatUserPerkVo> getUserPerkList(ChatUser chatUser, QueryRequest request) {
+ Page<AdminChatUserPerkVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+ log.info(String.valueOf(chatUser.getIsRobot()));
+ 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);
+ BigDecimal getRedbagAmount = this.baseMapper.selectTotalTypeByUserId(userId,12, null, null);
+ adminChatUserPerkVo.setGetRedbagAmount(getRedbagAmount);
+ BigDecimal boomToAmount = this.baseMapper.selectTotalTypeByUserId(userId,10, null, null);
+ adminChatUserPerkVo.setBoomToAmount(boomToAmount);
+// BigDecimal boomFromAmount = this.baseMapper.selectTotalTypeByUserId(userId,9, null, null);
+// BigDecimal teamPerkAmount = this.baseMapper.selectTotalTypeByUserId(userId,7, null, null);
+// adminChatUserPerkVo.setTeamPerkAmount(teamPerkAmount.add(boomFromAmount));
+ }
+ }
+ return chatUserPerkVoIPage;
}
@Override
@@ -58,6 +89,14 @@
return new FebsResponse().fail().message("会员信息不存在");
}
this.baseMapper.updateStatusByUserId(userId,YesOrNoEnum.NO.getCode());
+ if (chatUser != null) {
+ // 清理token
+ String token = chatUser.getToken();
+ if (!StringUtils.isEmpty(token)) {
+ String TOKEN_REDIS_APP = "token:app:";
+ redisUtils.del(TOKEN_REDIS_APP + token);
+ }
+ }
return new FebsResponse().success();
}
@@ -148,4 +187,175 @@
return new FebsResponse().success();
}
+ @Override
+ public FebsResponse openSwitchIsRobot(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateIsRobotByUserId(userId,1);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse closeSwitchIsRobot(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateIsRobotByUserId(userId,0);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public void updateDataDic(String type, String code, String modelType) {
+ DataDictionary dic = this.baseMapper.selectDicDataByTypeAndCode(type, code);
+ if (dic != null) {
+ dic.setValue(modelType);
+ dataDictionaryMapper.updateById(dic);
+ }
+ }
+
+ @Override
+ public IPage<AdminGroupVo> getGroupList(ChatUser chatUser, QueryRequest request) {
+ Page<AdminGroupVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+ return this.baseMapper.selectGroupListInPage(page, chatUser);
+ }
+
+ @Override
+ public IPage<AdminVersionVo> getVersionList(ChatUser chatUser, QueryRequest request) {
+ Page<AdminVersionVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+ return this.baseMapper.selectVersionListInPage(page, chatUser);
+ }
+
+ @Override
+ public FebsResponse closeSwitchUseRobot(String id) {
+ this.baseMapper.updateIsRobotByGroupId(id,0);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse openSwitchUseRobot(String id) {
+ this.baseMapper.updateIsRobotByGroupId(id,1);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse updateGroupInfo(AdminGroupInfoVo adminGroupInfoVo) {
+ ChatGroup chatGroup = chatGroupMapper.selectById(adminGroupInfoVo.getId());
+ if(ObjectUtil.isEmpty(chatGroup)) {
+ return new FebsResponse().fail().message("信息不存在");
+ }
+ chatGroup.setAmountMin(adminGroupInfoVo.getAmountMin());
+ chatGroup.setAmountMax(adminGroupInfoVo.getAmountMax());
+ chatGroup.setRedBagCnt(adminGroupInfoVo.getRedBagCnt());
+ chatGroup.setModelType(adminGroupInfoVo.getModelType());
+ chatGroupMapper.updateById(chatGroup);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse updateVersionInfo(AdminVersionVo adminVersionVo) {
+ ChatVersion chatVersion = chatVersionMapper.selectById(adminVersionVo.getId());
+ if(ObjectUtil.isEmpty(chatVersion)) {
+ return new FebsResponse().fail().message("信息不存在");
+ }
+ chatVersion.setVersion(adminVersionVo.getVersion());
+ chatVersion.setContent(adminVersionVo.getContent());
+ chatVersion.setUrl(adminVersionVo.getUrl());
+ chatVersion.setDescr(adminVersionVo.getDescr());
+ chatVersionMapper.updateById(chatVersion);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse registerMember() {
+ agentProducer.sendAddRobotMsg("20845477");
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse openModelType(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateModelTypeByUserId(userId,1);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse closeModelType(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateModelTypeByUserId(userId,2);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse updateRegisterMember(AdminRegisterMemberVo adminRegisterMemberVo) {
+ agentProducer.sendAddRobotMsg(adminRegisterMemberVo.getInviteId());
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse openSwitchAutoSend(String id) {
+ this.baseMapper.updateAutoSendByGroupId(id,1);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse closeSwitchAutoSend(String id) {
+ this.baseMapper.updateAutoSendByGroupId(id,0);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public IPage<AdminRedBagVo> getRedBagList(ChatUser chatUser, QueryRequest request) {
+ Page<AdminRedBagVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+ log.info("{}",chatUser.getIsRobot());
+ return this.baseMapper.selectRedBagListInPage(page, chatUser);
+ }
+
+ @Override
+ public FebsResponse openCreateGroup(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateCreateGroupByUserId(userId,1);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse closeCreateGroup(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateCreateGroupByUserId(userId,0);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse openSwitchGetBoom(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateGetBoomByUserId(userId,1);
+ return new FebsResponse().success();
+ }
+
+ @Override
+ public FebsResponse closeSwitchGetBoom(String userId) {
+ ChatUser chatUser = this.baseMapper.selectByUserId(userId);
+ if(ObjectUtil.isEmpty(chatUser)) {
+ return new FebsResponse().fail().message("会员信息不存在");
+ }
+ this.baseMapper.updateGetBoomByUserId(userId,0);
+ return new FebsResponse().success();
+ }
}
--
Gitblit v1.9.1