package com.zcxk.dao;

import com.zcxk.entity.UserEntity;
import java.io.Serializable;
import java.util.List;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/**
 *
 * uims_userDAO接口
 * @author: WYY
 * @date 2020-10-22 17:35
 */
@Mapper
public interface UserMapper extends BaseMapper<UserEntity> {

	/**
     * 自定义分页查询
     * @param  page 
     * @param  userEntity 实体类
     */
     Page<UserEntity> findPage(IPage<UserEntity> page, @Param("user") UserEntity userEntity);

     UserEntity findUserById(Serializable id);


     List<UserEntity> findList(UserEntity userEntity);
      List<UserEntity> findUserIdsByUserIds(List<Integer> userIds);


    List<Integer> getUserIdsByOrgId(List<Integer> orgIds);

    List<UserEntity> findUserIdsByOrgId(List<Integer> orgIds);

    List<UserEntity> findUserIdsByOrgIdAndType(List<Integer> orgIds);

    List<UserEntity> findUserList(@Param("user") UserEntity userEntity,@Param("type") Integer type);

    List<UserEntity> findUserListByType(@Param("user")UserEntity userEntity);

    List<UserEntity> findAllUserListByType(@Param("user")UserEntity userEntity);

    List<UserEntity> findUserIdsForOrg(@Param("compayId")Integer compayId, @Param("deptId")Integer deptId,@Param("ids")List<Long> ids,@Param("compids")List<Long> comIds);



    List<Integer> findUserIdsByPermissonOrg(@Param("tenantId")String tenantId, @Param("companyOrgId")Integer companyOrgId, @Param("deptOrgId")Integer deptOrgId ,@Param("companyOrgIds")List<Integer> companyOrgIds,@Param("deptOrgIds")List<Integer> deptOrgIds);

    Integer findMaintainer(@Param("user")UserEntity userEntity);
}
