From 4957e91b9cbd769a95872329d5fd628c211d5655 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 03 Nov 2022 17:24:50 +0800
Subject: [PATCH] 20221021
---
src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java | 105 ++++++++++++++++++++++++++++++----------------------
1 files changed, 61 insertions(+), 44 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java b/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
index 4c1ade5..b5af876 100644
--- a/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
+++ b/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
@@ -6,6 +6,7 @@
import cc.mrbird.febs.dapp.mapper.*;
import cc.mrbird.febs.dapp.service.ApiIgtOnHookPlanService;
import cc.mrbird.febs.dapp.service.DappWalletService;
+import cc.mrbird.febs.rabbit.producer.UsdtUpdateProducer;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
@@ -23,6 +24,7 @@
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
+import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.Format;
@@ -62,6 +64,9 @@
@Autowired
private ApiIgtOnHookPlanService apiIgtOnHookPlanService;
+
+ @Autowired
+ private DappOnHookDoneDao dappOnHookDoneDao;
/**
* 五分钟更新一次数据
@@ -226,7 +231,7 @@
// igtOnHookPlanOrder.setState(3);
// igtOnHookPlanOrderDao.updateById(igtOnHookPlanOrder);
// }else{
-// //获取收益率
+ //获取收益率
// DappMemberEntity dappMemberEntity = dappMemberDao.selectById(igtOnHookPlanOrder.getMemberId());
// DataDictionaryCustom identityDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.LEVEL_MB.getType(), dappMemberEntity.getIdentity());
// String identityDicValue = identityDic.getValue();
@@ -274,57 +279,69 @@
}
+ @Resource
+ private UsdtUpdateProducer usdtUpdateProducer;
+
// @Scheduled(cron = "0/5 * * * * ? ")
@Scheduled(cron = "0 0/1 * * * ? ")
public void updatePlanOrder(){
Log.info("开始更新挂机主表状态");
-
List<IgtOnHookPlanOrder> igtOnHookPlanOrders = igtOnHookPlanOrderDao.selectByState(3);
if(CollUtil.isNotEmpty(igtOnHookPlanOrders)){
+// List<Long> ids = igtOnHookPlanOrderDao.selectIdsByState(3);
+// //更新状态避免重复查询
+// igtOnHookPlanOrderDao.updateByIds(ids);
for(IgtOnHookPlanOrder igtOnHookPlanOrder : igtOnHookPlanOrders){
- Long orderId = igtOnHookPlanOrder.getId();
- Long memberId = igtOnHookPlanOrder.getMemberId();
- BigDecimal planAmount = igtOnHookPlanOrder.getPlanAmount();
- BigDecimal avaAmount = igtOnHookPlanOrder.getAvaAmount();
- //总盈利
-// BigDecimal totalProfit = igtOnHookPlanOrderItemDao.selectTotalProfitByByOrderIdAndMemberIdAndState(orderId,memberId,1,2);
- BigDecimal totalProfit = igtOnHookPlanOrder.getProfit();
+ usdtUpdateProducer.sendOnHookEnd(igtOnHookPlanOrder.getId());
- DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
- String refererIds = dappMemberEntity.getRefererIds();
- List<String> refererIdList = StrUtil.split(refererIds, ",", -1, true, true);
- //生成流水佣金和盈利分成和流水记录,返回剩余盈利
- BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdList, totalProfit);
- //平台分成,返回剩余盈利
- BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,totalProfit);
- totalProfit = totalProfit.subtract(profitSharingTotal).subtract(systemTotal);
-
-
- //获取用户信息的是否盈利字段
- DappMemberEntity dappMember = dappMemberDao.selectById(memberId);
- Integer isProfit = dappMember.getIsProfit() == null ? 1 : dappMember.getIsProfit();
-
- igtOnHookPlanOrder.setState(2);
- //一次挂机剩余的全部金额
- BigDecimal totalMoney = totalProfit.add(avaAmount);
- if(totalMoney.compareTo(planAmount)<=0){
- igtOnHookPlanOrder.setProfitState(2);
- }else{
- igtOnHookPlanOrder.setProfitState(1);
- }
- igtOnHookPlanOrder.setProfit(totalProfit);
- igtOnHookPlanOrderDao.updateById(igtOnHookPlanOrder);
- dappMemberEntity.setIsOnHook(3);
- dappMemberDao.updateById(dappMemberEntity);
-
- DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberId);
- BigDecimal availableAmount = dappWalletCoinEntity.getAvailableAmount();
- dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),totalMoney);
-
- BigDecimal add = availableAmount.add(totalMoney);
- BigDecimal subtract = add.subtract(totalProfit);
- DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberId, subtract, totalProfit, add, "投注盈利", 5);
- dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
+// Long memberId = igtOnHookPlanOrder.getMemberId();
+// BigDecimal planAmount = igtOnHookPlanOrder.getPlanAmount();
+//
+// DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
+// //避免重复
+// QueryWrapper<DappOnHookDone> objectQueryWrapper = new QueryWrapper<>();
+// objectQueryWrapper.eq("order_id",igtOnHookPlanOrder.getId());
+// List<DappOnHookDone> dappOnHookDones = dappOnHookDoneDao.selectList(objectQueryWrapper);
+// if(CollUtil.isNotEmpty(dappOnHookDones)){
+// continue;
+// }
+// //生成记录
+// DappOnHookDone dappOnHookDone = new DappOnHookDone(dappMemberEntity.getId(), igtOnHookPlanOrder.getId());
+// dappOnHookDoneDao.insert(dappOnHookDone);
+// //获取收益率
+// DataDictionaryCustom identityDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.LEVEL_MB.getType(), dappMemberEntity.getIdentity());
+// String identityDicValue = identityDic.getValue();
+// JSONObject identityDicValueParse = JSONUtil.parseObj(identityDicValue);
+// BigDecimal hangingRevenueLevel = new BigDecimal(identityDicValueParse.get("hangingRevenue").toString())
+// .multiply(new BigDecimal(0.01)).setScale(4,BigDecimal.ROUND_DOWN);
+// //获取收益
+// BigDecimal totalProfit = planAmount.multiply(hangingRevenueLevel).setScale(4,BigDecimal.ROUND_DOWN);
+//
+// String refererIds = dappMemberEntity.getRefererIds();
+// List<String> refererIdList = StrUtil.split(refererIds, ",", -1, true, true);
+// //生成流水佣金和盈利分成和流水记录,返回剩余盈利
+// BigDecimal profitSharingTotal = dappWalletService.updateLSYJYLFC(refererIdList, totalProfit,igtOnHookPlanOrder.getId());
+// //平台分成,返回剩余盈利
+// BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,totalProfit,igtOnHookPlanOrder.getId());
+// totalProfit = totalProfit.subtract(profitSharingTotal).subtract(systemTotal);
+//
+// igtOnHookPlanOrder.setState(2);
+// //一次挂机剩余的全部金额
+// BigDecimal totalMoney = totalProfit.add(planAmount);
+//
+// igtOnHookPlanOrder.setProfit(totalProfit);
+// igtOnHookPlanOrderDao.updateById(igtOnHookPlanOrder);
+// dappMemberEntity.setIsOnHook(3);
+// dappMemberDao.updateById(dappMemberEntity);
+//
+// DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberId);
+// BigDecimal availableAmount = dappWalletCoinEntity.getAvailableAmount();
+// dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),totalMoney);
+//
+// BigDecimal add = availableAmount.add(totalMoney);
+// BigDecimal subtract = add.subtract(totalProfit);
+// DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberId, subtract, totalProfit, add, "投注盈利", 5,igtOnHookPlanOrder.getId());
+// dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
}
}
--
Gitblit v1.9.1