package com.yeejoin.amos.knowledgebase.face.orm.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.knowledgebase.face.orm.entity.KnowledgeDocContent;
import org.apache.ibatis.annotations.Param;

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

/**
 * <p>
 * 知识库文档存储 Mapper 接口
 * </p>
 *
 * @author 子杨
 * @since 2020-08-05
 */
public interface DocContentMapper extends BaseMapper<KnowledgeDocContent> {


    List<Map<String, Long>> searchForDocIds(
            @Param("agencyCode") String agencyCode,
            @Param("queryStr") String queryStr,
            @Param("docStatus") String[] docStatus,
            @Param("auditStatus") String[] auditStatus,
            @Param("userId") String userId,
            @Param("orgCode") String orgCode,
            @Param("offset") long offset,
            @Param("length") long length);

    List<Map<String, Object>> queryDocBaseInfoList(Map<String, Object> paramMap);

    int queryDocBaseInfoTotal(Map<String, Object> paramMap);

    List<Long> getAllPublishedDocIds();

    IPage<KnowledgeDocContent> pageByType(
            IPage<KnowledgeDocContent> page,
            @Param("typeId") Long typeId,
            @Param("tagId") Long tagId);
}