public int returnTime(String orderId) {
int i = 0;
MallOrder order = mallOrderMapper.selectMallOrderById(orderId);
long orderTime = order.getOrderTime().getTime();
//根据设置时间 取消过期订单
TerminalSetupOrderVo data = upOrderService.getSetupOrder().getData();
//long delayTimes = 15 * 60 * 1000;
long delayTime = data.getAutoReturn() * 60 * 1000;
//发送延迟消息(单位:毫秒)
long nowTime = System.currentTimeMillis();
if (nowTime - orderTime > delayTime) {
System.out.println(nowTime - orderTime);
//订单过期,执行取消方法
//发送延迟消息(单位:毫秒)
MallOrder mallOrder = new MallOrder();
mallOrder.setCancel(MallRecordConstants.CANCEL_B);
mallOrder.setCancelTime(new Date());
mallOrder.setOrderState("5");
mallOrder.setDelayTime(delayTime);
mallOrderMapper.orderCancel(mallOrder);
i += 1;
}
return i;
}
当i大于0,则已经超出设定时间
该代码段检查订单是否超过预设的自动返回时间(由data.getAutoReturn()决定),如果当前时间与订单时间差大于这个值,订单将被标记为取消状态并更新数据库。
8458

被折叠的 条评论
为什么被折叠?



