[NEW] maintenance_server_data: create add-on

This commit is contained in:
Stéphan Sainléger
2023-08-28 22:08:30 +02:00
parent d82e1701f9
commit eb98973d16
13 changed files with 349 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
from . import os_distribution
from . import service
from . import maintenance_equipment

View File

@@ -0,0 +1,17 @@
from odoo import fields, models
class MaintenanceEquipment(models.Model):
_inherit = 'maintenance.equipment'
server_ip = fields.Char('Server Ip Address')
distribution_id = fields.Many2one('os.distribution', string='Distribution')
service_ids = fields.One2many('service.instance', 'equipment_id', string='Services')
hosting_city = fields.Char('Hosting City')
nb_cores = fields.Integer('Nb Cores')
ram = fields.Integer('RAM (Go)')
disk_storage = fields.Integer('Disk Storage (Go)')
backup_activated = fields.Boolean('Backup Activated ?')
backup_server_id = fields.Many2one('backup.server', string='Backup Server')
backup_ok = fields.Boolean('Backup OK ?')

View File

@@ -0,0 +1,17 @@
from odoo import api, fields, models
class OsDistribution(models.Model):
_name = 'os.distribution'
name = fields.Char('Name', compute="_compute_name")
distrib_name = fields.Char('Distrib Name', required=True)
distrib_version = fields.Char('Distrib Version')
@api.depends("distrib_name","distrib_version")
def _compute_name(self):
for distrib in self:
distrib.name = ""
if distrib.distrib_name != "":
distrib.name = distrib.distrib_name
if distrib.distrib_version != "":
distrib.name = distrib.name + ' ' + distrib.distrib_version

View File

@@ -0,0 +1,27 @@
from odoo import fields, models
class Service(models.Model):
_name = 'service'
name = fields.Char('Name', required=True)
class ServiceVersion(models.Model):
_name = "service.version"
service_id = fields.Many2one('service', string='Service', required=True)
name = fields.Char('Name')
is_last_version = fields.Boolean('Is Last Version?')
class ServiceInstance(models.Model):
_name = "service.instance"
equipment_id = fields.Many2one('maintenance.equipment', string='Equipment')
service_id = fields.Many2one('service', string='Service', required=True)
version_id = fields.Many2one('service.version', string='Version')
service_url = fields.Char(string='Service Url')
class BackupServer(models.Model):
_name = 'backup.server'
name = fields.Char('Name', required=True)