package com.leromro.core.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.leromro.common.core.domain.AjaxResult;
import com.leromro.common.core.domain.R;
import com.leromro.core.domain.VolunteerWorkDate;

/**
 * 志愿者排班日期Service接口
 * 
 * @author ruoyi
 * @date 2025-04-07
 */
public interface IVolunteerWorkDateService extends IService<VolunteerWorkDate>
{
    /**
     * 查询志愿者排班日期
     * 
     * @param volunteerWorkDateId 志愿者排班日期主键
     * @return 志愿者排班日期
     */
    public VolunteerWorkDate selectVolunteerWorkDateByVolunteerWorkDateId(Long volunteerWorkDateId);

    /**
     * 查询志愿者排班日期列表
     * 
     * @param volunteerWorkDate 志愿者排班日期
     * @return 志愿者排班日期集合
     */
    public List<VolunteerWorkDate> selectVolunteerWorkDateList(VolunteerWorkDate volunteerWorkDate);

    /**
     * 新增志愿者排班日期
     * 
     * @param volunteerWorkDate 志愿者排班日期
     * @return 结果
     */
    public Boolean insertVolunteerWorkDate(VolunteerWorkDate volunteerWorkDate);

    /**
     * 修改志愿者排班日期
     * 
     * @param list 志愿者排班日期集合
     * @return 结果
     */
    public AjaxResult updateVolunteerWorkDate(List<VolunteerWorkDate> list);

    /**
     * 批量删除志愿者排班日期
     * 
     * @param volunteerWorkDateIds 需要删除的志愿者排班日期主键集合
     * @return 结果
     */
    public int deleteVolunteerWorkDateByVolunteerWorkDateIds(Long[] volunteerWorkDateIds);

    /**
     * 删除志愿者排班日期信息
     * 
     * @param volunteerWorkDateId 志愿者排班日期主键
     * @return 结果
     */
    public int deleteVolunteerWorkDateByVolunteerWorkDateId(Long volunteerWorkDateId);

    R<List<VolunteerWorkDate>> getWorkDateAndTime();
}
