From f1474f682d2bf0ed2eeb78d94287d45844700c06 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 26 Oct 2022 15:17:30 +0800
Subject: [PATCH] 20221021

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java |   34 ++++++++++++++++++++++++----------
 1 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java
index c854460..d63c917 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java
@@ -163,7 +163,7 @@
             throw new FebsException(MessageSourceUtils.getString("login_err_003"));
         }
         //获取下一个开奖
-        String redisKey = "on_hook_award_id";
+        String redisKey = "on_hook_award_id_test";
         String onHookAwardRedisId = redisUtils.getString(redisKey);
         DappOnHookAward dappOnHookAward = dappOnHookAwardDao.selectById(Long.parseLong(onHookAwardRedisId));
         if(ObjectUtil.isEmpty(dappOnHookAward)){
@@ -231,25 +231,39 @@
         BigDecimal systemTotal = dappWalletService.updatePTFC(memberId,totalProfit);
         totalProfit = totalProfit.subtract(profitSharingTotal).subtract(systemTotal);
 
-        //更新主表为结束状态
-        IgtOnHookPlanOrder igtOnHookPlanOrder = igtOnHookPlanOrderDao.selectById(orderId);
-        igtOnHookPlanOrder.setState(2);
-        igtOnHookPlanOrder.setProfit(totalProfit);
-        igtOnHookPlanOrderDao.updateById(igtOnHookPlanOrder);
+        //获取用户信息的是否盈利字段
+        DappMemberEntity dappMember = dappMemberDao.selectById(memberId);
+        Integer isProfit = dappMember.getIsProfit() == null ? 1 : dappMember.getIsProfit();
+
         //所有未中奖的本金
         BigDecimal totalAmount = igtOnHookPlanOrderItemDao.selectTotalAmountByByOrderIdAndMemberIdAndState(orderId,memberId,1,1);
+        //更新主表为结束状态
+        IgtOnHookPlanOrder igtOnHookPlanOrder = igtOnHookPlanOrderDao.selectById(orderId);
+        BigDecimal avaAmount = igtOnHookPlanOrder.getAvaAmount();
+        BigDecimal planAmount = igtOnHookPlanOrder.getPlanAmount();
+        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);
+
         DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberId);
         BigDecimal availableAmount = dappWalletCoinEntity.getAvailableAmount();
-        //如果中奖,返回收益,如果没中奖,则返回本金,最后加上剩余总挂机金额
-        BigDecimal total = totalProfit.add(totalAmount).add(igtOnHookPlanOrder.getAvaAmount()).setScale(4, BigDecimal.ROUND_DOWN);
+            //如果中奖,返回收益,最后加上剩余总挂机金额
+//            total = totalProfit.add(totalAmount).add(igtOnHookPlanOrder.getAvaAmount()).setScale(4, BigDecimal.ROUND_DOWN);
+        BigDecimal total = totalProfit.add(igtOnHookPlanOrder.getAvaAmount()).setScale(4, BigDecimal.ROUND_DOWN);
         dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),total);
         //生成流水记录
         BigDecimal add = availableAmount.add(total);
-        BigDecimal subtract = add.subtract(totalAmount);
+        BigDecimal subtract = add.subtract(totalProfit);
         DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberId, subtract, totalProfit, add, "投注盈利", 5);
         dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
         //更新用户表是否正在挂机状态字段为否
-        DappMemberEntity dappMember= dappMemberDao.selectById(memberId);
         dappMember.setIsOnHook(3);
         dappMemberDao.updateById(dappMember);
         return new FebsResponse().success().message(MessageSourceUtils.getString("Operation_001"));

--
Gitblit v1.9.1