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

import com.qmth.distributed.print.business.bean.dto.professional.MatrixDto;
import com.qmth.distributed.print.business.entity.TPCourse;
import com.qmth.distributed.print.business.entity.TPMatrix;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qmth.distributed.print.business.entity.TPRequirement;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * <p>
 * 专业认证毕业要求支撑矩阵 服务类
 * </p>
 *
 * @author xf
 * @since 2024-04-22
 */
public interface TPMatrixService extends IService<TPMatrix> {

    List<MatrixDto> getMatrix(Long professionalId);

    boolean saveMatrix(List<TPMatrix> tpMatrixList);

    void downloadMatrix(Long professionalId, HttpServletResponse response);

    List<TPMatrix> listMatrixByCondition(Long professionalId, Long courseId, Long requirementId);

    void updateMatrixForNodeCount(TPCourse tpCourse, TPRequirement tpRequirement);

    void removeMatrixByCondition(Long professionalId, Long courseId, Long requirementId);
}
