From 4fcc58570caf91a0c3389b6a9aa97e6bec112b84 Mon Sep 17 00:00:00 2001 From: manar Date: Thu, 6 Mar 2025 13:43:13 +0200 Subject: [PATCH] UPDATE dev_membership --- odex25_sales/dev_membership/i18n/ar_001.po | 6 +++ .../models/board_membership_nomination.py | 49 +++++++++++++------ .../views/board_membership_nomination.xml | 39 ++++++++++++++- 3 files changed, 77 insertions(+), 17 deletions(-) diff --git a/odex25_sales/dev_membership/i18n/ar_001.po b/odex25_sales/dev_membership/i18n/ar_001.po index 364d2a171..f8913d2cc 100644 --- a/odex25_sales/dev_membership/i18n/ar_001.po +++ b/odex25_sales/dev_membership/i18n/ar_001.po @@ -1552,8 +1552,14 @@ msgstr "ارسال رسالة" msgid "Accept" msgstr "قبول" +#. module: dev_membership +#: model_terms:ir.ui.view,arch_db:dev_membership.view_form_board_membership_nomination +msgid "Withdrawal" +msgstr "تراجع" + #. module: dev_membership #: model:ir.model.fields.selection,name:dev_membership.selection__board_nominee__status__board_member +#: model_terms:ir.ui.view,arch_db:dev_membership.view_form_board_membership_nomination msgid "Board Member" msgstr "عضو مجلس" diff --git a/odex25_sales/dev_membership/models/board_membership_nomination.py b/odex25_sales/dev_membership/models/board_membership_nomination.py index c7d96b2fd..eb1ae11bd 100644 --- a/odex25_sales/dev_membership/models/board_membership_nomination.py +++ b/odex25_sales/dev_membership/models/board_membership_nomination.py @@ -36,22 +36,36 @@ class BoardMembershipNomination(models.Model): record.board_nominee_ids.unlink() for member in members: for product in products: - membership = self.env['dev.membership'].search([('state', 'in', ['active', 'expire']), ('partner_id', '=', member.id), ('product_id', '=', product.id),('duration', '>=', product.join_period)]) - for m in membership: + memberships = self.env['dev.membership'].search([('state', 'in', ['active', 'expire']), ('partner_id', '=', member.id), ('product_id', '=', product.id),('duration', '>=', product.join_period)]) + if memberships: + total_duration = sum(m.duration for m in memberships) - b_nominee = self.env['board.nominee'].create([ - { - 'name': member.id, - 'mobile': member.mobile, - 'email': member.email, - 'membership_type_id': product.id, - 'membership_level_id': m.membrship_level.id, - 'join_date': member.join_date, - 'subscription_years': m.duration, - 'status': 'nominated', - 'nomination_id': record.id, - } - ]) + self.env['board.nominee'].create({ + 'name': member.id, + 'mobile': member.mobile, + 'email': member.email, + 'membership_type_id': product.id, + 'membership_level_id': memberships[0].membrship_level.id, + 'join_date': member.join_date, + 'subscription_years': total_duration, + 'status': 'nominated', + 'nomination_id': record.id, + }) + # for m in memberships: + # + # b_nominee = self.env['board.nominee'].create([ + # { + # 'name': member.id, + # 'mobile': member.mobile, + # 'email': member.email, + # 'membership_type_id': product.id, + # 'membership_level_id': m.membrship_level.id, + # 'join_date': member.join_date, + # 'subscription_years': m.duration, + # 'status': 'nominated', + # 'nomination_id': record.id, + # } + # ]) record.state = 'nominated' @@ -87,6 +101,7 @@ class BoardMembershipNomination(models.Model): class BoardNominee(models.Model): _name = 'board.nominee' _description = 'Board Nominee' + _inherit = ['mail.thread', 'mail.activity.mixin'] name = fields.Many2one('res.partner', string='Member', required=True) mobile = fields.Char('Mobile') @@ -116,3 +131,7 @@ class BoardNominee(models.Model): def action_board_member(self): for line in self: line.status = 'board_member' + + def action_back_to_nominated(self): + for line in self: + line.status = 'nominated' \ No newline at end of file diff --git a/odex25_sales/dev_membership/views/board_membership_nomination.xml b/odex25_sales/dev_membership/views/board_membership_nomination.xml index f70afa92b..af5dfb61f 100644 --- a/odex25_sales/dev_membership/views/board_membership_nomination.xml +++ b/odex25_sales/dev_membership/views/board_membership_nomination.xml @@ -1,4 +1,19 @@ + + + board.membership.nomination.tree + board.membership.nomination + + + + + + + + + + + board.membership.nomination.form board.membership.nomination @@ -42,6 +57,7 @@