pas.models.settlement_run

Classes

SettlementRun

Abrechnungslauf

Module Contents

class pas.models.settlement_run.SettlementRun[source]

Bases: onegov.core.orm.Base, onegov.core.orm.mixins.ContentMixin, onegov.core.orm.mixins.TimestampMixin, onegov.search.ORMSearchable

Abrechnungslauf

__tablename__ = 'pas_settlements'[source]
es_public = False[source]

Returns True if the model is available to be found by the public. If false, only editors/admins will see this object in the search results.

es_properties[source]
property es_suggestion: str[source]

Returns suggest-as-you-type value of the document. The field used for this property should also be indexed, or the suggestion will lead to nowhere.

If a single string is returned, the completion input equals the completion output. (My Title -> My Title)

If an array of strings is returned, all values are possible inputs and the first value is the output. (My Title/Title My -> My Title)

property title: str[source]
id: sqlalchemy.Column[uuid.UUID][source]
name: sqlalchemy.Column[str][source]
start: sqlalchemy.Column[datetime.date][source]
end: sqlalchemy.Column[datetime.date][source]
closed: sqlalchemy.Column[bool][source]
description: onegov.core.orm.mixins.dict_property[str | None][source]
active: sqlalchemy.Column[bool][source]
classmethod get_run_number_for_year(input_date: datetime.date) int[source]

Computes the run number for a given date within a year.

As per customer requirement: No rule mandates 4 payments yearly, but wages must be reported by the 10th.

Run breakdown: - Q1: January to March - Q2: April to June - Q3: July to September - Q4: October to November - Q5: December

Why 5 runs? The decision to split the fourth quarter ensures that settlement runs are confined to a single calendar year. This avoids situations where a settlement overlaps into two different years, which could cause issues due to differing cost-of-living adjustments (COLA) applicable to each year. Handling settlements across two fiscal years would increase complexity.

Thus, we have 5 yearly runs.

__repr__() str[source]