From c84de2a02892d1a4d9af628b226ee0960011fd41 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Sat, 29 Oct 2022 21:55:14 +0800
Subject: [PATCH] 20221021
---
src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java | 10 ++++++----
src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml | 21 ++++++++++++++++++---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 7 +++++++
src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java | 2 ++
src/test/java/cc/mrbird/febs/JunitTest.java | 8 ++++++--
5 files changed, 39 insertions(+), 9 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 cc997b6..2e94e0f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/IgtOnHookPlanOrderItemDao.java
@@ -28,4 +28,6 @@
BigDecimal selectTotalAmountByCreateTimeAndOrderId(@Param("startTime")Date startTime, @Param("endTime")Date endTime, @Param("orderId")Long id);
Long selectByIsgoalAndOrderId(@Param("isGoal")int i, @Param("orderId")Long orderId);
+
+ IgtOnHookPlanOrderItem selectByCreateTimeAndIsgoaAndOrderId(@Param("endTime")Date endTime, @Param("isGoal")int i, @Param("orderId")Long orderId);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
index 550810f..582475d 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -1112,6 +1112,7 @@
@Override
public Integer isGoal(String num) {
Set set = new HashSet();
+ num = StrUtil.subSuf(num,1);
char[] chars = num.toCharArray();
for(char c:chars) {
set.add(c);
@@ -1123,6 +1124,12 @@
}
}
+ public static void main(String[] args) {
+
+ String num = StrUtil.subSuf("01234",1);
+ System.out.print(num);
+ }
+
private String isIdentity(List<String> refererIds,String levelCode){
String flag = levelCode;
for(String str : refererIds){
diff --git a/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java b/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
index 45a3f81..075389a 100644
--- a/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
+++ b/src/main/java/cc/mrbird/febs/job/OnHookPlanJob.java
@@ -238,14 +238,16 @@
igtOnHookPlanOrderItemDao.insert(igtOnHookPlanOrderItem);
if(2 == igtOnHookPlanOrderItem.getIsGoal()){
-
//返还两次中奖之间的本金
- Date startTime = igtOnHookPlanOrderItemsOld.get(0).getCreateTime();
Date endTime = igtOnHookPlanOrderItem.getCreateTime();
+ Date startTime = null;
+ //返回上次中奖的记录
+ IgtOnHookPlanOrderItem igtOld = igtOnHookPlanOrderItemDao.selectByCreateTimeAndIsgoaAndOrderId(endTime,1,igtOnHookPlanOrder.getId());
+ if(ObjectUtil.isNotEmpty(igtOld)){
+ startTime = igtOld.getCreateTime();
+ }
BigDecimal totalAmount = igtOnHookPlanOrderItemDao.selectTotalAmountByCreateTimeAndOrderId(startTime,endTime,igtOnHookPlanOrder.getId());
//如果中奖,增加挂机主表的挂机总收益,返还两次中奖之间的本金
- igtOnHookPlanOrderDao.AddProfitById(igtOnHookPlanOrder.getId()
- ,igtOnHookPlanOrderItem.getProfit());
igtOnHookPlanOrderDao.addAvaAmountById(igtOnHookPlanOrder.getId()
,totalAmount);
}else{
diff --git a/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml b/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml
index 1064b1c..e356b72 100644
--- a/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml
+++ b/src/main/resources/mapper/dapp/IgtOnHookPlanOrderItemDao.xml
@@ -65,9 +65,13 @@
SELECT
ifnull(sum(a.amount),0)
FROM igt_on_hook_plan_order_item a
- where a.order_id = #{orderId}
- and a.create_time > #{startTime}
- and a.create_time < #{endTime}
+ <where>
+ a.order_id = #{orderId}
+ and a.create_time < #{endTime}
+ <if test="startTime != null">
+ and a.create_time > #{startTime}
+ </if>
+ </where>
order by create_time desc
</select>
@@ -80,5 +84,16 @@
order by create_time desc
</select>
+ <select id="selectByCreateTimeAndIsgoaAndOrderId" resultType="cc.mrbird.febs.dapp.entity.IgtOnHookPlanOrderItem">
+ SELECT
+ a.*
+ FROM igt_on_hook_plan_order_item a
+ where a.order_id = #{orderId}
+ and a.is_goal = #{isGoal}
+ and a.create_time < #{endTime}
+ order by create_time desc
+ limit 1
+ </select>
+
</mapper>
\ No newline at end of file
diff --git a/src/test/java/cc/mrbird/febs/JunitTest.java b/src/test/java/cc/mrbird/febs/JunitTest.java
index a727c4a..f16a205 100644
--- a/src/test/java/cc/mrbird/febs/JunitTest.java
+++ b/src/test/java/cc/mrbird/febs/JunitTest.java
@@ -417,10 +417,14 @@
igtOnHookPlanOrderItemDao.insert(igtOnHookPlanOrderItem);
if(2 == igtOnHookPlanOrderItem.getIsGoal()){
-
//返还两次中奖之间的本金
- Date startTime = igtOnHookPlanOrderItemsOld.get(0).getCreateTime();
Date endTime = igtOnHookPlanOrderItem.getCreateTime();
+ Date startTime = null;
+ //返回上次中奖的记录
+ IgtOnHookPlanOrderItem igtOld = igtOnHookPlanOrderItemDao.selectByCreateTimeAndIsgoaAndOrderId(endTime,1,igtOnHookPlanOrder.getId());
+ if(ObjectUtil.isNotEmpty(igtOld)){
+ startTime = igtOld.getCreateTime();
+ }
BigDecimal totalAmount = igtOnHookPlanOrderItemDao.selectTotalAmountByCreateTimeAndOrderId(startTime,endTime,igtOnHookPlanOrder.getId());
//如果中奖,增加挂机主表的挂机总收益,返还两次中奖之间的本金
igtOnHookPlanOrderDao.AddProfitById(igtOnHookPlanOrder.getId()
--
Gitblit v1.9.1