From d3b5f1f6ac64af873ba200534d39bd31709a1a28 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Fri, 03 Jan 2025 16:28:45 +0800 Subject: [PATCH] feat(mall): 增加会员升级权益功能 --- src/main/java/cc/mrbird/febs/system/controller/LoginController.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 47 insertions(+), 10 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/system/controller/LoginController.java b/src/main/java/cc/mrbird/febs/system/controller/LoginController.java index f084c2d..15025ae 100644 --- a/src/main/java/cc/mrbird/febs/system/controller/LoginController.java +++ b/src/main/java/cc/mrbird/febs/system/controller/LoginController.java @@ -6,10 +6,21 @@ import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.service.ValidateCodeService; import cc.mrbird.febs.common.utils.Md5Util; +import cc.mrbird.febs.mall.entity.MallMember; +import cc.mrbird.febs.mall.entity.RunVip; +import cc.mrbird.febs.mall.mapper.MallAchieveRecordMapper; +import cc.mrbird.febs.mall.mapper.MallMemberMapper; +import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper; +import cc.mrbird.febs.mall.mapper.RunVipMapper; +import cc.mrbird.febs.mall.vo.AdminVipIndexVo; import cc.mrbird.febs.monitor.entity.LoginLog; import cc.mrbird.febs.monitor.service.ILoginLogService; import cc.mrbird.febs.system.entity.User; import cc.mrbird.febs.system.service.IUserService; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.RequiredArgsConstructor; import org.apache.shiro.authc.UsernamePasswordToken; import org.springframework.validation.annotation.Validated; @@ -23,9 +34,7 @@ import javax.servlet.http.HttpSession; import javax.validation.constraints.NotBlank; import java.io.IOException; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * @author MrBird @@ -38,6 +47,10 @@ private final IUserService userService; private final ValidateCodeService validateCodeService; private final ILoginLogService loginLogService; + private final MallMemberMapper mallMemberMapper; + private final MallOrderInfoMapper mallOrderInfoMapper; + private final MallAchieveRecordMapper mallAchieveRecordMapper; + private final RunVipMapper runVipMapper; @PostMapping("login") @Limit(key = "login", period = 60, count = 10, name = "登录接口", prefix = "limit") @@ -77,13 +90,37 @@ // 更新登录时间 this.userService.updateLoginTime(username); Map<String, Object> data = new HashMap<>(5); - // 获取系统访问记录 - Long totalVisitCount = this.loginLogService.findTotalVisitCount(); - data.put("totalVisitCount", totalVisitCount); - Long todayVisitCount = this.loginLogService.findTodayVisitCount(); - data.put("todayVisitCount", todayVisitCount); - Long todayIp = this.loginLogService.findTodayIp(); - data.put("todayIp", todayIp); + //会员数据 + data.put("totalMember",mallMemberMapper.selectCount(new QueryWrapper<>()) ); + + List<AdminVipIndexVo> vipIndexVos = new ArrayList<>(); + List<RunVip> runVips = runVipMapper.selectList(null); + if(CollUtil.isNotEmpty(runVips)){ + for(RunVip runVip : runVips){ + AdminVipIndexVo adminVipIndexVo = new AdminVipIndexVo(); + adminVipIndexVo.setVipCode(runVip.getVipCode()); + adminVipIndexVo.setVipName(runVip.getVipName()); + Integer selectCount = mallMemberMapper.selectCount(new LambdaQueryWrapper<MallMember>().eq(MallMember::getLevel, runVip.getVipCode())); + adminVipIndexVo.setMemberCnt(selectCount); + vipIndexVos.add(adminVipIndexVo); + } + } + data.put("vipIndexVos",vipIndexVos); + + QueryWrapper<MallMember> todayMember = new QueryWrapper<>(); + todayMember.like("CREATED_TIME", DateUtil.today()); + data.put("todayMember",mallMemberMapper.selectCount(todayMember)); + + QueryWrapper<MallMember> thisMonthMember = new QueryWrapper<>(); + thisMonthMember.like("CREATED_TIME", DateUtil.format(DateUtil.date(),"yyyy-MM")); +// thisMonthMember.ne("level", AgentLevelEnum.ZERO_LEVEL.name()); + data.put("thisMonthMember",mallMemberMapper.selectCount(thisMonthMember)); + + QueryWrapper<MallMember> lastMonthMember = new QueryWrapper<>(); + lastMonthMember.like("CREATED_TIME", DateUtil.format(DateUtil.offsetMonth(new Date(), -1),"yyyy-MM")); +// lastMonthMember.ne("level", AgentLevelEnum.ZERO_LEVEL.name()); + data.put("lastMonthMember",mallMemberMapper.selectCount(lastMonthMember)); + // 获取近期系统访问记录 List<Map<String, Object>> lastSevenVisitCount = this.loginLogService.findLastSevenDaysVisitCount(null); data.put("lastSevenVisitCount", lastSevenVisitCount); -- Gitblit v1.9.1