package com.seer.teach.mp.admin.service;

import com.seer.teach.common.PageListBean;
import com.seer.teach.mp.admin.controller.req.ActivityFormExecutionQueryReq;
import com.seer.teach.mp.admin.controller.resp.AdminActivityFormExecutionResp;

/**
 * <p>
 * 管理端活动表单执行实例服务类
 * </p>
 *
 * @author Lingma
 * @since 2026-01-10
 */
public interface IAdminActivityFormExecutionService {

    /**
     * 分页查询活动表单执行实例
     *
     * @param query 查询参数
     * @return 分页结果
     */
    PageListBean<AdminActivityFormExecutionResp> pageList(ActivityFormExecutionQueryReq query);

    /**
     * 保存或更新活动表单执行实例
     *
     * @param request 请求参数
     * @return 操作结果
     */
    Boolean saveOrUpdate(ActivityFormExecutionQueryReq request);

    /**
     * 删除活动表单执行实例
     *
     * @param id 实例ID
     * @return 操作结果
     */
    Boolean deleteById(Integer id);

    /**
     * 根据ID获取活动表单执行实例
     *
     * @param id 实例ID
     * @return 实例信息
     */
    AdminActivityFormExecutionResp getById(Integer id);

    /**
     * 提交表单
     *
     * @param id 实例ID
     * @return 操作结果
     */
    Boolean submitById(Integer id);
}