package org.springblade.modules.martial.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.modules.martial.pojo.entity.MartialRegistrationOrder;
import org.springblade.modules.martial.pojo.vo.MartialRegistrationOrderVO;

/**
 * RegistrationOrder 服务类
 *
 * @author BladeX
 */
public interface IMartialRegistrationOrderService extends IService<MartialRegistrationOrder> {

	/**
	 * 获取报名订单详情（包含关联数据）
	 *
	 * @param id 订单ID
	 * @return 订单详情VO
	 */
	MartialRegistrationOrderVO getDetailWithRelations(Long id);

	/**
	 * 获取报名订单列表（包含关联数据）
	 *
	 * @param userId 用户ID
	 * @param status 状态
	 * @param current 当前页
	 * @param size 每页大小
	 * @return 订单列表VO
	 */
	IPage<MartialRegistrationOrderVO> getListWithRelations(Long userId, Integer status, Integer current, Integer size);

}
