package cn.iocoder.yudao.module.base.service;

import cn.iocoder.yudao.module.base.entity.DriveSchoolCourseDeduct;
import cn.iocoder.yudao.module.base.vo.DriveSchoolCourseDeductVO;
import cn.iocoder.yudao.module.jx.domain.DriveSchoolDeduct;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.Page;

import java.util.List;

/**
 * 提成配置Service接口
 *
 * @author ruoyi
 * @date 2024-05-07
 */
public interface DlDriveSchoolCourseDeductService extends IService<DriveSchoolCourseDeduct> {

    /**
     * 分页查询提成配置
     *
     * @param page    分页对象
     * @param request 查询参数
     * @return 分页结果
     */
    IPage<DriveSchoolCourseDeductVO> queryPage(Page<DriveSchoolCourseDeductVO> page, DriveSchoolCourseDeductVO request);

    /**
     * 新增提成配置
     *
     * @param list 新增参数
     * @return 新增结果
     */
    void add(List<DriveSchoolCourseDeductVO> list);

    /**
     * 新增默认提成配置
     *
     * @param courseId 课程id
     */
    void defaultAdd(String courseId);

    /** 根据课程id和科目查询提成配置 */
    DriveSchoolCourseDeduct getDeductByCourseIdAndSubject(String courseId, Integer subject);
}
