Class Calendars.Builder
java.lang.Object
io.leandev.appfuse.calendar.Calendars.Builder
- Enclosing class:
Calendars
-
Method Summary
Modifier and TypeMethodDescriptionbuild()建構行事曆注入時鐘(測試用;設定後zone(ZoneId)不再影響「今天」的判定)特定日期停業(→ReasonCodes.CLOSED)特定日期停業(自訂原因代碼)特定日期停業(自訂原因代碼與說明)每週固定店休日(→ReasonCodes.CLOSED_WEEKLY)leadDays(int days) maxAdvance(int days) 最遠可選範圍:晚於今天 +days天不可選(→ReasonCodes.OUT_OF_RANGE)noPast()過去日期不可選(早於今天 →ReasonCodes.PAST)特定日期補開(覆寫所有規則與底座——如颱風假後的補班補賣日)自訂規則:命中 predicate 的日期不可選(自訂原因代碼)覆寫時區(預設Calendars.DEFAULT_ZONE;「今天」依此時區判定)
-
Method Details
-
closedOn
每週固定店休日(→ReasonCodes.CLOSED_WEEKLY) -
noPast
過去日期不可選(早於今天 →ReasonCodes.PAST) -
leadDays
前置天數:自今天起
days天內(不含第days天)不可選(→ReasonCodes.LEAD_TIME)以日曆天計;需要「N 個工作日後」語意時,改以
BusinessCalendar.plusSelectableDays(LocalDate, long)於應用層推算再配合closed(LocalDate)。 -
maxAdvance
最遠可選範圍:晚於今天 +days天不可選(→ReasonCodes.OUT_OF_RANGE) -
closed
特定日期停業(→ReasonCodes.CLOSED) -
closed
特定日期停業(自訂原因代碼) -
closed
特定日期停業(自訂原因代碼與說明)
特例覆寫優先於所有規則;同一日期後設定者覆蓋先設定者。
-
open
特定日期補開(覆寫所有規則與底座——如颱風假後的補班補賣日) -
rule
自訂規則:命中 predicate 的日期不可選(自訂原因代碼) -
zone
覆寫時區(預設Calendars.DEFAULT_ZONE;「今天」依此時區判定) -
clock
注入時鐘(測試用;設定後zone(ZoneId)不再影響「今天」的判定) -
build
-