From 62051ad033881e20682382713231b973a2820e24 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 20 Jan 2021 11:08:25 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=AF=E5=88=86=E5=80=8D=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/iformall/utils/CreditUtil.java | 6 +++--- .../java/com/iformall/utils/DateUtils.java | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java index b0a778086..508ce5053 100644 --- a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java +++ b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java @@ -95,7 +95,7 @@ public class CreditUtil { //没有发过生日券的用户或者没有享受过生日积分倍率的用户 if(Objects.isNull(wxCUserBasicInfo.getScoreDate())) { //设置过生日的用户 - if (Objects.nonNull(wxCUserBasicInfo.getBirthdate()) && DateUtils.birthdaysBetween(wxCUserBasicInfo.getBirthdate()) == 0) { + if (Objects.nonNull(wxCUserBasicInfo.getBirthdate()) && DateUtils.isBirthdays(wxCUserBasicInfo.getBirthdate())) { birthdayScale = getBirthdayScoreScale(tenantId,wxScoreRulesService); } else { log.info("积分倍率计算:未设置生日或生日条件未匹配={}", wxCUserBasicInfo.getScoreDate()); @@ -104,10 +104,10 @@ public class CreditUtil { if(Objects.nonNull(wxCUserBasicInfo.getScoreDate())){ int scoreYear = DateUtils.getYear(wxCUserBasicInfo.getScoreDate()); int year = DateUtils.getYear(new Date()); - if(scoreYear == year && DateUtils.birthdaysBetween(wxCUserBasicInfo.getScoreDate()) == 0){ + if(scoreYear == year && DateUtils.isBirthdays(wxCUserBasicInfo.getScoreDate())){ birthdayScale = getBirthdayScoreScale(tenantId, wxScoreRulesService); }else{ - if (Objects.nonNull(wxCUserBasicInfo.getBirthdate()) && DateUtils.birthdaysBetween(wxCUserBasicInfo.getBirthdate()) == 0) { + if (Objects.nonNull(wxCUserBasicInfo.getBirthdate()) && DateUtils.isBirthdays(wxCUserBasicInfo.getBirthdate())) { birthdayScale = getBirthdayScoreScale(tenantId,wxScoreRulesService); } else { log.info("积分倍率计算:未设置生日或生日条件未匹配={}", wxCUserBasicInfo.getScoreDate()); diff --git a/mallinkService/src/main/java/com/iformall/utils/DateUtils.java b/mallinkService/src/main/java/com/iformall/utils/DateUtils.java index 2e84f4da0..9cac3911a 100755 --- a/mallinkService/src/main/java/com/iformall/utils/DateUtils.java +++ b/mallinkService/src/main/java/com/iformall/utils/DateUtils.java @@ -1343,4 +1343,23 @@ public class DateUtils { return year; } + /** + * 判断生日 + * @param date + * @return + */ + public static boolean isBirthdays(Date date) { + Calendar todayCal = Calendar.getInstance(); + int todayMonth = todayCal.get(Calendar.MONTH) + 1; + int todayDay = todayCal.get(Calendar.DAY_OF_MONTH); + Calendar birthdayCal = Calendar.getInstance(); + birthdayCal.setTime(date); + int birthMonth = birthdayCal.get(Calendar.MONTH) + 1; + int birthDay = birthdayCal.get(Calendar.DAY_OF_MONTH); + if(todayMonth == birthMonth && todayDay == birthDay){ + return true; + } + return false; + } + }