| | |
| | | /** |
| | | * A币卖币规则,卖出100%销毁,30%回流底池溢价 |
| | | */ |
| | | BigDecimal coinUsdtAmountFee = coinUsdtAmount.multiply(outPercent).setScale(4,BigDecimal.ROUND_DOWN); |
| | | BigDecimal coinUsdtAmountFee = coinUsdtAmount.multiply(new BigDecimal(0.2)).setScale(4,BigDecimal.ROUND_DOWN); |
| | | // coinUsdtAmount = coinUsdtAmount.multiply(outPercent).setScale(4,BigDecimal.ROUND_DOWN); |
| | | //金本位底池数量 |
| | | DataDictionaryCustom coinAUsdtPriceDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( |
| | |
| | | // BigDecimal amountIn = BigDecimal.valueOf(951); |
| | | // BigDecimal result = amountIn.divide(BigDecimal.valueOf(100)); |
| | | // System.out.println(result.remainder(BigDecimal.ONE).equals(BigDecimal.ZERO)); |
| | | Long memberId = 294L; |
| | | if(294L == memberId){ |
| | | Long memberId = 3067L; |
| | | if(AppContants.YL_MEMBER_ID.equals(memberId)){ |
| | | System.out.println(1); |
| | | }else{ |
| | | System.out.println(2); |
| | |
| | | if(amountIn.compareTo(new BigDecimal(100)) < 0){ |
| | | throw new FebsException("Min 100"); |
| | | } |
| | | if(amountIn.compareTo(new BigDecimal(1000)) > 0){ |
| | | throw new FebsException("Max 1000"); |
| | | if(amountIn.compareTo(new BigDecimal(100000)) > 0){ |
| | | throw new FebsException("Max 100000"); |
| | | } |
| | | |
| | | BigDecimal result = amountIn.divide(BigDecimal.valueOf(100)); |
| | |
| | | */ |
| | | BigDecimal amountInAll = amountInLast.add(amountIn); |
| | | if(getLocalAddress(dappMemberEntity.getAddress())){ |
| | | if(amountInAll.compareTo(new BigDecimal(1000)) > 0){ |
| | | BigDecimal add = new BigDecimal(1000).subtract(amountInLast).setScale(0, BigDecimal.ROUND_DOWN); |
| | | if(amountInAll.compareTo(new BigDecimal(100000)) > 0){ |
| | | BigDecimal add = new BigDecimal(100000).subtract(amountInLast).setScale(0, BigDecimal.ROUND_DOWN); |
| | | throw new FebsException("Max "+ add.toString()); |
| | | } |
| | | } |
| | |
| | | 1, |
| | | ausdAmountNeed, |
| | | transferADto.getTxHash()); |
| | | |
| | | |
| | | // DappFundFlowEntity fundFlow = new DappFundFlowEntity( |
| | | // member.getId(), |
| | | // transferADto.getAmount(), |
| | | // type, |
| | | // 1, |
| | | // new BigDecimal("1"), |
| | | // transferADto.getTxHash()); |
| | | dappFundFlowDao.insert(fundFlow); |
| | | return fundFlow.getId(); |
| | | } |
| | |
| | | if(DappFundFlowEntity.WITHDRAW_STATUS_AGREE == flow.getStatus()){ |
| | | throw new FebsException("请勿重复提交"); |
| | | } |
| | | /** |
| | | * 生成会员入金买A币的记录 |
| | | */ |
| | | DappChargeUsdtEntity dappChargeUsdtEntity = new DappChargeUsdtEntity( |
| | | member.getId(), |
| | | dappMemberEntity.getAddress(), |
| | | transferADto.getTxHash(), |
| | | 2, |
| | | transferADto.getAmount(), |
| | | BigDecimal.ZERO, |
| | | BigDecimal.ZERO); |
| | | dappChargeUsdtMapper.insert(dappChargeUsdtEntity); |
| | | /** |
| | | * 减少用户的AUSD数量 |
| | | */ |
| | | DappUsdtPerkEntity dappUsdtPerkEntity = dappUsdtPerkEntityMapper.selectByMemberId(member.getId()); |
| | | BigDecimal ausdAmount = dappUsdtPerkEntity.getAusdAmount(); |
| | | ausdAmount = ausdAmount.subtract(flow.getFee()).setScale(4,BigDecimal.ROUND_DOWN); |
| | | dappUsdtPerkEntity.setAusdAmount(ausdAmount); |
| | | dappUsdtPerkEntityMapper.updateById(dappUsdtPerkEntity); |
| | | /** |
| | | * 流水关联用户购买记录 |
| | | */ |
| | | flow.setSystemProfitId(dappChargeUsdtEntity.getId()); |
| | | |
| | | /** |
| | | * 链上转账的hash值 |
| | | */ |
| | | flow.setFromHash(transferADto.getTxHash()); |
| | | flow.setStatus(DappFundFlowEntity.WITHDRAW_STATUS_AGREE); |
| | | dappFundFlowDao.updateById(flow); |
| | | /** |
| | | * 发送消息处理返利逻辑 |
| | | */ |
| | | chainProducer.sendAntACoinInMsg(flow.getId()); |
| | | /** |
| | | * 发送消息处理代理升级 |
| | | */ |
| | | chainProducer.sendAntMemberLevelMsg(member.getId()); |
| | | // /** |
| | | // * 生成会员入金买A币的记录 |
| | | // */ |
| | | // DappChargeUsdtEntity dappChargeUsdtEntity = new DappChargeUsdtEntity( |
| | | // member.getId(), |
| | | // dappMemberEntity.getAddress(), |
| | | // transferADto.getTxHash(), |
| | | // 2, |
| | | // transferADto.getAmount(), |
| | | // BigDecimal.ZERO, |
| | | // BigDecimal.ZERO); |
| | | // dappChargeUsdtMapper.insert(dappChargeUsdtEntity); |
| | | // /** |
| | | // * 减少用户的AUSD数量 |
| | | // */ |
| | | // DappUsdtPerkEntity dappUsdtPerkEntity = dappUsdtPerkEntityMapper.selectByMemberId(member.getId()); |
| | | // BigDecimal ausdAmount = dappUsdtPerkEntity.getAusdAmount(); |
| | | // ausdAmount = ausdAmount.subtract(flow.getFee()).setScale(4,BigDecimal.ROUND_DOWN); |
| | | // dappUsdtPerkEntity.setAusdAmount(ausdAmount); |
| | | // dappUsdtPerkEntityMapper.updateById(dappUsdtPerkEntity); |
| | | // /** |
| | | // * 流水关联用户购买记录 |
| | | // */ |
| | | // flow.setSystemProfitId(dappChargeUsdtEntity.getId()); |
| | | // /** |
| | | // * 链上转账的hash值 |
| | | // */ |
| | | // flow.setFromHash(transferADto.getTxHash()); |
| | | // flow.setStatus(DappFundFlowEntity.WITHDRAW_STATUS_AGREE); |
| | | // dappFundFlowDao.updateById(flow); |
| | | // /** |
| | | // * 发送消息处理返利逻辑 |
| | | // */ |
| | | // chainProducer.sendAntACoinInMsg(flow.getId()); |
| | | // /** |
| | | // * 发送消息处理代理升级 |
| | | // */ |
| | | // chainProducer.sendAntMemberLevelMsg(member.getId()); |
| | | } else { |
| | | DappFundFlowEntity flow = dappFundFlowDao.selectById(transferADto.getId()); |
| | | if (flow.getStatus() == 1) { |
| | |
| | | BigDecimal feePercent = new BigDecimal(StrUtil.isEmpty(dic.getValue()) ? "0.2" : dic.getValue()); |
| | | //手续费 |
| | | BigDecimal feeCnt = coinCnt.multiply(feePercent).setScale(4,BigDecimal.ROUND_DOWN); |
| | | if(294L == member.getId()){ |
| | | if(AppContants.YL_MEMBER_ID.equals(member.getId()) |
| | | || AppContants.YL_MEMBER_ID_TWO.equals(member.getId())){ |
| | | feeCnt = BigDecimal.ZERO; |
| | | } |
| | | //闪对钱包获取的 |