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