Skip to content

Documentation


Documentation / @kizami/engine / AllowanceDefinition

Interface: AllowanceDefinition

Defined in: types.ts:165

手当定義(docs/design/allowances.md)。金額は持たない — エンジンが算出するのは 「対象になる勤務が何分あったか」まで(要件§1、割増率・支給額は給与側の責任)。

conditions は次の AND 条件(すべて省略可、省略した条件は「制約なし」):

  • dates: 特定日のリスト。"2027-01-01"(固定日付)と "--12-31"(毎年、月日のみ一致)の 両形式を混在させられる
  • weekdays: 曜日のリスト(0=日曜〜6=土曜)
  • timeBand: 時間帯(ローカル分、0〜1439)。startMinutes > endMinutes で日跨ぎを表す (22:00〜翌6:00 = startMinutes:1320, endMinutes:360)。startMinutes < endMinutes は 日をまたがない帯(6:00〜8:00)。省略時は終日

全条件を省略した定義(=常に全時間が対象)は意味を持たない設定ミスであり、apps/api の バリデーションで作成時に弾く(engine 自体は「全時間帯が対象」として素直に扱う — 純関数と して「入力の意味的な妥当性」までは関知しないという既存の役割分担に合わせた)。

Properties

conditions

conditions: object

Defined in: types.ts:168

dates?

optional dates?: string[]

timeBand?

optional timeBand?: object

timeBand.endMinutes

endMinutes: number

timeBand.startMinutes

startMinutes: number

weekdays?

optional weekdays?: (0 | 1 | 2 | 3 | 4 | 5 | 6)[]


id

id: string

Defined in: types.ts:166


name

name: string

Defined in: types.ts:167