From 35a5d217ac1044f99975d5e4526b55bf0f415ba0 Mon Sep 17 00:00:00 2001 From: sinergia Date: Thu, 28 Jul 2022 09:37:31 -0500 Subject: [PATCH] entry of serial and button registred --- __init__.py | 1 + equipment.py | 22 ++++++- purchase.py | 3 +- view/optical_equipment_form.xml | 82 ++++++++++++++------------ view/optical_equipment_serial_tree.xml | 2 + 5 files changed, 70 insertions(+), 40 deletions(-) diff --git a/__init__.py b/__init__.py index e78d257..c2a5519 100644 --- a/__init__.py +++ b/__init__.py @@ -14,6 +14,7 @@ def register(): sale.SaleLine, sale.CreateSubscriptionStart, equipment.OpticalEquipment, + equipment.EquipmentMaintenance, configuration_equipment.Configuration, maintenance.Maintenance, maintenance.MaintenanceActivity, diff --git a/equipment.py b/equipment.py index d4f595f..0ef06c4 100644 --- a/equipment.py +++ b/equipment.py @@ -87,6 +87,9 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView): 'equipment','subscription', "Subscriptions", states={'readonly': True} ) + maintenance_history = fields.Many2Many('optical_equipment.maintenance-optical_equipment.equipment', 'equipment', 'maintenance', "Maintenances", + states={'readonly': True} + ) software_version = fields.Char("Software version", size=None, states=_states,) @@ -194,4 +197,21 @@ class OpticalEquipment(Workflow, ModelSQL, ModelView): @ModelView.button @Workflow.transition('registred') def registred(cls, equipments): - cls.set_code(equipments) + #raise UserError(str(equipments[0].serial)) + for i in equipments: + if i.serial == None: + raise UserError(str(i.serial)) + else: + cls.set_code(equipments) + + + +class EquipmentMaintenance(ModelSQL): + 'Optical Equipment - Equipment - Maintenance' + __name__='optical_equipment.maintenance-optical_equipment.equipment' + + maintenance = fields.Many2One('optical_equipment.maintenance', 'Maintenances', select=True) + + equipment = fields.Many2One('optical_equipment.equipment', 'Equipment', select=True) + + diff --git a/purchase.py b/purchase.py index b28ef17..9719461 100644 --- a/purchase.py +++ b/purchase.py @@ -60,7 +60,8 @@ class Purchase(metaclass=PoolMeta): refurbish=line.refurbish, serial=None if line.quantity > 1 else line.serial_equipment, health_register=line.health_register, - software_version=line.software_version) + software_version=line.software_version, + maintenance_frequency="none") equipment.save() else: continue diff --git a/view/optical_equipment_form.xml b/view/optical_equipment_form.xml index d61329b..d8fd50d 100644 --- a/view/optical_equipment_form.xml +++ b/view/optical_equipment_form.xml @@ -1,55 +1,61 @@ -
+