[IMP] group_order: confirmar sale orders en cron diario
This commit is contained in:
parent
6935d8fc83
commit
2f57a5d14e
1 changed files with 40 additions and 0 deletions
|
|
@ -680,4 +680,44 @@ class GroupOrder(models.Model):
|
||||||
order._compute_cutoff_date()
|
order._compute_cutoff_date()
|
||||||
order._compute_pickup_date()
|
order._compute_pickup_date()
|
||||||
order._compute_delivery_date()
|
order._compute_delivery_date()
|
||||||
|
order._confirm_linked_sale_orders()
|
||||||
_logger.info("Cron: Date update completed")
|
_logger.info("Cron: Date update completed")
|
||||||
|
|
||||||
|
def _confirm_linked_sale_orders(self):
|
||||||
|
"""Confirm draft/sent sale orders linked to this group order.
|
||||||
|
|
||||||
|
This is triggered by the daily cron so that weekly orders generated
|
||||||
|
from the website are confirmed automatically once dates are refreshed.
|
||||||
|
"""
|
||||||
|
self.ensure_one()
|
||||||
|
SaleOrder = self.env["sale.order"].sudo()
|
||||||
|
sale_orders = SaleOrder.search(
|
||||||
|
[
|
||||||
|
("group_order_id", "=", self.id),
|
||||||
|
("state", "in", ["draft", "sent"]),
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
if not sale_orders:
|
||||||
|
_logger.info(
|
||||||
|
"Cron: No sale orders to confirm for group order %s (%s)",
|
||||||
|
self.id,
|
||||||
|
self.name,
|
||||||
|
)
|
||||||
|
return
|
||||||
|
|
||||||
|
_logger.info(
|
||||||
|
"Cron: Confirming %d sale orders for group order %s (%s)",
|
||||||
|
len(sale_orders),
|
||||||
|
self.id,
|
||||||
|
self.name,
|
||||||
|
)
|
||||||
|
|
||||||
|
try:
|
||||||
|
sale_orders.action_confirm()
|
||||||
|
except Exception:
|
||||||
|
_logger.exception(
|
||||||
|
"Cron: Error confirming sale orders for group order %s (%s)",
|
||||||
|
self.id,
|
||||||
|
self.name,
|
||||||
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue