xiaoyong931011
2023-03-30 eb5b0cddcd4c131dfefa7316b8ea6ef74d035ebb
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -461,10 +461,33 @@
                    BigDecimal star = (mallGoods.getStar()==null ? BigDecimal.ZERO : mallGoods.getStar())
                            .multiply(new BigDecimal(orderItem.getCnt()));
                    starSum = starSum.add(star);
//                    scoreSum = scoreSum.add(
//                            new BigDecimal(mallGoods.getPresentPrice())
//                                    .multiply(new BigDecimal(3))
//                                    .multiply(new BigDecimal(orderItem.getCnt()))
//                                    .abs()
//                                    .setScale(2,BigDecimal.ROUND_DOWN));
                    String goodsName = mallGoods.getGoodsName();
                    /**
                     * 1-2档投资级别,2.5倍
                     * 3-4档投资级别,2.8倍
                     * 5-6档投资级别,3倍
                     * 目前紧急修改成按照商品名称
                     */
                    BigDecimal basePercent = new BigDecimal("3");
                    if(goodsName.equals("礼包一") || goodsName.equals("礼包二")){
                        basePercent = new BigDecimal("2.5");
                    }
                    if(goodsName.equals("礼包三") || goodsName.equals("礼包四")){
                        basePercent = new BigDecimal("2.8");
                    }
                    if(goodsName.equals("礼包五") || goodsName.equals("礼包六")){
                        basePercent = new BigDecimal("3");
                    }
                    scoreSum = scoreSum.add(
                            new BigDecimal(mallGoods.getPresentPrice())
                                    .multiply(new BigDecimal(3))
                                    .multiply(new BigDecimal(orderItem.getCnt()))
                                    .multiply(basePercent)
                                    .abs()
                                    .setScale(2,BigDecimal.ROUND_DOWN));
                }
@@ -491,7 +514,8 @@
                                    starSum,
                                    MoneyFlowTypeEnum.STAR.getValue(),
                                    orderInfo.getOrderNo(),
                                    FlowTypeEnum.STAR.getValue());
                                    FlowTypeEnum.STAR.getValue(),
                                    2);
                        }
                        if(starGet.compareTo(star) > 0){
                            BigDecimal subtract = starGet.subtract(star);
@@ -504,7 +528,8 @@
                                    starSum,
                                    MoneyFlowTypeEnum.STAR.getValue(),
                                    orderInfo.getOrderNo(),
                                    FlowTypeEnum.STAR.getValue());
                                    FlowTypeEnum.STAR.getValue(),
                                    2);
                        }
                    }else{
                        mallMemberWalletMapper.addStarByMemberId(starSum.intValue(), memberId);
@@ -513,7 +538,8 @@
                                starSum,
                                MoneyFlowTypeEnum.STAR.getValue(),
                                orderInfo.getOrderNo(),
                                FlowTypeEnum.STAR.getValue());
                                FlowTypeEnum.STAR.getValue(),
                                2);
                    }
                }
            }
@@ -521,13 +547,29 @@
             * 增加补贴额度
             */
            if (scoreSum.compareTo(BigDecimal.ZERO) > 0) {
//                MallMember mallMember = memberMapper.selectById(memberId);
//                if(MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) >= 5){
//                    scoreSum = scoreSum.multiply(new BigDecimal(3));
//                }
//                if(MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) >= 3
//                &&MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) < 5){
//                    scoreSum = scoreSum.multiply(new BigDecimal(2.8));
//                }
//                if(MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) < 3){
//                    scoreSum = scoreSum.multiply(new BigDecimal(2.5));
//                }
                memberWalletService.add(scoreSum, memberId, "totalScore");
                mallMoneyFlowService.addMoneyFlow(
                        memberId,
                        scoreSum,
                        MoneyFlowTypeEnum.TOTAL_SCORE.getValue(),
                        orderInfo.getOrderNo(),
                        FlowTypeEnum.TOTAL_SCORE.getValue());
                        "",
                        scoreSum.toString(),
                        memberId,
                        1,
                        FlowTypeEnum.TOTAL_SCORE.getValue(),
                        2);
            }
        }