From abb674056923b0b867ba114062fa3ed5ec7684df Mon Sep 17 00:00:00 2001 From: Guewen Baconnier Date: Thu, 18 Jul 2013 15:43:33 +0200 Subject: [PATCH] [CHG] partner_prepayment: the 'Use prepayment' option is delegated to the commercial entity, never set on contacts. (../trunk-generic/ rev 15.3.2) --- partner_prepayment/model/res_partner.py | 10 +++++++- .../test/sale_order_prepaid.yml | 25 +++++++++++++++++-- partner_prepayment/view/partner_view.xml | 2 +- 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/partner_prepayment/model/res_partner.py b/partner_prepayment/model/res_partner.py index b6cebbb5fad..6b78c578cd3 100644 --- a/partner_prepayment/model/res_partner.py +++ b/partner_prepayment/model/res_partner.py @@ -26,5 +26,13 @@ class res_partner(orm.Model): _inherit = 'res.partner' _columns = { - 'use_prepayment': fields.boolean('Use prepayment'), + 'use_prepayment': fields.boolean( + 'Use prepayment', + help="When prepayment is activated, the sales order policy " + "will be automatically defined to pay before delivery."), } + + def _commercial_fields(self, cr, uid, context=None): + fields = super(res_partner, self)._commercial_fields(cr, uid, context=context) + fields.append('use_prepayment') + return fields diff --git a/partner_prepayment/test/sale_order_prepaid.yml b/partner_prepayment/test/sale_order_prepaid.yml index 04d6cc03ec0..bb1761c9098 100644 --- a/partner_prepayment/test/sale_order_prepaid.yml +++ b/partner_prepayment/test/sale_order_prepaid.yml @@ -4,7 +4,7 @@ !record {model: res.partner, id: base.res_partner_4}: use_prepayment: True - - When I create a sale order for a customer without 'Use prepayment' + When I create a sale order for a customer not having 'Use prepayment' - !record {model: sale.order, id: partner_prepay_sale_01, view: sale_stock.view_order_form_inherit}: partner_id: base.res_partner_3 @@ -18,7 +18,7 @@ !assert {model: sale.order, id: partner_prepay_sale_01, string: The order policy should be 'manual'}: - order_policy == 'manual' - - When I change the sale order for a customer with 'Use prepayment' + When I change the sale order for a customer having 'Use prepayment' - !record {model: sale.order, id: partner_prepay_sale_01, view: sale_stock.view_order_form_inherit}: partner_id: base.res_partner_4 @@ -27,3 +27,24 @@ - !assert {model: sale.order, id: partner_prepay_sale_01, string: The order policy should be 'prepaid'}: - order_policy == 'prepaid' +- + When I set the order policy to 'manual' again. +- + !record {model: sale.order, id: partner_prepay_sale_01, view: sale_stock.view_order_form_inherit}: + order_policy: manual +- + Then the order policy should be manual +- + !assert {model: sale.order, id: partner_prepay_sale_01, string: The order policy should be 'manual'}: + - order_policy == 'manual' +- + And I change the customer of the sale order to a contact of the + commercial entity having 'Use prepayment'. +- + !record {model: sale.order, id: partner_prepay_sale_01, view: sale_stock.view_order_form_inherit}: + partner_id: base.res_partner_address_8 +- + Then the sale order should have the order policy 'prepaid' again. +- + !assert {model: sale.order, id: partner_prepay_sale_01, string: The order policy should be 'prepaid'}: + - order_policy == 'prepaid' diff --git a/partner_prepayment/view/partner_view.xml b/partner_prepayment/view/partner_view.xml index 21cd3e4d9e5..a8b329bd31b 100644 --- a/partner_prepayment/view/partner_view.xml +++ b/partner_prepayment/view/partner_view.xml @@ -8,7 +8,7 @@ + attrs="{'invisible': ['|', ('customer', '!=', True), ('is_company', '=', False), ('parent_id', '!=', False)]}"/>