package com.jjt.wkEmp.service;

import com.jjt.biz.vo.KnittingEmpVO;
import com.jjt.wkEmp.domain.TwinWkEmpRota;

import java.util.Date;
import java.util.List;

/**
 * 经编车间员工排班Service接口
 *
 * @author wukai
 * @date 2025-04-28
 */
public interface ITwinWkEmpRotaService {
    /**
     * 查询经编车间员工排班
     *
     * @param shiftId 经编车间员工排班主键
     * @return 经编车间员工排班
     */
    public TwinWkEmpRota selectTwinWkEmpRotaByShiftId(Long shiftId);

    /**
     * 查询经编车间员工排班列表
     *
     * @param twinWkEmpRota 经编车间员工排班
     * @return 经编车间员工排班集合
     */
    public List<TwinWkEmpRota> selectTwinWkEmpRotaList(TwinWkEmpRota twinWkEmpRota);

    /**
     * 新增经编车间员工排班
     *
     * @param twinWkEmpRota 经编车间员工排班
     * @return 结果
     */
    public int insertTwinWkEmpRota(TwinWkEmpRota twinWkEmpRota);

    /**
     * 修改经编车间员工排班
     *
     * @param twinWkEmpRota 经编车间员工排班
     * @return 结果
     */
    public int updateTwinWkEmpRota(TwinWkEmpRota twinWkEmpRota);

    /**
     * 批量删除经编车间员工排班
     *
     * @param shiftIds 需要删除的经编车间员工排班主键集合
     * @return 结果
     */
    public int deleteTwinWkEmpRotaByShiftIds(Long[] shiftIds);

    /**
     * 删除经编车间员工排班信息
     *
     * @param shiftId 经编车间员工排班主键
     * @return 结果
     */
    public int deleteTwinWkEmpRotaByShiftId(Long shiftId);

    /**
     * 数据同步
     *
     * @param data 接口数据
     */
    void sync(KnittingEmpVO data);

    /**
     * 按时间查询列表
     * @param date 时间
     * @return 结果
     */
    List<TwinWkEmpRota> selectTwinWkEmpRotaListByDate(Date date);
}
