package com.ym.mec.biz.dal.dao;

import com.ym.mec.biz.dal.dto.QuestionnaireResultDto;
import com.ym.mec.biz.dal.dto.QuestionnaireUserResultDto;
import com.ym.mec.biz.dal.enums.QuestionnaireActiveTypeEnum;
import com.ym.mec.common.dal.BaseDAO;
import com.ym.mec.biz.dal.entity.QuestionnaireUserResult;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public interface QuestionnaireUserResultDao extends BaseDAO<Long, QuestionnaireUserResult> {


    /**
     * 根据问卷编号获取答案
     * @param topicId
     * @return
     */
    int countByTopicId(Integer topicId);

    void delByActiveIdAndUserId(HashMap<String, Object> paramMap);

    void batchInsert1(@Param("questionnaireUserResultList") List<QuestionnaireUserResult> questionnaireUserResultList);

    int findDetailCount(Map<String, Object> params);

    List<QuestionnaireUserResultDto> queryDetailPage(Map<String, Object> params);

    /**
     * 获取乐团满意度答案
     * @param activeId
     * @param activeType
     * @return
     */
    List<QuestionnaireResultDto> getQuestionResult(@Param("activeId") Integer activeId, @Param("activeType") String activeType);

    List<Map<Integer, String>> queryUserName(Integer topicId);

    List<QuestionnaireUserResultDto> findResultCount(Map<String, Object> params);

    int countResultCount(Map<String, Object> params);

    QuestionnaireUserResultDto queryUserResult(@Param("topicId") Integer topicId, @Param("userId") Integer userId);
}