From a77561ab61e88dfa839f305d4caf7efea0b92926 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ram=C3=B3n=20V=C3=A1squez?= <ramon.vasquez@eynes.com.ar> Date: Mon, 15 Apr 2024 16:32:33 -0300 Subject: [PATCH] [ADD][T3905] Get team_id when creating SO --- models/pre_sale_order.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/models/pre_sale_order.py b/models/pre_sale_order.py index d3cc912..23cde16 100644 --- a/models/pre_sale_order.py +++ b/models/pre_sale_order.py @@ -231,6 +231,9 @@ class PreSaleOrder(models.Model): self.update({'state': 'pending'}) def create_order(self, pso=None): + CrmTeam = self.env['crm.team'] + SaleOrder = self.env['sale.order'] + for rec in self or pso: lines = rec.pre_order_line_ids.filtered( lambda x: x.line_state_done != 'rejected' @@ -246,14 +249,13 @@ class PreSaleOrder(models.Model): ) credit_line = rec.partner_shipping_id.pricelist_ids.filtered( - lambda x: x.product_type.id == rec.product_type.id, + lambda x: x.product_type.id == rec.product_type.id ) if not len(partner_pricelist_line): raise ValidationError( _( - 'Can\'t create sale order from purchase order %s ' - 'because partner has no pricelist set.' + 'Can\'t create sale order from purchase order %s because partner has no pricelist set.' ) % rec.name ) @@ -261,7 +263,10 @@ class PreSaleOrder(models.Model): zone_id = False if self.partner_shipping_id.zone_accounts_line_ids: zone_id = self.partner_shipping_id.zone_accounts_line_ids[0].rp_za_zone.id - sale_order = self.env['sale.order'].create( + + team = CrmTeam.search([('zone', 'ilike', rec.zone_account.split('-')[0])], limit=1) + + sale_order = SaleOrder.create( { 'date_order_exit': rec.date_order_exit, 'origin': rec.name, @@ -273,6 +278,7 @@ class PreSaleOrder(models.Model): 'product_type': rec.product_type.id, 'state': 'confirmed', 'search_zone': zone_id, + 'team_id': team.id, } ) -- GitLab