package com.usky.meeting.service;

import com.usky.common.core.bean.CommonPage;
import com.usky.meeting.domain.MeetingTemplate;
import com.usky.common.mybatis.core.CrudService;
import com.usky.meeting.service.vo.MeetingTemplateRequestVO;

import java.util.List;

/**
 * <p>
 * 会议屏模板表 服务类
 * </p>
 *
 * @author fu
 * @since 2025-11-18
 */
public interface MeetingTemplateService extends CrudService<MeetingTemplate> {

    /**
     * 新增和修改
     * @param meetingTemplate   会议屏模板
     */
    void addAndUpdate(MeetingTemplate meetingTemplate);

    /**
     * 删除
     * @param templateId  会议屏模板ID
     */
    void deleteById(Long templateId);

    /**
     * 获取模板列表
     * @param name  模板名称
     * @param type  模板类型
     * @param layout  模板布局
     * @return 模板列表
     */
    CommonPage<MeetingTemplate> templateList(Integer pageNum, Integer pageSize, String name, Integer type, String layout);

    /**
     * 批量发布
     */
    void batchPublishing(MeetingTemplateRequestVO requestVO);
}
