package ink.wgink.interfaces.user; import ink.wgink.pojo.ListPage; import ink.wgink.pojo.dtos.user.UserDTO; import ink.wgink.pojo.result.SuccessResultList; import java.util.List; import java.util.Map; /** * When you feel like quitting. Think about why you started * 当你想要放弃的时候,想想当初你为何开始 * * @param 拓展的对象 * @ClassName: IUserExpandBaseService * @Description: 用户拓展业务 * @Author: WangGeng * @Date: 2021/1/24 12:52 * @Version: 1.0 **/ public interface IUserExpandBaseService { /** * 获取列表路径 * * @return */ String getRoute(); /** * 用户详情 * * @param userId 用户ID * @return */ UserExpandDTO get(String userId); /** * 用户详情 * * @param username 用户名 * @return */ UserExpandDTO getByUsername(String username); /** * 用户列表 * * @param userIds 用户ID列表 * @return */ List listByUserIds(List userIds); /** * 用户列表 * * @param usernames 用户名列表 * @return */ List listByUsernames(List usernames); /** * 用户列表 * * @param params 参数 * @return */ List list(Map params); /** * 用户分页列表 * * @param page * @return */ SuccessResultList> listPage(ListPage page); /** * 用户分页列表 * * @param userIds 用户ID列表 * @param page * @return */ SuccessResultList> listPageByIds(List userIds, ListPage page); /** * 用户ID分页列表 * * @param excludeUserIds 不包含的用户ID * @param page * @return */ SuccessResultList> listPageByExcludeIds(List excludeUserIds, ListPage page); /** * 用户统计 * * @param startDate 开始日期,yyyy-MM-dd * @param endDate 结束日期,yyyy-MM-dd * @return */ int countDateRange(String startDate, String endDate); /** * 用户统计 * * @return */ int count(); /** * 用户列表 * * @param keywords 关键字 * @return */ List listByKeywords(String keywords); }