From 85ba70778f1f27dbc0fc093c45a1947b9b31b245 Mon Sep 17 00:00:00 2001 From: tianfeng <769204422@qq.com> Date: Fri, 14 Nov 2025 11:46:48 +0800 Subject: [PATCH] =?UTF-8?q?=E9=98=BF=E8=AF=AD=E5=8C=BA=E4=B8=8D=E6=A3=80?= =?UTF-8?q?=E9=AA=8C=E6=97=B6=E9=97=B4=E5=92=8C=E5=A4=A9=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/team/TeamBillCycleUtils.java | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/team/TeamBillCycleUtils.java b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/team/TeamBillCycleUtils.java index 09a36d00..5b07d785 100644 --- a/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/team/TeamBillCycleUtils.java +++ b/rc-service/rc-service-other/other-infrastructure/src/main/java/com/red/circle/other/infra/database/mongo/service/team/TeamBillCycleUtils.java @@ -220,15 +220,25 @@ public final class TeamBillCycleUtils { continue; } - // 完全满足条件:在线时长、礼物流水、有效天数都达标 - Integer policyEffectiveDay = NumUtils.isNullDefaultZero(teamPolicy.getEffectiveDay()); - if (targetTimeHours >= policyOnlineTimeHours && effectiveDay >= policyEffectiveDay) { + // AR 区域特殊处理:不需要时间和天数要求 + boolean isARRegion = "AR".equals(policy.getSysOrigin()); + + if (isARRegion) { + // AR 区域只要礼物流水达标就给全额工资 resultTarget.setMemberSalary(teamPolicy.getMemberSalary()); resultTarget.setOwnSalary(teamPolicy.getOwnSalary()); resultTarget.setTotalSalary(teamPolicy.getTotalSalary()); } else { - resultTarget.setMemberSalary(teamPolicy.getMemberSalary().multiply(new BigDecimal("0.9")).setScale(2, RoundingMode.DOWN)); - resultTarget.setTotalSalary(teamPolicy.getMemberSalary().multiply(new BigDecimal("0.9")).setScale(2, RoundingMode.DOWN)); + // 其他区域:完全满足条件(在线时长、礼物流水、有效天数都达标) + Integer policyEffectiveDay = NumUtils.isNullDefaultZero(teamPolicy.getEffectiveDay()); + if (targetTimeHours >= policyOnlineTimeHours && effectiveDay >= policyEffectiveDay) { + resultTarget.setMemberSalary(teamPolicy.getMemberSalary()); + resultTarget.setOwnSalary(teamPolicy.getOwnSalary()); + resultTarget.setTotalSalary(teamPolicy.getTotalSalary()); + } else { + resultTarget.setMemberSalary(teamPolicy.getMemberSalary().multiply(new BigDecimal("0.9")).setScale(2, RoundingMode.DOWN)); + resultTarget.setTotalSalary(teamPolicy.getMemberSalary().multiply(new BigDecimal("0.9")).setScale(2, RoundingMode.DOWN)); + } } resultTarget.setLevel(teamPolicy.getLevel());