Optimize searching stock moves with FIFO quantity when deleting

This commit is contained in:
Cédric Krier committed 2024-10-14 17:55:20 +02:00
1 parent 597ad2af0a
commit 70f6a94537
1 file changed
+6 -9
+6 -9
View File
@@ -152,15 +152,12 @@ class Move(metaclass=PoolMeta):
@classmethod
def delete(cls, moves):
fifo_moves = cls.search([
('id', 'in', [m.id for m in moves]),
('fifo_quantity', '!=', 0.0),
])
if fifo_moves:
raise AccessError(
gettext('product_cost_fifo.msg_move_delete_fifo',
move=fifo_moves[0].rec_name))
super(Move, cls).delete(moves)
for move in moves:
if move.fifo_quantity:
raise AccessError(
gettext('product_cost_fifo.msg_move_delete_fifo',
move=move.rec_name))
super().delete(moves)
@classmethod
def copy(cls, moves, default=None):