diff --git a/maintenance.py b/maintenance.py index f93b284..8639aa4 100644 --- a/maintenance.py +++ b/maintenance.py @@ -803,6 +803,8 @@ class CreateContract(Wizard): start_date=dates['start_date'], end_date=dates['end_date'], maintenance_services=prorogues, - equipments=equipments + equipments=equipments, + state='draft', + price_contract=maintenance_service.sale_origin.sale.total_amount ) contract.save() diff --git a/sale.py b/sale.py index 29d77b7..c1b125a 100644 --- a/sale.py +++ b/sale.py @@ -37,7 +37,8 @@ class Sale(metaclass=PoolMeta): 'related_party': Eval('party'), },) agended = fields.Boolean("Scheduling",states={ - 'invisible': (Eval('sale_type') != 'maintenance'),}) + 'invisible': (Eval('sale_type') != 'maintenance'), + 'readonly': True}) @fields.depends('lines', 'sale_type', 'agended') @@ -46,6 +47,10 @@ class Sale(metaclass=PoolMeta): if self.sale_type != "maintenance": self.agended = False + @classmethod + def default_agended(self): + return False + @classmethod def _get_origin(cls): 'Return list of Model names for origin Reference' @@ -90,7 +95,7 @@ class Sale(metaclass=PoolMeta): state="draft" ) maintenanceService.save() - cls.agended = True + sale.agended = True sale.save() with transaction.set_context(