package com.qmth.distributed.print.business.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qmth.distributed.print.business.bean.result.CourseDimensionTree;
import com.qmth.distributed.print.business.entity.ObeCourseDimension;
import com.qmth.teachcloud.common.entity.SysUser;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * <p>
 * 课程知识点表 服务类
 * </p>
 *
 * @author CaoZixuan
 * @since 2024-02-27
 */
public interface ObeCourseDimensionService extends IService<ObeCourseDimension> {

    /**
     * 导入课程知识点
     *
     * @param requestUser        请求人
     * @param file               知识点excel
     * @param obeCourseOutlineId 课程大纲id
     */
    void importCourseDimension(SysUser requestUser, MultipartFile file, Long obeCourseOutlineId) throws Exception;

    /**
     * 同步题库课程知识点属性
     *
     * @param obeCourseOutlineId 课程大纲id
     */
    void syncTikuCourseProperties(Long obeCourseOutlineId);

    /**
     * 查询知识点树
     *
     * @param obeCourseOutlineId 课程大纲id
     * @return 课程知识点树
     */
    List<CourseDimensionTree> findDimensionTree(Long obeCourseOutlineId);
}