From bc26bbd27b75ab2f8ffc79a5a5fe25206f15abc7 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Tue, 28 Nov 2023 17:39:07 +0800 Subject: [PATCH] 匹配 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java | 28 ++++++++++++++++++---------- 1 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java index ad8e578..842f7b9 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallProductServiceImpl.java @@ -89,6 +89,11 @@ * 预约,验证交易密码、预约产品是否开启状态、该产品是否已经预约、token是否足够 * 冻结对应的令牌数量、生成预约记录、生成流水记录 */ + Integer isFrozen = mallMember.getIsFrozen(); + if(ProductEnum.MEMBER_UNFROZEN.getValue() != isFrozen){ + throw new FebsException("账户无法预约"); + } + DateTime nowTime = DateUtil.parseTime(DateUtil.formatTime(DateUtil.date())); DataDictionaryCustom startTimeDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( DataDictionaryEnum.YU_YUE_START_TIME.getType(), @@ -216,8 +221,9 @@ FlowTypeNewEnum.FCM_COIN.getValue(), MoneyFlowTypeNewEnum.FCM_OUT_FEE.getDescrition()); - mallMemberAmount.setTrendsNft(mallMemberAmount.getTrendsNft().add(nftCnt)); - mallMemberAmountMapper.updateTrendsNftById(mallMemberAmount); + MallMemberAmount mallMemberAmountNft = mallMemberAmountMapper.selectByMemberId(memberId); + mallMemberAmountNft.setTrendsNft(mallMemberAmountNft.getTrendsNft().add(nftCnt)); + mallMemberAmountMapper.updateTrendsNftById(mallMemberAmountNft); String orderNoNFT = MallUtils.getOrderNum("NFT"); iMallMoneyFlowService.addMoneyFlow( memberId, @@ -288,11 +294,13 @@ mallMemberAmount.setTrendsNft(mallMemberAmount.getTrendsNft().subtract(nftCnt)); mallMemberAmountMapper.updateTrendsNftById(mallMemberAmount); - mallMemberAmount.setFcmCntAva(mallMemberAmount.getFcmCntAva().subtract(fcmFeeCnt)); - mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmount); + MallMemberAmount mallMemberAmountFcm = mallMemberAmountMapper.selectByMemberId(memberId); + mallMemberAmountFcm.setFcmCntAva(mallMemberAmountFcm.getFcmCntAva().subtract(fcmFeeCnt)); + mallMemberAmountMapper.updateFcmCntAvaById(mallMemberAmountFcm); - mallMemberAmount.setFrozenNft(mallMemberAmount.getFrozenNft().add(nftCntAva)); - mallMemberAmountMapper.updateFrozenNftById(mallMemberAmount); + MallMemberAmount mallMemberAmountFrozenNFT = mallMemberAmountMapper.selectByMemberId(memberId); + mallMemberAmountFrozenNFT.setFrozenNft(mallMemberAmountFrozenNFT.getFrozenNft().add(nftCntAva)); + mallMemberAmountMapper.updateFrozenNftById(mallMemberAmountFrozenNFT); iMallMoneyFlowService.addMoneyFlow( memberId, nftCnt.negate(), @@ -303,12 +311,12 @@ MoneyFlowTypeNewEnum.NFT_OUT.getDescrition()); iMallMoneyFlowService.addMoneyFlow( memberId, - nftFee.negate(), - MoneyFlowTypeNewEnum.NFT_OUT_FEE.getValue(), + fcmFeeCnt.negate(), + MoneyFlowTypeNewEnum.NFT_OUT_FEE_FCM.getValue(), orderNo, mallMember.getId(), - FlowTypeNewEnum.NFT.getValue(), - MoneyFlowTypeNewEnum.NFT_OUT_FEE.getDescrition()); + FlowTypeNewEnum.FCM_COIN.getValue(), + MoneyFlowTypeNewEnum.NFT_OUT_FEE_FCM.getDescrition()); iMallMoneyFlowService.addMoneyFlow( memberId, nftFee.negate(), -- Gitblit v1.9.1