From 91aa67d9df7918e52c08ac4d123e1ecac4e51f20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Le=C3=B3n?= Date: Wed, 17 Sep 2025 13:46:23 -0500 Subject: [PATCH] =?UTF-8?q?[IMP][CL]=20Ajuste=20al=20m=C3=B3dulo=20de=20re?= =?UTF-8?q?quisici=C3=B3n=20de=20compras?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- purchase_request/models/purchase_order.py | 5 +++++ .../wizard/purchase_request_line_make_purchase_order.py | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/purchase_request/models/purchase_order.py b/purchase_request/models/purchase_order.py index a0c3efec83d..3423161f424 100644 --- a/purchase_request/models/purchase_order.py +++ b/purchase_request/models/purchase_order.py @@ -226,6 +226,11 @@ def _prepare_request_message_data(self, alloc, request_line, allocated_qty): } def write(self, vals): + # TRESCLOUD: Si se actualiza la cantidad del producto, se actualiza la fecha planificada a la fecha actual + # Esto desde una requisición de compra + # TRESCLOUD: FIN + if 'product_qty' in vals and self.env.context.get('ctx_update_date_planned', False): + vals['date_planned'] = fields.Datetime.now() # As services do not generate stock move this tweak is required # to allocate them. prev_qty_received = {} diff --git a/purchase_request/wizard/purchase_request_line_make_purchase_order.py b/purchase_request/wizard/purchase_request_line_make_purchase_order.py index bdf3117c174..19db03ca719 100644 --- a/purchase_request/wizard/purchase_request_line_make_purchase_order.py +++ b/purchase_request/wizard/purchase_request_line_make_purchase_order.py @@ -227,6 +227,10 @@ def _get_order_line_search_domain(self, order, item): return order_line_data def make_purchase_order(self): + # TRESCLOUD: Se envía el contexto para determinar la fecha planificada al actualizar la cantidad + # Esto evita que se duplique la línea de movimiento en la transferencia + self = self.with_context(ctx_update_date_planned=True) + # TRESCLOUD: FIN res = [] purchase_obj = self.env["purchase.order"] po_line_obj = self.env["purchase.order.line"]