diff --git a/odex25_donation/ensan_sale_management/models/product.py b/odex25_donation/ensan_sale_management/models/product.py index 9829e813f..7cea4dd53 100644 --- a/odex25_donation/ensan_sale_management/models/product.py +++ b/odex25_donation/ensan_sale_management/models/product.py @@ -170,7 +170,7 @@ class ProductTemplate_Inherit(models.Model): line_ids = self.env['account.move.line'].search([ ('product_id.product_tmpl_id', 'in', products.ids), - ('reconciled', '=', True), + ('move_id.payment_state', '=', 'paid'), ('move_id.move_type', '=', 'out_invoice') ]) diff --git a/odex25_donation/ensan_sale_management/models/sale_order.py b/odex25_donation/ensan_sale_management/models/sale_order.py index 52a126884..6d171f04d 100644 --- a/odex25_donation/ensan_sale_management/models/sale_order.py +++ b/odex25_donation/ensan_sale_management/models/sale_order.py @@ -29,11 +29,10 @@ class SaleOrder(models.Model): def write(self, vals): if 'order_mobile_number' in vals and not self._context.get('skip_partner_mobile_sync'): vals['order_mobile_number'] = self.phone_format(vals['order_mobile_number']) - orders = self.search([('state', '=', 'sale'), ('id', 'not in', self.ids)]) - numbers = set(orders.mapped('order_mobile_number')) - if vals['order_mobile_number'] in numbers: + old_orders = self.search([('state', '=', 'sale'), ('id', 'not in', self.ids), ('order_mobile_number', '=', vals['order_mobile_number'])], limit=1, order='id desc') + if old_orders: vals['donor_type'] = 'returning' - orders.filtered(lambda o: o.order_mobile_number == vals['order_mobile_number']).write({'donor_type': 'returning'}) + old_orders.write({'donor_type': 'returning'}) else: vals['donor_type'] = 'new' partner_sudo = self.env['res.partner'].sudo()