fix: 订单状态定时任务增加失败状态
This commit is contained in:
@@ -2,6 +2,7 @@ package com.sqx.modules.job.task;
|
|||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
|
import cn.hutool.core.thread.ThreadUtil;
|
||||||
import cn.hutool.json.JSONUtil;
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
@@ -71,13 +72,19 @@ public class TempOrdersTask implements ITask {
|
|||||||
@Override
|
@Override
|
||||||
public void run(String params) {
|
public void run(String params) {
|
||||||
logger.info("订单表数据处理开始");
|
logger.info("订单表数据处理开始");
|
||||||
List<Orders> orders = ordersDao.selectList(Wrappers.<Orders>lambdaQuery().eq(Orders::getStatus, 0));
|
List<Orders> orders = ordersDao.selectList(Wrappers.<Orders>lambdaQuery()
|
||||||
|
.eq(Orders::getStatus, 0)
|
||||||
|
.lt(Orders::getCreateTime, DateUtil.offsetMinute(DateUtil.date(), -5)));
|
||||||
if (CollUtil.isEmpty(orders)) {
|
if (CollUtil.isEmpty(orders)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (Orders order : orders) {
|
for (Orders order : orders) {
|
||||||
|
ThreadUtil.sleep(100);
|
||||||
|
|
||||||
PayDetails payDetails = payDetailsDao.selectByOrderId(order.getOrdersNo());
|
PayDetails payDetails = payDetailsDao.selectByOrderId(order.getOrdersNo());
|
||||||
if (payDetails == null) {
|
if (payDetails == null) {
|
||||||
|
order.setStatus(3);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (payDetails.getState() == 1) {
|
if (payDetails.getState() == 1) {
|
||||||
@@ -94,11 +101,20 @@ public class TempOrdersTask implements ITask {
|
|||||||
logger.info("payDetails:{} ", JSONUtil.toJsonStr(payDetails));
|
logger.info("payDetails:{} ", JSONUtil.toJsonStr(payDetails));
|
||||||
logger.info("order:{} ", JSONUtil.toJsonStr(order));
|
logger.info("order:{} ", JSONUtil.toJsonStr(order));
|
||||||
updateOrderStatus(payDetails, order);
|
updateOrderStatus(payDetails, order);
|
||||||
|
}else {
|
||||||
|
order.setStatus(3);
|
||||||
|
payDetails.setState(3);
|
||||||
|
ordersDao.updateById(order);
|
||||||
|
payDetailsDao.updateById(payDetails);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
logger.info("订单表数据处理完毕");
|
logger.info("订单表数据处理完毕");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
WuyouPay.queryOrder("1000001323859732", "0.5", "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1 Edg/131.0.0.0");
|
||||||
|
}
|
||||||
|
|
||||||
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
private final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
|
|
||||||
private void updateOrderStatus(PayDetails payDetails, Orders order) {
|
private void updateOrderStatus(PayDetails payDetails, Orders order) {
|
||||||
|
|||||||
Reference in New Issue
Block a user