xiaoyong931011
2023-08-14 e58bda9eed3e15ca0be919715861a30f75344e2f
赠送积分更新状态
8 files modified
84 ■■■■ changed files
src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java 15 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java 13 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java 16 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallMemberMapper.xml 25 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallMoneyFlowMapper.xml 5 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/mapper/MallMemberMapper.java
@@ -74,6 +74,8 @@
    BigDecimal selectAchieveByMemberId(@Param("inviteId") String inviteId, @Param("type") Integer type);
    BigDecimal selectOrderAmountByMemberId(@Param("inviteId") String inviteId, @Param("type") Integer type);
    List<MallMember> selectMemberByName(@Param("name") String name);
    // 查询有下级的用户
src/main/java/cc/mrbird/febs/mall/mapper/MallMoneyFlowMapper.java
@@ -39,6 +39,9 @@
    BigDecimal selectThankfulCommission(@Param("date") Date date, @Param("memberId") Long memberId);
    MallMoneyFlow selectOneByOrderNoAndMemberId(@Param("rechargeNo")String rechargeNo, @Param("memberId")Long memberId);
    MallMoneyFlow selectOneByOrderNoAndMemberIdAndRtMemberId(@Param("rechargeNo")String rechargeNo,
                                                             @Param("memberId")Long memberId,
                                                             @Param("rtMemberId")Long rtMemberId);
    BigDecimal selectAmountByFlowtypeAndType(@Param("memberId")Long memberId,@Param("flowType")Integer flowType,
                                             @Param("type")Integer type, @Param("status")Integer status,
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -377,9 +377,18 @@
                String returnPercentStr = StrUtil.isNotEmpty(returnPercentDic.getValue()) ? "1" : returnPercentDic.getValue();
                BigDecimal returnPercent = new BigDecimal(returnPercentStr).divide(new BigDecimal(100), 2, BigDecimal.ROUND_DOWN);
                BigDecimal amountActual = amountBigDecimal.multiply(returnPercent).setScale(2, BigDecimal.ROUND_DOWN);
                memberWalletService.add(amountActual, id, "balance");
                mallMoneyFlowService.addMoneyFlow(id, amountActual, MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(),
                        mallOrderInfo.getOrderNo(),  FlowTypeEnum.BALANCE.getValue(),"直推奖",2);
                mallMoneyFlowService.addMoneyFlow(
                        mallMember.getId(),
                        amountActual,
                        MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(),
                        mallOrderInfo.getOrderNo(),
                        "直推奖",
                        "直推奖",
                        id,
                        1,
                        FlowTypeEnum.BALANCE.getValue(),
                        2);
            }
        }
        for(MallOrderItem mallOrderItem : mallOrderItemList){
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -359,11 +359,10 @@
        MallMember mallMember = this.baseMapper.selectById(memberId);
        List<TeamListVo> list = this.baseMapper.selectTeamListByInviteId(mallMember.getInviteId());
        MyTeamVo myTeamVo = new MyTeamVo();
        myTeamVo.setTeam(list);
        myTeamVo.setMyAchieve(this.baseMapper.selectAchieveByMemberId(mallMember.getInviteId(), 1));
        myTeamVo.setMyTeamAchieve(this.baseMapper.selectAchieveByMemberId(mallMember.getInviteId(), 2));
        myTeamVo.setMyAchieve(this.baseMapper.selectOrderAmountByMemberId(mallMember.getInviteId(), 1));
        myTeamVo.setMyTeamAchieve(this.baseMapper.selectOrderAmountByMemberId(mallMember.getInviteId(), 2));
        myTeamVo.setMyTeamCnt(this.baseMapper.selectAllChildAgentListByInviteId(mallMember.getInviteId()).size());
        return new FebsResponse().success().data(myTeamVo);
    }
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -647,6 +647,19 @@
        orderInfo.setReceivingTime(new Date());
        this.baseMapper.updateById(orderInfo);
        //是否返利
        if(ObjectUtil.isNotEmpty(member.getReferrerId())){
            String referrerId = member.getReferrerId();
            MallMember mallMemberParent = memberMapper.selectInfoByInviteId(referrerId);
            Long parentId = mallMemberParent.getId();
            String orderNo = orderInfo.getOrderNo();
            MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(orderNo, member.getId(), parentId);
            mallMoneyFlow.setStatus(2);
            mallMoneyFlow.setIsReturn(1);
            mallMoneyFlowMapper.updateById(mallMoneyFlow);
            memberWalletService.add(mallMoneyFlow.getAmount(), id, "balance");
        }
        //生成一条团长提成记录
