优化 关闭15分钟未支付订单

This commit is contained in:
Guoqs
2024-11-29 09:50:32 +08:00
parent ee84a042b8
commit 8f650843e3
3 changed files with 17 additions and 4 deletions

View File

@@ -231,6 +231,8 @@ public interface OrderBasicInfoMapper {
*/ */
List<OrderBasicInfo> getUnpaidOrderListOver15Min(@Param("createTime") String createTime); List<OrderBasicInfo> getUnpaidOrderListOver15Min(@Param("createTime") String createTime);
List<OrderBasicInfo> getUnpaidOrderList(@Param("startTime") String startTime, @Param("endTime") String endTime);
/** /**
* 根据orderId批量修改订单状态 * 根据orderId批量修改订单状态
* *

View File

@@ -2098,9 +2098,9 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
*/ */
@Override @Override
public List<OrderBasicInfo> getUnpaidOrderListOver15Min() { public List<OrderBasicInfo> getUnpaidOrderListOver15Min() {
Date now = DateUtils.addMinute(new Date(), -15); String startString = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, new Date());
String nowString = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, now); String endString = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, DateUtils.addMinute(new Date(), -15));
List<OrderBasicInfo> list = orderBasicInfoMapper.getUnpaidOrderListOver15Min(nowString); List<OrderBasicInfo> list = orderBasicInfoMapper.getUnpaidOrderList(startString, endString);
return CollectionUtils.isNotEmpty(list) ? list : Lists.newArrayList(); return CollectionUtils.isNotEmpty(list) ? list : Lists.newArrayList();
} }

View File

@@ -2464,7 +2464,18 @@
where del_flag = '0' where del_flag = '0'
and order_status = '0' and order_status = '0'
and pay_status = '0' and pay_status = '0'
and create_time <![CDATA[ <= ]]> #{createTime,jdbcType=VARCHAR} <!--and create_time <![CDATA[ <= ]]> #{createTime,jdbcType=VARCHAR}-->
and create_time between date_sub(#{createTime,jdbcType=VARCHAR}, interval 15 minute) and #{createTime,jdbcType=VARCHAR}
</select>
<select id="getUnpaidOrderList" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from order_basic_info
where del_flag = '0'
and order_status = '0'
and pay_status = '0'
and create_time between #{startTime,jdbcType=VARCHAR} and #{endTime,jdbcType=VARCHAR}
</select> </select>
<select id="selectOrderListByTimeRangeAndStatus" resultMap="BaseResultMap"> <select id="selectOrderListByTimeRangeAndStatus" resultMap="BaseResultMap">