From 79c8d501a0f17fea0fc9c99793f4155ac0a5a4c0 Mon Sep 17 00:00:00 2001 From: eloyoussef Date: Fri, 23 Mar 2018 15:44:37 +0100 Subject: [PATCH] Fonction de recherche de membres --- golem_precreation_member/__manifest__.py | 3 +- .../models/golem_member.py | 27 +++++--- golem_precreation_member/wizard/__init__.py | 2 +- ...golem_precreation_member_request_wizard.py | 46 ++++++++++++++ ...ecreation_member_request_wizard_views.xml} | 22 ++----- ...golem_precreation_member_result_wizard.py} | 9 +-- ...precreation_member_result_wizard_views.xml | 61 +++++++++++++++++++ 7 files changed, 140 insertions(+), 30 deletions(-) create mode 100644 golem_precreation_member/wizard/golem_precreation_member_request_wizard.py rename golem_precreation_member/wizard/{golem_precreation_member_wizard_views.xml => golem_precreation_member_request_wizard_views.xml} (63%) rename golem_precreation_member/wizard/{golem_precreation_member_wizard.py => golem_precreation_member_result_wizard.py} (77%) create mode 100644 golem_precreation_member/wizard/golem_precreation_member_result_wizard_views.xml diff --git a/golem_precreation_member/__manifest__.py b/golem_precreation_member/__manifest__.py index e402fbc..140181c 100644 --- a/golem_precreation_member/__manifest__.py +++ b/golem_precreation_member/__manifest__.py @@ -27,5 +27,6 @@ 'installable': True, 'depends': ['golem_member', 'golem_family'], 'data': ['views/golem_member_views.xml', - 'wizard/golem_precreation_member_wizard_views.xml'] + 'wizard/golem_precreation_member_request_wizard_views.xml', + 'wizard/golem_precreation_member_result_wizard_views.xml'] } diff --git a/golem_precreation_member/models/golem_member.py b/golem_precreation_member/models/golem_member.py index b49d4e4..20347b1 100644 --- a/golem_precreation_member/models/golem_member.py +++ b/golem_precreation_member/models/golem_member.py @@ -18,10 +18,9 @@ """ GOLEM Members """ -import logging -from odoo import models, fields, api, _ -from odoo.exceptions import UserError -_LOGGER = logging.getLogger(__name__) + +from odoo import models, api, _ + class GolemMember(models.Model): @@ -30,10 +29,24 @@ class GolemMember(models.Model): @api.multi def precreation_search(self): + """ Precreation member search """ self.ensure_one() - return {'name' : _('Please enter the rejection reason'), + return {'name' : _('Please enter member searched'), 'type' : 'ir.actions.act_window', - 'res_model' : 'golem.precreation.member.wizard', - #'context': {'default_reservation_id': reservation_id.id}, + 'res_model' : 'golem.precreation.member.request.wizard', 'view_mode': 'form', 'target': 'new'} + @api.multi + def open_line(self): + """ open member form """ + self.ensure_one() + return { + 'type': 'ir.actions.act_window', + 'name': 'Member', + 'view_type': 'form', + 'view_mode': 'form', + 'res_model': self._name, + 'res_id': self.id, + 'flags': {'initial_mode': 'edit'}, + 'target': 'current', + } diff --git a/golem_precreation_member/wizard/__init__.py b/golem_precreation_member/wizard/__init__.py index b554785..349cc69 100644 --- a/golem_precreation_member/wizard/__init__.py +++ b/golem_precreation_member/wizard/__init__.py @@ -16,4 +16,4 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . -from . import golem_precreation_member_wizard +from . import golem_precreation_member_request_wizard, golem_precreation_member_result_wizard diff --git a/golem_precreation_member/wizard/golem_precreation_member_request_wizard.py b/golem_precreation_member/wizard/golem_precreation_member_request_wizard.py new file mode 100644 index 0000000..dc5a31a --- /dev/null +++ b/golem_precreation_member/wizard/golem_precreation_member_request_wizard.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- + +# Copyright 2018 Youssef El Ouahby +# Copyright 2018 Fabien Bourgeois +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +""" GOLEM Precreation Member Request wizard""" + +from odoo import models, fields, api + +class GolemPrecreationMemberRequestWizard(models.TransientModel): + """GOLEM Precreation Request Member Wizard """ + _name = "golem.precreation.member.request.wizard" + + name = fields.Char() + + @api.multi + def search_members(self): + """ Search members """ + self.ensure_one() + domain = ['|', + ('name', 'ilike', self.name), + ('email', 'ilike', self.name)] + members = self.env['golem.member'].search(domain) + + if members: + ids = members.mapped('id') + + return {'name' : ('Member search result "{}"'.format(self.name)), + 'type' : 'ir.actions.act_window', + 'res_model' : 'golem.precreation.member.result.wizard', + 'context': {'default_member_ids': ids}, + 'view_mode': 'form', + 'flags': {'initial_mode': 'view'}, + 'target': 'new'} diff --git a/golem_precreation_member/wizard/golem_precreation_member_wizard_views.xml b/golem_precreation_member/wizard/golem_precreation_member_request_wizard_views.xml similarity index 63% rename from golem_precreation_member/wizard/golem_precreation_member_wizard_views.xml rename to golem_precreation_member/wizard/golem_precreation_member_request_wizard_views.xml index e1493fb..3ded94e 100644 --- a/golem_precreation_member/wizard/golem_precreation_member_wizard_views.xml +++ b/golem_precreation_member/wizard/golem_precreation_member_request_wizard_views.xml @@ -18,32 +18,20 @@ along with this program. If not, see . --> - - - - Golem Precreation Member Wizard Form - golem.precreation.member.wizard - -
+
+
-
diff --git a/golem_precreation_member/wizard/golem_precreation_member_wizard.py b/golem_precreation_member/wizard/golem_precreation_member_result_wizard.py similarity index 77% rename from golem_precreation_member/wizard/golem_precreation_member_wizard.py rename to golem_precreation_member/wizard/golem_precreation_member_result_wizard.py index f1401fc..5365377 100644 --- a/golem_precreation_member/wizard/golem_precreation_member_wizard.py +++ b/golem_precreation_member/wizard/golem_precreation_member_result_wizard.py @@ -19,8 +19,9 @@ from odoo import models, fields, api -class GolemPrecreationMemberWizard(models.TransientModel): - """GOLEM Precreation member wizard """ - _name = "golem.precreation.member.wizard" +class GolemPrecreationMemberResultWizard(models.TransientModel): + """GOLEM Precreation member Result Wizard """ + _name = "golem.precreation.member.result.wizard" - name = fields.Char() + member_ids = fields.Many2many('golem.member') + name_searched = fields.Char(default="test") diff --git a/golem_precreation_member/wizard/golem_precreation_member_result_wizard_views.xml b/golem_precreation_member/wizard/golem_precreation_member_result_wizard_views.xml new file mode 100644 index 0000000..dc110db --- /dev/null +++ b/golem_precreation_member/wizard/golem_precreation_member_result_wizard_views.xml @@ -0,0 +1,61 @@ + + + + + + + + Golem Precreation Member result Wizard Form + golem.precreation.member.result.wizard + +
+ +