From b5ce27eb83160afc0e74f633864ec974d831b210 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20-=20Le=20Filament?= <remi@le-filament.com>
Date: Mon, 6 Feb 2023 10:10:58 +0100
Subject: [PATCH] [UPD] add missing and update views

---
 views/mixin_configuration_menu.xml | 160 ++++++++++++++++++++++++-----
 views/project.xml                  |  14 ++-
 2 files changed, 144 insertions(+), 30 deletions(-)

diff --git a/views/mixin_configuration_menu.xml b/views/mixin_configuration_menu.xml
index 4ba2841..4c5e8d2 100644
--- a/views/mixin_configuration_menu.xml
+++ b/views/mixin_configuration_menu.xml
@@ -4,7 +4,6 @@
 <odoo>
     <data>
         <!-- ============================== PROJET ============================== -->
-
         <!-- CUSTOM TREE VIEWS -->
         <record id="ecozimut_procedure_tree_view" model="ir.ui.view">
           <field name="name">ecozimut.procedure.tree.view</field>
@@ -17,6 +16,36 @@
           </field>
         </record>
 
+        <record id="ecozimut_operation_tree_view" model="ir.ui.view">
+          <field name="name">ecozimut.operation.tree.view</field>
+          <field name="model">ecozimut.operation.type</field>
+          <field name="arch" type="xml">
+              <tree editable="bottom">
+                  <field name="name" />
+              </tree>
+          </field>
+        </record>
+
+        <record id="ecozimut_usage_tree_view" model="ir.ui.view">
+          <field name="name">ecozimut.usage.tree.view</field>
+          <field name="model">ecozimut.usage</field>
+          <field name="arch" type="xml">
+              <tree editable="bottom">
+                  <field name="name" />
+              </tree>
+          </field>
+        </record>
+
+        <record id="project_phase_tree_view" model="ir.ui.view">
+          <field name="name">ecozimut.phase.tree.view</field>
+          <field name="model">project.phase</field>
+          <field name="arch" type="xml">
+              <tree editable="bottom">
+                  <field name="name" />
+              </tree>
+          </field>
+        </record>
+
         <record id="ecozimut_project_perf_tree_view" model="ir.ui.view">
            <field name="name">ecozimut.project.perf.tree.view</field>
            <field name="model">ecozimut.project.perf</field>
@@ -30,13 +59,37 @@
 
         <!-- ACTIONS -->
         <record model="ir.actions.act_window" id="ecozimut_procedure_action">
-            <field name="name">Procedure</field>
+            <field name="name">Type de procédure</field>
             <field name="type">ir.actions.act_window</field>
             <field name="res_model">ecozimut.procedure.type</field>
             <field name="view_mode">tree</field>
             <field name="view_id" ref="ecozimut_procedure_tree_view" />
         </record>
 
+        <record model="ir.actions.act_window" id="ecozimut_operation_action">
+            <field name="name">Type d'opération</field>
+            <field name="type">ir.actions.act_window</field>
+            <field name="res_model">ecozimut.operation.type</field>
+            <field name="view_mode">tree</field>
+            <field name="view_id" ref="ecozimut_operation_tree_view" />
+        </record>
+
+        <record model="ir.actions.act_window" id="ecozimut_usage_action">
+            <field name="name">Usage</field>
+            <field name="type">ir.actions.act_window</field>
+            <field name="res_model">ecozimut.usage</field>
+            <field name="view_mode">tree</field>
+            <field name="view_id" ref="ecozimut_usage_tree_view" />
+        </record>
+
+        <record model="ir.actions.act_window" id="project_phase_action">
+            <field name="name">Phase Projet</field>
+            <field name="type">ir.actions.act_window</field>
+            <field name="res_model">project.phase</field>
+            <field name="view_mode">tree</field>
+            <field name="view_id" ref="project_phase_tree_view" />
+        </record>
+
         <record model="ir.actions.act_window" id="ecozimut_project_perf_action">
            <field name="name">Performance</field>
            <field name="type">ir.actions.act_window</field>
@@ -54,17 +107,48 @@
         >
             <menuitem
                 id="ecozimut_procedure_menu"
-                name="Procedure"
+                name="Type de procédure"
                 action="ecozimut_procedure_action"
+                sequence="10"
+            />
+            <menuitem
+                id="ecozimut_operation_menu"
+                name="Type d'opération"
+                action="ecozimut_operation_action"
+                sequence="20"
+            />
+            <menuitem
+                id="ecozimut_usage_menu"
+                name="Usage"
+                action="ecozimut_usage_action"
+                sequence="30"
+            />
+            <menuitem
+                id="project_phase_menu"
+                name="Phase Projet"
+                action="project_phase_action"
+                sequence="40"
             />
             <menuitem
                 id="ecozimut_project_perf_menu"
                 name="Performances"
                 action="ecozimut_project_perf_action"
+                sequence="50"
             />
         </menuitem>
 
+
         <!-- ============================== ACTEUR ============================== -->
+        <!-- CUSTOM TREE VIEW -->
+        <record id="ecozimut_customer_subtype_tree_view" model="ir.ui.view">
+          <field name="name">ecozimut.customer.subtype.tree.view</field>
+          <field name="model">ecozimut.customer.subtype</field>
+          <field name="arch" type="xml">
+              <tree editable="bottom">
+                  <field name="name" />
+              </tree>
+          </field>
+        </record>
 
         <!-- ACTIONS -->
         <record model="ir.actions.act_window" id="ecozimut_c_sbtype_action">
@@ -72,7 +156,9 @@
             <field name="type">ir.actions.act_window</field>
             <field name="res_model">ecozimut.customer.subtype</field>
             <field name="view_mode">tree</field>
