新代理政策-代理政策新增区域国家区分改造完成
This commit is contained in:
parent
c2bd8860b8
commit
b5eb179a10
@ -3,6 +3,9 @@ package com.red.circle.other.inner.model.dto.agency.agency;
|
|||||||
import java.io.Serial;
|
import java.io.Serial;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
@ -21,7 +24,7 @@ public class TeamBillSettleResultDTO implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 账单对应政策.
|
* 账单对应政策.
|
||||||
*/
|
*/
|
||||||
private TeamPolicyManagerDTO policy;
|
private Map<String, TeamPolicyManagerDTO> policy;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 工作人数.
|
* 工作人数.
|
||||||
|
|||||||
@ -239,7 +239,7 @@ public class BdTeamQryExe {
|
|||||||
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
||||||
|
|
||||||
// 5. 查询区域政策
|
// 5. 查询区域政策
|
||||||
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionRelease(
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
billCycleMap.values().stream()
|
billCycleMap.values().stream()
|
||||||
.map(TeamBillCycle::getRegion)
|
.map(TeamBillCycle::getRegion)
|
||||||
.collect(Collectors.toSet()));
|
.collect(Collectors.toSet()));
|
||||||
@ -357,7 +357,7 @@ public class BdTeamQryExe {
|
|||||||
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
||||||
|
|
||||||
// 4. 查询区域政策
|
// 4. 查询区域政策
|
||||||
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionRelease(
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
billCycleMap.values().stream()
|
billCycleMap.values().stream()
|
||||||
.map(TeamBillCycle::getRegion)
|
.map(TeamBillCycle::getRegion)
|
||||||
.collect(Collectors.toSet()));
|
.collect(Collectors.toSet()));
|
||||||
@ -388,8 +388,8 @@ public class BdTeamQryExe {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<TeamMemberTarget> targetList = teamMemberTargetMap.get(teamId);
|
List<TeamMemberTarget> targetList = teamMemberTargetMap.get(teamId);
|
||||||
List<TeamBillMemberTarget> memberTargets = TeamBillCycleUtils.calculatorPolicyTarget(
|
List<TeamBillMemberTarget> memberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(
|
||||||
targetList, policyManagerMap.get(billCycle.getRegion()));
|
targetList, policyManagerMap);
|
||||||
|
|
||||||
return ownTotalSalary(memberTargets);
|
return ownTotalSalary(memberTargets);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -228,7 +228,7 @@ public class BdTeamSummaryQryExe {
|
|||||||
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
||||||
|
|
||||||
// 查询区域政策
|
// 查询区域政策
|
||||||
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionRelease(
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
billCycleMap.values().stream()
|
billCycleMap.values().stream()
|
||||||
.map(TeamBillCycle::getRegion)
|
.map(TeamBillCycle::getRegion)
|
||||||
.collect(Collectors.toSet()));
|
.collect(Collectors.toSet()));
|
||||||
@ -262,7 +262,7 @@ public class BdTeamSummaryQryExe {
|
|||||||
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
teamMemberTargetService.mapMemberBillTarget(teamIdSet, currentBillBelong);
|
||||||
|
|
||||||
// 4. 查询区域政策
|
// 4. 查询区域政策
|
||||||
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionRelease(
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
billCycleMap.values().stream()
|
billCycleMap.values().stream()
|
||||||
.map(TeamBillCycle::getRegion)
|
.map(TeamBillCycle::getRegion)
|
||||||
.collect(Collectors.toSet()));
|
.collect(Collectors.toSet()));
|
||||||
@ -293,8 +293,8 @@ public class BdTeamSummaryQryExe {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<TeamMemberTarget> targetList = teamMemberTargetMap.get(teamId);
|
List<TeamMemberTarget> targetList = teamMemberTargetMap.get(teamId);
|
||||||
List<TeamBillMemberTarget> memberTargets = TeamBillCycleUtils.calculatorPolicyTarget(
|
List<TeamBillMemberTarget> memberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(
|
||||||
targetList, policyManagerMap.get(billCycle.getRegion()));
|
targetList, policyManagerMap);
|
||||||
|
|
||||||
return ownTotalSalary(memberTargets);
|
return ownTotalSalary(memberTargets);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -123,7 +123,7 @@ public class TeamBdMemberBillListQryExe {
|
|||||||
// 获取所有区域的政策配置
|
// 获取所有区域的政策配置
|
||||||
Map<Long, TeamBillCycle> billCycleMap = teamBillCycleService.mapByTeamIds2(
|
Map<Long, TeamBillCycle> billCycleMap = teamBillCycleService.mapByTeamIds2(
|
||||||
teamIdSet, currentBillBelong, TeamBillCycleStatus.UNPAID);
|
teamIdSet, currentBillBelong, TeamBillCycleStatus.UNPAID);
|
||||||
Map<String, TeamPolicyManager> regionPolicyMap = teamPolicyManagerService.mapRegionRelease(
|
Map<String, TeamPolicyManager> regionPolicyMap = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
billCycleMap.values().stream().map(TeamBillCycle::getRegion).collect(Collectors.toSet()));
|
billCycleMap.values().stream().map(TeamBillCycle::getRegion).collect(Collectors.toSet()));
|
||||||
|
|
||||||
// 4. 查询当前周期的账单
|
// 4. 查询当前周期的账单
|
||||||
@ -284,7 +284,7 @@ public class TeamBdMemberBillListQryExe {
|
|||||||
Map<Long, TeamBillCycle> billCycleMap = teamBillCycleService.mapByTeamIds2(
|
Map<Long, TeamBillCycle> billCycleMap = teamBillCycleService.mapByTeamIds2(
|
||||||
teamIdSet, currentBillBelong, TeamBillCycleStatus.UNPAID);
|
teamIdSet, currentBillBelong, TeamBillCycleStatus.UNPAID);
|
||||||
|
|
||||||
Map<String, TeamPolicyManager> regionPolicyMap = teamPolicyManagerService.mapRegionRelease(
|
Map<String, TeamPolicyManager> regionPolicyMap = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
billCycleMap.values().stream().map(TeamBillCycle::getRegion).collect(Collectors.toSet()));
|
billCycleMap.values().stream().map(TeamBillCycle::getRegion).collect(Collectors.toSet()));
|
||||||
|
|
||||||
// 4. 查询当前周期的账单
|
// 4. 查询当前周期的账单
|
||||||
@ -423,7 +423,7 @@ public class TeamBdMemberBillListQryExe {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<TeamMemberTarget> targetList = teamMemberTargetMap.get(teamId);
|
List<TeamMemberTarget> targetList = teamMemberTargetMap.get(teamId);
|
||||||
List<TeamBillMemberTarget> memberTargets = TeamBillCycleUtils.calculatorPolicyTarget(targetList, policyManagerMap.get(billCycle.getRegion()));
|
List<TeamBillMemberTarget> memberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(targetList, policyManagerMap);
|
||||||
return ownTotalSalary(memberTargets);
|
return ownTotalSalary(memberTargets);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import com.red.circle.other.infra.common.props.PropsSendCommon;
|
|||||||
import com.red.circle.other.infra.database.mongo.dto.team.TeamBillMemberTarget;
|
import com.red.circle.other.infra.database.mongo.dto.team.TeamBillMemberTarget;
|
||||||
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamBillCycle;
|
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamBillCycle;
|
||||||
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamMemberTarget;
|
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamMemberTarget;
|
||||||
|
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamPolicyManager;
|
||||||
import com.red.circle.other.infra.database.mongo.service.team.TeamBillCycleUtils;
|
import com.red.circle.other.infra.database.mongo.service.team.TeamBillCycleUtils;
|
||||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamBillCycleService;
|
import com.red.circle.other.infra.database.mongo.service.team.team.TeamBillCycleService;
|
||||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamMemberTargetService;
|
import com.red.circle.other.infra.database.mongo.service.team.team.TeamMemberTargetService;
|
||||||
@ -18,6 +19,8 @@ import com.red.circle.other.inner.model.cmd.material.PrizeDescribeRewardCmd;
|
|||||||
import com.red.circle.other.inner.asserts.team.TeamErrorCode;
|
import com.red.circle.other.inner.asserts.team.TeamErrorCode;
|
||||||
import com.red.circle.tool.core.collection.CollectionUtils;
|
import com.red.circle.tool.core.collection.CollectionUtils;
|
||||||
import com.red.circle.wallet.inner.model.enums.GoldOrigin;
|
import com.red.circle.wallet.inner.model.enums.GoldOrigin;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@ -54,8 +57,13 @@ public class TeamPolicyPropsRewardExe {
|
|||||||
ResponseAssert.notNull(CommonErrorCode.RECEIVE_FAIL,
|
ResponseAssert.notNull(CommonErrorCode.RECEIVE_FAIL,
|
||||||
teamBillCycle.getSettleResult().getPolicy());
|
teamBillCycle.getSettleResult().getPolicy());
|
||||||
|
|
||||||
TeamBillMemberTarget billMemberTarget = TeamBillCycleUtils.calculatorPolicyTarget(target,
|
Map<String, TeamPolicyManager> policyManagerMap = teamBillCycle.getSettleResult().getPolicy();
|
||||||
teamBillCycle.getSettleResult().getPolicy());
|
TeamPolicyManager policy = TeamBillCycleUtils.getPolicyFromMap(
|
||||||
|
policyManagerMap,
|
||||||
|
target.getRegion(),
|
||||||
|
target.getCountryCode());
|
||||||
|
|
||||||
|
TeamBillMemberTarget billMemberTarget = TeamBillCycleUtils.calculatorPolicyTarget(target,policy);
|
||||||
ResponseAssert.notNull(CommonErrorCode.RECEIVE_FAIL, billMemberTarget);
|
ResponseAssert.notNull(CommonErrorCode.RECEIVE_FAIL, billMemberTarget);
|
||||||
ResponseAssert.isTrue(CommonErrorCode.RECEIVE_FAIL,
|
ResponseAssert.isTrue(CommonErrorCode.RECEIVE_FAIL,
|
||||||
CollectionUtils.isNotEmpty(billMemberTarget.getPropsRewards()));
|
CollectionUtils.isNotEmpty(billMemberTarget.getPropsRewards()));
|
||||||
|
|||||||
@ -79,7 +79,6 @@ public class BdTeamAgentListQryExe {
|
|||||||
.setLastMonthBillDate(lastMonth)
|
.setLastMonthBillDate(lastMonth)
|
||||||
.setUserProfile(teamUserProfileMap.get(team.getAgentId()))
|
.setUserProfile(teamUserProfileMap.get(team.getAgentId()))
|
||||||
.setBillBalance(getBillTotalSalary(billCycle))
|
.setBillBalance(getBillTotalSalary(billCycle))
|
||||||
.setPolicyType(Objects.nonNull(billCycle.getSettleResult()) && Objects.nonNull(billCycle.getSettleResult().getPolicy().getPolicyType()) ? billCycle.getSettleResult().getPolicy().getPolicyType() : null)
|
|
||||||
.setHostQuantity(getTeamHostQuantity(teamProfile))
|
.setHostQuantity(getTeamHostQuantity(teamProfile))
|
||||||
.setCreateTime(team.getCreateTime());
|
.setCreateTime(team.getCreateTime());
|
||||||
})
|
})
|
||||||
|
|||||||
@ -4,13 +4,21 @@ import com.red.circle.common.business.dto.cmd.app.AppIdLongCmd;
|
|||||||
import com.red.circle.framework.core.asserts.ResponseAssert;
|
import com.red.circle.framework.core.asserts.ResponseAssert;
|
||||||
import com.red.circle.other.app.convertor.team.TeamAppConvertor;
|
import com.red.circle.other.app.convertor.team.TeamAppConvertor;
|
||||||
import com.red.circle.other.app.dto.clientobject.team.TeamPolicyManagerCO;
|
import com.red.circle.other.app.dto.clientobject.team.TeamPolicyManagerCO;
|
||||||
|
import com.red.circle.other.app.service.user.user.UserProfileService;
|
||||||
|
import com.red.circle.other.domain.gateway.user.UserProfileGateway;
|
||||||
|
import com.red.circle.other.domain.model.user.UserProfile;
|
||||||
|
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamPolicyManager;
|
||||||
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamProfile;
|
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamProfile;
|
||||||
|
import com.red.circle.other.infra.database.mongo.service.team.TeamBillCycleUtils;
|
||||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamPolicyManagerService;
|
import com.red.circle.other.infra.database.mongo.service.team.team.TeamPolicyManagerService;
|
||||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamProfileService;
|
import com.red.circle.other.infra.database.mongo.service.team.team.TeamProfileService;
|
||||||
import com.red.circle.other.inner.asserts.team.TeamErrorCode;
|
import com.red.circle.other.inner.asserts.team.TeamErrorCode;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 团队最新发布政策.
|
* 团队最新发布政策.
|
||||||
*
|
*
|
||||||
@ -23,16 +31,18 @@ public class TeamReleasePolicyQryExe {
|
|||||||
private final TeamAppConvertor teamAppConvertor;
|
private final TeamAppConvertor teamAppConvertor;
|
||||||
private final TeamProfileService teamProfileService;
|
private final TeamProfileService teamProfileService;
|
||||||
private final TeamPolicyManagerService teamPolicyManagerService;
|
private final TeamPolicyManagerService teamPolicyManagerService;
|
||||||
|
private final UserProfileGateway userProfileGateway;
|
||||||
|
|
||||||
public TeamPolicyManagerCO execute(AppIdLongCmd cmd) {
|
public TeamPolicyManagerCO execute(AppIdLongCmd cmd) {
|
||||||
TeamProfile teamProfile = teamProfileService.getById(cmd.getId());
|
TeamProfile teamProfile = teamProfileService.getById(cmd.getId());
|
||||||
ResponseAssert.notNull(TeamErrorCode.TEAM_NOT_FOUND, teamProfile);
|
ResponseAssert.notNull(TeamErrorCode.TEAM_NOT_FOUND, teamProfile);
|
||||||
|
|
||||||
return teamAppConvertor.toTeamPolicyManagerCO(
|
UserProfile userProfile = userProfileGateway.getByUserId(cmd.getReqUserId());
|
||||||
teamPolicyManagerService.getReleaseByRegionAndType(
|
|
||||||
teamProfile.getSysOrigin(),
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionReleaseWithCountry(Set.of(teamProfile.getRegion()));
|
||||||
teamProfile.getRegion())
|
TeamPolicyManager teamPolicyManager = TeamBillCycleUtils.getPolicyFromMap(policyManagerMap, teamProfile.getRegion(), userProfile.getCountryCode());
|
||||||
);
|
|
||||||
|
return teamAppConvertor.toTeamPolicyManagerCO(teamPolicyManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -179,48 +179,6 @@ public class GiftAnchorCountStrategy implements GiftStrategy {
|
|||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 同步团队钻石
|
|
||||||
* @param teamIds
|
|
||||||
*/
|
|
||||||
private void initProfilesDiamond(Set<Long> teamIds, List<GiftAcceptUser> giftAcceptUsers) {
|
|
||||||
List<TeamProfile> teamProfiles = teamProfileService.listStatusAvailable(teamIds);
|
|
||||||
teamProfiles.forEach(teamProfile ->{
|
|
||||||
TeamBillCycle teamBillCycle = getTeamUnpaidBill(teamProfile.getId());
|
|
||||||
|
|
||||||
TeamPolicyManager regionPolicyManager = teamPolicyManagerService.getReleaseByRegionAndType(
|
|
||||||
teamBillCycle.getSysOrigin(), teamBillCycle.getRegion()
|
|
||||||
);
|
|
||||||
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
|
||||||
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets = calculatorTarget(teamMemberTargets,
|
|
||||||
regionPolicyManager);
|
|
||||||
|
|
||||||
// 实时更新修改用户账单钻石余额
|
|
||||||
if (Objects.equals(TeamPolicyTypeEnum.SALARY_DIAMOND.name(), regionPolicyManager.getPolicyType())) {
|
|
||||||
SysRegionConfig regionConfig = sysRegionConfigService.getById(teamBillCycle.getRegion());
|
|
||||||
Map<String, String> metadata = getMetadata(regionConfig);
|
|
||||||
boolean isOpenDailyAutoSalary = isOpenDailyAutoSalary(metadata);
|
|
||||||
log.warn("实时更新钻石账单周期:" + teamBillCycle.getBillBelong() + ",数据:" + teamBillMemberTargets + "\n" +
|
|
||||||
"实时更新钻石账单政策类型:" + regionPolicyManager.getPolicyType() + "\n" +
|
|
||||||
"区域账单配置" + regionConfig);
|
|
||||||
|
|
||||||
List<Long> giftAcceptUser = giftAcceptUsers.stream()
|
|
||||||
.filter(GiftAcceptUser::getAnchor)
|
|
||||||
.map(GiftAcceptUser::getAcceptUserId)
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
giftAcceptUser.add(teamProfile.getOwnUserId());
|
|
||||||
if (Boolean.TRUE.equals(isOpenDailyAutoSalary)) {
|
|
||||||
// 钻石日结,暂时这样写
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberDayTargets = calculatorDayTarget(teamMemberTargets,
|
|
||||||
regionPolicyManager);
|
|
||||||
addDayBillDiamondBalance(teamBillMemberDayTargets, teamProfile, teamBillCycle, giftAcceptUser);
|
|
||||||
} else {
|
|
||||||
addBillDiamondBalance(teamBillMemberTargets, teamProfile, teamBillCycle, giftAcceptUser);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 插入账单数据
|
* 插入账单数据
|
||||||
@ -504,23 +462,6 @@ public class GiftAnchorCountStrategy implements GiftStrategy {
|
|||||||
.map(SysRegionConfig::getMetadata).orElseGet(CollectionUtils::newHashMap);
|
.map(SysRegionConfig::getMetadata).orElseGet(CollectionUtils::newHashMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 计算政策目标工资
|
|
||||||
*/
|
|
||||||
private List<TeamBillMemberTarget> calculatorTarget(List<TeamMemberTarget> teamMemberTargets,
|
|
||||||
TeamPolicyManager regionPolicyManager) {
|
|
||||||
//2fun新增钻石政策
|
|
||||||
if (Objects.isNull(regionPolicyManager.getPolicyType()) || Objects.equals("MONEY", regionPolicyManager.getPolicyType())) {
|
|
||||||
return TeamBillCycleUtils.calculatorPolicyTarget(teamMemberTargets, regionPolicyManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
return TeamBillCycleUtils.calculatorPolicyDiamondTarget(teamMemberTargets, regionPolicyManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
private List<TeamBillMemberTarget> calculatorDayTarget(List<TeamMemberTarget> teamMemberTargets,
|
|
||||||
TeamPolicyManager regionPolicyManager) {
|
|
||||||
return TeamBillCycleUtils.calculatorPolicyDiamondDayTarget(teamMemberTargets, regionPolicyManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
private List<TeamProfile> listTeamProfile(TeamSalaryCountEvent event) {
|
private List<TeamProfile> listTeamProfile(TeamSalaryCountEvent event) {
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
package com.red.circle.other.app.listener.team;
|
package com.red.circle.other.app.listener.team;
|
||||||
|
|
||||||
|
import cn.hutool.core.map.MapUtil;
|
||||||
import com.red.circle.common.business.core.enums.ReceiptType;
|
import com.red.circle.common.business.core.enums.ReceiptType;
|
||||||
import com.red.circle.component.mq.MessageEventProcess;
|
import com.red.circle.component.mq.MessageEventProcess;
|
||||||
import com.red.circle.component.mq.MessageEventProcessDescribe;
|
import com.red.circle.component.mq.MessageEventProcessDescribe;
|
||||||
@ -130,13 +131,10 @@ public class TeamBillSettleListener implements MessageListener {
|
|||||||
|
|
||||||
public TeamBillSettleResult processBill(TeamProfile teamProfile, TeamBillCycle teamBillCycle, Boolean isPay) {
|
public TeamBillSettleResult processBill(TeamProfile teamProfile, TeamBillCycle teamBillCycle, Boolean isPay) {
|
||||||
// 获取团队区域政策
|
// 获取团队区域政策
|
||||||
TeamPolicyManager regionPolicyManager = teamPolicyManagerService.getReleaseByRegionAndType(
|
Map<String, TeamPolicyManager> regionPolicyManager = teamPolicyManagerService.mapRegionReleaseWithCountry(Set.of(teamBillCycle.getRegion()));
|
||||||
teamBillCycle.getSysOrigin(),
|
|
||||||
teamBillCycle.getRegion()
|
|
||||||
);
|
|
||||||
log.warn("团队账单结算regionPolicyManager."+regionPolicyManager);
|
log.warn("团队账单结算regionPolicyManager."+regionPolicyManager);
|
||||||
|
|
||||||
if (Objects.isNull(regionPolicyManager)) {
|
if (MapUtil.isEmpty(regionPolicyManager)) {
|
||||||
teamBillCycleService.updateStatus(teamBillCycle.getId(), TeamBillCycleStatus.HANG_UP,
|
teamBillCycleService.updateStatus(teamBillCycle.getId(), TeamBillCycleStatus.HANG_UP,
|
||||||
new TeamRemark()
|
new TeamRemark()
|
||||||
.setRemarkId(IdWorkerUtils.getIdStr())
|
.setRemarkId(IdWorkerUtils.getIdStr())
|
||||||
@ -161,8 +159,7 @@ public class TeamBillSettleListener implements MessageListener {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets =
|
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(teamMemberTargets, regionPolicyManager);
|
||||||
TeamBillCycleUtils.calculatorPolicyTarget(teamMemberTargets, regionPolicyManager);
|
|
||||||
log.warn("团队账单结算teamBillMemberTargets."+teamBillMemberTargets);
|
log.warn("团队账单结算teamBillMemberTargets."+teamBillMemberTargets);
|
||||||
|
|
||||||
teamMemberTargets = teamMemberTargets.stream().filter(e -> !Boolean.TRUE.equals(e.getHistory())).toList();
|
teamMemberTargets = teamMemberTargets.stream().filter(e -> !Boolean.TRUE.equals(e.getHistory())).toList();
|
||||||
@ -196,8 +193,6 @@ public class TeamBillSettleListener implements MessageListener {
|
|||||||
.setSettleResult(settleResult)
|
.setSettleResult(settleResult)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (Objects.isNull(regionPolicyManager.getPolicyType()) ||
|
|
||||||
Objects.equals(TeamPolicyTypeEnum.MONEY.name(), regionPolicyManager.getPolicyType())) {
|
|
||||||
log.warn("美金入账{}", teamProfile);
|
log.warn("美金入账{}", teamProfile);
|
||||||
// 成员入账
|
// 成员入账
|
||||||
teamMemberCreditedBankBalance(teamProfile
|
teamMemberCreditedBankBalance(teamProfile
|
||||||
@ -210,7 +205,6 @@ public class TeamBillSettleListener implements MessageListener {
|
|||||||
Objects.toString(teamBillCycle.getId()),
|
Objects.toString(teamBillCycle.getId()),
|
||||||
settleResult,
|
settleResult,
|
||||||
regionConfig);
|
regionConfig);
|
||||||
}
|
|
||||||
return settleResult;
|
return settleResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -212,7 +212,8 @@ public class TeamExchangeSurplusTargetListener implements MessageListener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Objects.isNull(billCycle.getSettleResult().getPolicy().getPolicyType()) || Objects.equals(TeamPolicyTypeEnum.MONEY, billCycle.getSettleResult().getPolicy().getPolicyType())) {
|
if (Objects.isNull(billTarget.getPolicyType()) ||
|
||||||
|
Objects.equals(TeamPolicyTypeEnum.MONEY, billTarget.getPolicyType())) {
|
||||||
// 发送团队成员美元工资
|
// 发送团队成员美元工资
|
||||||
memberBankBalancePayment(teamProfile, memberTarget, usd,
|
memberBankBalancePayment(teamProfile, memberTarget, usd,
|
||||||
memberTarget.sumAcceptGiftValue(),
|
memberTarget.sumAcceptGiftValue(),
|
||||||
@ -259,7 +260,7 @@ public class TeamExchangeSurplusTargetListener implements MessageListener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Objects.isNull(billCycle.getSettleResult().getPolicy().getPolicyType()) || Objects.equals(TeamPolicyTypeEnum.MONEY, billCycle.getSettleResult().getPolicy().getPolicyType())) {
|
if (Objects.isNull(billTarget.getPolicyType()) || Objects.equals(TeamPolicyTypeEnum.MONEY, billTarget.getPolicyType())) {
|
||||||
// 发送团队成员工资
|
// 发送团队成员工资
|
||||||
memberBankBalancePayment(teamProfile, memberTarget, usd, surplusTarget, exchangeRatio,
|
memberBankBalancePayment(teamProfile, memberTarget, usd, surplusTarget, exchangeRatio,
|
||||||
region.getMetadata());
|
region.getMetadata());
|
||||||
|
|||||||
@ -33,10 +33,7 @@ import com.red.circle.other.inner.model.cmd.team.TeamBillCmd;
|
|||||||
import com.red.circle.tool.core.collection.CollectionUtils;
|
import com.red.circle.tool.core.collection.CollectionUtils;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.math.RoundingMode;
|
import java.math.RoundingMode;
|
||||||
import java.util.List;
|
import java.util.*;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Objects;
|
|
||||||
import java.util.Optional;
|
|
||||||
import java.util.concurrent.CompletableFuture;
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
import com.red.circle.tool.core.date.TimestampUtils;
|
import com.red.circle.tool.core.date.TimestampUtils;
|
||||||
@ -107,8 +104,8 @@ public class TeamSalaryCountListener implements MessageListener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
TeamPolicyManager regionPolicyManager = teamPolicyManagerService.getReleaseByRegionAndType(
|
Map<String, TeamPolicyManager> regionPolicyManager = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
teamBillCycle.getSysOrigin(), teamBillCycle.getRegion()
|
Set.of(teamBillCycle.getRegion())
|
||||||
);
|
);
|
||||||
|
|
||||||
if (Objects.isNull(regionPolicyManager)) {
|
if (Objects.isNull(regionPolicyManager)) {
|
||||||
@ -120,8 +117,8 @@ public class TeamSalaryCountListener implements MessageListener {
|
|||||||
|
|
||||||
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
||||||
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets = calculatorTarget(teamMemberTargets,
|
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(teamMemberTargets,
|
||||||
regionPolicyManager);
|
regionPolicyManager);
|
||||||
|
|
||||||
// 结算账单.
|
// 结算账单.
|
||||||
teamBillCycleService.updateSelective(new TeamBillCycle()
|
teamBillCycleService.updateSelective(new TeamBillCycle()
|
||||||
@ -269,15 +266,6 @@ public class TeamSalaryCountListener implements MessageListener {
|
|||||||
return Objects.equals(metadata.get("openDailyAutoSalary"), "true");
|
return Objects.equals(metadata.get("openDailyAutoSalary"), "true");
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<TeamBillMemberTarget> calculatorTarget(List<TeamMemberTarget> teamMemberTargets,
|
|
||||||
TeamPolicyManager regionPolicyManager) {
|
|
||||||
//2fun新增钻石政策
|
|
||||||
if (Objects.isNull(regionPolicyManager.getPolicyType()) || Objects.equals(TeamPolicyTypeEnum.MONEY.name(), regionPolicyManager.getPolicyType())) {
|
|
||||||
return TeamBillCycleUtils.calculatorPolicyTarget(teamMemberTargets, regionPolicyManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
return TeamBillCycleUtils.calculatorPolicyDiamondTarget(teamMemberTargets, regionPolicyManager);
|
|
||||||
}
|
|
||||||
|
|
||||||
private List<TeamBillMemberTarget> calculatorDayTarget(List<TeamMemberTarget> teamMemberTargets,
|
private List<TeamBillMemberTarget> calculatorDayTarget(List<TeamMemberTarget> teamMemberTargets,
|
||||||
TeamPolicyManager regionPolicyManager) {
|
TeamPolicyManager regionPolicyManager) {
|
||||||
|
|||||||
@ -237,7 +237,6 @@ public class TeamSalaryPaymentListener implements MessageListener {
|
|||||||
// 辅助:组装钻石工资辅助模型
|
// 辅助:组装钻石工资辅助模型
|
||||||
tmpBillMemberTarget = buildDiamondTmpBillMemberTarget(policy, billTarget);
|
tmpBillMemberTarget = buildDiamondTmpBillMemberTarget(policy, billTarget);
|
||||||
|
|
||||||
log.warn("组装钻石工资辅助模型:{}\n{}", tmpBillMemberTarget, billCycle.getSettleResult().getPolicy().getPolicyType());
|
|
||||||
log.warn("发送团队成员钻石工资:{}\n{}\n{}\n{}\n{}\n{}", teamProfile, memberTarget, region, policy, payment, billCycle);
|
log.warn("发送团队成员钻石工资:{}\n{}\n{}\n{}\n{}\n{}", teamProfile, memberTarget, region, policy, payment, billCycle);
|
||||||
|
|
||||||
// 发送团队成员钻石工资
|
// 发送团队成员钻石工资
|
||||||
|
|||||||
@ -4,6 +4,9 @@ import com.red.circle.other.infra.database.mongo.entity.team.team.TeamPolicyMana
|
|||||||
import java.io.Serial;
|
import java.io.Serial;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
@ -22,7 +25,7 @@ public class TeamBillSettleResult implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 账单对应政策.
|
* 账单对应政策.
|
||||||
*/
|
*/
|
||||||
private TeamPolicyManager policy;
|
private Map<String, TeamPolicyManager> policy;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 工作人数.
|
* 工作人数.
|
||||||
|
|||||||
@ -46,11 +46,7 @@ import com.red.circle.other.inner.model.cmd.team.TeamBillByConditionQryCmd;
|
|||||||
import com.red.circle.other.inner.model.cmd.team.TeamBillCycleBackQryCmd;
|
import com.red.circle.other.inner.model.cmd.team.TeamBillCycleBackQryCmd;
|
||||||
import com.red.circle.other.inner.model.cmd.team.TeamCalculatorWorkCmd;
|
import com.red.circle.other.inner.model.cmd.team.TeamCalculatorWorkCmd;
|
||||||
import com.red.circle.other.inner.model.cmd.team.TeamMemberTargetResetCmd;
|
import com.red.circle.other.inner.model.cmd.team.TeamMemberTargetResetCmd;
|
||||||
import com.red.circle.other.inner.model.dto.agency.agency.TeamBillAnchorStatisticsModelDTO;
|
import com.red.circle.other.inner.model.dto.agency.agency.*;
|
||||||
import com.red.circle.other.inner.model.dto.agency.agency.TeamBillCycleDTO;
|
|
||||||
import com.red.circle.other.inner.model.dto.agency.agency.TeamBillSettleResultDTO;
|
|
||||||
import com.red.circle.other.inner.model.dto.agency.agency.TeamCalculatorWorkResultDTO;
|
|
||||||
import com.red.circle.other.inner.model.dto.agency.agency.TeamRemark;
|
|
||||||
import com.red.circle.other.inner.model.dto.user.UserProfileDTO;
|
import com.red.circle.other.inner.model.dto.user.UserProfileDTO;
|
||||||
import com.red.circle.tool.core.collection.CollectionUtils;
|
import com.red.circle.tool.core.collection.CollectionUtils;
|
||||||
import com.red.circle.tool.core.date.DateFormatConstant;
|
import com.red.circle.tool.core.date.DateFormatConstant;
|
||||||
@ -138,17 +134,14 @@ public class TeamBillCycleClientServiceImpl implements TeamBillCycleClientServic
|
|||||||
TeamBillCycle teamBillCycle = teamBillCycleService.getByBillId(param.getBillId());
|
TeamBillCycle teamBillCycle = teamBillCycleService.getByBillId(param.getBillId());
|
||||||
ResponseAssert.notNull(TeamErrorCode.BILL_DOES_NOT_EXIST, teamBillCycle);
|
ResponseAssert.notNull(TeamErrorCode.BILL_DOES_NOT_EXIST, teamBillCycle);
|
||||||
|
|
||||||
TeamPolicyManager teamPolicyManager = Objects.nonNull(param.getPolicyId())
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService.mapRegionReleaseWithCountry(Set.of(teamBillCycle.getRegion()));
|
||||||
? teamPolicyManagerService.getById(param.getPolicyId())
|
|
||||||
: teamPolicyManagerService.getReleaseByRegionAndType(
|
ResponseAssert.notNull(TeamErrorCode.NOT_FOUND_RELEASE_POLICY, policyManagerMap);
|
||||||
teamBillCycle.getSysOrigin(),
|
|
||||||
teamBillCycle.getRegion());
|
|
||||||
ResponseAssert.notNull(TeamErrorCode.NOT_FOUND_RELEASE_POLICY, teamPolicyManager);
|
|
||||||
|
|
||||||
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
||||||
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils.calculatorPolicyTarget(
|
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(
|
||||||
teamMemberTargets, teamPolicyManager);
|
teamMemberTargets, policyManagerMap);
|
||||||
|
|
||||||
return new TeamCalculatorWorkResultDTO()
|
return new TeamCalculatorWorkResultDTO()
|
||||||
.setWorkMembers(
|
.setWorkMembers(
|
||||||
@ -157,7 +150,8 @@ public class TeamBillCycleClientServiceImpl implements TeamBillCycleClientServic
|
|||||||
.setMemberSalary(sumMemberSalary(teamBillMemberTargets))
|
.setMemberSalary(sumMemberSalary(teamBillMemberTargets))
|
||||||
.setOwnSalary(ownSalary(teamBillMemberTargets))
|
.setOwnSalary(ownSalary(teamBillMemberTargets))
|
||||||
.setTotalSalary(ownTotalSalary(teamBillMemberTargets))
|
.setTotalSalary(ownTotalSalary(teamBillMemberTargets))
|
||||||
.setPolicyId(teamPolicyManager.getId());
|
// .setPolicyId(teamPolicyManager.getId())
|
||||||
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -301,12 +295,11 @@ public class TeamBillCycleClientServiceImpl implements TeamBillCycleClientServic
|
|||||||
return model;
|
return model;
|
||||||
}
|
}
|
||||||
|
|
||||||
TeamPolicyManager teamPolicyManager = Objects.isNull(billCycle.getSettleResult())
|
TeamPolicyManager teamPolicyManager = TeamBillCycleUtils.getPolicyFromMap(
|
||||||
? TeamBillCycleUtils.getPolicyFromMap(
|
|
||||||
mapRegionPolicy,
|
mapRegionPolicy,
|
||||||
target.getRegion(),
|
target.getRegion(),
|
||||||
target.getCountryCode())
|
target.getCountryCode());
|
||||||
: teamInfraConvertor.toTeamPolicyManager(billCycle.getSettleResult().getPolicy());
|
|
||||||
|
|
||||||
if (Objects.isNull(teamPolicyManager)) {
|
if (Objects.isNull(teamPolicyManager)) {
|
||||||
return model;
|
return model;
|
||||||
@ -438,7 +431,7 @@ public class TeamBillCycleClientServiceImpl implements TeamBillCycleClientServic
|
|||||||
|
|
||||||
// 结算账单.
|
// 结算账单.
|
||||||
vo.setSettleResult(new TeamBillSettleResultDTO()
|
vo.setSettleResult(new TeamBillSettleResultDTO()
|
||||||
.setPolicy(teamInfraConvertor.toTeamPolicyManagerDTO(policyManager))
|
// .setPolicy(teamInfraConvertor.toTeamPolicyManagerDTO(policyManager))
|
||||||
.setWorkMembers(countWorkMembers(teamMemberTargets))
|
.setWorkMembers(countWorkMembers(teamMemberTargets))
|
||||||
.setFinishMembers(teamBillMemberTargets.size())
|
.setFinishMembers(teamBillMemberTargets.size())
|
||||||
.setMemberSalary(sumMemberSalary(teamBillMemberTargets))
|
.setMemberSalary(sumMemberSalary(teamBillMemberTargets))
|
||||||
@ -587,7 +580,7 @@ public class TeamBillCycleClientServiceImpl implements TeamBillCycleClientServic
|
|||||||
Set<String> regionIds = getRegionIds(teamBillCycles);
|
Set<String> regionIds = getRegionIds(teamBillCycles);
|
||||||
|
|
||||||
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService
|
Map<String, TeamPolicyManager> policyManagerMap = teamPolicyManagerService
|
||||||
.mapRegionRelease(regionIds);
|
.mapRegionReleaseWithCountry(regionIds);
|
||||||
|
|
||||||
return teamBillCycles.stream().map(teamBillCycle -> {
|
return teamBillCycles.stream().map(teamBillCycle -> {
|
||||||
|
|
||||||
@ -605,11 +598,11 @@ public class TeamBillCycleClientServiceImpl implements TeamBillCycleClientServic
|
|||||||
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
||||||
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils
|
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils
|
||||||
.calculatorPolicyTarget(teamMemberTargets, policyManager);
|
.calculatorPolicyTargetWithMap(teamMemberTargets, policyManagerMap);
|
||||||
|
|
||||||
// 结算账单.
|
// 结算账单.
|
||||||
vo.setSettleResult(new TeamBillSettleResultDTO()
|
vo.setSettleResult(new TeamBillSettleResultDTO()
|
||||||
.setPolicy(teamInfraConvertor.toTeamPolicyManagerDTO(policyManager))
|
// .setPolicy(teamInfraConvertor.toTeamPolicyManager(policyManagerMap))
|
||||||
.setWorkMembers(countWorkMembers(teamMemberTargets))
|
.setWorkMembers(countWorkMembers(teamMemberTargets))
|
||||||
.setFinishMembers(teamBillMemberTargets.size())
|
.setFinishMembers(teamBillMemberTargets.size())
|
||||||
.setMemberSalary(sumMemberSalary(teamBillMemberTargets))
|
.setMemberSalary(sumMemberSalary(teamBillMemberTargets))
|
||||||
|
|||||||
@ -395,8 +395,8 @@ public class TeamProfileClientServiceImpl implements TeamProfileClientService {
|
|||||||
//teamBillCycleService.removeBatchByTeamId(List.of(oldTeamProfile.getId()));
|
//teamBillCycleService.removeBatchByTeamId(List.of(oldTeamProfile.getId()));
|
||||||
TeamBillCycle teamBillCycle = teamBillCycleService.getLatestByTeamId(cmd.getId());
|
TeamBillCycle teamBillCycle = teamBillCycleService.getLatestByTeamId(cmd.getId());
|
||||||
|
|
||||||
TeamPolicyManager regionPolicyManager = teamPolicyManagerService.getReleaseByRegionAndType(
|
Map<String, TeamPolicyManager> regionPolicyManager = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
teamBillCycle.getSysOrigin(), teamBillCycle.getRegion()
|
Set.of(teamBillCycle.getRegion())
|
||||||
);
|
);
|
||||||
// 修改账单区域信息
|
// 修改账单区域信息
|
||||||
teamBillCycleService.updateSelective(new TeamBillCycle()
|
teamBillCycleService.updateSelective(new TeamBillCycle()
|
||||||
|
|||||||
@ -33,6 +33,8 @@ import java.math.BigDecimal;
|
|||||||
import java.math.RoundingMode;
|
import java.math.RoundingMode;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
@SpringBootTest(classes = OtherServiceApplication.class)
|
@SpringBootTest(classes = OtherServiceApplication.class)
|
||||||
@RunWith(SpringRunner.class)
|
@RunWith(SpringRunner.class)
|
||||||
@ -107,14 +109,13 @@ public class TeamMonthBillTest {
|
|||||||
|
|
||||||
|
|
||||||
// 获取团队区域政策
|
// 获取团队区域政策
|
||||||
TeamPolicyManager regionPolicyManager = teamPolicyManagerService.getReleaseByRegionAndType(
|
Map<String, TeamPolicyManager> regionPolicyManager = teamPolicyManagerService.mapRegionReleaseWithCountry(
|
||||||
teamBillCycle.getSysOrigin(),
|
Set.of(teamBillCycle.getRegion())
|
||||||
teamBillCycle.getRegion()
|
|
||||||
);
|
);
|
||||||
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
||||||
|
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets =
|
List<TeamBillMemberTarget> teamBillMemberTargets =
|
||||||
TeamBillCycleUtils.calculatorPolicyTarget(teamMemberTargets, regionPolicyManager);
|
TeamBillCycleUtils.calculatorPolicyTargetWithMap(teamMemberTargets, regionPolicyManager);
|
||||||
|
|
||||||
// 结算账单.
|
// 结算账单.
|
||||||
TeamBillSettleResult settleResult = new TeamBillSettleResult()
|
TeamBillSettleResult settleResult = new TeamBillSettleResult()
|
||||||
|
|||||||
@ -66,7 +66,7 @@ public class TeamSalaryExportTest {
|
|||||||
public void exportTeamSalaryToExcel() {
|
public void exportTeamSalaryToExcel() {
|
||||||
try {
|
try {
|
||||||
// 1. 获取当前账单
|
// 1. 获取当前账单
|
||||||
Integer billBelong = TeamBillCycleUtils.getCalcBillBelong();
|
Integer billBelong = 20260116;
|
||||||
log.info("当前账单: {}", billBelong);
|
log.info("当前账单: {}", billBelong);
|
||||||
|
|
||||||
// 2. 查询所有待结算的账单
|
// 2. 查询所有待结算的账单
|
||||||
@ -103,13 +103,11 @@ public class TeamSalaryExportTest {
|
|||||||
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
List<TeamMemberTarget> teamMemberTargets = getTeamMemberTargets(teamBillCycle);
|
||||||
|
|
||||||
// 获取团队区域政策
|
// 获取团队区域政策
|
||||||
TeamPolicyManager regionPolicyManager = teamPolicyManagerService.getReleaseByRegionAndType(
|
Map<String, TeamPolicyManager> regionPolicyManager =
|
||||||
teamBillCycle.getSysOrigin(),
|
teamPolicyManagerService.mapRegionReleaseWithCountry(Set.of(teamBillCycle.getRegion()));
|
||||||
teamBillCycle.getRegion()
|
|
||||||
);
|
|
||||||
|
|
||||||
// 计算成员目标
|
// 计算成员目标
|
||||||
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils.calculatorPolicyTarget(
|
List<TeamBillMemberTarget> teamBillMemberTargets = TeamBillCycleUtils.calculatorPolicyTargetWithMap(
|
||||||
teamMemberTargets, regionPolicyManager);
|
teamMemberTargets, regionPolicyManager);
|
||||||
|
|
||||||
// 收集成员明细数据
|
// 收集成员明细数据
|
||||||
@ -220,7 +218,7 @@ public class TeamSalaryExportTest {
|
|||||||
*/
|
*/
|
||||||
private List<TeamBillCycle> queryPendingBills(Integer billBelong) {
|
private List<TeamBillCycle> queryPendingBills(Integer billBelong) {
|
||||||
Criteria criteria = Criteria.where("billBelong").lte(billBelong)
|
Criteria criteria = Criteria.where("billBelong").lte(billBelong)
|
||||||
.and("status").is(TeamBillCycleStatus.UNPAID);
|
.and("_id").is(2011906992356577281L);
|
||||||
|
|
||||||
return mongoTemplate.find(
|
return mongoTemplate.find(
|
||||||
Query.query(criteria),
|
Query.query(criteria),
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user