package com.vci.frameworkcore.compatibility; import com.vci.corba.common.PLException; import com.vci.frameworkcore.pagemodel.SmPasswordStrategyVO; import com.vci.starter.web.exception.VciBaseException; import java.util.Collection; import java.util.List; import java.util.Map; /** * 密码策略查询服务 * @author ludc * @date 2024/6/24 16:33 */ public interface SmPwdStrategyQueryServiceI { /** * 获取默认密码策略 * @return */ SmPasswordStrategyVO getPasswordStrategyVOByDefault(); /** * 根据主键查询密码策略map对象 * @param oidList * @return key为密码策略主键 value为密码策略 */ Map mapPasswordStrategyVOMapByOid(Collection oidList); /** * 使用主键获取密码策略 * @param oid 主键 * @return 密码策略显示对象 */ SmPasswordStrategyVO getPasswordStrategyVOByOid(String oid); /** * 根据单条用户的主键,获取用户的密码安全策略 * @param userOid 用户的主键 * @return 密码安全策略的显示对象,如果不存在则会返回Null * @throws VciBaseException 参数为空或者数据库查询出错的时候会抛出异常 */ SmPasswordStrategyVO getPasswordStrategyVOByUserOid(String userOid) throws PLException; /** * 根据单条用户主键,获取用户的密码安全策略 * @param userOids * @return * @throws PLException */ List listSmPasswordStrategyVOByUserOids(Collection userOids) throws PLException; /** * 根据主键,批量获取密码安全策略 * @param oids * @return * @throws PLException */ List listSmPasswordStrategyVOByOids(Collection oids) throws PLException; /** * 批量根据用户的主键来获取密码策略 * @param userOidCollection 用户主键集合 * @return 密码策略的显示对象,key是用户主键,value是这个用户关联的密码策略 */ Map batchSmPwdStrategyByUserOids(Collection userOidCollection); }