From c5947256b22f2283214258827f61af09966cf490 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Tue, 31 Dec 2024 17:25:37 +0800 Subject: [PATCH] feat(mall): 添加会员列表直推、团队、业绩统计功能 - 在 MallMember 实体中添加直推数、团队数、业绩金额等字段 - 修改 getMallMemberList 方法,异步计算每个会员的直推、团队和业绩数据 - 在前端列表中显示直推、团队、业绩等列 - 优化数据查询效率,使用 LambdaQueryWrapper 和 CompletableFuture --- src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java index 6dfb13f..62d0087 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java @@ -72,6 +72,10 @@ @Override public MallScoreSignRecord judgeScoreIsContinuity(MallScoreSignRecord mallScoreSignRecord) { + if (mallScoreSignRecord.getSignTime() == null) { + return mallScoreSignRecord; + } + // 若最新签到日期,与当天相差大于一天,则更新数据库(避免定时器更新失败) if (DateUtil.betweenDay(mallScoreSignRecord.getSignTime(), new Date(), true) > 1 || mallScoreSignRecord.getTotalCnt() == 7) { mallScoreSignRecord.setTotalCnt(0); @@ -93,14 +97,14 @@ MallScoreSignRecord mallScoreSignRecord = mallScoreSignRecordMapper.selectRecentSignRecord(member.getId()); if (mallScoreSignRecord == null) { mallScoreSignRecord = new MallScoreSignRecord(); - } else { - mallScoreSignRecord = judgeScoreIsContinuity(mallScoreSignRecord); } if (mallScoreSignRecord.getSignTime() != null && DateUtil.betweenDay(mallScoreSignRecord.getSignTime(), new Date(), true) == 0) { throw new FebsException("今天已签到"); } + mallScoreSignRecord = judgeScoreIsContinuity(mallScoreSignRecord); + ScoreSettingDto scoreSetting = JSONObject.parseObject(dic.getValue(),ScoreSettingDto.class); int days = mallScoreSignRecord.getTotalCnt() == null ? 1 : mallScoreSignRecord.getTotalCnt() + 1; switch (days) { -- Gitblit v1.9.1