From b90204ae4fc53bf4bdc1c232aa4079e5d3e434f7 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Tue, 09 Jul 2024 21:47:16 +0800 Subject: [PATCH] 逻辑 --- src/main/java/cc/mrbird/febs/job/ProfitDailyJob.java | 25 ++++++++++-- src/main/resources/mapper/dapp/DappMemberDao.xml | 11 +++++ src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java | 3 + src/main/java/cc/mrbird/febs/dapp/mapper/DappStorageMapper.java | 3 + src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 27 ++++++++++++- src/main/resources/mapper/dapp/DappStorageMapper.xml | 16 ++++++++ 6 files changed, 78 insertions(+), 7 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java index 77f79c3..156a7dd 100644 --- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java +++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java @@ -1,6 +1,7 @@ package cc.mrbird.febs.dapp.mapper; import cc.mrbird.febs.dapp.entity.DappMemberEntity; +import cn.hutool.core.date.DateTime; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -46,4 +47,6 @@ List<DappMemberEntity> selectMemberListNeedProfit(); List<DappMemberEntity> selectListByDate(@Param("date") Date date); + + List<DappMemberEntity> selectListByDateFiveToFiver(@Param("startTime")DateTime startTime); } diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappStorageMapper.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappStorageMapper.java index ed49a79..91abcc1 100644 --- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappStorageMapper.java +++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappStorageMapper.java @@ -1,6 +1,7 @@ package cc.mrbird.febs.dapp.mapper; import cc.mrbird.febs.dapp.entity.DappStorage; +import cn.hutool.core.date.DateTime; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -30,4 +31,6 @@ IPage<DappStorage> selectListInPage(@Param("record")DappStorage dappStorage, Page<DappStorage> page); List<DappStorage> selectListGroupByMemberId(); + + List<DappStorage> selectSumByAmountDescFiveToFive(@Param("startTime")DateTime startTime, @Param("offset")int offset,@Param("count")int count); } 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 d5fe847..57f17fd 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 @@ -713,7 +713,19 @@ @Override public List<ApiStorageInfoVo> storageIndex() { List<ApiStorageInfoVo> apiStorageInfoVos = new ArrayList<>(); - List<DappStorage> dappStorages = dappStorageMapper.selectSumByAmountDesc(DateUtil.offsetHour(new Date(), -1), 0, 10); + + DateTime nowTime = DateUtil.parseTime(DateUtil.formatTime(new Date())); + DateTime perkTime = DateUtil.parseTime("17:00:00"); + String startTimeStr = null; + if(DateUtil.compare(nowTime,perkTime) >= 0){ + startTimeStr = DateUtil.formatDate(DateUtil.offsetDay(new Date(), 0)) + " 17:00:00"; + }else{ + startTimeStr = DateUtil.formatDate(DateUtil.offsetDay(new Date(), -1)) + " 17:00:00"; + } + DateTime startTime = DateUtil.parseDateTime(startTimeStr); + + List<DappStorage> dappStorages = dappStorageMapper.selectSumByAmountDescFiveToFive(startTime, 0, 10); +// List<DappStorage> dappStorages = dappStorageMapper.selectSumByAmountDesc(DateUtil.offsetHour(new Date(), -1), 0, 10); if(CollUtil.isNotEmpty(dappStorages)){ for(DappStorage dappStorage : dappStorages){ ApiStorageInfoVo apiStorageInfoVo = new ApiStorageInfoVo(); @@ -787,7 +799,18 @@ */ HashMap<Long, BigDecimal> map = new HashMap<>(); - List<DappMemberEntity> dappMemberEntityList = dappMemberDao.selectListByDate(new Date()); + DateTime nowTime = DateUtil.parseTime(DateUtil.formatTime(new Date())); + DateTime perkTime = DateUtil.parseTime("17:00:00"); + String startTimeStr = null; + if(DateUtil.compare(nowTime,perkTime) >= 0){ + startTimeStr = DateUtil.formatDate(DateUtil.offsetDay(new Date(), 0)) + " 17:00:00"; + }else{ + startTimeStr = DateUtil.formatDate(DateUtil.offsetDay(new Date(), -1)) + " 17:00:00"; + } + DateTime startTime = DateUtil.parseDateTime(startTimeStr); + List<DappMemberEntity> dappMemberEntityList = dappMemberDao.selectListByDateFiveToFiver(startTime); + +// List<DappMemberEntity> dappMemberEntityList = dappMemberDao.selectListByDate(new Date()); if(CollUtil.isNotEmpty(dappMemberEntityList)){ for(DappMemberEntity member : dappMemberEntityList){ diff --git a/src/main/java/cc/mrbird/febs/job/ProfitDailyJob.java b/src/main/java/cc/mrbird/febs/job/ProfitDailyJob.java index 6161e8c..86c0686 100644 --- a/src/main/java/cc/mrbird/febs/job/ProfitDailyJob.java +++ b/src/main/java/cc/mrbird/febs/job/ProfitDailyJob.java @@ -173,7 +173,7 @@ BigDecimal everyAmount = daDanTotal.divide(new BigDecimal(count)); if(everyAmount.compareTo(BigDecimal.ZERO) > 0){ - List<DappStorage> dappStorageOne = dappStorageMapper.selectSumByAmountDesc(new Date(),0,1); + List<DappStorage> dappStorageOne = dappStorageMapper.selectSumByAmountDescFiveToFive(DateUtil.offsetHour(new Date(),-24),0,1); if(CollUtil.isNotEmpty(dappStorageOne)){ BigDecimal multiply = everyAmount.multiply(new BigDecimal(oneCount)); dappSystemService.updateBalanceInsertFlow( @@ -184,7 +184,7 @@ realAmount = realAmount.add(multiply); } - List<DappStorage> dappStorageTwo = dappStorageMapper.selectSumByAmountDesc(new Date(),1,1); + List<DappStorage> dappStorageTwo = dappStorageMapper.selectSumByAmountDescFiveToFive(DateUtil.offsetHour(new Date(),-24),1,1); if(CollUtil.isNotEmpty(dappStorageTwo)){ BigDecimal multiply = everyAmount.multiply(new BigDecimal(twoCount)); dappSystemService.updateBalanceInsertFlow( @@ -195,7 +195,7 @@ realAmount = realAmount.add(multiply); } - List<DappStorage> dappStorageThree = dappStorageMapper.selectSumByAmountDesc(new Date(),2,1); + List<DappStorage> dappStorageThree = dappStorageMapper.selectSumByAmountDescFiveToFive(DateUtil.offsetHour(new Date(),-24),2,1); if(CollUtil.isNotEmpty(dappStorageThree)){ BigDecimal multiply = everyAmount.multiply(new BigDecimal(threeCount)); dappSystemService.updateBalanceInsertFlow( @@ -206,7 +206,7 @@ realAmount = realAmount.add(multiply); } - List<DappStorage> dappStorageFour = dappStorageMapper.selectSumByAmountDesc(new Date(),3,1); + List<DappStorage> dappStorageFour = dappStorageMapper.selectSumByAmountDescFiveToFive(DateUtil.offsetHour(new Date(),-24),3,1); if(CollUtil.isNotEmpty(dappStorageFour)){ BigDecimal multiply = everyAmount.multiply(new BigDecimal(fourCount)); dappSystemService.updateBalanceInsertFlow( @@ -256,7 +256,9 @@ */ HashMap<Long, BigDecimal> map = new HashMap<>(); - List<DappMemberEntity> dappMemberEntityList = dappMemberDao.selectListByDate(new Date()); + DateTime startTime = DateUtil.offsetHour(new Date(), -24); + List<DappMemberEntity> dappMemberEntityList = dappMemberDao.selectListByDateFiveToFiver(startTime); + if(CollUtil.isNotEmpty(dappMemberEntityList)){ for(DappMemberEntity member : dappMemberEntityList){ if(StrUtil.isEmpty(member.getRefererId())){ @@ -337,8 +339,21 @@ } public static void main(String[] args) { + DateTime dateTime = DateUtil.offsetHour(new Date(), -24); System.out.println(dateTime); + DateTime nowTime = DateUtil.parseTime(DateUtil.formatTime(new Date())); + DateTime perkTime = DateUtil.parseTime("17:00:00"); + + String startTimeStr = null; + if(DateUtil.compare(nowTime,perkTime) >= 0){ + startTimeStr = DateUtil.formatDate(DateUtil.offsetDay(new Date(), 0)) + " 17:00:00"; + }else{ + startTimeStr = DateUtil.formatDate(DateUtil.offsetDay(new Date(), -1)) + " 17:00:00"; + } + + DateTime startTime = DateUtil.parseDateTime(startTimeStr); + // 创建一个HashMap示例 diff --git a/src/main/resources/mapper/dapp/DappMemberDao.xml b/src/main/resources/mapper/dapp/DappMemberDao.xml index d922d25..d3174b6 100644 --- a/src/main/resources/mapper/dapp/DappMemberDao.xml +++ b/src/main/resources/mapper/dapp/DappMemberDao.xml @@ -161,4 +161,15 @@ date_format(create_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d') order by create_time desc </select> + + + <select id="selectListByDateFiveToFiver" resultType="cc.mrbird.febs.dapp.entity.DappMemberEntity"> + select + * + from + dapp_member + where + create_time >= #{startTime} + order by create_time desc + </select> </mapper> \ No newline at end of file diff --git a/src/main/resources/mapper/dapp/DappStorageMapper.xml b/src/main/resources/mapper/dapp/DappStorageMapper.xml index 3849c09..d34d01a 100644 --- a/src/main/resources/mapper/dapp/DappStorageMapper.xml +++ b/src/main/resources/mapper/dapp/DappStorageMapper.xml @@ -130,4 +130,20 @@ </select> + <select id="selectSumByAmountDescFiveToFive" resultType="cc.mrbird.febs.dapp.entity.DappStorage"> + SELECT + member_id memberId, + sum(amount) amount + FROM + dapp_storage + where + create_time >= #{startTime} + GROUP BY + member_id + ORDER BY + amount DESC + limit #{offset},#{count} + </select> + + </mapper> \ No newline at end of file -- Gitblit v1.9.1