1
phpcjl
2024-12-20 724b45d14ee8d36389f57eb003c83c8e30ad5f4c
1
2个文件已修改
1个文件已添加
78 ■■■■■ 已修改文件
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionDate.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionDetail.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AppUserController.java
@@ -37,7 +37,9 @@
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
import com.ruoyi.account.vo.*;
import com.ruoyi.common.core.web.controller.BaseController;
@@ -666,6 +668,31 @@
        commissionDetail.setTotalTopAgentCommission(vipCommissions.getOrDefault(6, BigDecimal.ZERO));
        commissionDetail.setTotalPartnerCommission(vipCommissions.getOrDefault(7, BigDecimal.ZERO));
        Map<String, List<AppUser>> map = appUserList.stream().collect(Collectors.groupingBy(item -> item.getCreateTime()
                .format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))));
        List<CommissionDate> commissionDateList = new ArrayList<>();
        map.forEach((key, value) -> {
            Map<Integer, BigDecimal> vipCommissions2 = new HashMap<>();
            for (AppUser appUser : appUserList) {
                Integer vipId = appUser.getVipId();
                if (vipId != null && vipId >= 1 && vipId <= 7) {
                    vipCommissions2.merge(vipId, Optional.ofNullable(appUser.getTotalDistributionAmount()).orElse(BigDecimal.ZERO), BigDecimal::add);
                }
            }
            CommissionDate commissionDate = new CommissionDate();
            commissionDate.setDate(key);
            commissionDate.setNormalCommission(vipCommissions2.getOrDefault(1, BigDecimal.ZERO));
            commissionDate.setGoldCommission(vipCommissions2.getOrDefault(2, BigDecimal.ZERO));
            commissionDate.setDiamondCommission(vipCommissions2.getOrDefault(3, BigDecimal.ZERO));
            commissionDate.setAgentCommission(vipCommissions2.getOrDefault(4, BigDecimal.ZERO));
            commissionDate.setSuperAgentCommission(vipCommissions2.getOrDefault(5, BigDecimal.ZERO));
            commissionDate.setAgentCommission(vipCommissions2.getOrDefault(6, BigDecimal.ZERO));
            commissionDate.setPartnerCommission(vipCommissions2.getOrDefault(7, BigDecimal.ZERO));
            commissionDateList.add(commissionDate);
        });
        commissionDetail.setCommissionDateList(commissionDateList);
        return R.ok(commissionDetail);
    }
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionDate.java
New file
@@ -0,0 +1,48 @@
package com.ruoyi.account.vo;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class CommissionDate {
    /**
     * 日期
     */
    private String date;
    /**
     * 普通会员分佣
     */
    private BigDecimal normalCommission;
    /**
     * 黄金会员分佣
     */
    private BigDecimal goldCommission;
    /**
     * 钻石会员分佣
     */
    private BigDecimal diamondCommission;
    /**
     * 准代理分佣
     */
    private BigDecimal agentCommission;
    /**
     * 代理分佣
     */
    private BigDecimal superAgentCommission;
    /**
     * 合伙人分佣
     */
    private BigDecimal partnerCommission;
    /**
     * 用户分佣总金额
     */
    private BigDecimal totalCommission;
}
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/vo/CommissionDetail.java
@@ -5,6 +5,7 @@
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
@ApiModel(description = "分佣明细")
@@ -69,4 +70,6 @@
     */
    @ApiModelProperty(value = "合伙人获得总分佣金额")
    private BigDecimal totalPartnerCommission;
    private List<CommissionDate> commissionDateList;
}