package com.ruoyi.web.modules.account.mapper;

import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.ruoyi.web.modules.account.domain.MerchantEmployeeQuery;
import com.ruoyi.web.modules.account.domain.MerchantEmployeeRow;
import com.ruoyi.web.modules.account.vo.MerchantEmployeeRoleOptionVO;

/**
 * 员工管理 Mapper
 */
public interface MerchantEmployeeMapper
{
    List<MerchantEmployeeRow> selectList(MerchantEmployeeQuery query);

    MerchantEmployeeRow selectByUserId(@Param("merchantId") Long merchantId, @Param("shopId") Long shopId,
            @Param("userId") Long userId);

    List<MerchantEmployeeRoleOptionVO> selectRoleOptions(@Param("shopId") Long shopId);

    int countValidShopRoles(@Param("shopId") Long shopId, @Param("roleIds") Long[] roleIds);

    List<Long> selectRoleIdsByUserId(@Param("userId") Long userId, @Param("shopId") Long shopId);
}
