diff --git a/__manifest__.py b/__manifest__.py index 02b6152e3cbfcf113d8f525279acb34aea9e0504..e36a1e714485ecf61707e26536b3a5d07c6afa6f 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -42,6 +42,7 @@ "datas/res_partner_creation_origin_data.xml", "datas/res_partner_dissolution_reason_data.xml", "datas/res_partner_mandate_data.xml", + "datas/res_partner_secteur_activite_data.xml", "datas/res_partner_function_lst_data.xml", "datas/res_partner_multi_relation_data.xml", "datas/res_partner_naf_data.xml", diff --git a/datas/res_partner_secteur_activite_data.xml b/datas/res_partner_secteur_activite_data.xml new file mode 100644 index 0000000000000000000000000000000000000000..5a346122489ed09c96537e19d7a7cda1b5ef9eae --- /dev/null +++ b/datas/res_partner_secteur_activite_data.xml @@ -0,0 +1,75 @@ +<?xml version="1.0"?> +<odoo> + <data noupdate="1"> + <!-- Partner secteur d'activite --> + + <record id="secteur_activite_01" model="res.partner.secteur.activite"> + <field name="name">Action sociale, santé</field> + </record> + + <record id="secteur_activite_02" model="res.partner.secteur.activite"> + <field name="name">Agriculture</field> + </record> + + <record id="secteur_activite_03" model="res.partner.secteur.activite"> + <field name="name">Alimentation / Restauration</field> + </record> + + <record id="secteur_activite_04" model="res.partner.secteur.activite"> + <field name="name">Artisanat</field> + </record> + + <record id="secteur_activite_05" model="res.partner.secteur.activite"> + <field name="name">BTP (dont bureaux d'études BTP)</field> + </record> + + <record id="secteur_activite_06" model="res.partner.secteur.activite"> + <field name="name">Culture</field> + </record> + + <record id="secteur_activite_07" model="res.partner.secteur.activite"> + <field name="name">Communication (dont édition, audiovisuel, événementiel…)</field> + </record> + + <record id="secteur_activite_08" model="res.partner.secteur.activite"> + <field name="name">Commerce</field> + </record> + + <record id="secteur_activite_09" model="res.partner.secteur.activite"> + <field name="name">Energie</field> + </record> + + <record id="secteur_activite_10" model="res.partner.secteur.activite"> + <field name="name">Imprimerie</field> + </record> + + <record id="secteur_activite_11" model="res.partner.secteur.activite"> + <field name="name">Environnement</field> + </record> + + <record id="secteur_activite_12" model="res.partner.secteur.activite"> + <field name="name">Formation</field> + </record> + + <record id="secteur_activite_13" model="res.partner.secteur.activite"> + <field name="name">Industrie</field> + </record> + + <record id="secteur_activite_14" model="res.partner.secteur.activite"> + <field name="name">Numérique / Informatique</field> + </record> + + <record id="secteur_activite_15" model="res.partner.secteur.activite"> + <field name="name">Prestations de services, conseil</field> + </record> + + <record id="secteur_activite_16" model="res.partner.secteur.activite"> + <field name="name">Tourisme / Loisirs</field> + </record> + + <record id="secteur_activite_17" model="res.partner.secteur.activite"> + <field name="name">Transport / Manutention</field> + </record> + + </data> +</odoo> \ No newline at end of file diff --git a/models/res_partner.py b/models/res_partner.py index 85a556b47988c4ff08107e4b35eaa8872f6d132f..6be70fe13499f1ad069ac7e3253b2852480e0295 100644 --- a/models/res_partner.py +++ b/models/res_partner.py @@ -179,6 +179,12 @@ class ScopPartner(models.Model): string='Code NAF', on_delete='restrict', track_visibility='onchange') + secteur_id = fields.Many2one( + 'res.partner.secteur.activite', + string="Secteur d'activité", + compute='_compute_secteur', + store=True) + certification_ids = fields.Many2many( comodel_name='res.partner.certification', string='Agrément', on_delete='restrict') @@ -700,6 +706,13 @@ class ScopPartner(models.Model): if zip_id: partner.region = zip_id[0].city_id[0].state_id + @api.multi + @api.depends('naf_id') + def _compute_secteur(self): + for partner in self: + if partner.naf_id: + partner.secteur_id = partner.naf_id.secteur_id.id + @api.model def _compute_current_user_ur_id(self): for partner in self: @@ -1040,6 +1053,11 @@ class ResPartnerFunctionLst(models.Model): class ScopPartnerNaf(models.Model): _inherit = "res.partner.naf" + secteur_id = fields.Many2one( + 'res.partner.secteur.activite', + string='Secteur', + on_delete='restrict', + track_visibility='onchange') id_riga = fields.Integer("ID RIGA") @@ -1157,3 +1175,9 @@ class ResPartnerSegment4(models.Model): index=True, on_delete='restrict', default=_default_ur) + +class ResPartnerSecteurActivite(models.Model): + _name = "res.partner.secteur.activite" + _description = "Secteurs d'activité" + + name = fields.Char('Secteur') diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv index 7fa50bb86076eec843511f9c1f99e8ac6652ddf5..2b234e7cefaf7055fef37d6532508fc7b1f802d1 100644 --- a/security/ir.model.access.csv +++ b/security/ir.model.access.csv @@ -2,6 +2,7 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_contribution_group_user,access_contribution_group_user,model_scop_contribution,base.group_user,1,0,0,0 access_questionnaire_group_user,access_questionnaire_group_user,model_scop_questionnaire,base.group_user,1,0,0,0 access_res_partner_certification,access_res_partner_certification,model_res_partner_certification,base.group_user,1,0,0,0 +access_res_partner_secteur_activite,access_res_partner_secteur_activite,model_res_partner_secteur_activite,base.group_user,1,0,0,0 access_res_partner_company_type,access_res_partner_company_type,model_res_partner_company_type,base.group_user,1,0,0,0 access_res_partner_cooperative_form,access_res_partner_cooperative_form,model_res_partner_cooperative_form,base.group_user,1,0,0,0 access_res_partner_creation_origin,access_res_partner_creation_origin,model_res_partner_creation_origin,base.group_user,1,0,0,0 @@ -30,6 +31,7 @@ add_scop_period,add_scop_period,model_scop_period,group_add_period,1,1,1,0 admin_contribution_group_user,access_contribution_group_user,model_scop_contribution,group_cg_administrator,1,1,1,1 admin_res_partner,admin_res_partner,model_res_partner,group_cg_administrator,1,1,1,1 admin_res_partner_certification,admin_res_partner_certification,model_res_partner_certification,group_cg_administrator,1,1,1,1 +admin_res_partner_secteur_activite,admin_res_partner_secteur_activite,model_res_partner_secteur_activite,group_cg_administrator,1,1,1,1 admin_res_partner_company_type,admin_res_partner_company_type,model_res_partner_company_type,group_cg_administrator,1,1,1,1 admin_res_partner_cooperative_form,admin_res_partner_cooperative_form,model_res_partner_cooperative_form,group_cg_administrator,1,1,1,1 admin_res_partner_creation_origin,admin_res_partner_creation_origin,model_res_partner_creation_origin,group_cg_administrator,1,1,1,1 @@ -69,3 +71,4 @@ access_scop_federation_indus_activity,access_scop_federation_indus_activity,mode admin_scop_federation_indus_activity,admin_scop_federation_indus_activity,model_scop_federation_indus_activity,group_federation_indus,1,1,1,1 access_scop_partner_staff,access_scop_partner_staff,model_scop_partner_staff,base.group_user,1,1,1,0 admin_scop_partner_staff,admin_scop_partner_staff,model_scop_partner_staff,group_cg_administrator,1,1,1,1 +admin_res_partner_naf,admin_res_partner_naf,model_res_partner_naf,group_cg_administrator,1,1,1,1 \ No newline at end of file diff --git a/views/res_partner.xml b/views/res_partner.xml index 1d0dd4e67d0d228f4639579f90ddcf388f559e76..688d58426bec99a8c403499e6c6f972af4f4cfd2 100644 --- a/views/res_partner.xml +++ b/views/res_partner.xml @@ -421,6 +421,7 @@ <field name="registration_date" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}"/> <field name="social_object" attrs="{'required': [('is_cooperative', '=', True), ('project_status','in',('2_pre-diagnostic', '3_accompagnement','4_adhesion', '5_cg', '6_suivi'))]}"/> <field name="naf_id" attrs="{'readonly': [('write_date', '!=', False), ('project_status', '=', '6_suivi')], 'required':['|', ('project_status','in',('4_adhesion', '5_cg'), '&', ('write_date', '=', False), ('project_status', '=', '6_suivi'))], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" options="{'no_open': True, 'no_create': True}"/> + <field name="secteur_id" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" /> <field name="certification_ids" widget="many2many_tags" options="{'color_field': 'color', 'no_create': True}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}"/> <label for='siret' string="SIRET" class="oe_edit_only" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}"/> <div> diff --git a/views/scop_config_views.xml b/views/scop_config_views.xml index f1680b39810f33d719995da5cfcd2d11a62af492..0c3378a255d25e9408899e7f9f12e29decc6dc5b 100644 --- a/views/scop_config_views.xml +++ b/views/scop_config_views.xml @@ -303,6 +303,24 @@ <field name="view_mode">tree</field> </record> + <!-- Secteurs d'activite --> + <record model="ir.ui.view" id="secteur_activite_tree_view"> + <field name="name">secteur.activite.tree</field> + <field name="model">res.partner.secteur.activite</field> + <field name="arch" type="xml"> + <tree string="Secteurs d'activités" editable="top"> + <field name="name"/> + </tree> + </field> + </record> + + <record model="ir.actions.act_window" id="secteur_activite_act_window"> + <field name="name">Secteurs d'activités</field> + <field name="res_model">res.partner.secteur.activite</field> + <field name="view_mode">tree</field> + </record> + + <!-- Modif NAF --> <record model="ir.ui.view" id="scop_naf_tree_view"> <field name="name">naf scop tree view</field> @@ -310,6 +328,7 @@ <field name="inherit_id" ref="lefilament_naf.view_res_partner_naf_tree"/> <field name="arch" type="xml"> <field name="name" position="after"> + <field name="secteur_id" options="{'no_create': True}"/> <field name="id_riga"/> </field> </field> @@ -416,6 +435,11 @@ parent="menu_scop" name="Civilités" sequence="18"/> + <menuitem id="contacts.menu_partner_secteur_activite" + parent="menu_scop" + name="Secteurs d'activités" + action="secteur_activite_act_window" + sequence="18"/> <menuitem id="lefilament_naf.menu_naf_id" parent="menu_scop" action="lefilament_naf.action_view_res_partner_naf_tree"