package shop.alien.store.service;

import shop.alien.store.vo.ReservationOrderListResultVo;

/**
 * 预订订单列表（店铺名称模糊搜索、展示店铺名/入口图/状态/预订信息，返回全部/待使用/已完成/已退款数量）
 *
 * @author system
 */
public interface ReservationOrderListService {

    /**
     * 分页查询当前用户的预订订单列表，并返回全部/待使用/已完成/已退款数量
     *
     * @param userId     用户ID（必填）
     * @param storeName  店铺名称，模糊搜索，最多10字（可选）
     * @param orderStatus 订单状态筛选（可选，0~7）
     * @param current    页码，从1开始
     * @param size       每页条数
     * @return 分页列表 + countAll、countToUse、countCompleted、countRefunded
     */
    ReservationOrderListResultVo listPage(Integer userId, String storeName, Integer orderStatus, long current, long size);
}
