From 1695894844941c2522959b8cdfbb70b8d7f2687e Mon Sep 17 00:00:00 2001 From: younes Date: Mon, 5 Jan 2026 15:17:23 +0100 Subject: [PATCH] [IMP] odex_benefit: IMP benefit --- odex25_benefit/odex_benefit/i18n/ar_001.po | 59 +++++++++++++++---- .../odex_benefit/models/family_members.py | 2 + .../odex_benefit/models/payment_order.py | 26 +------- .../odex_benefit/models/seasonal_service.py | 2 + .../odex_benefit/models/service_request.py | 1 + .../odex_benefit/views/benefit_view.xml | 2 + .../odex_benefit/views/family_members.xml | 10 ++-- .../odex_benefit/views/service_request.xml | 3 +- .../odex_benefit/wizards/exception_wizard.py | 2 +- .../odex_benefit/wizards/exception_wizard.xml | 26 ++++---- 10 files changed, 80 insertions(+), 53 deletions(-) diff --git a/odex25_benefit/odex_benefit/i18n/ar_001.po b/odex25_benefit/odex_benefit/i18n/ar_001.po index 3958214ec..12655f354 100644 --- a/odex25_benefit/odex_benefit/i18n/ar_001.po +++ b/odex25_benefit/odex_benefit/i18n/ar_001.po @@ -3041,6 +3041,12 @@ msgstr "قم بتحديد هذا المربع إذا كانت جهة الاتص msgid "Children" msgstr "الفروع" +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_attachments_settings__child_ids +#: model_terms:ir.ui.view,arch_db:odex_benefit.attachments_settings_form +msgid "Children" +msgstr "الأنواع الفرعية" + #. module: odex_benefit #: model:ir.ui.menu,name:odex_benefit.res_city_menu msgid "Cities" @@ -4410,6 +4416,12 @@ msgstr "" "#-#-#-#-# catalog.po (Odoo Server 14.0) #-#-#-#-#\n" "اسم الزيارة" +#. module: odex_benefit +#: model_terms:ir.ui.view,arch_db:odex_benefit.family_member_form +#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form +msgid "Description" +msgstr "الوصف" + #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_attachments_settings__disabilities_id #: model:ir.model.fields,field_description:odex_benefit.field_family_member__disabilities_ids @@ -5093,7 +5105,7 @@ msgstr "تاريخ نهاية الاستثناء" #: model_terms:ir.ui.view,arch_db:odex_benefit.family_member_form #: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form msgid "Exception Final Approve" -msgstr "اعتماد المدير العام للاستثناء" +msgstr "موافقة مساعد المدير العام للاستثناء" #. module: odex_benefit #: model:ir.actions.act_window,name:odex_benefit.exception_reason_action @@ -5616,7 +5628,7 @@ msgstr "اعتماد رئيس العمليات الإيقاف" #: model:ir.model.fields.selection,name:odex_benefit.selection__family_member__state__first_approve #: model:ir.model.fields.selection,name:odex_benefit.selection__family_member__state_a__first_approve msgid "First Approved" -msgstr "الاعتماد المبدئي" +msgstr "بانتظار مدير الفرع" #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_benefits_representative__first_name @@ -9232,6 +9244,11 @@ msgstr "" msgid "Parent" msgstr "الأصل" +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_attachments_settings__parent_id +msgid "Parent" +msgstr "النوع الأساسي" + #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_services_settings__parent_service msgid "Parent Service" @@ -11149,11 +11166,6 @@ msgstr "عملة المورد" msgid "Supplier Rank" msgstr "" -#. module: odex_benefit -#: model:ir.model.fields,field_description:odex_benefit.field_associations_line__support_amount -msgid "Support Amount" -msgstr "" - #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_grant_benefit__support_separation msgid "Support Separation" @@ -14810,7 +14822,6 @@ msgid "Return Reason Wizard" msgstr "سبب الإرجاع" #. module: odex_benefit -#: model:ir.model.fields,field_description:odex_benefit.field_entity_return_reason_wizard__suspend_reason_id #: model:ir.model.fields,field_description:odex_benefit.field_suspend_reason__is_return_reason #: model:ir.model.fields,field_description:odex_benefit.field_return_reason_wizard__return_reason_id #: model:ir.model.fields,field_description:odex_benefit.field_benefit_expense_line__return_reason_id @@ -14827,6 +14838,11 @@ msgstr "" "#-#-#-#-# catalog.po (Odoo Server 14.0) #-#-#-#-#\n" "سبب الإعادة" +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_entity_return_reason_wizard__suspend_reason_id +msgid "Return Reason" +msgstr "سبب الإرجاع" + #. module: odex_benefit #: model_terms:ir.ui.view,arch_db:odex_benefit.view_entity_return_reason_wizard_form msgid "Retrun" @@ -15783,7 +15799,7 @@ msgstr "الاسرة مستفيدة؟" #: model_terms:ir.ui.view,arch_db:odex_benefit.family_member_form #: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form msgid "Exception First Approve" -msgstr "" +msgstr "موافقة رئيسة العمليات للاستثناء" #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_services_settings__show_in_portal @@ -18391,4 +18407,27 @@ msgstr "رقم هوية صاحب الحساب مطلوب." #. module: odex_benefit #: model_terms:ir.ui.view,arch_db:odex_benefit.family_member_search msgid "My Branch" -msgstr "فرعي" \ No newline at end of file +msgstr "فرعي" + +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_ir_attachment__disabilities_child_id +msgid "Sub Disability" +msgstr "نوع الإعاقة" + +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_ir_attachment__diseases_child_id +msgid "Sub Disease" +msgstr "نوع المرض" + +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_associations_line__support_amount +#: model:ir.model.fields,field_description:odex_benefit.field_ir_attachment__support_amount +msgid "Support Amount" +msgstr "مبلغ الدعم" + +#. module: odex_benefit +#: model_terms:ir.ui.view,arch_db:odex_benefit.family_member_form +#: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form +msgid "Exception Second Approve" +msgstr "موافقة مدير الفرع للاستثناء" + diff --git a/odex25_benefit/odex_benefit/models/family_members.py b/odex25_benefit/odex_benefit/models/family_members.py index bd8eee3c5..1e4278d0f 100644 --- a/odex25_benefit/odex_benefit/models/family_members.py +++ b/odex25_benefit/odex_benefit/models/family_members.py @@ -538,6 +538,8 @@ class FamilyMemberProfile(models.Model): rec.non_benefit_reason = False current_education_status_id = rec.member_education_status_ids.filtered( lambda r: r.education_status_type == 'current') + if current_education_status_id: + current_education_status_id = current_education_status_id.sorted('write_date', reverse=True)[:1] if rec.state == 'second_approve' and rec.is_excluded_suspension: rec.member_status = 'benefit' continue diff --git a/odex25_benefit/odex_benefit/models/payment_order.py b/odex25_benefit/odex_benefit/models/payment_order.py index 688a496cf..389c4cd88 100644 --- a/odex25_benefit/odex_benefit/models/payment_order.py +++ b/odex25_benefit/odex_benefit/models/payment_order.py @@ -19,11 +19,7 @@ class PaymentOrders(models.Model): payment_order_date = fields.Datetime(string="Payment Order Date", default=fields.Datetime.now) accountant_id = fields.Many2one('res.users', string='Accountant') # todo remove _compute_service_type_id and _inverse_service_type_id - payment_order_description = fields.Many2one('services.settings', - string='Payment Order Description', - compute='_compute_service_type_id', - inverse='_inverse_service_type_id', - store=True) + payment_order_description = fields.Many2one('services.settings',string='Payment Order Description',) service_requests_ids = fields.Many2many(comodel_name='service.request', relation='service_request_payment_order_rel', column1='payment_order_id', column2='service_request_id', @@ -144,26 +140,6 @@ class PaymentOrders(models.Model): for record in self: record.ref_num = record.seasonal_requests_ids[0] if record.seasonal_requests_ids else False - @api.depends('seasonal_requests_ids.service_type_id') - def _compute_service_type_id(self): - for record in self: - # Take value from first seasonal_requests record (if exists) - record.payment_order_description = record.seasonal_requests_ids[:1].service_type_id - - # Inverse method - def _inverse_service_type_id(self): - for record in self: - if record.seasonal_requests_ids: - # Update first related record - record.seasonal_requests_ids[0].service_type_id = record.payment_order_description - else: - # Create new seasonal_requests record if none exists - self.env['seasonal.service'].create({ - 'payment_order_id': record.id, - 'service_type_id': record.payment_order_description.id, - # Add other required fields here if necessary - }) - @api.model def create(self, vals): res = super(PaymentOrders, self).create(vals) diff --git a/odex25_benefit/odex_benefit/models/seasonal_service.py b/odex25_benefit/odex_benefit/models/seasonal_service.py index d055db968..beb8c1a7d 100644 --- a/odex25_benefit/odex_benefit/models/seasonal_service.py +++ b/odex25_benefit/odex_benefit/models/seasonal_service.py @@ -206,6 +206,7 @@ class SeasonalService(models.Model): 'service_requests_ids': rec.service_requests_ids.ids, 'is_seasonal': True, 'type': 'seasonal_services', + 'payment_order_description': rec.service_type_id.id, }) # rec.payment_order_id = payment_order.id rec.is_payment_order_done = True @@ -226,6 +227,7 @@ class SeasonalService(models.Model): 'service_requests_ids': rec.service_requests_ids.ids, 'is_seasonal': True, 'type': 'seasonal_services', + 'payment_order_description':rec.service_type_id.id, }) rec.payment_order_id = payment_order.id elif rec.service_type_id.payment_method == "invoice": diff --git a/odex25_benefit/odex_benefit/models/service_request.py b/odex25_benefit/odex_benefit/models/service_request.py index a91fc0269..af814decd 100644 --- a/odex25_benefit/odex_benefit/models/service_request.py +++ b/odex25_benefit/odex_benefit/models/service_request.py @@ -1197,6 +1197,7 @@ class ServiceRequest(models.Model): 'accountant_id': service_cats.accountant_id.id, 'service_requests_ids': [(6, 0, self.ids)], 'type': 'services', + 'payment_order_description': service_cats.id, }) self.write({ 'payment_order_ids': [(4, payment_order.id)], diff --git a/odex25_benefit/odex_benefit/views/benefit_view.xml b/odex25_benefit/odex_benefit/views/benefit_view.xml index 24d2bed51..148b6eb76 100644 --- a/odex25_benefit/odex_benefit/views/benefit_view.xml +++ b/odex25_benefit/odex_benefit/views/benefit_view.xml @@ -1241,6 +1241,7 @@ + @@ -1415,6 +1416,7 @@ + diff --git a/odex25_benefit/odex_benefit/views/family_members.xml b/odex25_benefit/odex_benefit/views/family_members.xml index 477c4faef..7fe713025 100644 --- a/odex25_benefit/odex_benefit/views/family_members.xml +++ b/odex25_benefit/odex_benefit/views/family_members.xml @@ -56,7 +56,7 @@