| | |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | |
| | | @Slf4j |
| | | @Service |
| | |
| | | ); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void releaseNodeCoin(BigDecimal amount, BigDecimal percent, BigDecimal balanceToCoin,Long memberId) { |
| | | //实际节点返利的金额 |
| | | BigDecimal multiply = amount.multiply(percent); |
| | | if(BigDecimal.ZERO.compareTo(multiply) >=0){ |
| | | return; |
| | | } |
| | | BigDecimal divide = multiply.divide(balanceToCoin, 2, RoundingMode.DOWN); |
| | | if(BigDecimal.ZERO.compareTo(divide) >=0){ |
| | | return; |
| | | } |
| | | walletService.addBalance(divide,memberId); |
| | | String orderNo = MallUtils.getOrderNum("JD"); |
| | | mallMoneyFlowService.runVipMoneyFlowAdd( |
| | | memberId, |
| | | memberId, |
| | | orderNo, |
| | | FlowTypeEnum.BALANCE.getValue(), |
| | | RunVipMoneyFlowTypeEnum.NODE_BALANCE.getValue(), |
| | | divide, |
| | | StrUtil.format(RunVipMoneyFlowTypeEnum.NODE_BALANCE.getDescription(),divide), |
| | | YesOrNoEnum.YES.getValue() |
| | | ); |
| | | |
| | | } |
| | | } |