From a148a98430e2edad89af3e65bb54c9e4dcf1c4fd Mon Sep 17 00:00:00 2001
From: benjamin <benjamin@le-filament.com>
Date: Thu, 28 Sep 2023 18:43:25 +0200
Subject: [PATCH] [update] partner notebook page visibility + search view

---
 views/res_partner.xml                | 29 +++++++++++++++++-----------
 views/res_partner_cooperative.xml    |  7 ++++++-
 wizard/scop_membership_out_wizard.py |  2 +-
 3 files changed, 25 insertions(+), 13 deletions(-)

diff --git a/views/res_partner.xml b/views/res_partner.xml
index c1fc63d..24d531b 100644
--- a/views/res_partner.xml
+++ b/views/res_partner.xml
@@ -626,14 +626,14 @@
                             string="Radiation"
                             type="action"
                             name="%(cgscop_partner.scop_membership_out_wizard_create_action)d"
-                            attrs="{'invisible': ['|', ('project_status', '!=', '4_suivi'), ('membership_status','!=','member')]}"
+                            attrs="{'invisible': ['|', ('project_status', 'not in', ['4_suivi', '6_decede']), ('membership_status','!=','member')]}"
                             groups="cgscop_partner.group_add_period"
                         />
                         <button
-                            string="Prospect Abandonne"
+                            string="Adhésion Abandonne"
                             type="object"
                             name="scop_abandonne"
-                            attrs="{'invisible':[('project_status','in', ('4_suivi', '5_abandonne'))]}"
+                            attrs="{'invisible':['|', ('project_status','!=', '4_suivi'), ('membership_status', '!=','member')]}"
                         />
                         <button
                             string="Modification statut projet"
@@ -685,6 +685,14 @@
                                 attrs="{'invisible':[('dissolution_reason_id','=', False)]}"
                             />
                         </h3>
+                        <p
+                            attrs="{'invisible':[('membership_status','!=', 'out')]}"
+                        >
+                            <field name="membership_status" readonly="1" invisible="1" />
+                            <span class="badge badge-danger">
+                                Radié
+                            </span>
+                        </p>
                     </div>
                     <div
                         class="oe_title oe_title_cgscop"
@@ -1472,7 +1480,7 @@
                     <page
                         name='scop_revision'
                         string="Révisions"
-                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', '!=', '4_suivi')]}"
+                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', 'not in', ['4_suivi', '6_decede'])]}"
                     >
                         <group col="3">
                             <group string="Contrat de révision">
@@ -1541,7 +1549,7 @@
                     <page
                         name="scop_periods"
                         string="Historique"
-                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', '!=', '4_suivi')]}"
+                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', 'not in', ['4_suivi', '6_decede'])]}"
                     >
                         <field
                             name="scop_period_ids"
@@ -1584,7 +1592,7 @@
                     <page
                         name='scop_membership'
                         string="Périodes d'adhésion"
-                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', '!=', '4_suivi')]}"
+                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', 'not in', ['4_suivi', '6_decede'])]}"
                     >
                         <field
                             name="membership_period_ids"
@@ -1610,7 +1618,7 @@
                     <page
                         name='scop_staff'
                         string="Effectifs"
-                        attrs="{'invisible': ['|','&amp;', ('is_cooperative', '=', True), ('project_status', '!=', '4_suivi'),'&amp;',('is_cooperative', '=', False),('organization_subtype_id','!=', %(cgscop_partner.riga_11528)d)]}"
+                        attrs="{'invisible': ['|','&amp;', ('is_cooperative', '=', True), ('project_status', 'not in', ['4_suivi', '6_decede']),'&amp;',('is_cooperative', '=', False),('organization_subtype_id','!=', %(cgscop_partner.riga_11528)d)]}"
                     >
                         <field
                             name="staff_ids"
@@ -1661,7 +1669,7 @@
                     <page
                         name='scop_rse'
                         string="Actions RSE"
-                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', '!=', '4_suivi')]}"
+                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', 'not in', ['4_suivi', '6_decede'])]}"
                     >
                         <field name="action_rse_ids" widget="one2many">
                             <tree string="Actions RSE" editable="top">
@@ -1673,11 +1681,10 @@
                             </tree>
                         </field>
                     </page>
-
                     <page
                         name='scop_xnet'
                         string="Extranet"
-                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', '!=', '4_suivi')]}"
+                        attrs="{'invisible': ['|', ('is_cooperative', '!=', True), ('project_status', 'not in', ['4_suivi', '6_decede'])]}"
                     >
                         <group string="Annuaire">
                             <field name="secteur_id" />
@@ -1693,7 +1700,7 @@
         ***    Custom Views
         ****************************** -->
         <!--
-            CG Scop Patner Search
+            CG Scop Partner Search
         -->
         <record id="view_res_partner_filter_partners" model="ir.ui.view">
             <field name="name">res.partner.select.partners</field>
diff --git a/views/res_partner_cooperative.xml b/views/res_partner_cooperative.xml
index 7458e1d..b67da9e 100644
--- a/views/res_partner_cooperative.xml
+++ b/views/res_partner_cooperative.xml
@@ -79,6 +79,11 @@
                         name="member_start_this_year"
                         domain="[('member_start','&lt;=', time.strftime('%%Y-12-31')),('member_start','&gt;=',time.strftime('%%Y-01-01'))]"
                     />
+                    <filter
+                        string="Projets d'adhésions"
+                        name="future_member"
+                        domain="['|', ('project_status','in', ['1_information', '2_pre-diagnostic', '3_accompagnement']), '&amp;', ('project_status','=','4_suivi'), ('membership_status','in',['adhesion', 'soumis_cg'])]"
+                    />
                     <filter
                         string="Coop. non Adhérentes, non décédées"
                         name="is_not_member"
@@ -225,7 +230,7 @@
                     <field name="member_start" optional="hide" />
                     <field name="dissolution_date" optional="hide" />
                     <field name="dissolution_reason_id" optional="hide" />
-                    <field name="membership_status" optional="hide" />
+                    <field name="membership_status" optional="show" />
                     <field name="staff_last" optional="hide" />
                 </tree>
             </field>
diff --git a/wizard/scop_membership_out_wizard.py b/wizard/scop_membership_out_wizard.py
index 58d359a..6e0a9b9 100644
--- a/wizard/scop_membership_out_wizard.py
+++ b/wizard/scop_membership_out_wizard.py
@@ -37,7 +37,7 @@ class ScopMembershipOutWizard(models.TransientModel):
     # ............................................................
     def member_out(self):
         for period in self:
-            # On veut cloture toute les périodes
+            # On veut cloture toutes les périodes
             if period.type_all:
                 last_periods = self.env["scop.membership.period"].search(
                     [
-- 
GitLab