diff --git a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java index a8df0dddd..5ef4ef50d 100644 --- a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java +++ b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java @@ -3,6 +3,7 @@ package com.iformall.utils; import com.iformall.domain.po.*; import com.iformall.service.WxScoreRulesService; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; import java.util.Objects; @@ -23,9 +24,6 @@ public class CreditUtil { * @return */ public static int calUserCredit(int creditOrigin, WxCUser wxCUser, Integer levelScaleConfig, WxCUserBasicInfo wxCUserBasicInfo, WxScoreRulesService wxScoreRulesService) { - if (Objects.isNull(wxCUser) || Objects.isNull(wxCUserBasicInfo)) { - return 0; - } // 获取等级积分倍率, int levelScale = getLevelScale(wxCUser, levelScaleConfig); @@ -51,6 +49,9 @@ public class CreditUtil { */ private static int getLevelScale(WxCUser wxCUser, Integer levelScaleConfig) { int levelScale = WxLevelConfig.DEFAULT_SCALE; + if (Objects.isNull(wxCUser)) { + return levelScale; + } Integer score = wxCUser.getScore(); //积分不为空时进行计算 if (Objects.nonNull(score)) { @@ -74,6 +75,9 @@ public class CreditUtil { */ private static int getBirthdayScale(WxCUserBasicInfo wxCUserBasicInfo, WxScoreRulesService wxScoreRulesService) { int birthdayScale = WxScoreRules.DEFAULT_SCALE; + if (Objects.isNull(wxCUserBasicInfo) || StringUtils.isBlank(wxCUserBasicInfo.getPhone())) { + return 0; + } //判断是否生日当天,一年一天有效 //没有发过生日券的用户或者没有享受过生日积分倍率的用户 if(Objects.isNull(wxCUserBasicInfo.getScoreDate())) {