From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 11 七月 2024 10:47:51 +0800 Subject: [PATCH] 玩湃微信商户认证代码 --- cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java | 69 ++++++++++++++++++++++------------ 1 files changed, 44 insertions(+), 25 deletions(-) diff --git a/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java b/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java index 8457a24..426dcd2 100644 --- a/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java +++ b/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java @@ -8,6 +8,7 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.concurrent.TimeUnit; @@ -25,17 +26,32 @@ /** * 每隔一分钟去处理的定时任务 */ + //预约场地后,待支付的订单 时间超过30分钟,不保留 @Scheduled(fixedRate = 60000) - public void taskMinute(){ + public void taskMinute() { try { - List<SiteBooking> siteBookings = siteBookingMapper.selectList(new LambdaQueryWrapper<SiteBooking>().eq(SiteBooking::getStatus, 0)); + Date date = new Date(); // 要增加的日期 + + List<SiteBooking> siteBookings = siteBookingMapper. + selectList(new LambdaQueryWrapper<SiteBooking>().eq(SiteBooking::getStatus, 0)); for (SiteBooking siteBooking : siteBookings) { - long time = siteBooking.getInsertTime().getTime(); - long l = time + 1800 * 1000; - if(System.currentTimeMillis()>l){ + + Date insert = siteBooking.getInsertTime(); + // 创建 Calendar 对象,并设置为指定的日期 + Calendar calendar = Calendar.getInstance(); + calendar.setTime(insert); + + // 增加 30 分钟 + calendar.add(Calendar.MINUTE, 30); + + // 获取增加后的日期 + Date newDate = calendar.getTime(); + +// long time = siteBooking.getInsertTime().getTime(); +// long l = time + 1800 * 1000; + if (date.after(newDate)) { siteBooking.setStatus(5); siteBookingMapper.updateById(siteBooking); - } } //定时修改赛事状态 @@ -44,20 +60,21 @@ } } - - //预约场地后,时间超过endTime,状态变为已过期 @Scheduled(fixedRate = 60000) - public void taskMinute1(){ + public void taskMinute1() { try { - List<SiteBooking> siteBookings = siteBookingMapper.selectList(new LambdaQueryWrapper<SiteBooking>().eq(SiteBooking::getStatus, 1)); + List<SiteBooking> siteBookings = siteBookingMapper.selectList + (new LambdaQueryWrapper<SiteBooking>().eq(SiteBooking::getStatus, 1)); for (SiteBooking siteBooking : siteBookings) { - long time = siteBooking.getEndTime().getTime(); - if (System.currentTimeMillis() > time) { - siteBooking.setStatus(4); - siteBookingMapper.updateById(siteBooking); - } - + if(null == siteBooking.getEndTime()){ + continue; + } + long time = siteBooking.getEndTime().getTime(); + if (System.currentTimeMillis() > time) { + siteBooking.setStatus(4); + siteBookingMapper.updateById(siteBooking); + } } //定时修改赛事状态 } catch (Exception e) { @@ -65,18 +82,20 @@ } } - + // 预约场地后,待支付的订单 时间超过30分钟,不保留 @Scheduled(fixedRate = 60000) - public void taskMinute2(){ + public void taskMinute3() { try { - List<SiteBooking> siteBookings = siteBookingMapper.selectList(new LambdaQueryWrapper<SiteBooking>().eq(SiteBooking::getStatus, 0)); + // 获取待核销状态的记录 + List<SiteBooking> siteBookings = siteBookingMapper.selectList(new LambdaQueryWrapper<SiteBooking>() + .eq(SiteBooking::getStatus, 1)); for (SiteBooking siteBooking : siteBookings) { - long time = siteBooking.getInsertTime().getTime(); - long currentTime = System.currentTimeMillis(); - long timeDifference = currentTime - time; - long minutes = TimeUnit.MILLISECONDS.toMinutes(timeDifference); - if (minutes > 30) { - siteBooking.setStatus(5); + if(null == siteBooking.getEndTime()){ + continue; + } + long time = siteBooking.getEndTime().getTime(); + if (System.currentTimeMillis() > time) { + siteBooking.setStatus(4); siteBookingMapper.updateById(siteBooking); } } -- Gitblit v1.7.1