package cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskautoinfo;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskauto.vo.ModelAssessTaskAutoInfoPageReqVO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskautoinfo.ModelAssessTaskAutoInfoBackupDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskautoinfo.ModelAssessTaskAutoInfoDO;
import org.apache.ibatis.annotations.Mapper;

/**
 * 模型评估任务 —— 自动评估-详细内容 备份 Mapper
 *
 * @author 华大大模型
 */
@Mapper
public interface ModelAssessTaskAutoInfoBackupMapper extends BaseMapperX<ModelAssessTaskAutoInfoBackupDO> {

    default PageResult<ModelAssessTaskAutoInfoBackupDO> selectPage(ModelAssessTaskAutoInfoPageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<ModelAssessTaskAutoInfoBackupDO>()
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getTaskId, reqVO.getTaskId())
                .likeIfPresent(ModelAssessTaskAutoInfoBackupDO::getModelName, reqVO.getModelName())
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getQuestion, reqVO.getQuestion())
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getPrompt, reqVO.getPrompt())
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getDataSetPrompt, reqVO.getDataSetPrompt())
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getFactualError, reqVO.getFactualError())
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getEmotionTendency, reqVO.getEmotionTendency())
                .eqIfPresent(ModelAssessTaskAutoInfoBackupDO::getSemanticsCoherence, reqVO.getSemanticsCoherence())
                .betweenIfPresent(ModelAssessTaskAutoInfoBackupDO::getCreateTime, reqVO.getCreateTime())
                .orderByDesc(ModelAssessTaskAutoInfoBackupDO::getId));
    }

}
