mirror of
https://gitlab.com/hibou-io/hibou-odoo/suite.git
synced 2025-01-20 12:37:31 +02:00
Merge branch 'mig/12.0/l10n_us_hr_payroll__2020' into '12.0'
mig/12.0/l10n_us_hr_payroll__2020 into 12.0 See merge request hibou-io/hibou-odoo/suite!248
This commit is contained in:
@@ -169,20 +169,9 @@
|
||||
<field name="name">ER: US WA Washington State LNI</field>
|
||||
<field name="code">ER_US_WA_LNI</field>
|
||||
<field name="condition_select">python</field>
|
||||
<field name="condition_python">result = is_us_state(payslip, 'WA') and payslip.contract_id.us_payroll_config_value('workers_comp_er_code') and worked_days.WORK100 and worked_days.WORK100.number_of_hours and payslip.dict.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_er_code'))</field>
|
||||
<field name="condition_python">result = is_us_state(payslip, 'WA') and payslip.dict.contract_id.us_payroll_config_value('workers_comp_ee_code') and worked_days.WORK100 and worked_days.WORK100.number_of_hours and payslip.dict.rule_parameter(payslip.dict.contract_id.us_payroll_config_value('workers_comp_er_code'))</field>
|
||||
<field name="amount_select">code</field>
|
||||
<field name="amount_python_compute">
|
||||
hours = worked_days.WORK100.number_of_hours
|
||||
rate = payslip.dict.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_er_code'))
|
||||
try:
|
||||
# Redo employee withholding calculation
|
||||
ee_withholding = worked_days.WORK100.number_of_hours * -payslip.dict.rule_parameter(payslip.contract_id.us_payroll_config_value('workers_comp_ee_code')) / 100.0
|
||||
except:
|
||||
ee_withholding = 0.0
|
||||
er_withholding = -(hours * (rate / 100.0)) - ee_withholding
|
||||
result = hours
|
||||
result_rate = (er_withholding / hours) * 100.0
|
||||
</field>
|
||||
<field name="amount_python_compute">result, result_rate = worked_days.WORK100.number_of_hours, -payslip.dict.rule_parameter(payslip.dict.contract_id.us_payroll_config_value('workers_comp_er_code'))</field>
|
||||
<field name="register_id" ref="contrib_register_us_wa_dor_lni"/>
|
||||
<field name="appears_on_payslip" eval="False"/>
|
||||
</record>
|
||||
|
||||
@@ -65,7 +65,7 @@ class TestUsWAPayslip(TestUsPayslip):
|
||||
|
||||
self.assertPayrollEqual(cats['ER_US_SUTA'], salary * wa_unemp)
|
||||
self.assertPayrollEqual(rules['EE_US_WA_LNI'], -(self.test_ee_lni * hours_in_period))
|
||||
self.assertPayrollEqual(rules['ER_US_WA_LNI'], -(self.test_er_lni * hours_in_period) - rules['EE_US_WA_LNI'])
|
||||
self.assertPayrollEqual(rules['ER_US_WA_LNI'], -(self.test_er_lni * hours_in_period))
|
||||
# Both of these are known to be within 1 penny
|
||||
self.assertPayrollAlmostEqual(rules['EE_US_WA_FML'], -(salary * (self.WA_FML_RATE / 100.0) * (self.WA_FML_RATE_EE / 100.0)))
|
||||
self.assertPayrollAlmostEqual(rules['ER_US_WA_FML'], -(salary * (self.WA_FML_RATE / 100.0) * (self.WA_FML_RATE_ER / 100.0)))
|
||||
|
||||
@@ -63,7 +63,7 @@ class TestUsWAPayslip(TestUsPayslip):
|
||||
rules = self._getRules(payslip)
|
||||
|
||||
self.assertPayrollEqual(rules['EE_US_WA_LNI'], -(self.test_ee_lni * hours_in_period))
|
||||
self.assertPayrollEqual(rules['ER_US_WA_LNI'], -(self.test_er_lni * hours_in_period) - rules['EE_US_WA_LNI'])
|
||||
self.assertPayrollEqual(rules['ER_US_WA_LNI'], -(self.test_er_lni * hours_in_period))
|
||||
# Both of these are known to be within 1 penny
|
||||
self.assertPayrollAlmostEqual(rules['EE_US_WA_FML'], -(salary * (self.WA_FML_RATE / 100.0) * (self.WA_FML_RATE_EE / 100.0)))
|
||||
self.assertPayrollAlmostEqual(rules['ER_US_WA_FML'], -(salary * (self.WA_FML_RATE / 100.0) * (self.WA_FML_RATE_ER / 100.0)))
|
||||
|
||||
Reference in New Issue
Block a user