From 5363215e8adc5a8106c598bbea281196c31e70ae Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Tue, 02 Apr 2024 14:56:57 +0800 Subject: [PATCH] 账号验证 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 91 ++++++++++++++++++++++++++++++--------------- src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java | 4 +- src/main/resources/application-dev.yml | 4 ++ 3 files changed, 67 insertions(+), 32 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java index 1d5f0e0..bfeb31a 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java @@ -1128,21 +1128,37 @@ mallMemberAmountMapper.updateTotalPerkById(mallMemberAmountPerk); } // insertSell(mallProductBuy.getMemberId(),profit,profit,BigDecimal.ZERO,BigDecimal.ZERO); - String orderNoSY = MallUtils.getOrderNum("SYNFT"); - mallMoneyFlowService.addMoneyFlow( - mallProductBuy.getMemberId(), - profit, - MoneyFlowTypeNewEnum.PERK_CYCLE.getValue(), - orderNoSY, - null, - FlowTypeNewEnum.NFT.getValue(), - MoneyFlowTypeNewEnum.PERK_CYCLE.getDescrition(), - AppContants.MEMBER_FLOW_DONE); - MallMemberAmount mallMemberAmountMine = mallMemberAmountMapper.selectByMemberId(mallProductBuy.getMemberId()); - mallMemberAmountMine.setTrendsNft(mallMemberAmountMine.getTrendsNft().add(profit)); - mallMemberAmountMapper.updateTrendsNftById(mallMemberAmountMine); + MallMember mallMemberMe = memberMapper.selectById(mallProductBuy.getMemberId()); + if(ProductEnum.MEMBER_FROZEN.getValue() == mallMemberMe.getIsFrozen()){ + //插入一条流水记录 + String orderNo = MallUtils.getOrderNum("FNFTW"); + mallMoneyFlowService.addMoneyFlow( + mallProductBuy.getMemberId(), + profit.negate(), + MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT_WRONG.getValue(), + orderNo, + null, + FlowTypeNewEnum.NFT.getValue(), + MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT_WRONG.getDescrition(), + AppContants.MEMBER_FLOW_ING); + }else{ + String orderNoSY = MallUtils.getOrderNum("SYNFT"); + mallMoneyFlowService.addMoneyFlow( + mallProductBuy.getMemberId(), + profit, + MoneyFlowTypeNewEnum.PERK_CYCLE.getValue(), + orderNoSY, + null, + FlowTypeNewEnum.NFT.getValue(), + MoneyFlowTypeNewEnum.PERK_CYCLE.getDescrition(), + AppContants.MEMBER_FLOW_DONE); + + MallMemberAmount mallMemberAmountMine = mallMemberAmountMapper.selectByMemberId(mallProductBuy.getMemberId()); + mallMemberAmountMine.setTrendsNft(mallMemberAmountMine.getTrendsNft().add(profit)); + mallMemberAmountMapper.updateTrendsNftById(mallMemberAmountMine); + } BigDecimal remainderDirect = bigDecimal.divide(new BigDecimal(String.valueOf(cycle)),0,BigDecimal.ROUND_DOWN);//取余 if(remainderDirect.compareTo(BigDecimal.ONE) == 0){ @@ -1163,25 +1179,40 @@ ).getValue()).multiply(new BigDecimal("0.01")); // BigDecimal basicPerkDirect = profit.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN); BigDecimal basicPerkDirect = nftTotal.multiply(basicPerkDirectPercent).setScale(2, BigDecimal.ROUND_DOWN); - /** - * 先插入流水记录,然后定时器每小时,循环一次找寻对应的数据执行 - */ - String orderNo = MallUtils.getOrderNum("DNFT"); - mallMoneyFlowService.addMoneyFlow( - directMember.getId(), - basicPerkDirect, - MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT.getValue(), - orderNo, - null, - FlowTypeNewEnum.NFT.getValue(), - MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT.getDescrition(), - AppContants.MEMBER_FLOW_ING); - MallMemberAmount mallMemberAmountDirect = mallMemberAmountMapper.selectByMemberId(directMember.getId()); - mallMemberAmountDirect.setFrozenNft(mallMemberAmountDirect.getFrozenNft().add(basicPerkDirect)); - mallMemberAmountMapper.updateFrozenNftById(mallMemberAmountDirect); + if(ProductEnum.MEMBER_FROZEN.getValue() == directMember.getIsFrozen()){ + //插入一条流水记录 + String orderNo = MallUtils.getOrderNum("FNFTW"); + mallMoneyFlowService.addMoneyFlow( + directMember.getId(), + profit.negate(), + MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT_WRONG.getValue(), + orderNo, + null, + FlowTypeNewEnum.NFT.getValue(), + MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT_WRONG.getDescrition(), + AppContants.MEMBER_FLOW_ING); + + }else{ + /** + * 先插入流水记录,然后定时器每小时,循环一次找寻对应的数据执行 + */ + String orderNo = MallUtils.getOrderNum("DNFT"); + mallMoneyFlowService.addMoneyFlow( + directMember.getId(), + basicPerkDirect, + MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT.getValue(), + orderNo, + null, + FlowTypeNewEnum.NFT.getValue(), + MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT.getDescrition(), + AppContants.MEMBER_FLOW_ING); + + MallMemberAmount mallMemberAmountDirect = mallMemberAmountMapper.selectByMemberId(directMember.getId()); + mallMemberAmountDirect.setFrozenNft(mallMemberAmountDirect.getFrozenNft().add(basicPerkDirect)); + mallMemberAmountMapper.updateFrozenNftById(mallMemberAmountDirect); + } } - } /** diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java index 01e1183..5aa8407 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java @@ -1310,7 +1310,7 @@ //插入一条流水记录 String orderNo = MallUtils.getOrderNum("FNFTW"); mallMoneyFlowService.addMoneyFlow( - memberId, + directMember.getId(), basicPerkDirect.negate(), MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT_WRONG.getValue(), orderNo, @@ -1335,7 +1335,7 @@ //插入一条流水记录 String orderNo = MallUtils.getOrderNum("NFT"); mallMoneyFlowService.addMoneyFlow( - memberId, + directMember.getId(), basicPerkDirect, MoneyFlowTypeNewEnum.BASIC_PERK_DIRECT_DONE.getValue(), orderNo, diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 7a619a1..0f8ead2 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -19,6 +19,10 @@ password: 123456 driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://120.27.238.55:3406/db_hongloumeng?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8 +# username: db_mall_gfa +# password: db_mall_gfa123!@#123 +# driver-class-name: com.mysql.cj.jdbc.Driver +# url: jdbc:mysql://47.111.90.145:3306/db_mall_gfa?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&allowMultiQueries=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2b8 redis: # Redis数据库索引(默认为 0) -- Gitblit v1.9.1