Skip to content
Extraits de code Groupes Projets
Valider b31cbfd3 rédigé par Juliana's avatar Juliana
Parcourir les fichiers

[ADD]Add unicity constraint id PRM

parent 02f9ebd0
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
from odoo import api, fields, models from odoo import api, fields, models
from odoo.exceptions import ValidationError
class AccCounter(models.Model): class AccCounter(models.Model):
_name = "acc.counter" _name = "acc.counter"
...@@ -12,7 +14,7 @@ class AccCounter(models.Model): ...@@ -12,7 +14,7 @@ class AccCounter(models.Model):
# Fields declaration # Fields declaration
# ------------------------------------------------------ # ------------------------------------------------------
# General Info # General Info
name = fields.Char("ID PRM", required=True) name = fields.Char("ID PRM", required=True, index=True)
acc_operation_id = fields.Many2one("acc.operation", string="Opération liée") acc_operation_id = fields.Many2one("acc.operation", string="Opération liée")
date_start_contract = fields.Date("Date de début", default=fields.Datetime.now) date_start_contract = fields.Date("Date de début", default=fields.Datetime.now)
date_end_contract = fields.Date("Date de fin", default=fields.Datetime.now) date_end_contract = fields.Date("Date de fin", default=fields.Datetime.now)
...@@ -26,6 +28,7 @@ class AccCounter(models.Model): ...@@ -26,6 +28,7 @@ class AccCounter(models.Model):
domain="['|', ('is_consumer', '=', True), ('is_producer', '=', True)]", domain="['|', ('is_consumer', '=', True), ('is_producer', '=', True)]",
) )
test = fields.Char("test")
# Info Soutirage counter # Info Soutirage counter
is_delivery = fields.Boolean("Est un point de soutirage") is_delivery = fields.Boolean("Est un point de soutirage")
power_delivery = fields.Float("Puissance soutirage (en kW)") power_delivery = fields.Float("Puissance soutirage (en kW)")
...@@ -44,10 +47,20 @@ class AccCounter(models.Model): ...@@ -44,10 +47,20 @@ class AccCounter(models.Model):
string="Acheteur de surplus", string="Acheteur de surplus",
domain="[('is_buyer_surplus', '=', True)]", domain="[('is_buyer_surplus', '=', True)]",
) )
# ------------------------------------------------------ # ------------------------------------------------------
# SQL Constraints # SQL Constraints
# ------------------------------------------------------ # ------------------------------------------------------
_sql_constraints = [("name", "unique(name)", "L'ID PRM exite déjà !")]
@api.constrains('name')
def _check_name(self):
for record in self:
if record.name:
prm_ids = self.search_count(
[('name', '=', record.name)])
if prm_ids > 0:
raise ValidationError("L'ID PRM exite déjà !")
# ------------------------------------------------------ # ------------------------------------------------------
# Default methods # Default methods
# ------------------------------------------------------ # ------------------------------------------------------
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter