package com.rf.psychological.institution.service;

import com.rf.psychological.dao.dto.InstitutionAuthConTaskDto;
import com.rf.psychological.dao.dto.InstitutionAuthSubjectNameDto;
import com.rf.psychological.institution.model.InstitutionAuthEntity;

import java.util.List;

public interface InstitutionAuthService {

//    /**
//     * 根据机构编号查询数据权限
//     * @return
//     */
//    List<InstitutionAuth> findInstitutionListByInstitutionNo(String institutionNo);
    /**
     * 根据机构编号查询数据权限
     * @return
     */
//    List<InstitutionAuthEntity> findInstitutionListByInstitutionNoAndType(String institutionNo,String type);


    /**
     * 保存
     *
     * @param institutionAuthEntityList
     */
    void saveInstitutionAuthList(List<InstitutionAuthEntity> institutionAuthEntityList);

    /**
     * @return
     */
    void deleteAuthDataByInstitutionNo(String institutionNo);


    List<InstitutionAuthEntity> getByInstitutionNo(String institutionNo);


    List<InstitutionAuthSubjectNameDto> getByInstitutionNoAndName(int pageNum, int pageSize, String institutionNo, String type, String searchKey,String warn);

    int getAllByTableInAuthAndSubInfoNum(String institutionNo, String type, String searchKey,String warn);

    void deleteByIds(List<String> ids);

    /**
     *
     * 移动端使用
     * @param pageNum       页码
     * @param pageSize      每页个数
     * @param institutionNo 机构编号
     * @param type          1--认知任务 0--量表
     * @param searchKey     搜索
     * @param mobile true--移动端，false--电脑端
     * @return
     */
    List<InstitutionAuthConTaskDto> getAllConTask(int pageNum, int pageSize, String institutionNo, String type, String searchKey, Boolean mobile);

    int getAllConTaskNum(String institutionNo, String type, String searchKey, Boolean mobile);

    void saveAllInstitutionNoAuth(String institutionNo, String type);

    void delAllInAuth(String institutionNo, String type);

    void deleteInstitutionByFlag(String flag);
}
