From d41560f6a0d6436b42dc45c3b2837087e9bf1fdd Mon Sep 17 00:00:00 2001
From: jordan <jordan@le-filament.com>
Date: Mon, 14 Dec 2020 18:07:22 +0100
Subject: [PATCH] [add] ajout types et produits pour les sondages + modif vue
kanban et search
---
models/survey_survey.py | 20 ++++++++++
views/survey_views.xml | 83 ++++++++++++++++++++++++++++++++++++++++-
2 files changed, 102 insertions(+), 1 deletion(-)
diff --git a/models/survey_survey.py b/models/survey_survey.py
index c3f57b4..9a2f202 100644
--- a/models/survey_survey.py
+++ b/models/survey_survey.py
@@ -4,10 +4,30 @@
from odoo import fields, models, api
+class SurveyType(models.Model):
+ """Ajout d'un type pour les sondages"""
+
+ _name = 'survey.type'
+ _description = 'Survey Type'
+
+ name = fields.Char(required=True, string="Type de sondage")
+
+
+class SurveyProduct(models.Model):
+ """Ajout d'un produit lié aux sondages"""
+
+ _name = 'survey.product'
+ _description = 'Survey Product'
+
+ name = fields.Char(required=True, string="Produit lié au sondage")
+
+
class Survey(models.Model):
_inherit = "survey.survey"
background_image = fields.Binary('Image de fond')
+ type_id = fields.Many2one('survey.type', string="Type", required=True)
+ product_id = fields.Many2one('survey.product', string="Produit", required=True)
class SurveyQuestion(models.Model):
diff --git a/views/survey_views.xml b/views/survey_views.xml
index 76c8ac5..28b9dfc 100644
--- a/views/survey_views.xml
+++ b/views/survey_views.xml
@@ -4,17 +4,26 @@
<odoo>
- <!-- Permet l'ajout d'une image de fond -->
+ <!-- Permet l'ajout d'une image de fond + ajout des champs type et produit -->
<record model="ir.ui.view" id="ethikis_survey_form_view">
<field name="name">ethikis_survey_form_view</field>
<field name="model">survey.survey</field>
<field name="inherit_id" ref="survey.survey_form"/>
<field name="arch" type="xml">
+
<xpath expr="//notebook" position="inside">
<page string="Background">
<field name="background_image" widget="image"/>
</page>
</xpath>
+
+ <xpath expr="//div[hasclass('oe_title')]" position="after">
+ <group>
+ <field name="product_id" />
+ <field name="type_id" />
+ </group>
+ </xpath>
+
</field>
</record>
@@ -40,4 +49,76 @@
</field>
</record>
+ <!-- Modification de la vue search -->
+ <record model="ir.ui.view" id="ethikis_survey_survey_view_search">
+ <field name="name">ethikis_survey_survey_view_search</field>
+ <field name="model">survey.survey</field>
+ <field name="inherit_id" ref="survey.survey_survey_view_search"/>
+ <field name="arch" type="xml">
+ <xpath expr="//search" position="inside">
+ <field name="type_id" />
+ <field name="product_id" />
+ <filter name="group_by_type" string="Type" context="{'group_by': 'type_id'}"/>
+ <filter name="group_by_product" string="Produit" context="{'group_by': 'product_id'}"/>
+ </xpath>
+ </field>
+ </record>
+
+ <!-- Modification de la vue kanban -->
+ <record model="ir.ui.view" id="ethikis_survey_kanban">
+ <field name="name">ethikis_survey_survey_kanban_view</field>
+ <field name="model">survey.survey</field>
+ <field name="inherit_id" ref="survey.survey_kanban"/>
+ <field name="arch" type="xml">
+
+ <xpath expr="//field[@name='activity_state']" position="after">
+ <field name="type_id" />
+ <field name="product_id" />
+ </xpath>
+
+ <xpath expr="//div[hasclass('o_kanban_record_top')]" position="replace">
+ <h4 class="o_kanban_record_title mb4">
+ <field name="product_id" /> - <field name="type_id" />
+ </h4>
+ <h4 class="o_kanban_record_title mb4">
+ <field name="stage_id"/>
+ </h4>
+ </xpath>
+
+ </field>
+ </record>
+
+ <!-- Ajout des menu des configuration pour les types et les produits -->
+
+ <record id="action_menu_surveys_type" model="ir.actions.act_window">
+ <field name="name">Types</field>
+ <field name="res_model">survey.type</field>
+ <field name="view_mode">tree</field>
+ </record>
+
+ <record id="action_menu_surveys_product" model="ir.actions.act_window">
+ <field name="name">Produits</field>
+ <field name="res_model">survey.product</field>
+ <field name="view_mode">tree</field>
+ </record>
+
+ <record id="action_menu_surveys_stage" model="ir.actions.act_window">
+ <field name="name">Étapes</field>
+ <field name="res_model">survey.stage</field>
+ <field name="view_mode">tree</field>
+ </record>
+
+ <menuitem id="menu_surveys_type"
+ parent="survey.menu_surveys_configuration"
+ action="action_menu_surveys_type"
+ />
+ <menuitem id="menu_surveys_product"
+ parent="survey.menu_surveys_configuration"
+ action="action_menu_surveys_product"
+ />
+ <menuitem id="menu_surveys_stage"
+ parent="survey.menu_surveys_configuration"
+ action="action_menu_surveys_stage"
+ />
+
</odoo>
\ No newline at end of file
--
GitLab