fix(ows_models): Update create() to use @api.model_create_multi for Odoo 18
Fixed DeprecationWarning by updating OwsMachine.create() method: - Changed from @api.model with single vals parameter - To @api.model_create_multi with vals_list parameter - Now supports batch creation of multiple records - Removed duplicate empty OwsMachineArea class definition This resolves the Odoo 18 deprecation warning about create method not supporting batch operations.
This commit is contained in:
parent
686b201792
commit
4c048b5ca9
|
|
@ -400,12 +400,6 @@ AVAILABLE_COLORS = [
|
|||
('#ffffff', 'Weiss'),
|
||||
]
|
||||
|
||||
class OwsMachineArea(models.Model):
|
||||
_name = 'ows.machine.area'
|
||||
_table = 'ows_machine_area'
|
||||
_description = 'OWS: Maschinenbereich'
|
||||
|
||||
|
||||
class MaintenanceEquipment(models.Model):
|
||||
"""Erweitere maintenance.equipment mit OWS-Feldern für direkte Bearbeitung"""
|
||||
_inherit = 'maintenance.equipment'
|
||||
|
|
@ -559,24 +553,25 @@ class OwsMachine(models.Model):
|
|||
|
||||
# Keine eigenen SQL Constraints - Equipment hat bereits unique constraint für serial_no
|
||||
|
||||
@api.model
|
||||
def create(self, vals):
|
||||
@api.model_create_multi
|
||||
def create(self, vals_list):
|
||||
"""
|
||||
Beim Erstellen einer ows.machine:
|
||||
1. Equipment IMMER automatisch erstellen
|
||||
2. Area → Location synchronisieren
|
||||
3. serial_no und name vom User übernehmen
|
||||
"""
|
||||
# Equipment IMMER automatisch erstellen
|
||||
equipment_vals = {
|
||||
'name': vals.get('name', 'Neue Maschine'),
|
||||
'serial_no': vals.get('serial_no', False),
|
||||
}
|
||||
# Equipment für alle Records erstellen
|
||||
for vals in vals_list:
|
||||
equipment_vals = {
|
||||
'name': vals.get('name', 'Neue Maschine'),
|
||||
'serial_no': vals.get('serial_no', False),
|
||||
}
|
||||
|
||||
equipment = self.env['maintenance.equipment'].create(equipment_vals)
|
||||
vals['equipment_id'] = equipment.id
|
||||
|
||||
equipment = self.env['maintenance.equipment'].create(equipment_vals)
|
||||
vals['equipment_id'] = equipment.id
|
||||
|
||||
return super(OwsMachine, self).create(vals)
|
||||
return super(OwsMachine, self).create(vals_list)
|
||||
|
||||
def write(self, vals):
|
||||
"""
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user