package com.vci.frameworkcore.compatibility; import com.vci.dto.SmPasswordStrategyDTO; import com.vci.corba.common.PLException; import com.vci.pagemodel.SmPasswordStrategyVO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; 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(); /** * 密码策略分页查询 * @param conditionMap * @param pageHelper * @return */ DataGrid refDataGrid(Map conditionMap, PageHelper pageHelper) throws PLException; /** * 查询密码安全策略,下拉使用的接口 * @param conditionMap * @return key为密码策略name,value为密码策略的oid * @throws VciBaseException */ List> selectPwdStrategyMap(Map conditionMap) throws PLException; /** * 保存用户关联密码策略 * @param userIds * @param passwordStrategId * @return */ boolean saveUserPasswordStrateg(String[] userIds, String passwordStrategId) throws PLException; /** * 新增密码策略 * @param spsDto * @return */ boolean addPasswordStrateg(SmPasswordStrategyDTO spsDto) throws PLException; /** * 修改密码策略 * @param spsDto * @return */ boolean updatePasswordStrateg(SmPasswordStrategyDTO spsDto) throws PLException; /** * 删除密码策略 * @param pwdIds * @return */ boolean delPasswordStrateg(String[] pwdIds) throws PLException; /** * 根据主键查询密码策略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); }