From 62051ad033881e20682382713231b973a2820e24 Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 20 Jan 2021 11:08:25 +0800 Subject: [PATCH 1/4] =?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; + } + } From c53b41bf9256c9d7593713057ffbaa856f3fd0ec Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 20 Jan 2021 16:16:55 +0800 Subject: [PATCH 2/4] =?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 --- .../iformall/controller/mem/WxScoreRulesController.java | 3 +++ .../src/main/java/com/iformall/utils/CreditUtil.java | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java index d08859336..94f1759fd 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java @@ -88,6 +88,9 @@ public class WxScoreRulesController extends BaseController { @SystemControllerLog(description = "积分-配置") public ResultData creditDoubleRulesList() { logger.debug("[" + getIpAddr() + "] creditDoubleRulesList::list"); + if(StringUtils.isBlank(getTenantInfo().getTenantId())){ + return new ResultData(ErrorCode.USER_NO_PERMISSION,"集团版无此权限"); + } WxScoreRules scoreRules = wxScoreRulesService.getCreditDoubleRules(getTenantInfo().getTenantId()); return new ResultData(scoreRules); } diff --git a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java index 508ce5053..18b153e26 100644 --- a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java +++ b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java @@ -202,9 +202,13 @@ public class CreditUtil { if(month >= monthStart && month <= monthEnd){ int dayStart = Integer.parseInt(cycleStarts[1]); int dayEnd = Integer.parseInt(cycleEnds[1]); - if(monthDay >= dayStart && monthDay <= dayEnd){ - memberDayScale = cycleScale; + if(month == monthStart && monthDay < dayStart){ + break; } + if(month == monthEnd && monthDay > dayEnd){ + break; + } + memberDayScale = cycleScale; } } } catch (NumberFormatException e) { From 4ba79b26fa6f2be1a38042facc50a13d9dce8fbf Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 20 Jan 2021 16:19:24 +0800 Subject: [PATCH 3/4] =?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 --- .../com/iformall/controller/mem/WxScoreRulesController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java index 94f1759fd..4ec4a677e 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxScoreRulesController.java @@ -89,7 +89,7 @@ public class WxScoreRulesController extends BaseController { public ResultData creditDoubleRulesList() { logger.debug("[" + getIpAddr() + "] creditDoubleRulesList::list"); if(StringUtils.isBlank(getTenantInfo().getTenantId())){ - return new ResultData(ErrorCode.USER_NO_PERMISSION,"集团版无此权限"); + return new ResultData(ErrorCode.USER_NO_PERMISSION,"集团用户无此权限"); } WxScoreRules scoreRules = wxScoreRulesService.getCreditDoubleRules(getTenantInfo().getTenantId()); return new ResultData(scoreRules); From 822f58820c5de0662805a2f9881c37d5cdee9fde Mon Sep 17 00:00:00 2001 From: xhxu Date: Wed, 20 Jan 2021 16:29:06 +0800 Subject: [PATCH 4/4] =?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 --- .../src/main/java/com/iformall/utils/CreditUtil.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java index 18b153e26..ade8e4ac9 100644 --- a/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java +++ b/mallinkService/src/main/java/com/iformall/utils/CreditUtil.java @@ -197,11 +197,11 @@ public class CreditUtil { if(cycleStart.contains("-") && cycleEnd.contains("-")){ String[] cycleStarts = cycleStart.split("-"); String[] cycleEnds = cycleEnd.split("-"); - int monthStart = Integer.parseInt(cycleStarts[0]); - int monthEnd = Integer.parseInt(cycleEnds[0]); + int monthStart = Integer.parseInt(cycleStarts[1]); + int monthEnd = Integer.parseInt(cycleEnds[1]); if(month >= monthStart && month <= monthEnd){ - int dayStart = Integer.parseInt(cycleStarts[1]); - int dayEnd = Integer.parseInt(cycleEnds[1]); + int dayStart = Integer.parseInt(cycleStarts[2]); + int dayEnd = Integer.parseInt(cycleEnds[2]); if(month == monthStart && monthDay < dayStart){ break; }