namespace Repository;
///
/// 节假日仓储接口
///
public interface IHolidayRepository : IBaseRepository
{
///
/// 根据年份获取节假日列表
///
Task> GetByYearAsync(int year);
///
/// 根据日期范围获取节假日列表
///
Task> GetByDateRangeAsync(string startDate, string endDate);
///
/// 根据年份删除节假日数据(用于刷新)
///
Task DeleteByYearAsync(int year);
}
///
/// 节假日仓储实现
///
public class HolidayRepository(IFreeSql freeSql)
: BaseRepository(freeSql), IHolidayRepository
{
public async Task> GetByYearAsync(int year)
{
return await freeSql.Select()
.Where(h => h.Year == year)
.OrderBy(h => h.Date)
.ToListAsync();
}
public async Task> GetByDateRangeAsync(string startDate, string endDate)
{
return await freeSql.Select()
.Where(h => h.Date.CompareTo(startDate) >= 0 && h.Date.CompareTo(endDate) <= 0)
.OrderBy(h => h.Date)
.ToListAsync();
}
public async Task DeleteByYearAsync(int year)
{
return await freeSql.Delete()
.Where(h => h.Year == year)
.ExecuteAffrowsAsync() > 0;
}
}