diff --git a/crm_claim_rma/crm_claim_rma.py b/crm_claim_rma/crm_claim_rma.py index bf9cefbc..1878d39e 100644 --- a/crm_claim_rma/crm_claim_rma.py +++ b/crm_claim_rma/crm_claim_rma.py @@ -254,6 +254,15 @@ class claim_line(orm.Model): context=context) return True + def auto_set_warranty(self, cr, uid, ids, context): + """ Set warranty automatically + if the user has not himself pressed on 'Calculate warranty state' + button, it sets warranty for him""" + for line in self.browse(cr, uid, ids, context=context): + if not line.warning: + self.set_warranty(cr, uid, [line.id], context=context) + return True + def get_destination_location(self, cr, uid, product_id, warehouse_id, context=None): """Compute and return the destination location ID to take diff --git a/crm_claim_rma/wizard/claim_make_picking.py b/crm_claim_rma/wizard/claim_make_picking.py index a8bedf2b..c2f3ad7a 100644 --- a/crm_claim_rma/wizard/claim_make_picking.py +++ b/crm_claim_rma/wizard/claim_make_picking.py @@ -194,6 +194,9 @@ class claim_make_picking(orm.TransientModel): _('A product return cannot be created for various ' 'destination locations, please choose line with a ' 'same destination location.')) + self.pool.get('claim.line').auto_set_warranty(cr, uid, + line_ids, + context=context) common_dest_partner_id = self._get_common_partner_from_line( cr, uid, line_ids, context=context) if not common_dest_partner_id: