主播代理工资查询修改
This commit is contained in:
parent
5ce1a14341
commit
64e7858f1a
@ -91,8 +91,7 @@ public class TeamBillQryExe {
|
||||
*/
|
||||
public List<TeamBillCO> executeAgent(AppIdLongCmd cmd) {
|
||||
|
||||
List<TeamBillCycle> teamBillCycles = teamBillCycleService.listLatestBill(cmd.getId(),
|
||||
PageConstant.MAX_LIMIT_SIZE);
|
||||
List<TeamBillCycle> teamBillCycles = teamBillCycleService.listLatestBill(cmd.getId(), 2);
|
||||
|
||||
if (CollectionUtils.isEmpty(teamBillCycles)) {
|
||||
return Lists.newArrayList();
|
||||
|
||||
@ -10,12 +10,11 @@ import com.red.circle.other.infra.database.mongo.entity.team.team.TeamMemberTarg
|
||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamBillCycleService;
|
||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamMemberService;
|
||||
import com.red.circle.other.infra.database.mongo.service.team.team.TeamMemberTargetService;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.red.circle.other.inner.enums.team.TeamMemberTargetIndex;
|
||||
import com.red.circle.tool.core.date.ZonedDateTimeAsiaRiyadhUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
@ -65,17 +64,22 @@ public class TeamHistoryWorkCountQryExe {
|
||||
return null;
|
||||
}
|
||||
|
||||
List<TeamMemberTarget> teamMemberTargets = teamMemberTargetService.listMemberTarget(
|
||||
List<TeamMemberTarget> teamMemberTargets = teamMemberTargetService.listMemberMonthlyTarget(
|
||||
teamMember.getTeamId(), teamMember.getMemberId(), ZonedDateTimeAsiaRiyadhUtils.nowYearMonthToInt());
|
||||
|
||||
if (CollectionUtils.isEmpty(teamMemberTargets)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Integer i = ZonedDateTimeAsiaRiyadhUtils.nowDateToInt();
|
||||
return teamMemberTargets.get(0).getDailyTargets().stream()
|
||||
List<TeamMemberTargetIndex> dailyTargets = Lists.newArrayList();
|
||||
teamMemberTargets.forEach(teamMemberTarget -> {
|
||||
dailyTargets.addAll(teamMemberTarget.getDailyTargets());
|
||||
});
|
||||
|
||||
return dailyTargets.stream()
|
||||
.filter(Objects::nonNull)
|
||||
.filter(e -> Objects.equals(e.getDateNumber(), ZonedDateTimeAsiaRiyadhUtils.nowDateToInt()))
|
||||
.sorted(Comparator.comparing(TeamMemberTargetIndex::getUpdateTime).reversed())
|
||||
.map(dailyTarget -> new AnchorWorkStatisticsCO()
|
||||
.setId(teamMemberTargets.get(0).getTimeId())
|
||||
.setOwnTime(dailyTarget.getOwnOnlineTime())
|
||||
|
||||
@ -84,7 +84,7 @@ public class TeamMemberWorkQryExe {
|
||||
LocalDateTimeUtils.convert(teamMember.getCreateTime().getTime()), "yyyyMM"));
|
||||
|
||||
List<TeamBillCycle> teamBillCycles = teamBillCycleService.listByGeBillBelong(
|
||||
teamMember.getTeamId(), billBelong, PageConstant.MAX_LIMIT_SIZE);
|
||||
teamMember.getTeamId(), billBelong, 2);
|
||||
|
||||
if (CollectionUtils.isEmpty(teamBillCycles)) {
|
||||
return new TeamMemberWorkCO()
|
||||
|
||||
@ -661,11 +661,13 @@ public class TeamMemberTargetServiceImpl implements TeamMemberTargetService {
|
||||
|
||||
@Override
|
||||
public List<TeamMemberTarget> listByMonthlyBillBelong(Long teamId, Integer monthlyBillBelong) {
|
||||
// 构造查询条件:billBelong 前6位匹配月度账期
|
||||
// 例如:monthlyBillBelong = 202511,匹配 20251101 和 20251116
|
||||
long prefix = monthlyBillBelong.longValue();
|
||||
long min = prefix * 100L + 1; // 202511 → 20251101
|
||||
long max = (prefix + 1) * 100L - 1; // 202511 → 20251199
|
||||
|
||||
Criteria criteria = Criteria.where("teamId").is(teamId)
|
||||
.and("history").is(Boolean.FALSE)
|
||||
.and("billBelong").regex("^" + monthlyBillBelong);
|
||||
.and("billBelong").gte(min).lte(max);
|
||||
|
||||
return mongoTemplate.find(Query.query(criteria)
|
||||
.with(Sort.by(Order.asc("billBelong"))),
|
||||
@ -674,11 +676,15 @@ public class TeamMemberTargetServiceImpl implements TeamMemberTargetService {
|
||||
|
||||
@Override
|
||||
public List<TeamMemberTarget> listMemberMonthlyTarget(Long teamId, Long userId, Integer monthlyBillBelong) {
|
||||
long prefix = monthlyBillBelong.longValue();
|
||||
long min = prefix * 100L + 1; // 202511 → 20251101
|
||||
long max = (prefix + 1) * 100L - 1; // 202511 → 20251199
|
||||
|
||||
// 查询指定用户在指定月份的所有目标记录
|
||||
Criteria criteria = Criteria.where("teamId").is(teamId)
|
||||
.and("userId").is(userId)
|
||||
.and("history").is(Boolean.FALSE)
|
||||
.and("billBelong").regex("^" + monthlyBillBelong);
|
||||
.and("billBelong").gte(min).lte(max);
|
||||
|
||||
return mongoTemplate.find(Query.query(criteria)
|
||||
.with(Sort.by(Order.asc("billBelong"))),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user