mirror of
http://100.103.83.12:3003/fegger/odoo-at-payroll.git
synced 2026-09-17 08:52:45 +00:00
290b432b73
Rollenklärung (lb-msf-03, ASVG § 162 Abs 1): Wochengeld ist eine KV-Leistung — die ÖGK zahlt; der Dienstgeber stoppt das Entgelt in den Beschäftigungsfristen (MSchG §§ 3/5), liefert die Bemessungsdaten (Arbeits-/Entgeltbestätigung folgt mit AP8) und fuehrt die Abfertigung Neu auf fiktiver Grundlage. - models/mutterschutz.py: _at_msch_status (Kalendertage/Arbeitstage/ Episode aus der neuen Urlaubsart 'Mutterschutz-Frist', WET ATP_MSCH), _at_wochengeld — volle Wochengeld-Rechnung § 162 Abs 3 ASVG: Ø-Netto der drei Referenzmonate (letzte 13 Wochen) x (1 + satzungs- SZ-Prozentsatz 14/17/21 %, Parameter at_msch_sz_prozentsatz, vor Erstverwendung mandantenseitig zu verifizieren) ÷ Kalender- tage; Fallback kurzes DV (lb-msf-03) - Regel MSCH_ENTGELT: Entgelt-Stopp je Arbeitstag der Frist (negativ, Brutto; Tagesatz-Helper mit EFZG geteilt) - Fiktive BV-Grundlage § 7 Abs 4 BMSVG (RIS verifiziert): Monatsentgelt-Ø der letzten drei Kalendermonate vor dem Versicherungs- fall der Mutterschaft inkl. anteiliger Sonderzahlungen x Bezugs-KT/30, im _at_bv_basis_laufen-Hook neben der Krankengeld-Fiktion (AP4) - Rechenfaelle docs/rechenfaelle/mutterschutz.md; 4 Tests (Entgelt-Stopp + fiktive BV, §-162-Abs-3-Arithmetik, Wirkungslosigkeit ohne Frist, kurzes-DV-Fallback); Optionen dokumentiert: Sonderwochengeld § 163, Ruhen § 166, Karenz-Referenzmonat § 7 Abs 4 Z 1-3
116 lines
5.6 KiB
XML
116 lines
5.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<!-- ============================================================ -->
|
|
<!-- AP5: AT-Abwesenheiten — Work-Entry-Types und Urlaubsarten. -->
|
|
<!-- -->
|
|
<!-- hr_holidays (Time Off) ist Pflicht-Dependence des AT- -->
|
|
<!-- Privatprodukts; hr_work_entry_holidays erzeugt aus validierten -->
|
|
<!-- Abwesenheiten automatisch Work Entries über das work_entry_ -->
|
|
<!-- type_id der Urlaubsart (Odoo-Muster der Lokalisierungen). -->
|
|
<!-- Die AT-Arten sind country-gebunden (base.at) und ergänzen die -->
|
|
<!-- globalen Standardarten — bewusst additiv, nichts überschrieben. -->
|
|
<!-- ============================================================ -->
|
|
|
|
<!-- Work-Entry-Types -->
|
|
<record id="wett_atp_urlaub" model="hr.work.entry.type">
|
|
<field name="name">Urlaub (UrlG)</field>
|
|
<field name="color">3</field>
|
|
<field name="display_code">URL</field>
|
|
<field name="code">ATP_URLAUB</field>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="is_leave" eval="True"/>
|
|
</record>
|
|
<record id="wett_atp_krank" model="hr.work.entry.type">
|
|
<field name="name">Krankenstand (EFZG)</field>
|
|
<field name="color">2</field>
|
|
<field name="display_code">KRK</field>
|
|
<field name="code">ATP_KRANK</field>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="is_leave" eval="True"/>
|
|
</record>
|
|
<!-- AP4: Arbeitsunfall/Berufskrankheit — eigenes EFZ-Sonderkontingent
|
|
(§ 8 Abs 2a AngG / § 2 Abs 5 EFZG), getrennter Topf. -->
|
|
<record id="wett_atp_au" model="hr.work.entry.type">
|
|
<field name="name">Arbeitsunfall/Berufskrankheit (EFZG)</field>
|
|
<field name="color">9</field>
|
|
<field name="display_code">AU</field>
|
|
<field name="code">ATP_AU</field>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="is_leave" eval="True"/>
|
|
</record>
|
|
<record id="wett_atp_karenz" model="hr.work.entry.type">
|
|
<field name="name">Unbezahlte Karenz (MSchG/VKG)</field>
|
|
<field name="color">6</field>
|
|
<field name="display_code">KAR</field>
|
|
<field name="code">ATP_KARENZ</field>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="is_leave" eval="True"/>
|
|
</record>
|
|
<!-- AP7: Mutterschutz-Fristen (§§ 3/5 MSchG) — Wochengeldbezug, -->
|
|
<!-- Entgelt gestoppt; Wochengeld zahlt die ÖGK. -->
|
|
<record id="wett_atp_msch" model="hr.work.entry.type">
|
|
<field name="name">Mutterschutz-Frist (MSchG §§ 3/5)</field>
|
|
<field name="color">8</field>
|
|
<field name="display_code">MSF</field>
|
|
<field name="code">ATP_MSCH</field>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="is_leave" eval="True"/>
|
|
</record>
|
|
|
|
<!-- Urlaubsarten (hr.leave.type) mit WET-Verknüpfung -->
|
|
<record id="leave_type_at_urlaub" model="hr.leave.type">
|
|
<field name="name">Urlaub (UrlG)</field>
|
|
<field name="requires_allocation" eval="True"/>
|
|
<field name="employee_requests" eval="True"/>
|
|
<field name="leave_validation_type">both</field>
|
|
<field name="allocation_validation_type">hr</field>
|
|
<field name="request_unit">day</field>
|
|
<field name="company_id" eval="False"/>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="work_entry_type_id"
|
|
ref="l10n_at_hr_payroll_private.wett_atp_urlaub"/>
|
|
</record>
|
|
<record id="leave_type_at_krankenstand" model="hr.leave.type">
|
|
<field name="name">Krankenstand</field>
|
|
<field name="requires_allocation" eval="False"/>
|
|
<field name="leave_validation_type">hr</field>
|
|
<field name="request_unit">day</field>
|
|
<field name="support_document" eval="True"/>
|
|
<field name="company_id" eval="False"/>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="work_entry_type_id"
|
|
ref="l10n_at_hr_payroll_private.wett_atp_krank"/>
|
|
</record>
|
|
<record id="leave_type_at_arbeitsunfall" model="hr.leave.type">
|
|
<field name="name">Arbeitsunfall/Berufskrankheit</field>
|
|
<field name="requires_allocation" eval="False"/>
|
|
<field name="leave_validation_type">hr</field>
|
|
<field name="request_unit">day</field>
|
|
<field name="support_document" eval="True"/>
|
|
<field name="company_id" eval="False"/>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="work_entry_type_id"
|
|
ref="l10n_at_hr_payroll_private.wett_atp_au"/>
|
|
</record>
|
|
<record id="leave_type_at_mutterschutz" model="hr.leave.type">
|
|
<field name="name">Mutterschutz-Frist (§§ 3/5 MSchG)</field>
|
|
<field name="requires_allocation" eval="False"/>
|
|
<field name="leave_validation_type">hr</field>
|
|
<field name="request_unit">day</field>
|
|
<field name="support_document" eval="True"/>
|
|
<field name="company_id" eval="False"/>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="work_entry_type_id"
|
|
ref="l10n_at_hr_payroll_private.wett_atp_msch"/>
|
|
</record>
|
|
<record id="leave_type_at_karenz" model="hr.leave.type">
|
|
<field name="name">Unbezahlte Karenz</field>
|
|
<field name="requires_allocation" eval="False"/>
|
|
<field name="leave_validation_type">hr</field>
|
|
<field name="request_unit">day</field>
|
|
<field name="company_id" eval="False"/>
|
|
<field name="country_id" ref="base.at"/>
|
|
<field name="work_entry_type_id"
|
|
ref="l10n_at_hr_payroll_private.wett_atp_karenz"/>
|
|
</record>
|
|
</odoo> |