package com.gkhy.safePlatform.account.service; import com.gkhy.safePlatform.account.entity.schedule.GroupInfoDO; import com.gkhy.safePlatform.account.model.dto.req.GroupAddDTO; import com.gkhy.safePlatform.account.model.dto.req.GroupModDTO; import com.gkhy.safePlatform.account.model.dto.resp.*; import com.gkhy.safePlatform.account.model.query.GroupMemberPageQuery; import com.gkhy.safePlatform.account.model.query.GroupPageQuery; import com.gkhy.safePlatform.account.model.query.GroupQuery; import com.gkhy.safePlatform.account.model.query.GroupScheduleQuery; import com.gkhy.safePlatform.commons.co.ContextCacheUser; import com.gkhy.safePlatform.commons.query.PageQuery; import com.gkhy.safePlatform.commons.vo.ResultVO; import com.gkhy.safePlatform.commons.vo.SearchResultVO; import java.util.Collection; import java.util.List; public interface GroupService { /** * @Description: 创建班组 */ void saveGroupInfo(ContextCacheUser currentUser, GroupAddDTO groupAddDTO); /** * @Description: 修改班组 */ void modGroupInfo(ContextCacheUser currentUser, GroupModDTO groupModDTO); /** * @Description: 删除班组 */ void delGroupInfo(ContextCacheUser currentUser, Long groupId); /** * @Description: 获取班组 */ List listGroupInfo(ContextCacheUser currentUser, GroupQuery query); /** * @Description: 获取班组的作息表 */ GroupTimeTableRespDTO getTimeTableInfo(ContextCacheUser currentUser, GroupScheduleQuery groupScheduleQuery); /** * @Description: 根据 groupId获取班组 */ GroupInfoRespDTO getGroupInfoByGroupId(Long groupId); /** * @Description: 根据 */ SearchResultVO> listGroupInfoByPage(ContextCacheUser currentUser, PageQuery query); /** * @Description: 根据 groupId 获取 组人员 */ List listGroupMembersByGroupId(ContextCacheUser currentUser,Long groupId); /** * @Description: 查询 groupId 下的人员分页 */ ResultVO> listGroupMembersByPage(ContextCacheUser currentUser, PageQuery query); /** * @Description: 根据 uid 获取所属的班组 */ List listGroupInfoByUid(Long uid); /** * @Description: 根据 groupIds 获取班组列表 */ List listGroupInfoByGroupIds(Collection ids); }