fix: 优化收益计算、地址校验和提现逻辑
- 修正收益计算将月收益改为日收益,格式化显示为'(币种)' - 统一NEXA地址校验规则,必须带'nexa:'前缀 - 修复提现金额计算逻辑,改为从余额中减去提现金额和手续费 - 优化SQL查询,使用ROW_NUMBER替代变量排序 - 添加用户权限校验,算力保留两位小数并添加单位字段 - 添加空字符串校验和调试日志输出 - 启用提现队列监听功能
This commit is contained in:
@@ -128,6 +128,7 @@ public class LeaseMachineServiceImpl extends ServiceImpl<LeaseMachineMapper, Lea
|
||||
.collect(Collectors.groupingBy(PowerIncomeInfoDto::getMachineId));
|
||||
for (MachineInfoDto machineInfo : machineInfoDtoList) {
|
||||
machineInfo.setPriceList(machinePriceMap.get(machineInfo.getId()));
|
||||
machineInfo.setMonthIncome("$"+machineInfo.getMonthIncome()+"("+machineInfo.getCoin()+")");
|
||||
List<PowerIncomeInfoDto> powerIncomeInfoDtoList = collect.get(machineInfo.getId());
|
||||
for (int i = 0; i < powerIncomeInfoDtoList.size(); i++) {
|
||||
PowerIncomeInfoDto powerIncomeInfoDto = powerIncomeInfoDtoList.get(i);
|
||||
|
||||
@@ -1022,9 +1022,6 @@ public class LeaseOrderInfoServiceImpl extends ServiceImpl<LeaseOrderInfoMapper,
|
||||
for (OrderMiningInfoDto addressInfo : orderMiningInfoDtoList) {
|
||||
String coin = addressInfo.getCoin();
|
||||
String walletAddress = addressInfo.getWalletAddress();
|
||||
if(coin.equalsIgnoreCase("NEXA") && walletAddress.startsWith("nexa:")){
|
||||
addressInfo.setWalletAddress(walletAddress.substring(5));
|
||||
}
|
||||
if (!WalletRuleCheckUtils.checkAddress(coin,walletAddress)){
|
||||
addressVerify = addressInfo.getWalletAddress() + "钱包地址格式错误";
|
||||
break;
|
||||
@@ -1140,9 +1137,11 @@ public class LeaseOrderInfoServiceImpl extends ServiceImpl<LeaseOrderInfoMapper,
|
||||
@Override
|
||||
@DSTransactional
|
||||
public Result<MiningConfigInfoDto> getPurchasedInfo(BaseVo baseVo) {
|
||||
Long authId = SecurityUtils.getUserId();
|
||||
|
||||
//找到miner 和钱包 ,pool 矿池名
|
||||
MiningConfigInfoDto info = leaseOrderMiningMapper.getPurchasedInfo(baseVo.getId());
|
||||
List<PurchasedMachineDto> list = leaseOrderMiningMapper.getPurchasedMachineInfo(info);
|
||||
List<PurchasedMachineDto> list = leaseOrderMiningMapper.getPurchasedMachineInfo(info,authId);
|
||||
|
||||
|
||||
//根据钱包 + 币种 + 矿工号 查询 pool 库 pool.kryptex 表 中对应 算力
|
||||
@@ -1153,7 +1152,8 @@ public class LeaseOrderInfoServiceImpl extends ServiceImpl<LeaseOrderInfoMapper,
|
||||
MiningHashrateInfoDto miningHashrateInfoDto = recentlyHashRateMap.get(purchasedMachineDto.getWorkerId());
|
||||
if (miningHashrateInfoDto != null){
|
||||
purchasedMachineDto.setRecordTime(miningHashrateInfoDto.getRecordTime());
|
||||
purchasedMachineDto.setPower(miningHashrateInfoDto.getPower());
|
||||
purchasedMachineDto.setPower(miningHashrateInfoDto.getPower().setScale(2, RoundingMode.HALF_UP));
|
||||
purchasedMachineDto.setUnit(miningHashrateInfoDto.getUnit());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user