IRuleSchedulingService.java 2.01 KB
package com.ruoyi.scheduling.service;

import java.util.List;

import com.ruoyi.pojo.dto.AttendanceDto;
import com.ruoyi.pojo.dto.RuleSchedulingDto;
import com.ruoyi.pojo.vo.RuleSchedulingResponseVo;
import com.ruoyi.pojo.vo.RuleSchedulingVo;
import com.ruoyi.scheduling.domain.RuleScheduling;

/**
 * 排班规则Service接口
 *
 * @author guzijian
 * @date 2023-08-04
 */
public interface IRuleSchedulingService {
    /**
     * 查询排班规则
     *
     * @param id 排班规则主键
     * @return 排班规则
     */
    public RuleScheduling selectRuleSchedulingById(Long id);

    /**
     * 查询排班规则列表
     *
     * @param ruleScheduling 排班规则
     * @return 排班规则集合
     */
    public List<RuleScheduling> selectRuleSchedulingList(RuleScheduling ruleScheduling);

    /**
     * 新增排班规则
     *
     * @param ruleScheduling 排班规则
     * @return 结果
     */
    public int insertRuleScheduling(RuleScheduling ruleScheduling);

    /**
     * 修改排班规则
     *
     * @param ruleScheduling 排班规则
     * @return 结果
     */
    public int updateRuleScheduling(RuleScheduling ruleScheduling);

    /**
     * 批量删除排班规则
     *
     * @param ids 需要删除的排班规则主键集合
     * @return 结果
     */
    public int deleteRuleSchedulingByIds(Long[] ids);

    /**
     * 删除排班规则信息
     *
     * @param id 排班规则主键
     * @return 结果
     */
    public int deleteRuleSchedulingById(Long id);

    List<RuleSchedulingVo> selectRuleSchedulingListVo(RuleScheduling ruleScheduling);

    List<RuleSchedulingResponseVo> handleResponseRuleSchedulingList(List<RuleScheduling> list);

    List<RuleSchedulingVo> selectRuleSchedulingListVoBySettingId(Integer settingId);

    List<RuleSchedulingDto> selectRuleSchedulingListVoBySettingIds(List<Integer> settingList);


    void deletePeopleSchedule(String startDate, String endDate, List<String> jobCode);

    List<AttendanceDto> getPeopleListByJobCodes(List<String> jobCode);
}