//        Long orderInfoId = orderInfo.getId();
//        List<MallOrderItem> mallOrderItemList = mallOrderItemMapper.selectListByOrderId(orderInfoId);
src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberWithdrawServiceImpl.java
@@ -56,14 +56,14 @@
        }
        CashOutSettingVo cashOutSettingVo = new CashOutSettingVo();
        DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode());
        if (dic != null) {
            cashOutSettingVo = JSONObject.parseObject(dic.getValue(), CashOutSettingVo.class);
        }
        if (withdrawalDto.getAmount().compareTo(cashOutSettingVo.getMinCashOut()) < 0) {
            throw new FebsException("最小提现金额为"+cashOutSettingVo.getMinCashOut()+"元");
        }
//        CashOutSettingVo cashOutSettingVo = new CashOutSettingVo();
//        DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.CASHOUT_SETTING.getType(), DataDictionaryEnum.CASHOUT_SETTING.getCode());
//        if (dic != null) {
//            cashOutSettingVo = JSONObject.parseObject(dic.getValue(), CashOutSettingVo.class);
//        }
//        if (withdrawalDto.getAmount().compareTo(cashOutSettingVo.getMinCashOut()) < 0) {
//            throw new FebsException("最小提现金额为"+cashOutSettingVo.getMinCashOut()+"元");
//        }
        String openId = mallMember.getOpenId();
        if(StrUtil.isEmpty(openId)){
src/main/resources/mapper/modules/MallMemberMapper.xml
@@ -83,12 +83,12 @@
            (select sum(e.amount)
             from mall_order_info e
                      inner join mall_member b on e.member_id=b.ID
                      inner join mall_order_item c on e.id = c.order_id -- and c.is_normal=2
             where e.status in (2, 3, 4) and (b.invite_id=a.invite_id or b.referrer_id=a.invite_id)) amount,
            (select count(1) from mall_member e
                      inner join mall_order_info b on e.id=b.member_id and b.status in (2, 3, 4)
             where e.referrer_id = a.invite_id) orderCnt,
            (select count(1) from mall_member x where x.referrer_id = a.invite_id) cnt
                      inner join mall_order_item c on e.id = c.order_id
             where e.status in (2, 3, 4) and (find_in_set(a.invite_id, b.referrer_ids))) amount,
            (select count(id) from mall_order_info e
                      inner join mall_member  b on e.id = b.member_id and e.status in (2, 3, 4)
             where (find_in_set(a.invite_id, b.referrer_ids))) orderCnt,
            (select count(1) from mall_member x where (find_in_set(a.invite_id, x.referrer_ids))) cnt
        from mall_member a
        inner join mall_member_wallet p on a.id=p.member_id
        where a.referrer_id=#{inviteId}
@@ -366,6 +366,19 @@
        </if>
    </select>
    <select id="selectOrderAmountByMemberId" resultType="java.math.BigDecimal">
        select IFNULL(sum(IFNULL(e.amount, 0)), 0)
        from mall_order_info e
        inner join mall_member b on e.member_id=b.ID
        where e.status in (2, 3, 4)
            <if test="type == 1">
                and b.invite_id=#{inviteId}
            </if>
            <if test="type == 2">
                and find_in_set(#{inviteId}, b.referrer_ids)
            </if>
    </select>
    <select id="selectMemberByName" resultType="cc.mrbird.febs.mall.entity.MallMember">
        select * from mall_member
        where name=#{name}
src/main/resources/mapper/modules/MallMoneyFlowMapper.xml
@@ -139,6 +139,11 @@
        where a.order_no = #{rechargeNo} and a.member_id = #{memberId}
    </select>
    <select id="selectOneByOrderNoAndMemberIdAndRtMemberId" resultType="cc.mrbird.febs.mall.entity.MallMoneyFlow">
        select a.* from mall_money_flow a
        where a.order_no = #{rechargeNo} and a.member_id = #{memberId} and a.rt_member_id = @{rtMemberId}
    </select>
    <select id="selectAmountByFlowtypeAndType" resultType="java.math.BigDecimal">
        select ifnull(sum(a.amount),0) from mall_money_flow a
        <where>