package cn.iocoder.yudao.module.llm.service.modelassesstaskautoinfo;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskauto.vo.ModelAssessTaskAutoInfoPageReqVO;
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskauto.vo.ModelAssessTaskAutoInfoSaveReqVO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskautoinfo.ModelAssessTaskAutoInfoDO;

import javax.validation.Valid;
import java.util.List;

/**
 * 模型评估任务 —— 自动评估-详细内容 Service 接口
 *
 * @author 华大大模型
 */
public interface ModelAssessTaskAutoInfoService {

    /**
     * 创建模型评估任务 —— 自动评估-详细内容
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Long createModelAssessTaskAutoInfo(@Valid ModelAssessTaskAutoInfoSaveReqVO createReqVO);

    /**
     * 更新模型评估任务 —— 自动评估-详细内容
     *
     * @param updateReqVO 更新信息
     */
    void updateModelAssessTaskAutoInfo(@Valid ModelAssessTaskAutoInfoSaveReqVO updateReqVO);

    /**
     * 删除模型评估任务 —— 自动评估-详细内容
     *
     * @param id 编号
     */
    void deleteModelAssessTaskAutoInfo(Long id);

    /**
     * 获得模型评估任务 —— 自动评估-详细内容
     *
     * @param id 编号
     * @return 模型评估任务 —— 自动评估-详细内容
     */
    ModelAssessTaskAutoInfoDO getModelAssessTaskAutoInfo(Long id);

    /**
     * 获得模型评估任务 —— 自动评估-详细内容分页
     *
     * @param pageReqVO 分页查询
     * @return 模型评估任务 —— 自动评估-详细内容分页
     */
    PageResult<ModelAssessTaskAutoInfoDO> getModelAssessTaskAutoInfoPage(ModelAssessTaskAutoInfoPageReqVO pageReqVO);

    List<ModelAssessTaskAutoInfoDO> getListByTaskId(ModelAssessTaskAutoInfoPageReqVO pageReqVO);


}
