| | |
| | | private BigDecimal voucherCnt; |
| | | |
| | | /** |
| | | * 凭证燃烧值数量 |
| | | */ |
| | | private BigDecimal voucherFireCnt; |
| | | |
| | | /** |
| | | * 凭证金额 |
| | | */ |
| | | private BigDecimal voucherAmount; |
| | |
| | | List<MallMemberWallet> selectStar(); |
| | | |
| | | void addVorCherAmountAndCntById(@Param("voucherAmount")BigDecimal voucherAmountAdd,@Param("voucherCnt")BigDecimal voucherCnt, @Param("id")Long id); |
| | | |
| | | void addVorCherFireCntByMemberId(@Param("voucherFireCnt")BigDecimal voucherFireCnt, @Param("memberId")Long memberId); |
| | | } |
| | |
| | | } |
| | | if(AppContants.MEMBER_WITHDRAW_VOUCHER.equals(mallMemberWithdraw.getRemark())){ |
| | | iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"balance"); |
| | | iApiMallMemberWalletService.add(mallMemberWithdraw.getAmountFee(),mallMemberWithdraw.getMemberId(),"voucherCnt"); |
| | | iApiMallMemberWalletService.add(mallMemberWithdraw.getAmountFee(),mallMemberWithdraw.getMemberId(),"voucherFireCnt"); |
| | | } |
| | | if(AppContants.MEMBER_WITHDRAW_VOUCHER_AMOUNT.equals(mallMemberWithdraw.getRemark())){ |
| | | iApiMallMemberWalletService.add(mallMemberWithdraw.getAmount(),mallMemberWithdraw.getMemberId(),"voucherAmount"); |
| | |
| | | BigDecimal voucherPercent = new BigDecimal(voucherPercentDic.getValue() == null ? "0" : voucherPercentDic.getValue()).multiply(new BigDecimal(0.01)); |
| | | BigDecimal voucherPercentNeed = withdrawalDto.getAmount().multiply(voucherPercent).setScale(2,BigDecimal.ROUND_DOWN); |
| | | |
| | | BigDecimal voucherCnt = wallet.getVoucherCnt(); |
| | | if(voucherCnt.compareTo(voucherPercentNeed) < 0){ |
| | | // BigDecimal voucherCnt = wallet.getVoucherCnt(); |
| | | BigDecimal voucherFireCnt = wallet.getVoucherFireCnt(); |
| | | if(voucherFireCnt.compareTo(voucherPercentNeed) < 0){ |
| | | throw new FebsException("红豆不足"); |
| | | } |
| | | |
| | | walletService.reduce(voucherCntDto, memberId, "voucherCnt"); |
| | | // walletService.reduce(voucherCntDto, memberId, "voucherCnt"); |
| | | walletService.reduce(voucherCntDto, memberId, "voucherFireCnt"); |
| | | serviceFee = voucherCntDto; |
| | | remark = AppContants.MEMBER_WITHDRAW_VOUCHER; |
| | | } |
| | |
| | | MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(member.getId()); |
| | | apiScoreVoucherInfoVo.setVoucherCnt(mallMemberWallet.getVoucherCnt().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : mallMemberWallet.getVoucherCnt()); |
| | | apiScoreVoucherInfoVo.setVoucherAmount(mallMemberWallet.getVoucherAmount().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : mallMemberWallet.getVoucherAmount()); |
| | | apiScoreVoucherInfoVo.setVoucherFireCnt(mallMemberWallet.getVoucherFireCnt().compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : mallMemberWallet.getVoucherFireCnt()); |
| | | DataDictionaryCustom scorePriceDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( |
| | | GreenScoreEnum.SCORE_PRICE.getType(), |
| | | GreenScoreEnum.SCORE_PRICE.getCode()); |
| | |
| | | scorePoolCntDic.setValue(scorePoolCnt.toString()); |
| | | dataDictionaryCustomMapper.updateById(scorePoolCntDic); |
| | | //增加凭证数量 |
| | | mallMemberWalletMapper.addVorCherCntByMemberId(voucherCnt,memberId); |
| | | // mallMemberWalletMapper.addVorCherCntByMemberId(voucherCnt,memberId); |
| | | //增加凭证燃烧值数量 |
| | | mallMemberWalletMapper.addVorCherFireCntByMemberId(voucherCnt,memberId); |
| | | //增加购买记录 |
| | | String voucherNo = MallUtils.getOrderNum("VB"); |
| | | MallScoreVoucher mallScoreVoucher = new MallScoreVoucher(); |
| | |
| | | |
| | | @ApiModelProperty(value = "绿色积分") |
| | | private BigDecimal voucherCnt; |
| | | /** |
| | | * 数量 |
| | | */ |
| | | @ApiModelProperty(value = "燃烧值数量") |
| | | private BigDecimal voucherFireCnt; |
| | | |
| | | @ApiModelProperty(value = "现金元") |
| | | private BigDecimal voucherAmount; |
| | |
| | | <if test="record.voucherCnt != null"> |
| | | , voucher_cnt = #{record.voucherCnt} |
| | | </if> |
| | | <if test="record.voucherFireCnt != null"> |
| | | , voucher_fire_cnt = #{record.voucherFireCnt} |
| | | </if> |
| | | <if test="record.voucherAmount != null"> |
| | | , voucher_amount = #{record.voucherAmount} |
| | | </if> |
| | |
| | | WHERE id = #{id} |
| | | </update> |
| | | |
| | | <update id="addVorCherFireCntByMemberId"> |
| | | update mall_member_wallet |
| | | <set> |
| | | voucher_fire_cnt = voucher_fire_cnt + #{voucherFireCnt}, |
| | | </set> |
| | | WHERE member_id = #{memberId} |
| | | </update> |
| | | |
| | | |
| | | </mapper> |