mirror of
https://gitlab.com/hibou-io/hibou-odoo/suite.git
synced 2025-01-20 12:37:31 +02:00
Fix hr_payroll_gamification Resolve datetime error on payslip.
This commit is contained in:
@@ -19,7 +19,7 @@ class Payslip(models.Model):
|
|||||||
amount += bu.badge_id.payroll_amount
|
amount += bu.badge_id.payroll_amount
|
||||||
for bu in contract.employee_id.badge_ids.filtered(lambda bu: (
|
for bu in contract.employee_id.badge_ids.filtered(lambda bu: (
|
||||||
bu.badge_id.payroll_type == 'period'
|
bu.badge_id.payroll_type == 'period'
|
||||||
and date_from <= str(bu.create_date) <= date_to
|
and date_from <= bu.create_date.date() <= date_to
|
||||||
)):
|
)):
|
||||||
amount += bu.badge_id.payroll_amount
|
amount += bu.badge_id.payroll_amount
|
||||||
return amount
|
return amount
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
from odoo.tests import common
|
from odoo.tests import common
|
||||||
from odoo import fields
|
from odoo import fields
|
||||||
|
from datetime import date
|
||||||
|
|
||||||
|
|
||||||
class TestPayroll(common.TransactionCase):
|
class TestPayroll(common.TransactionCase):
|
||||||
@@ -42,7 +43,7 @@ class TestPayroll(common.TransactionCase):
|
|||||||
'date_from': '2018-01-01',
|
'date_from': '2018-01-01',
|
||||||
'date_to': '2018-01-31',
|
'date_to': '2018-01-31',
|
||||||
})
|
})
|
||||||
self.assertEqual(payslip._get_input_badges(self.contract, '2018-01-01', '2018-01-31'), 0.0)
|
self.assertEqual(payslip._get_input_badges(self.contract, date(2018, 1, 1), date(2018, 1, 31)), 0.0)
|
||||||
payslip.compute_sheet()
|
payslip.compute_sheet()
|
||||||
basic = payslip.details_by_salary_rule_category.filtered(lambda l: l.code == 'GROSS')
|
basic = payslip.details_by_salary_rule_category.filtered(lambda l: l.code == 'GROSS')
|
||||||
self.assertTrue(basic)
|
self.assertTrue(basic)
|
||||||
@@ -84,7 +85,7 @@ class TestPayroll(common.TransactionCase):
|
|||||||
'date_to': '2018-01-31',
|
'date_to': '2018-01-31',
|
||||||
})
|
})
|
||||||
# This is crazy, but...
|
# This is crazy, but...
|
||||||
res = payslip.onchange_employee_id('2018-01-01', '2018-01-31', employee_id=self.employee.id, contract_id=self.contract.id)
|
res = payslip.onchange_employee_id(date(2018, 1, 1), date(2018, 1, 31), employee_id=self.employee.id, contract_id=self.contract.id)
|
||||||
del res['value']['line_ids']
|
del res['value']['line_ids']
|
||||||
res['value']['input_line_ids'] = [(0, 0, l) for l in res['value']['input_line_ids']]
|
res['value']['input_line_ids'] = [(0, 0, l) for l in res['value']['input_line_ids']]
|
||||||
res['value']['worked_days_line_ids'] = [(0, 0, l) for l in res['value']['worked_days_line_ids']]
|
res['value']['worked_days_line_ids'] = [(0, 0, l) for l in res['value']['worked_days_line_ids']]
|
||||||
@@ -92,7 +93,7 @@ class TestPayroll(common.TransactionCase):
|
|||||||
self.assertTrue(payslip.input_line_ids)
|
self.assertTrue(payslip.input_line_ids)
|
||||||
payslip.compute_sheet()
|
payslip.compute_sheet()
|
||||||
|
|
||||||
self.assertEqual(payslip._get_input_badges(self.contract, '2018-01-01', '2018-01-31'), additional_wage)
|
self.assertEqual(payslip._get_input_badges(self.contract, date(2018, 1, 1), date(2018, 1, 31)), additional_wage)
|
||||||
|
|
||||||
basic = payslip.details_by_salary_rule_category.filtered(lambda l: l.code == 'GROSS')
|
basic = payslip.details_by_salary_rule_category.filtered(lambda l: l.code == 'GROSS')
|
||||||
self.assertTrue(basic)
|
self.assertTrue(basic)
|
||||||
@@ -105,7 +106,7 @@ class TestPayroll(common.TransactionCase):
|
|||||||
'date_to': '2018-02-25', # Feb...
|
'date_to': '2018-02-25', # Feb...
|
||||||
})
|
})
|
||||||
# This is crazy, but...
|
# This is crazy, but...
|
||||||
res = payslip.onchange_employee_id('2018-02-01', '2018-02-25', employee_id=self.employee.id,
|
res = payslip.onchange_employee_id(date(2018, 2, 1), date(2018, 2, 25), employee_id=self.employee.id,
|
||||||
contract_id=self.contract.id)
|
contract_id=self.contract.id)
|
||||||
del res['value']['line_ids']
|
del res['value']['line_ids']
|
||||||
res['value']['input_line_ids'] = [(0, 0, l) for l in res['value']['input_line_ids']]
|
res['value']['input_line_ids'] = [(0, 0, l) for l in res['value']['input_line_ids']]
|
||||||
@@ -114,7 +115,7 @@ class TestPayroll(common.TransactionCase):
|
|||||||
self.assertTrue(payslip.input_line_ids)
|
self.assertTrue(payslip.input_line_ids)
|
||||||
payslip.compute_sheet()
|
payslip.compute_sheet()
|
||||||
|
|
||||||
self.assertEqual(payslip._get_input_badges(self.contract, '2018-02-01', '2018-02-25'), additional_wage + additional_wage_period)
|
self.assertEqual(payslip._get_input_badges(self.contract, date(2018, 2, 1), date(2018, 2, 25)), additional_wage + additional_wage_period)
|
||||||
|
|
||||||
basic = payslip.details_by_salary_rule_category.filtered(lambda l: l.code == 'GROSS')
|
basic = payslip.details_by_salary_rule_category.filtered(lambda l: l.code == 'GROSS')
|
||||||
self.assertTrue(basic)
|
self.assertTrue(basic)
|
||||||
|
|||||||
Reference in New Issue
Block a user