Skip to content
Extraits de code Groupes Projets
ecozimut_mixin_models.py 2,8 ko
Newer Older
  • Learn to ignore specific revisions
  • # Copyright 2023 Le Filament (https://le-filament.com)
    # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)
    
    
    Rémi - Le Filament's avatar
    Rémi - Le Filament a validé
    from random import randint
    
    
    from odoo import fields, models
    
    
    
    # ------------------------------------------------------
    
    Juliana's avatar
    Juliana a validé
    # Listes pour la partie Projet
    
    # ------------------------------------------------------
    
    class EcozimutProcedureType(models.Model):
        _name = "ecozimut.procedure.type"
        _description = "Type de procédure"
    
        name = fields.Char(string="Type de procédure", required=True)
    
        calculation_mode = fields.Selection(
            [
                ("manual", "Manuel"),
                ("missions", "Missions"),
                ("sale_orders", "Devis / Commandes"),
            ],
            string="Mode de calcul",
            required=True,
            default="manual",
        )
    
        _sql_constraints = [
            ("name_uniq", "unique (name)", "Ce type de procédure existe déjà !"),
        ]
    
    
    
    class EcozimutOperationType(models.Model):
        _name = "ecozimut.operation.type"
    
        _description = "Type d'opération"
    
    
        name = fields.Char(string="Type d'opération", required=True)
    
    
        _sql_constraints = [
            ("name_uniq", "unique (name)", "Ce type d'opération existe déjà !"),
        ]
    
    
    
    class EcozimutUsage(models.Model):
        _name = "ecozimut.usage"
        _description = "Usage"
    
        name = fields.Char(string="Usage", required=True)
    
    
        _sql_constraints = [
            ("name_uniq", "unique (name)", "Cet usage existe déjà !"),
        ]
    
    
    Juliana's avatar
    Juliana a validé
    class EcozimutProjectPerf(models.Model):
        _name = "ecozimut.project.perf"
        _description = "Performance projet"
    
        def _get_default_color(self):
            return randint(1, 11)
    
    
    Juliana's avatar
    Juliana a validé
        name = fields.Char("Nom", required=True)
    
        color = fields.Integer("Color", default=_get_default_color)
    
        _sql_constraints = [
            ("name_uniq", "unique (name)", "Cette performance projet existe déjà !"),
        ]
    
    
    
    # ------------------------------------------------------
    
    Juliana's avatar
    Juliana a validé
    # Listes pour la partie Acteur
    
    # ------------------------------------------------------
    
    class EcozimutCustomerSubType(models.Model):
        _name = "ecozimut.customer.subtype"
        _description = "Sous-catégorie de client"
    
        name = fields.Char(string="Sous-catégorie de client", required=True)
    
        _sql_constraints = [
            ("name_uniq", "unique (name)", "Cette sous-catégorie de client existe déjà !"),
        ]
    
    
    
    # ------------------------------------------------------
    
    Juliana's avatar
    Juliana a validé
    # Listes pour la partie Mission
    
    # ------------------------------------------------------
    class EcozimutMission(models.Model):
    
        _description = "Mission EcoZimut"
    
        name = fields.Char(string="Mission", required=True)
        pct = fields.Float(
    
            string="Pourcentage", required=True, digits=(16, 4), default="0.0"
    
    
        _sql_constraints = [
            ("name_uniq", "unique (name)", "Cette mission existe déjà !"),
        ]