From 04d7b9c15d4da263b64deaf9e4e136baca33e2b6 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 20 Mar 2023 10:27:09 +0800
Subject: [PATCH] 后台修改

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ScoreServiceImpl.java |   19 +++++++++++++++----
 1 files changed, 15 insertions(+), 4 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 7697f74..6f6bf9a 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
@@ -10,8 +10,10 @@
 import cc.mrbird.febs.mall.dto.ScoreSettingDto;
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper;
+import cc.mrbird.febs.mall.mapper.MallMemberMapper;
 import cc.mrbird.febs.mall.mapper.MallMemberWalletMapper;
 import cc.mrbird.febs.mall.mapper.MallScoreSignRecordMapper;
+import cc.mrbird.febs.mall.service.IApiMallMemberService;
 import cc.mrbird.febs.mall.service.IApiMallMemberWalletService;
 import cc.mrbird.febs.mall.service.IMallMoneyFlowService;
 import cc.mrbird.febs.mall.service.IScoreService;
@@ -48,6 +50,7 @@
     private final MallScoreSignRecordMapper mallScoreSignRecordMapper;
     private final IMallMoneyFlowService mallMoneyFlowService;
     private final IApiMallMemberWalletService walletService;
+    private final MallMemberMapper mallMemberMapper;
 
     @Override
     public ScoreSignVo scoreSign() {
@@ -112,15 +115,23 @@
             throw new FebsException("今日已签到");
         }
         /**
-         * 获取签到次数
-         * 判断签到次数是否大于规定的时长signScoreDays,超出则获得的积分数为signScoreCnt
+         * 用户注册时间开始计算
+         * 判断签到时间是否大于规定的signScoreDays,超出则获得的积分数为signScoreCnt
          */
-        Integer count = mallScoreSignRecordMapper.selectCountByMemberId(member.getId());
+//        Integer count = mallScoreSignRecordMapper.selectCountByMemberId(member.getId());
         DataDictionaryCustom signScoreDaysDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                 DataDictionaryEnum.SIGN_SCORE_DAYS.getType(),
                 DataDictionaryEnum.SIGN_SCORE_DAYS.getCode());
         Integer signScoreDays = Integer.parseInt(signScoreDaysDic.getValue());
-        if(count >= signScoreDays){
+
+        MallMember mallMember = mallMemberMapper.selectById(member.getId());
+        Date createdTime = mallMember.getCreatedTime();
+
+        DateTime dateTime = DateUtil.offsetDay(createdTime, signScoreDays);
+        /**
+         * 签到时间不在系统设置的第一个阶段,则获取签到设置-签到积分后续获得积分数量
+         */
+        if(DateUtil.compare(dateTime, new Date()) < 0){
             DataDictionaryCustom signScoreCntDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                     DataDictionaryEnum.SIGN_SCORE_CNT.getType(),
                     DataDictionaryEnum.SIGN_SCORE_CNT.getCode());

--
Gitblit v1.9.1