From 420efcecbc5b9b17f96b9c0a37d9bc3a5f1afccd Mon Sep 17 00:00:00 2001 From: wzy <wzy19931122ai@163.com> Date: Sun, 06 Nov 2022 17:46:01 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 49 ++++++++---------------- src/main/java/cc/mrbird/febs/job/ChainListenerJob.java | 4 +- src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 18 ++++---- src/main/java/cc/mrbird/febs/tree/TreeConstants.java | 17 ++++++++ src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java | 19 --------- 5 files changed, 45 insertions(+), 62 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java index f50fc73..871666c 100644 --- a/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java +++ b/src/main/java/cc/mrbird/febs/dapp/chain/ChainEnum.java @@ -33,15 +33,6 @@ ""), /** - * 卡牌 - */ - BSC_NFT_SDC("BSC", "0x3afD1Bf0994214DBe5ccfA7d8643261B195532c2", - "0x07ee6de0ca4b289f8e69484f70d09988c6df6697f411dc623179930a3578994f", - "https://bsc-dataseed1.ninicoin.io", - "0xb7FDE337f2236F78B2823d9F97eAB03ce893CC3D", - ""), - - /** * 币安 usdt合约 * 0x55d398326f99059fF775485246999027B3197955 * 测试链 0x337610d27c682E347C9cD60BD4b3b107C9d34dDd @@ -62,17 +53,9 @@ "0x7bee8cf9441800655376ba95729c0807231367cf75702dd3b17fa5290196bb87", "https://bsc-dataseed1.ninicoin.io", "0xb27e44f98543e480dbd071b6605005e3d99b3dd4", - ""), - - /** - * 多余手续费收集地址 - */ - BSC_TFC_FEE("BSC", "0x8084Cf691B69c70De8A7c345E63CaA740B730FA5", - "0x7bee8cf9441800655376ba95729c0807231367cf75702dd3b17fa5290196bb87", - "https://bsc-dataseed1.ninicoin.io", - "0xb27e44f98543e480dbd071b6605005e3d99b3dd4", ""); + private String chain; private String address; diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java index d5c7446..3d6bb3b 100644 --- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java @@ -14,6 +14,7 @@ import cc.mrbird.febs.rabbit.producer.ChainProducer; import cc.mrbird.febs.tree.MatrixTree; import cc.mrbird.febs.tree.MemberNode; +import cc.mrbird.febs.tree.TreeConstants; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; @@ -178,58 +179,40 @@ /** * 复投后,推一个拿一轮,推两个拿两轮,推三个后终身有效。 - * 按规则每轮未能提取的奖金分配: - * 50%直接进入TFC底池 - * 20%给到推荐人 - * 30%留下待提。 + * 200u单。 + * 无直推则收益200U + * 一人加一轮400u,二人二轮 + * 三人永久。 */ if (directCnt.size() < 3 && member.getOutCnt() != 0 && member.getOutCnt() - 1 == directCnt.size()) { - BigDecimal amount = new BigDecimal("190"); - - BigDecimal sourcePool = amount.multiply(new BigDecimal("0.5")); - BigDecimal directAmount = amount.multiply(new BigDecimal("0.2")); - - BigDecimal remain = amount.subtract(sourcePool).subtract(directAmount); - - new Thread(() -> { - ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer("0xb06cc3dAF362a1670F12eBD0242022b538Ca72ef", sourcePool); - }).start(); - - if (parent != null) { - dappWalletService.updateWalletCoinWithLock(directAmount, parent.getId(), 1); - - DappFundFlowEntity direct = new DappFundFlowEntity(parent.getId(), directAmount, 3, 2, null, null); - dappFundFlowDao.insert(direct); + return; + } else { + BigDecimal amount = null; + if (directCnt.size() < 1) { + amount = TreeConstants.PUT_IN_AMOUNT; + } else { + amount = TreeConstants.FULL_PROFIT_AMOUNT; } - dappWalletService.addFrozenAmountWithLock(remain, memberId); - } else { dappWalletService.releaseFrozenAmountWithLock(memberId); member.setOutCnt(member.getOutCnt() + 1); dappMemberDao.updateById(member); - dappWalletService.updateWalletCoinWithLock(new BigDecimal(190), member.getId(), 1); + dappWalletService.updateWalletCoinWithLock(amount, member.getId(), 1); - DappFundFlowEntity matrixProfitFlow = new DappFundFlowEntity(memberId, new BigDecimal("190"), 2, 2, null, null); + DappFundFlowEntity matrixProfitFlow = new DappFundFlowEntity(memberId, amount, 2, 2, null, null); dappFundFlowDao.insert(matrixProfitFlow); } - DappFundFlowEntity rePutInFlow = new DappFundFlowEntity(memberId, new BigDecimal("100").negate(), 1, 2, null, null); + DappFundFlowEntity rePutInFlow = new DappFundFlowEntity(memberId, TreeConstants.PUT_IN_AMOUNT.negate(), 1, 2, null, null); dappFundFlowDao.insert(rePutInFlow); - - DappFundFlowEntity safePoolFlow = new DappFundFlowEntity(memberId, new BigDecimal("10").negate(), 4, 2, null, null); - dappFundFlowDao.insert(safePoolFlow); - - DappMineDataEntity mineData = dappSystemDao.selectMineDataForOne(); - mineData.setSafePool(mineData.getSafePool().add(BigDecimal.TEN)); - dappSystemDao.updateMineData(mineData); } } @Override public void tfcNewPrice(String data) { - redisUtils.set(AppContants.REDIS_KEY_TFC_NEW_PRICE, new BigDecimal(data)); +// redisUtils.set(AppContants.REDIS_KEY_TFC_NEW_PRICE, new BigDecimal(data)); } @Override diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java index 1f8da63..cb9e924 100644 --- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java @@ -206,18 +206,18 @@ DappFundFlowEntity feeFlow = new DappFundFlowEntity(member.getId(), withdrawDto.getFee().negate(), 7, 2, null, null); dappFundFlowDao.insert(feeFlow); - DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), withdrawDto.getAmount().negate(), 5, 2, withdrawDto.getFee(), null); + DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), withdrawDto.getAmount().negate(), 5, 1, withdrawDto.getFee(), null); dappFundFlowDao.insert(fundFlow); - String hash = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(member.getAddress(), withdrawDto.getAmount()); - fundFlow.setToHash(hash); - dappFundFlowDao.updateById(fundFlow); +// String hash = ChainService.getInstance(ChainEnum.BSC_USDT.name()).transfer(member.getAddress(), withdrawDto.getAmount()); +// fundFlow.setToHash(hash); +// dappFundFlowDao.updateById(fundFlow); - Map<String, Object> map = new HashMap<>(); - map.put("fee", withdrawDto.getFee()); - map.put("address", ChainEnum.BSC_TFC_FEE.getAddress()); - map.put("flow", feeFlow.getId()); - chainProducer.sendTfcFee(JSONObject.toJSONString(map)); +// Map<String, Object> map = new HashMap<>(); +// map.put("fee", withdrawDto.getFee()); +// map.put("address", ChainEnum.BSC_TFC_FEE.getAddress()); +// map.put("flow", feeFlow.getId()); +// chainProducer.sendTfcFee(JSONObject.toJSONString(map)); } @Override diff --git a/src/main/java/cc/mrbird/febs/job/ChainListenerJob.java b/src/main/java/cc/mrbird/febs/job/ChainListenerJob.java index 725aebb..7660ee3 100644 --- a/src/main/java/cc/mrbird/febs/job/ChainListenerJob.java +++ b/src/main/java/cc/mrbird/febs/job/ChainListenerJob.java @@ -85,7 +85,7 @@ new Thread(() -> { log.info("监听:[{} - {}]", finalBlock, end); ChainService.contractEventListener(finalBlock, end, bscUsdtContractEvent, ChainEnum.BSC_USDT_LISTENER.name()); - ChainService.contractEventListener(finalBlock, end, bscCoinContractEvent, ChainEnum.BSC_TFC_FEE.name()); + ChainService.contractEventListener(finalBlock, end, bscCoinContractEvent, ChainEnum.BSC_TFC_LISTENER.name()); }).start(); block = block.add(section); @@ -94,7 +94,7 @@ } } ChainService.contractEventListener(block, bscUsdtContractEvent, ChainEnum.BSC_USDT_LISTENER.name()); - ChainService.contractEventListener(block, bscCoinContractEvent, ChainEnum.BSC_TFC_FEE.name()); + ChainService.contractEventListener(block, bscCoinContractEvent, ChainEnum.BSC_TFC_LISTENER.name()); long end = System.currentTimeMillis(); log.info("区块链监听启动完成, 消耗时间{}", end - start); diff --git a/src/main/java/cc/mrbird/febs/tree/TreeConstants.java b/src/main/java/cc/mrbird/febs/tree/TreeConstants.java new file mode 100644 index 0000000..21c5fa5 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/tree/TreeConstants.java @@ -0,0 +1,17 @@ +package cc.mrbird.febs.tree; + +import java.math.BigDecimal; + +public interface TreeConstants { + + /** + * 投入金额 + */ + BigDecimal PUT_IN_AMOUNT = new BigDecimal("200"); + + /** + * 满收益(至少推荐一人) + */ + BigDecimal FULL_PROFIT_AMOUNT = new BigDecimal("400"); + +} -- Gitblit v1.9.1