Compare commits
3 Commits
c4d7e9b8a9
...
3639238d63
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3639238d63 | ||
|
|
e4c485576c | ||
|
|
3e7e30ac14 |
@@ -4,7 +4,14 @@ from odoo import api, fields, models
|
|||||||
class MaintenanceEquipment(models.Model):
|
class MaintenanceEquipment(models.Model):
|
||||||
_inherit = "maintenance.equipment"
|
_inherit = "maintenance.equipment"
|
||||||
|
|
||||||
|
_sql_constraints = [
|
||||||
|
('unique_name', 'UNIQUE(name)', 'Name must be unique.'),
|
||||||
|
('unique_server_ip', 'UNIQUE(server_ip)', 'Server IP must be unique.'),
|
||||||
|
('unique_main_domain_name', 'UNIQUE(main_domain_name)', 'Main Domain Name must be unique.'),
|
||||||
|
]
|
||||||
|
|
||||||
server_ip = fields.Char("Server Ip Address")
|
server_ip = fields.Char("Server Ip Address")
|
||||||
|
main_domain_name = fields.Char("Main Domain Name", )
|
||||||
distribution_id = fields.Many2one("os.distribution", string="Distribution")
|
distribution_id = fields.Many2one("os.distribution", string="Distribution")
|
||||||
service_ids = fields.One2many("service.instance", "equipment_id", string="Services")
|
service_ids = fields.One2many("service.instance", "equipment_id", string="Services")
|
||||||
hosting_city = fields.Char("Hosting City")
|
hosting_city = fields.Char("Hosting City")
|
||||||
@@ -17,8 +24,24 @@ class MaintenanceEquipment(models.Model):
|
|||||||
|
|
||||||
name_fr = fields.Char("Name (FR)", compute="_compute_name_fr", store=True)
|
name_fr = fields.Char("Name (FR)", compute="_compute_name_fr", store=True)
|
||||||
|
|
||||||
|
def copy_data(self, default=None):
|
||||||
|
default = dict(default or {})
|
||||||
|
if "server_ip" not in default:
|
||||||
|
default["server_ip"] = False
|
||||||
|
if "main_domain_name" not in default:
|
||||||
|
default["main_domain_name"] = False
|
||||||
|
vals_list = super().copy_data(default=default)
|
||||||
|
if "name" not in default:
|
||||||
|
for equipment, vals in zip(self, vals_list):
|
||||||
|
vals["name"] = self.env._("%s (copy)", equipment.name)
|
||||||
|
return vals_list
|
||||||
|
|
||||||
@api.depends("name")
|
@api.depends("name")
|
||||||
def _compute_name_fr(self):
|
def _compute_name_fr(self):
|
||||||
|
if not self.env["res.lang"]._lang_get("fr_FR"):
|
||||||
|
for record in self:
|
||||||
|
record.name_fr = record.name
|
||||||
|
return
|
||||||
for record in self:
|
for record in self:
|
||||||
record.name_fr = record.with_context(lang="fr_FR").name
|
record.name_fr = record.with_context(lang="fr_FR").name
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
<xpath expr="//field[@name='effective_date']/.." position="after">
|
<xpath expr="//field[@name='effective_date']/.." position="after">
|
||||||
<group name="server_data" string="Server data">
|
<group name="server_data" string="Server data">
|
||||||
<field name="server_ip" />
|
<field name="server_ip" />
|
||||||
|
<field name="main_domain_name" />
|
||||||
<field name="hosting_city" />
|
<field name="hosting_city" />
|
||||||
<field name="distribution_id" />
|
<field name="distribution_id" />
|
||||||
<field name="nb_cores" />
|
<field name="nb_cores" />
|
||||||
@@ -45,6 +46,7 @@
|
|||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath expr="//field[@name='category_id']" position="after">
|
<xpath expr="//field[@name='category_id']" position="after">
|
||||||
<field name="server_ip" optional="hide" />
|
<field name="server_ip" optional="hide" />
|
||||||
|
<field name="main_domain_name" optional="hide" />
|
||||||
<field name="hosting_city" optional="hide" />
|
<field name="hosting_city" optional="hide" />
|
||||||
<field name="distribution_id" optional="hide" />
|
<field name="distribution_id" optional="hide" />
|
||||||
<field name="nb_cores" optional="hide" />
|
<field name="nb_cores" optional="hide" />
|
||||||
|
|||||||
Reference in New Issue
Block a user