From b52d29b99c0808b23a6f07bdc87db31e5ba11a31 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Mon, 13 May 2024 10:10:15 +0800 Subject: [PATCH] 新合约 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 48 +++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 47 insertions(+), 1 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java index 5c531f5..78e304c 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java @@ -66,6 +66,7 @@ private final MallProductBuyRecordMapper mallProductBuyRecordMapper; private final MallProductBuyMapper mallProductBuyMapper; private final MallMemberSpeakMapper mallMemberSpeakMapper; + private final MallMemberChargeMapper mallMemberChargeMapper; @Value("${spring.profiles.active}") @@ -276,7 +277,7 @@ DataDictionaryCustom fcmPriceDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( DataDictionaryEnum.FCM_PRICE.getType(), DataDictionaryEnum.FCM_PRICE.getCode()); - mallMemberVo.setFcmPrice(ObjectUtil.isEmpty(fcmPriceDic) ? new BigDecimal(2) : new BigDecimal(fcmPriceDic.getValue())); + mallMemberVo.setFcmPrice(ObjectUtil.isEmpty(fcmPriceDic) ? new BigDecimal(8) : new BigDecimal(fcmPriceDic.getValue())); DataDictionaryCustom outFcmFeeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( DataDictionaryEnum.OUT_FCM_FEE.getType(), @@ -341,6 +342,19 @@ DataDictionaryEnum.FCM_INSIDE_NFT_PERCENT.getCode() ); mallMemberVo.setInsideNFTPercent(insideNFTPercentDic.getValue()); + + DataDictionaryCustom chargeAddressDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.CHARGE_ADDRESS.getType(), + DataDictionaryEnum.CHARGE_ADDRESS.getCode() + ); + mallMemberVo.setChargeAddress(chargeAddressDic.getValue()); + + DataDictionaryCustom withdrawAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.WITHDRAW_AMOUNT.getType(), + DataDictionaryEnum.WITHDRAW_AMOUNT.getCode() + ); + BigDecimal withdrawAmount = new BigDecimal(withdrawAmountDic.getValue()).setScale(2, BigDecimal.ROUND_DOWN); + mallMemberVo.setWithdrawAmount(withdrawAmount); return new FebsResponse().success().data(mallMemberVo); } @@ -1023,6 +1037,38 @@ return new FebsResponse().success().data(pages); } + @Override + public FebsResponse chargeBalance(ApiChargeBalanceDto apiChargeBalanceDto) { + Long memberId = LoginUserUtil.getLoginUser().getId(); + MallMember mallMember = this.baseMapper.selectById(memberId); + BigDecimal amount = apiChargeBalanceDto.getAmount(); + DataDictionaryCustom chargeAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.CHARGE_AMOUNT.getType(), + DataDictionaryEnum.CHARGE_AMOUNT.getCode() + ); + BigDecimal chargeAmount = new BigDecimal(chargeAmountDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN); + if(chargeAmount.compareTo(amount) > 0){ + throw new FebsException("充值金额需要大于"+chargeAmount); + } + + if (StrUtil.isBlank(mallMember.getTradePassword())) { + throw new FebsException("请设置交易密码"); + } + + if (!mallMember.getTradePassword().equals(SecureUtil.md5(apiChargeBalanceDto.getTradePassword()))) { + throw new FebsException("交易密码错误"); + } + MallMemberCharge mallMemberCharge = new MallMemberCharge(); + mallMemberCharge.setMemberId(memberId); + mallMemberCharge.setAmount(amount); + mallMemberCharge.setAddress(apiChargeBalanceDto.getAddress()); + mallMemberCharge.setState(1); + mallMemberChargeMapper.insert(mallMemberCharge); + + + return new FebsResponse().success().message("操作成功"); + } + // public static void main(String[] args) { // Set<String> objectsAccount = new HashSet<>(); // Set<String> objects = new HashSet<>(); -- Gitblit v1.9.1