Skip to content
Extraits de code Groupes Projets
Sélectionner une révision Git
  • 089f7d00e1058df8c16d683d6877bb7dadfd5c5f
  • 12.0-evo-202003 par défaut
  • 14-RV-20250324
  • 14-RV-20240830
  • 14-RV-20231222
  • 12-RV-Bug_ecrasement_date_radiation
  • 12-RV-revision-staff
  • 12-RV-copadev
  • 12-RV-Correctif-open-instagram
  • 12-RV-Tree-Coop-Ajout-effectif
  • 12.0-RV-Instagram
  • 12.0-RV-segment_visibility
  • 12.0 protégée
  • 12.0-RV-Abonnements
14 résultats

res_partner_lists.py

Blame
  • Bifurcation depuis Le Filament / Confédération Générale des SCOP / cgscop_partner
    Le projet source a une visibilité limitée.
    res_partner.py 2,22 Kio
    # Copyright 2021 Le Filament (<http://www.le-filament.com>)
    # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
    
    from odoo import api, fields, models
    
    
    class ResPartner(models.Model):
        _inherit = "res.partner"
    
        # ------------------------------------------------------
        # Fields declaration
        # ------------------------------------------------------
        sale_project_count = fields.Integer(
            compute="_compute_sale_project_count", string="Nombre de projets"
        )
        sale_project_ids = fields.One2many(
            "sale.project", "partner_id", "Liste des projets"
        )
        sale_project_seq = fields.Integer(string="Séquence de projets", default="0")
    
        # ------------------------------------------------------
        # SQL Constraints
        # ------------------------------------------------------
    
        # ------------------------------------------------------
        # Default methods
        # ------------------------------------------------------
    
        # ------------------------------------------------------
        # Computed fields / Search Fields
        # ------------------------------------------------------
        @api.depends("sale_project_ids")
        def _compute_sale_project_count(self):
            for res in self:
                res.sale_project_count = self.env["sale.project"].search_count(
                    [("partner_id", "=", res.id)]
                )
    
        # ------------------------------------------------------
        # Onchange / Constraints
        # ------------------------------------------------------
    
        # ------------------------------------------------------
        # CRUD methods (ORM overrides)
        # ------------------------------------------------------
    
        # ------------------------------------------------------
        # Actions
        # ------------------------------------------------------
        def action_view_partner_projects(self):
            self.ensure_one()
            action = self.env["ir.actions.actions"]._for_xml_id(
                "ap_sale_project.action_sale_project"
            )
            action["domain"] = [
                ("partner_id", "child_of", self.id),
            ]
            return action
    
        # ------------------------------------------------------
        # Business methods
        # ------------------------------------------------------