fix
Hentua
2023-06-03 fda57b880c57c2a7e9d26d7912eed310e028042d
fix
7 files modified
67 ■■■■ changed files
src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java 31 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java 7 ●●●●● patch | view | raw | blame | history
src/main/resources/application-dev.yml 6 ●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html 1 ●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html 18 ●●●● patch | view | raw | blame | history
src/test/java/cc/mrbird/febs/ProfitTest.java 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java
@@ -112,4 +112,6 @@
    IPage<MallMoneyFlow> achieveReleaseChild(QueryRequest request, MallScoreAchieveRelease mallScoreAchieveRelease);
    FebsResponse insideWithType(Long id, int i);
    List<MallMember> findParentMemberList(List<String> inviteIds, Integer level, boolean containsParent);
}
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -36,6 +36,7 @@
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@@ -771,4 +772,34 @@
        return ids;
    }
    @Override
    public List<MallMember> findParentMemberList(List<String> inviteIds, Integer level, boolean containsParent) {
        List<MallMember> mallMembers = this.baseMapper.selectByInviteIds(inviteIds);
        if(CollUtil.isEmpty(mallMembers)) {
            return mallMembers;
        }
        List<MallMember> result = new ArrayList<>();
        int index = containsParent ? 0 : 1;
        int count = 0;
        while(true) {
            if (level != null && count == level) {
                break;
            }
            if (index >= mallMembers.size()) {
                break;
            }
            String inviteId = inviteIds.get(index);
            List<MallMember> collect = mallMembers.stream().filter(item -> item.getInviteId().equals(inviteId)).collect(Collectors.toList());
            result.add(collect.get(0));
            index++;
            count++;
        }
        return result;
    }
}
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
@@ -38,6 +38,7 @@
    private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
    private final MallSystemSettingMapper mallSystemSettingMapper;
    private final IAdminMallMemberService adminMallMemberService;
    /**
     * 直推收益
@@ -141,7 +142,7 @@
                    continue;
                }
                List<MallMember> mallMembers = mallMemberMapper.selectParentMemberList(StrUtil.split(parentMember.getReferrerIds(), ','), parentMember.getReferrerId(), 2);
                List<MallMember> mallMembers = adminMallMemberService.findParentMemberList(StrUtil.split(parentMember.getReferrerIds(), ','), 2, true);
                if (CollUtil.isEmpty(mallMembers)) {
                    continue;
                }
@@ -155,7 +156,7 @@
                    if (index != 2) {
                        indirectPerDic = indirectPerTwoDic;
                    }
                    BigDecimal doubleParentProfit = profit.multiply(new BigDecimal(indirectPerDic.getValue()));
                    BigDecimal doubleParentProfit = profit.multiply(new BigDecimal(indirectPerDic.getValue()).divide(new BigDecimal(100), 2, RoundingMode.HALF_UP));
                    changeScoreAndCommission(mallMember.getId(), doubleParentProfit, MoneyFlowTypeEnum.DIRECT_BONUS.getValue(), orderInfo.getOrderNo());
                    index++;
                }
@@ -168,7 +169,7 @@
            }
            List<String> parents = StrUtil.split(parentMember.getReferrerIds(), ',');
            List<MallMember> members = mallMemberMapper.selectByInviteIds(parents);
            List<MallMember> members = adminMallMemberService.findParentMemberList(parents, null, true);
            if (CollUtil.isEmpty(members)) {
                return;
            }
src/main/resources/application-dev.yml
@@ -18,7 +18,11 @@
          username: ct_test
          password: 123456
          driver-class-name: com.mysql.cj.jdbc.Driver
          url: jdbc:mysql://120.27.238.55:3406/db_meiye_mall?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
          url: jdbc:mysql://120.27.238.55:3406/db_meiye_prd?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8
#          username: db_meiye
#          password: meiye#@!321
#          driver-class-name: com.mysql.cj.jdbc.Driver
#          url: jdbc:mysql://47.111.90.145:3306/db_meiye?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&rewriteBatchedStatements=true&allowMultiQueries=true&serverTimezone=GMT%2b8
  redis:
    # Redis数据库索引(默认为 0)
src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
@@ -231,6 +231,7 @@
                    {field: 'name', title: '名称', minWidth: 100,align:'left', totalRowText: '合计:'},
                    {field: 'inviteId', title: '邀请码', minWidth: 100,align:'left'},
                    {field: 'balance', title: '余额', minWidth: 100,align:'left',totalRow: '{{= parseInt(d.balance) }}'},
                    {field: 'score', title: '赠送积分', minWidth: 100,align:'left',totalRow: '{{= parseInt(d.score) }}'},
                    {field: 'prizeScore', title: '现金积分', minWidth: 100,align:'left',totalRow: '{{= parseInt(d.prizeScore) }}'},
                    {field: 'childNodeCnt', title: '粉丝数量', minWidth: 100,align:'left'},
                    {field: 'referrerName', title: '推荐人', minWidth: 100,align:'left'},
src/main/resources/templates/febs/views/modules/mallMember/moneyFlow.html
@@ -47,19 +47,19 @@
                    {field: 'type', title: '流水类型',
                        templet: function (d) {
                            if (d.type === 1) {
                                return '<span>静态收益</span>'
                            } else if (d.type === 2) {
                                return '<span>直推奖</span>'
                            } else if (d.type === 2) {
                                return '<span>隔代收益</span>'
                            } else if (d.type === 3) {
                                return '<span>代理收益</span>'
                                return '<span>全网分红</span>'
                            } else if (d.type === 4) {
                                return '<span>排名收益</span>'
                                return '<span>代理分红</span>'
                            }else if (d.type === 5) {
                                return '<span>总监收益</span>'
                                return '<span>股东分红</span>'
                            }else if (d.type === 6) {
                                return '<span>社区店补</span>'
                                return '<span>积分兑换</span>'
                            }else if (d.type === 7) {
                                return '<span>一代收益</span>'
                                return '<span>推荐奖</span>'
                            }else if (d.type === 8) {
                                return '<span>提现</span>'
                            }else if (d.type === 9) {
@@ -114,10 +114,10 @@
                        templet: function (d) {
                            if (d.flowType === 1) {
                                return '余额';
                            } else if(d.flowType === 2) {
                                return '赠送积分'
                            } else if(d.flowType === 3) {
                                return '现金积分'
                            } else if(d.flowType === 5) {
                                return '贡献点'
                            } else {
                                return '-';
                            }
src/test/java/cc/mrbird/febs/ProfitTest.java
@@ -46,7 +46,7 @@
    @Test
    public void profitTest() {
        memberProfitService.directProfit(10L);
        memberProfitService.directProfit(49L);
    }
//
//    @Autowired