package jnpf.attendance.service; import com.github.pagehelper.PageInfo; import jnpf.entity.attendance.AttendanceLeaveType; import jnpf.exception.ApproveException; import jnpf.model.attendance.dto.AttendanceLeaveRulesDto; import jnpf.model.attendance.dto.AttendanceLeaveRulesQueryDto; import jnpf.model.attendance.vo.attendance.AttendanceLeaveRulesVo; import jnpf.model.common.PageDto; import java.util.List; /** * @author panpan */ public interface AttendanceLeaveRulesService { /** * 列表 * @param attendanceLeaveRulesQueryDto 搜索条件 * @return 列表 */ PageInfo list(AttendanceLeaveRulesQueryDto attendanceLeaveRulesQueryDto); /** * 创建 * @param attendanceLeaveRulesDto 创建参数 */ void create(AttendanceLeaveRulesDto attendanceLeaveRulesDto) throws Exception; /** * 修改 * @param attendanceLeaveRulesDto 修改参数 */ void update(AttendanceLeaveRulesDto attendanceLeaveRulesDto) throws Exception; /** * 详情 * @param id 主键值 */ AttendanceLeaveRulesVo detail(String id); /** * 删除 * @param id 主键值 */ void delete(String id); /** * 修改状态 * @param attendanceLeaveRulesDto 修改参数 */ void updateState(AttendanceLeaveRulesDto attendanceLeaveRulesDto); /** * 获取用户请假列表 * @return 列表 */ List getUserLeaveList(List leaveTypes); /** * 2.0自动授予请假余额 * @param tenantId 租户ID */ void autoGrantBalance(String tenantId); /** * 删除假期类型关联的规则 * @param id 假期类型Id */ void deleteByTypeId(String id); /** * 获取用户请假详情 * @param vo 假期类型 * @return 详情 */ AttendanceLeaveRulesVo getUserLeaveDetail(AttendanceLeaveType vo,String userId) throws ApproveException; }