package com.xjrsoft.module.evaluate.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.evaluate.dto.EvaluateResultDetailPageDetailDto;
import com.xjrsoft.module.evaluate.dto.EvaluateResultDetailPageDto;
import com.xjrsoft.module.evaluate.dto.EvaluateResultIndexPageDto;
import com.xjrsoft.module.evaluate.entity.EvaluateResult;
import com.xjrsoft.module.evaluate.vo.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @title: 评价结果
* @Author szs
* @Date: 2024-01-16
* @Version 1.0
*/
@Mapper
public interface EvaluateResultMapper extends MPJBaseMapper<EvaluateResult> {
    IPage<EvaluateResultIndexPageVo> getIndexPage(IPage<EvaluateResultIndexPageDto> page, EvaluateResultIndexPageDto dto);

    IPage<EvaluateResultDetailPageVo> getDetailPage(IPage<EvaluateResultDetailPageDto> page, EvaluateResultDetailPageDto dto);

    EvaluateResultDetailPageDetailVo getDetailPageDetail(@Param("dto") EvaluateResultDetailPageDetailDto dto);

    List<EvaluateResultDetailPageDetailList> getDetailPageDetailList(@Param("dto") EvaluateResultDetailPageDetailDto dto);

    List<ResultViewingPageVo> listByObjectIdAndEvaluateItemId(@Param("evaluateObjectIdList") List<Long> evaluateObjectIdList, @Param("evaluateManageItemIdList") List<Long> evaluateManageItemIdList);

    List<ResultViewingPageVo> listTopicScoreByObjectIdAndTopic(@Param("evaluateObjectIdList") List<Long> evaluateObjectIdList, @Param("evaluateManageItemIdList") List<Long> evaluateManageItemIdList);

    List<ResultViewingPageVo> listSynthesisScore(@Param("evaluateObjectIdList") List<Long> evaluateObjectIdList, @Param("evaluateManageItemIdList") List<Long> evaluateManageItemIdList);
}