+            <field name="view_id" ref="ecozimut_customer_subtype_tree_view" />
         </record>
+
          <!-- MENU -->
         <menuitem
             id="ecozimut_acteur"
@@ -89,10 +175,28 @@
         </menuitem>
 
 
-
         <!-- ============================== MISSION ============================== -->
-
         <!-- CUSTOM TREE VIEW -->
+        <record id="project_ficheref_tree_view" model="ir.ui.view">
+            <field name="name">project.ficheref.tree.view</field>
+            <field name="model">project.ficheref</field>
+            <field name="arch" type="xml">
+                <tree editable="bottom">
+                    <field name="name" />
+                </tree>
+            </field>
+        </record>
+
+        <record id="project_capacity_certif_tree_view" model="ir.ui.view">
+            <field name="name">project.capacity.certif.tree.view</field>
+            <field name="model">project.capacity.certif</field>
+            <field name="arch" type="xml">
+                <tree editable="bottom">
+                    <field name="name" />
+                </tree>
+            </field>
+        </record>
+
         <record id="ecozimut_mission_tree_view" model="ir.ui.view">
             <field name="name">ecozimut.mission.tree.view</field>
             <field name="model">ecozimut.mission</field>
@@ -105,29 +209,28 @@
         </record>
 
         <!-- ACTIONS -->
-        <record model="ir.actions.act_window" id="ecozimut_mis_eco_action">
-            <field name="name">EcoZimut Missions</field>
+        <record model="ir.actions.act_window" id="project_ficref_action">
+            <field name="name">Fiche référence Projet</field>
             <field name="type">ir.actions.act_window</field>
-            <field name="res_model">ecozimut.mission</field>
+            <field name="res_model">project.ficheref</field>
             <field name="view_mode">tree</field>
-            <field name="view_id" ref="ecozimut_mission_tree_view" />
+            <field name="view_id" ref="project_ficheref_tree_view" />
         </record>
 
-        <record model="ir.actions.act_window" id="ecozimut_mis_ficref_action">
-            <field name="name">Fiche Référence</field>
+        <record model="ir.actions.act_window" id="project_capacity_certif_action">
+            <field name="name">Certificat de capacité</field>
             <field name="type">ir.actions.act_window</field>
-            <field name="res_model">project.ficheref</field>
+            <field name="res_model">project.capacity.certif</field>
             <field name="view_mode">tree</field>
+            <field name="view_id" ref="project_capacity_certif_tree_view" />
         </record>
 
-        <record
-            model="ir.actions.act_window"
-            id="ecozimut_project_capacity_certif_action"
-        >
-            <field name="name">Certificat de capacité</field>
+        <record model="ir.actions.act_window" id="ecozimut_mis_eco_action">
+            <field name="name">EcoZimut Missions</field>
             <field name="type">ir.actions.act_window</field>
-            <field name="res_model">project.capacity.certif</field>
+            <field name="res_model">ecozimut.mission</field>
             <field name="view_mode">tree</field>
+            <field name="view_id" ref="ecozimut_mission_tree_view" />
         </record>
 
          <!-- MENU -->
@@ -137,20 +240,23 @@
             sequence="2"
             parent="project.menu_project_config"
         >
-            <menuitem
-                id="ecozimut_mission_eco_menu"
-                name="EcoZimut Missions"
-                action="ecozimut_mis_eco_action"
-            />
             <menuitem
                 id="ecozimut_mission_ficref_menu"
-                name="Fiche Référence"
-                action="ecozimut_mis_ficref_action"
+                name="Fiche référence Projet"
+                action="project_ficref_action"
+                sequence="10"
             />
             <menuitem
                 id="ecozimut_project_capacity_certif_menu"
-                name="Certificat de capacité"
-                action="ecozimut_project_capacity_certif_action"
+                name="Certificat de capacité Projet"
+                action="project_capacity_certif_action"
+                sequence="20"
+            />
+            <menuitem
+                id="ecozimut_mission_eco_menu"
+                name="EcoZimut Missions"
+                action="ecozimut_mis_eco_action"
+                sequence="30"
             />
         </menuitem>
 
diff --git a/views/project.xml b/views/project.xml
index 20fe19a..a76077d 100644
--- a/views/project.xml
+++ b/views/project.xml
@@ -139,15 +139,20 @@
                             </group>
                         </group>
 
-                        <group string="Acteurs">
+                        <group
+                            string="Acteurs"
+                            attrs="{'invisible': [('categorie_type', '==', 'interne')]}"
+                        >
                             <group>
                                 <field
                                     name="customer_type"
-                                    attrs="{'required' : [('categorie_type', '!=', 'interne')]}"
+                                    attrs="{'required' : [('categorie_type', 'in', ('formation', 'r_d', 'action_commercial'))],
+                                            'invisible': [('categorie_type', 'not in', ('formation', 'r_d', 'action_commercial'))]}"
                                 />
                                 <field
                                     name="customer_subtype"
                                     options="{'no_open': True, 'no_create': True}"
+                                    attrs="{'invisible': [('categorie_type', 'not in', ('formation', 'r_d', 'action_commercial'))]}"
                                 />
                                 <field name="moa" />
                                 <field name="archi_mandataire" />
@@ -161,7 +166,10 @@
                             </group>
                         </group>
 
-                        <group string="Mission">
+                        <group
+                            string="Missions"
+                            attrs="{'invisible': [('categorie_type', '!=', 'bureau_etude')]}"
+                        >
                             <group>
                                 <field name="mission_type" />
                                 <field name="mission_nature" />
-- 
GitLab