|
@@ -2,11 +2,15 @@ package beilv.quartz.task;
|
|
|
|
|
|
import beilv.admissionticket.domain.AdmissionTicket;
|
|
|
import beilv.admissionticket.service.IAdmissionTicketService;
|
|
|
+import beilv.bootacourse.domain.BootACourse;
|
|
|
+import beilv.bootacourse.mapper.BootACourseMapper;
|
|
|
import beilv.common.utils.uuid.IdUtils;
|
|
|
import beilv.session.domain.BeilvSession;
|
|
|
import beilv.session.service.IBeilvSessionService;
|
|
|
import beilv.site.domain.BeilvSite;
|
|
|
import beilv.site.service.IBeilvSiteService;
|
|
|
+import beilv.stadium.domain.Stadium;
|
|
|
+import beilv.stadium.mapper.StadiumMapper;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
@@ -16,6 +20,7 @@ import java.util.ArrayList;
|
|
|
import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Component("siteTask")
|
|
|
public class SiteTask {
|
|
@@ -29,6 +34,9 @@ public class SiteTask {
|
|
|
@Autowired
|
|
|
private IAdmissionTicketService ticketService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private BootACourseMapper courseMapper;
|
|
|
+
|
|
|
/**
|
|
|
* 门票定时任务
|
|
|
* 定时将日期下的各类型场地+时段写入到数据表中
|
|
@@ -78,6 +86,7 @@ public class SiteTask {
|
|
|
/**
|
|
|
* 定时更新门票状态
|
|
|
* 将超过当前时间的门票信息都更新为锁定状态
|
|
|
+ *
|
|
|
* @param millisecond
|
|
|
*/
|
|
|
public void updateTicketStatus(Long millisecond) {
|
|
@@ -118,7 +127,7 @@ public class SiteTask {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
});
|
|
|
- if(!ids.isEmpty()){
|
|
|
+ if (!ids.isEmpty()) {
|
|
|
ticketService.updateTicketStatus(ids);
|
|
|
}
|
|
|
}
|
|
@@ -126,17 +135,24 @@ public class SiteTask {
|
|
|
/**
|
|
|
* 定时更新订单状态为已核销
|
|
|
*/
|
|
|
- public void a(){
|
|
|
- //查询支付成功状态的所有约场订单 表名: beilv_book_a_course
|
|
|
- //判断 当前时间 大于等于 数据中的refund
|
|
|
- //则将数据状态修改为已核销 payment_status_verification
|
|
|
-
|
|
|
+ public void updateOrderStatusToVerification() {
|
|
|
+ // 查询支付成功的订单
|
|
|
+ List<BootACourse> paidOrders = courseMapper.selectPaidOrders();
|
|
|
+ // 获取当前时间
|
|
|
+ Date now = new Date();
|
|
|
+ // 筛选出需要更新的订单
|
|
|
+ List<String> orderIdsToUpdate = paidOrders.stream()
|
|
|
+ .filter(order -> now.after(order.getRefund())) // 当前时间大于refund时间
|
|
|
+ .map(BootACourse::getOrderId) // 获取订单ID
|
|
|
+ .collect(Collectors.toList());
|
|
|
+
|
|
|
+ // 批量更新订单状态为已核销
|
|
|
+ if (!orderIdsToUpdate.isEmpty()) {
|
|
|
+ courseMapper.updateOrderStatusToVerification(orderIdsToUpdate);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
// 将Date类型加上指定天数的方法
|
|
|
private Date addDaysToDate(Date date, int days) {
|
|
|
Calendar calendar = Calendar.getInstance();
|