From 15c8d6ad267abc01aae1c7898ec5e068abeb78ed Mon Sep 17 00:00:00 2001 From: younes Date: Sun, 14 Dec 2025 09:45:04 +0100 Subject: [PATCH] [IMP] odex_benefit: IMP benefit --- .../odex_benefit/data/server_actions.xml | 6 ++-- odex25_benefit/odex_benefit/i18n/ar_001.po | 17 ++++------- .../odex_benefit/models/seasonal_service.py | 30 +++++++------------ .../views/seasonal_service_view.xml | 7 ----- 4 files changed, 19 insertions(+), 41 deletions(-) diff --git a/odex25_benefit/odex_benefit/data/server_actions.xml b/odex25_benefit/odex_benefit/data/server_actions.xml index 033ea1973..4b443cf22 100644 --- a/odex25_benefit/odex_benefit/data/server_actions.xml +++ b/odex25_benefit/odex_benefit/data/server_actions.xml @@ -8,11 +8,11 @@ code - action = records.action_accounting_transfer() + action = records.action_accounting_transfer() - + Assign Visit Sequence diff --git a/odex25_benefit/odex_benefit/i18n/ar_001.po b/odex25_benefit/odex_benefit/i18n/ar_001.po index eb80c199b..5e4f0eb2e 100644 --- a/odex25_benefit/odex_benefit/i18n/ar_001.po +++ b/odex25_benefit/odex_benefit/i18n/ar_001.po @@ -14322,11 +14322,6 @@ msgstr "مبلغ الخدمة" msgid "Expenses Account" msgstr "حساب المصروف" -#. module: odex_benefit -#: model:ir.actions.server,name:odex_benefit.server_action_seasonal_service_exchange_orders -msgid "Exchange orders" -msgstr "أمر الصرف" - #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_benefit_expense_line__payment_order_id #: model:ir.model.fields,field_description:odex_benefit.field_confirm_benefit_expense__payment_order_id @@ -16673,11 +16668,15 @@ msgid "Has Marriage Course" msgstr "الحصول على دورة تأهيلية" #. module: odex_benefit -#: model_terms:ir.ui.view,arch_db:odex_benefit.seasonal_service_form_view #: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_form msgid "Total Moves" msgstr "القيد المحاسبي" +#. module: odex_benefit +#: model_terms:ir.ui.view,arch_db:odex_benefit.seasonal_service_form_view +msgid "Total Moves" +msgstr "فاتورة العثيم" + #. module: odex_benefit #: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_form msgid "Car Information" @@ -17475,12 +17474,6 @@ msgstr "المشرف" msgid "Process" msgstr "تمت المعالجة" -#. module: odex_benefit -#: code:addons/odex_benefit/models/seasonal_service.py:0 -#, python-format -msgid "All selected requests must be in 'Accounting Approve' state." -msgstr "يجب أن تكون جميع الخدمات في حالة 'بانتظار المالية'." - #. module: odex_benefit #: code:addons/odex_benefit/models/seasonal_service.py:0 #, python-format diff --git a/odex25_benefit/odex_benefit/models/seasonal_service.py b/odex25_benefit/odex_benefit/models/seasonal_service.py index 53b0ed0fd..c5be0c2b1 100644 --- a/odex25_benefit/odex_benefit/models/seasonal_service.py +++ b/odex25_benefit/odex_benefit/models/seasonal_service.py @@ -98,15 +98,14 @@ class SeasonalService(models.Model): else: rec.payment_order_count = 0 - @api.depends('vendor_bill', 'payment_order_id') + @api.depends('vendor_bill') def _get_total_move_lines(self): for rec in self: - if rec.service_type_id.payment_method == "payment_order": - moves = rec.payment_order_id.mapped('move_id') - elif rec.service_type_id.payment_method == "invoice": - moves = rec.vendor_bill - - rec.total_moves = len(moves) + if rec.vendor_bill: + moves = 1 + else: + moves = 0 + rec.total_moves = moves @api.depends('benefit_ids', 'service_type_id') def _compute_allowed_member_ids(self): @@ -215,10 +214,6 @@ class SeasonalService(models.Model): validation_setting = self.env["family.validation.setting"].search([], limit=1) line_ids = [] for rec in self: - if rec.state != 'accounting_approve': - raise UserError(_( - "All selected requests must be in 'Accounting Approve' state." - )) if rec.service_type_id.payment_method == "payment_order": if rec.payment_order_id: raise UserError(_( @@ -298,7 +293,7 @@ class SeasonalService(models.Model): rec.state = 'gm_assistant' rec.service_requests_ids.write({'state': 'gm_assistant'}) elif rec.service_delivery_method == "cash": - # rec.action_accounting_transfer() + rec.action_accounting_transfer() rec.state = "accounting_approve" rec.service_requests_ids.write({'state': 'accounting_approve'}) elif rec.service_delivery_method == "in_kind": @@ -308,7 +303,7 @@ class SeasonalService(models.Model): def action_approval_of_gm_assistant(self): for rec in self: if rec.service_delivery_method == "cash": - # rec.action_accounting_transfer() + rec.action_accounting_transfer() rec.state = "accounting_approve" rec.service_requests_ids.write({'state': 'accounting_approve'}) elif rec.service_delivery_method == "in_kind": @@ -391,20 +386,17 @@ class SeasonalService(models.Model): def action_reset_to_calculated(self): for rec in self: rec.service_requests_ids.write({'state': 'draft'}) + rec.payment_order_id.unlink() + rec.vendor_bill.unlink() rec.state = 'calculated' def action_open_related_move_records(self): - if self.service_type_id.payment_method == "payment_order": - moves = self.payment_order_id.mapped('move_id') - elif self.service_type_id.payment_method == "invoice": - moves = self.vendor_bill - return { 'name': _('Vendor Bills'), 'type': 'ir.actions.act_window', 'res_model': 'account.move', 'view_mode': 'tree,form', - 'domain': [('id', 'in', moves.ids)], + 'domain': [('id', 'in', self.vendor_bill.ids)], } def action_open_payment_orders(self): diff --git a/odex25_benefit/odex_benefit/views/seasonal_service_view.xml b/odex25_benefit/odex_benefit/views/seasonal_service_view.xml index 3b56a9b27..8799f2e38 100644 --- a/odex25_benefit/odex_benefit/views/seasonal_service_view.xml +++ b/odex25_benefit/odex_benefit/views/seasonal_service_view.xml @@ -28,13 +28,6 @@ groups="odex_benefit.group_benefit_manager" attrs="{'invisible': [('state', '!=', 'gm_assistant')]}"/> -