package com.gkhy.safePlatform.account.service; import com.gkhy.safePlatform.account.entity.schedule.GroupStrategyTimeTableInfo; import com.gkhy.safePlatform.account.entity.schedule.GroupStrategyTimeTableInfoDO; import com.gkhy.safePlatform.account.entity.schedule.GroupStrategyUserTimeTableInfoDO; import com.gkhy.safePlatform.account.enums.schedule.GroupStatusEnum; import com.gkhy.safePlatform.account.model.dto.req.GroupStrategyTimeTableAddReqDTO; import com.gkhy.safePlatform.account.model.dto.resp.GroupStrategyTimeTableRespDTO; import com.gkhy.safePlatform.account.model.query.GroupScheduleQuery; import com.gkhy.safePlatform.account.model.query.GroupStrategyScheduleQuery; import com.gkhy.safePlatform.commons.co.ContextCacheUser; import java.time.LocalDate; import java.util.List; public interface GroupStrategyTimeTableService { /** * @Description: 生成(覆盖)作息表 */ void makeGroupStrategyTimeTable(ContextCacheUser currentUser,Long groupStrategyId); /** * @Description: 获取班组策略下的各个班组调休 */ GroupStrategyTimeTableRespDTO getGroupStrategySchedule(ContextCacheUser currentUser, GroupStrategyScheduleQuery groupStrategyScheduleQuery); /** * @Description: 人员排班转移 */ void userScheduleTransfer(Long groupId, List uids, LocalDate localDate); /** * @Description: 人员排班从 localDate 开始取消 */ void cancelUserSchedule(List toDelMemberIds, LocalDate localDate); }