package com.campus.activity.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.campus.activity.dto.request.RegistrationRequest;
import com.campus.activity.entity.Registration;
import com.campus.activity.vo.RegistrationVO;

import java.util.List;

public interface RegistrationService {

    RegistrationVO register(RegistrationRequest request);

    void cancelRegistration(Long id);

    IPage<RegistrationVO> getMyRegistrations(Page<Registration> page, Integer status);

    IPage<RegistrationVO> getActivityRegistrations(Page<Registration> page, Long activityId);

    byte[] generateTicketPdf(Long id);
}