From c8fcf4308d9728e14a563c99c2ad77abe7c72681 Mon Sep 17 00:00:00 2001 From: "Stormeye.Wu" Date: Sun, 7 Oct 2018 16:35:40 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=88=90=E9=95=BF=E5=80=BC=E6=AF=8F=E6=97=A5?= =?UTF-8?q?=E7=99=BB=E5=BD=95=E5=BE=97=E5=88=86=E9=80=BB=E8=BE=91=E4=BF=AE?= =?UTF-8?q?=E6=94=B9][=E4=BF=AE=E5=A4=8D]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/mapper/WxScoreHistoryMapper.java | 2 +- .../service/impl/WxCUserServiceImpl.java | 55 +++++++++++-------- .../resources/mapper/WxScoreHistoryMapper.xml | 16 ++++++ 3 files changed, 50 insertions(+), 23 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxScoreHistoryMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxScoreHistoryMapper.java index 6bcb86e39..1c3ca232e 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxScoreHistoryMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxScoreHistoryMapper.java @@ -9,7 +9,7 @@ public interface WxScoreHistoryMapper extends CommonMapper findList(WxScoreHistory wxScoreHistory); - + int countList(WxScoreHistory wxScoreHistory); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java index abadc6e59..0f157e4f7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCUserServiceImpl.java @@ -1,40 +1,45 @@ package com.iformall.service.impl; -import java.util.*; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.iformall.common.IdWorker; import com.iformall.domain.dto.WxCUserBasicInfoDto; import com.iformall.domain.po.WxCUser; -import com.iformall.domain.po.WxCouponOrder; -import com.iformall.domain.po.WxScoreRules; +import com.iformall.domain.po.WxScoreHistory; +import com.iformall.enums.EnumScoreType; import com.iformall.mapper.WxCUserMapper; import com.iformall.mapper.WxCouponOrderMapper; +import com.iformall.mapper.WxScoreHistoryMapper; import com.iformall.mapper.WxScoreRulesMapper; import com.iformall.service.WxCUserService; import com.iformall.service.WxScoreRulesService; -import org.apache.commons.lang3.time.DateUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.iformall.common.IdWorker; + +import java.util.Date; +import java.util.List; @Service public class WxCUserServiceImpl implements WxCUserService { private final Logger logger = LoggerFactory.getLogger(this.getClass()); - @Autowired + @Autowired WxCUserMapper wxCUserMapper; - @Autowired + @Autowired WxCouponOrderMapper wxCouponOrderMapper; - @Autowired + @Autowired WxScoreRulesMapper wxScoreRulesMapper; - @Autowired + @Autowired WxScoreRulesService wxScoreRulesService; + @Autowired + WxScoreHistoryMapper wxScoreHistoryMapper; + @Override public PageInfo listAsPage(WxCUser record, Integer pageIndex, Integer pageSize) { @@ -71,7 +76,7 @@ public class WxCUserServiceImpl implements WxCUserService { } else { user.setLoginCount(user.getLoginCount() + 1); user.setUpdateDate(curr); - ret =wxCUserMapper.updateByPrimaryKeySelective(user); + ret = wxCUserMapper.updateByPrimaryKeySelective(user); } return ret; @@ -82,28 +87,34 @@ public class WxCUserServiceImpl implements WxCUserService { wxCUserMapper.deleteByPrimaryKey(id); } - @Override - public long findCount(WxCUserBasicInfoDto dto) { - return wxCUserMapper.findCount(dto); - } + @Override + public long findCount(WxCUserBasicInfoDto dto) { + return wxCUserMapper.findCount(dto); + } + + @Override + public PageInfo listByChannel(String tenantId, List sceneList, Integer pageIndex, Integer pageSize) { + return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCUserMapper.listByChannel(sceneList, tenantId)); + } - @Override - public PageInfo listByChannel(String tenantId, List sceneList, Integer pageIndex, Integer pageSize) { - return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCUserMapper.listByChannel(sceneList, tenantId)); - } + private int checkTodayLoginScoreCount(WxCUser cUser) { + WxScoreHistory scoreHistory = new WxScoreHistory(); + scoreHistory.setTenantId(cUser.getTenantId()); + scoreHistory.setCUserId(cUser.getId()); + scoreHistory.setScoreType(EnumScoreType.LOGIN.getCode()); + return wxScoreHistoryMapper.countList(scoreHistory); + } - @Override + @Override public void scoreCalculate(WxCUser user, boolean isNew) { if (isNew) { wxScoreRulesService.loginAddScore(user); } else { - WxCUser oldUser = getById(user.getId()); - if (!DateUtils.isSameDay(user.getUpdateDate(), oldUser.getUpdateDate())) { + if (checkTodayLoginScoreCount(user) <= 0) { wxScoreRulesService.loginAddScore(user); } } } - } diff --git a/mallinkService/src/main/resources/mapper/WxScoreHistoryMapper.xml b/mallinkService/src/main/resources/mapper/WxScoreHistoryMapper.xml index b1fa3067f..9b25020bb 100644 --- a/mallinkService/src/main/resources/mapper/WxScoreHistoryMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxScoreHistoryMapper.xml @@ -76,5 +76,21 @@ + +