FIX hr_payroll_rate sort by 'date_from' to pick newest rate.

This commit is contained in:
Jared Kipe
2019-01-07 08:39:25 -08:00
parent 7ee05f2236
commit 3e4dcbb868
2 changed files with 18 additions and 1 deletions

View File

@@ -34,4 +34,4 @@ class Payslip(models.Model):
def get_rate(self, code): def get_rate(self, code):
self.ensure_one() self.ensure_one()
return self.env['hr.payroll.rate'].search( return self.env['hr.payroll.rate'].search(
self._get_rate_domain(code), limit=1) self._get_rate_domain(code), limit=1, order='date_from DESC')

View File

@@ -63,3 +63,20 @@ class TestPayrollRate(common.TransactionCase):
rate = self.payslip.get_rate('TEST') rate = self.payslip.get_rate('TEST')
self.assertEqual(rate, test_rate) self.assertEqual(rate, test_rate)
def test_payroll_rate_newer(self):
test_rate_old = self.env['hr.payroll.rate'].create({
'name': 'Test Rate',
'code': 'TEST',
'rate': 1.65,
'date_from': '2018-01-01',
})
test_rate = self.env['hr.payroll.rate'].create({
'name': 'Test Rate',
'code': 'TEST',
'rate': 2.65,
'date_from': '2019-01-01',
})
rate = self.payslip.get_rate('TEST')
self.assertEqual(rate, test_rate)