chinese-holidays-go
提供具有中国特色的休假安排或者工作日查询。
Minnanalee: 在原作者基础上,
增加了Holiday(time.Time)(bool, string, error)接口,
Book可以导出节日名称,Book的IsHoliday,普通周末,返回false
Cache、Multiple没有实现节日名称。
Install
go get github.com/bastengao/chinese-holidays-go
Usage
Bundle Query
import (
"github.com/bastengao/chinese-holidays-go/holidays"
)
queryer, err := holidays.BundleQueryer()
if err != nil {
panic(err)
}
d := time.Date(2019, 10, 1, 0, 0, 0, 0, china)
queryer.IsHoliday(d)
queryer.IsWorkingday(d)
Cache Queryer is a Queryer that fetches online data and check updates every day.
queryer, err := holidays.NewCacheQueryer()
if err != nil {
panic(err)
}
queryer.IsHoliday(d)
Multiple Queryer is a Queryer that delegates query to underlying multiple Queryers.
Try each queryers in order until one returns a result.
bundleQueryer, err := holidays.BundleQueryer()
if err != nil {
panic(err)
}
cacheQueryer, err := holidays.NewCacheQueryer()
if err != nil {
panic(err)
}
queryer := holidays.NewMultipleQueryer(cacheQueryer, bundleQueryer)
queryer.IsHoliday(d)
Features