add raise error for duplicate liquidations
This commit is contained in:
parent
d4ff45402a
commit
2e4c4569e1
|
@ -477,6 +477,7 @@ class Liquidation(Workflow, ModelSQL, ModelView):
|
|||
def set_liquidation_lines(self):
|
||||
pool = Pool()
|
||||
Payroll = pool.get('staff.payroll')
|
||||
LiquidationMove = pool.get('staff.liquidation.line-move.line')
|
||||
date_start, date_end = self._get_dates_liquidation()
|
||||
payrolls = Payroll.search([
|
||||
('employee', '=', self.employee.id),
|
||||
|
@ -496,17 +497,6 @@ class Liquidation(Workflow, ModelSQL, ModelView):
|
|||
continue
|
||||
elif self.kind != l.wage_type.type_concept:
|
||||
continue
|
||||
# if l.wage_type.type_concept != 'interest':
|
||||
# continue
|
||||
# elif self.kind == 'vacation':
|
||||
# if l.wage_type.type_concept != 'holidays':
|
||||
# continue
|
||||
# elif self.kind == 'unemployment':
|
||||
# if l.wage_type.type_concept != 'unemployment':
|
||||
# continue
|
||||
# else:
|
||||
# if l.wage_type.type_concept not in BONUS_SERVICE:
|
||||
# continue
|
||||
|
||||
if l.wage_type.id not in wages_target.keys():
|
||||
mlines = self.get_moves_lines_pending(
|
||||
|
@ -536,6 +526,14 @@ class Liquidation(Workflow, ModelSQL, ModelView):
|
|||
values.append(abs(line.debit - line.credit))
|
||||
lines_to_reconcile.append(line.id)
|
||||
value = self.get_line_(wage_type, sum(values), self.time_contracting, account_id, party=self.party_to_pay)
|
||||
lines = LiquidationMove.search([
|
||||
('move_line', 'in', lines_to_reconcile)
|
||||
])
|
||||
if lines:
|
||||
liquidation = lines[0].line.liquidation
|
||||
raise RecordDuplicateError(
|
||||
gettext('staff_payroll_co.msg_duplicate_liquidation',
|
||||
liquidation=liquidation.id, state=liquidation.state))
|
||||
value.update({
|
||||
'move_lines': [('add', lines_to_reconcile)],
|
||||
})
|
||||
|
|
|
@ -68,5 +68,9 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<record model="ir.message" id="msg_cannot_duplicate_record">
|
||||
<field name="text">You can't duplicate this record.</field>
|
||||
</record>
|
||||
<record model="ir.message" id="msg_duplicate_liquidation">
|
||||
<field name="text">You have a liquidation with id "%(liquidation)s" in state "%(state)s".</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</tryton>
|
||||
|
|
Loading…
Reference in New Issue