package shop.alien.storeplatform.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import shop.alien.entity.storePlatform.vo.StoreOperationalActivitySignupVO;

/**
 * 运营活动报名服务接口
 *
 * @author system
 * @since 2025-01-XX
 */
public interface OperationalActivitySignupService {

    /**
     * 根据商户ID分页查询报名列表
     *
     * @param storeId   商户ID
     * @param status    报名状态（可选，0-待审核，1-拒绝，2-通过）
     * @param activityName 活动名称（可选，模糊查询）
     * @param pageNum   页码
     * @param pageSize  每页大小
     * @return 分页结果
     */
    IPage<StoreOperationalActivitySignupVO> querySignupList(Integer storeId, Integer status, String activityName, Integer pageNum, Integer pageSize);

    /**
     * 根据ID查询报名详情
     *
     * @param id 报名ID
     * @return 报名详情
     */
    StoreOperationalActivitySignupVO querySignupById(Integer id);

    /**
     * 审核通过
     *
     * @param id 报名ID
     * @return 更新结果
     */
    int approveSignup(Integer id);

    /**
     * 审核拒绝
     *
     * @param id 报名ID
     * @param rejectReason 拒绝原因
     * @return 更新结果
     */
    int rejectSignup(Integer id, String rejectReason);
}

