package com.gkhy.safePlatform.account.service; import com.gkhy.safePlatform.account.entity.schedule.GroupStrategyUserTimeTableInfoDO; import com.gkhy.safePlatform.account.model.dto.req.AccountAddReqDTO; import com.gkhy.safePlatform.account.model.dto.req.AccountModReqDTO; import com.gkhy.safePlatform.account.model.dto.req.AccountPwdForgetReqDTO; import com.gkhy.safePlatform.account.model.dto.resp.*; import com.gkhy.safePlatform.account.entity.user.UserInfo; import com.gkhy.safePlatform.account.model.query.AccountQuery; import com.gkhy.safePlatform.account.model.query.UserScheduleQuery; import com.gkhy.safePlatform.commons.co.ContextCacheUser; import com.gkhy.safePlatform.commons.query.PageQuery; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import java.time.LocalDate; import java.util.List; public interface AccountService { /** * @Description: 获取一个用户 */ UserInfo getCurrentUserInfoByUsername(String username); /** * @Description: 获取个人信息 */ PersonalDetailRespDTO getPersonalAccountByUserId(Long userId); /** * @Description: 新增账户 */ void addAccount(ContextCacheUser currentUser, AccountAddReqDTO accountAddDto); /** * @Description: 修改账户 */ void modAccount(ContextCacheUser currentUser, AccountModReqDTO accountModDto); /** * @Description: */ SearchResultVO> listAccountByPage(Long userId, PageQuery pageQuery); /** * @Description: 获取部门下用户信息 */ List getDepUserList(Long userId, Long depId); /** * @Description: 根据uid删除用户 */ void delAccount(ContextCacheUser currentUser, Long uid); /** * @Description: 查找用户的 排班信息 */ List getUserScheduleInfo(ContextCacheUser currentUser, UserScheduleQuery userShiftQuery); /** * @Description: 获取某段时间的 uid 用户排班 */ UserGroupTimTableRespDTO getUserGroupWorkSchedule(Long uid,LocalDate startTime,LocalDate endTime); /** * @Description: 根据 uid 获取用户信息 */ UserInfoRespDTO getUserInfoByUid(Long uid); /** * @Description: 获取所有用户 */ List getUserList(Long uid); List listUserByUids(List uids); List listUserByRealName(String realName); /** * @Description: 忘记密码 */ void pwdForget(AccountPwdForgetReqDTO reqDTO); }