wg-basic/basic-interface/src/main/java/ink/wgink/interfaces/user/IUserExpandBaseService.java

120 lines
2.4 KiB
Java
Raw Normal View History

2021-03-23 23:44:05 +08:00
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 <UserExpandDTO> 拓展的对象
* @ClassName: IUserExpandBaseService
* @Description: 用户拓展业务
* @Author: WangGeng
* @Date: 2021/1/24 12:52
* @Version: 1.0
**/
public interface IUserExpandBaseService<UserExpandDTO extends UserDTO> {
2021-03-24 08:04:34 +08:00
/**
* 获取列表路径
*
* @return
*/
String getRoute();
2021-03-24 08:04:34 +08:00
2021-03-23 23:44:05 +08:00
/**
* 用户详情
*
* @param userId 用户ID
* @return
*/
UserExpandDTO get(String userId);
/**
* 用户详情
*
* @param username 用户名
* @return
*/
UserExpandDTO getByUsername(String username);
/**
* 用户列表
*
* @param userIds 用户ID列表
* @return
*/
List<UserExpandDTO> listByUserIds(List<String> userIds);
/**
* 用户列表
*
* @param usernames 用户名列表
* @return
*/
List<UserExpandDTO> listByUsernames(List<String> usernames);
/**
* 用户列表
*
* @param params 参数
* @return
*/
List<UserExpandDTO> list(Map<String, Object> params);
/**
* 用户分页列表
*
* @param page
* @return
*/
SuccessResultList<List<UserExpandDTO>> listPage(ListPage page);
/**
* 用户分页列表
*
* @param userIds 用户ID列表
* @param page
* @return
*/
SuccessResultList<List<UserExpandDTO>> listPageByIds(List<String> userIds, ListPage page);
/**
* 用户ID分页列表
*
* @param excludeUserIds 不包含的用户ID
* @param page
* @return
*/
SuccessResultList<List<UserExpandDTO>> listPageByExcludeIds(List<String> 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<UserExpandDTO> listByKeywords(String keywords);
}