From 5b924f97d699e4d7c0175fb09125c964e29d6416 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Sun, 30 Oct 2022 10:57:29 +0800
Subject: [PATCH] 20221021
---
src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml | 13 +++++++++++++
src/main/java/cc/mrbird/febs/dapp/service/impl/ApiIgtOnHookPlanServiceImpl.java | 18 ++++++++----------
src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java | 2 ++
3 files changed, 23 insertions(+), 10 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java
index 6930c39..aa147f0 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java
@@ -32,4 +32,6 @@
IgtOnHookPlanOrderItem selectByCreateTimeAndIsgoaAndOrderId(@Param("endTime")Date endTime, @Param("isGoal")int i, @Param("orderId")Long orderId);
IgtOnHookPlanOrderItem selectOneByIgtIdAndMemberId(@Param("orderId") Long orderId, @Param("memberId")Long memberId);
+
+ BigDecimal selectTotalAmountByIDAndOrderId(@Param("start")Long id, @Param("end")Long id1, @Param("orderId")Long orderId);
}
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 b05e763..3cb9ffa 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
@@ -391,23 +391,21 @@
if(2 == igtOnHookPlanOrderItem.getIsGoal()){
//返还两次中奖之间的本金
Date endTime = igtOnHookPlanOrderItem.getCreateTime();
- Date startTime = null;
+ BigDecimal totalAmount = BigDecimal.ZERO;
//返回上次中奖的记录
IgtOnHookPlanOrderItem igtOld = igtOnHookPlanOrderItemDao.selectByCreateTimeAndIsgoaAndOrderId(endTime,2,igtOnHookPlanOrder.getId());
if(ObjectUtil.isNotEmpty(igtOld)){
- startTime = igtOld.getCreateTime();
+ totalAmount = igtOnHookPlanOrderItemDao.selectTotalAmountByIDAndOrderId(igtOld.getId(),
+ igtOnHookPlanOrderItem.getId(),igtOnHookPlanOrderItem.getOrderId());
+ }else{
+ totalAmount = igtOnHookPlanOrderItemDao.selectTotalAmountByIDAndOrderId(igtOld.getId(),
+ null,igtOnHookPlanOrderItem.getOrderId());
}
- BigDecimal totalAmount = igtOnHookPlanOrderItemDao.selectTotalAmountByCreateTimeAndOrderId(startTime,endTime,igtOnHookPlanOrderItem.getOrderId());
- int i = (totalAmount.add(igtOnHookPlanOrder.getAvaAmount())).compareTo(igtOnHookPlanOrder.getPlanAmount());
//如果中奖,增加挂机主表的挂机总收益,返还两次中奖之间的本金
igtOnHookPlanOrderDao.AddProfitById(igtOnHookPlanOrder.getId()
,igtOnHookPlanOrderItem.getProfit());
- if(i >= 0){
- igtOnHookPlanOrder.setAvaAmount(igtOnHookPlanOrder.getPlanAmount());
- }else{
- igtOnHookPlanOrder.setAvaAmount(totalAmount);
- }
- igtOnHookPlanOrderDao.updateById(igtOnHookPlanOrder);
+ igtOnHookPlanOrderDao.addAvaAmountById(igtOnHookPlanOrder.getId()
+ ,totalAmount);
}else{
//如果不中奖,减少挂机剩余金额即减少本金
Integer updateCount = igtOnHookPlanOrderDao.updateAvaAmountById(igtOnHookPlanOrder.getId()
diff --git a/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml b/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml
index 48371de..6d95d97 100644
--- a/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml
+++ b/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml
@@ -104,5 +104,18 @@
limit 1
</select>
+ <select id="selectTotalAmountByIDAndOrderId" resultType="java.math.BigDecimal">
+ SELECT
+ ifnull(sum(a.amount),0)
+ FROM igt_on_hook_plan_order_item a
+ <where>
+ a.order_id = #{orderId}
+ and a.id < #{end}
+ <if test="start != null">
+ and a.id > #{start}
+ </if>
+ </where>
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1