From 2cbd6247dec80bf58fe9b02d6e4bbd8550ca6d1a Mon Sep 17 00:00:00 2001 From: younes Date: Tue, 14 Oct 2025 15:16:23 +0100 Subject: [PATCH] IMP benefit --- odex25_ensan/odex_benefit/i18n/ar_001.po | 35 ++++++++----- odex25_ensan/odex_benefit/models/benefit.py | 8 +-- .../odex_benefit/models/service_request.py | 7 +-- .../odex_benefit/models/services_settings.py | 5 +- .../odex_benefit/views/service_request.xml | 51 ++++++++++--------- .../odex_benefit/views/services_settings.xml | 13 ++++- 6 files changed, 71 insertions(+), 48 deletions(-) diff --git a/odex25_ensan/odex_benefit/i18n/ar_001.po b/odex25_ensan/odex_benefit/i18n/ar_001.po index 246481db2..7dc5a2196 100644 --- a/odex25_ensan/odex_benefit/i18n/ar_001.po +++ b/odex25_ensan/odex_benefit/i18n/ar_001.po @@ -10025,11 +10025,6 @@ msgstr "تاريخ الطلب" msgid "Request First Approve" msgstr "اعتماد رئيس العمليات للطلب" -#. module: odex_benefit -#: model:ir.model.fields.selection,name:odex_benefit.selection__service_request__state__first_approve -msgid "Request First Approve" -msgstr "بانتظار مدير الفرع" - #. module: odex_benefit #: code:addons/odex_benefit/controllers/benefit_services.py:0 #, python-format @@ -10467,15 +10462,9 @@ msgstr "نفس" #. module: odex_benefit #: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_form -#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search msgid "Send Request" msgstr "إرسال الطلب" -#. module: odex_benefit -#: model:ir.model.fields.selection,name:odex_benefit.selection__service_request__state__send_request -msgid "Send Request" -msgstr "بانتظار رئيسة العمليات" - #. module: odex_benefit #: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_form msgid "Send Reset Password" @@ -15737,7 +15726,7 @@ msgstr "طريقة الحد الأقصى" #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_services_settings__needs_beneficiary_manager_approval msgid "Needs Beneficiary Manager Approval" -msgstr "هل تحتاج موافقة مدير المستفيدين؟" +msgstr "موافقة مساعد المدير العام" #. module: odex_benefit #: code:addons/odex_benefit/models/family_members.py:0 @@ -16357,4 +16346,24 @@ msgstr "عمر العضو" #. module: odex_benefit #: model:ir.model.fields,field_description:odex_benefit.field_service_request__is_orphan msgid "Orphaned (Both Parents Deceased)" -msgstr "فاقد الأبوين" \ No newline at end of file +msgstr "فاقد الأبوين" + +#. module: odex_benefit +#: model_terms:ir.ui.view,arch_db:odex_benefit.services_settings_form +msgid "Service Approvals" +msgstr "موافقات الخدمة" + +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_services_settings__needs_services_head_approval +msgid "Needs Services Head Approval" +msgstr "موافقة مديرة الخدمات الأسرية" + +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_services_settings__needs_legal_approval +msgid "Needs Legal Approval" +msgstr "موافقة الإدارة القانونية" + +#. module: odex_benefit +#: model:ir.model.fields,field_description:odex_benefit.field_services_settings__needs_project_management_approval +msgid "Needs Project Management Approval" +msgstr "موافقة إدارة المشاريع" \ No newline at end of file diff --git a/odex25_ensan/odex_benefit/models/benefit.py b/odex25_ensan/odex_benefit/models/benefit.py index 64cac0c7f..71dfae879 100644 --- a/odex25_ensan/odex_benefit/models/benefit.py +++ b/odex25_ensan/odex_benefit/models/benefit.py @@ -1242,8 +1242,8 @@ class GrantBenefitProfile(models.Model): record.partner_id.get_partner_name() # Force recomputation of name if record.user_id: record.sudo().user_id.write({"name": record.partner_id.name}) - if not self.env.context.get('force_website', False) and not self.env.context.get('bypass_attachments_requirement', False): - self._validate_required_attachments() + #if not self.env.context.get('force_website', False) and not self.env.context.get('bypass_attachments_requirement', False): + # self._validate_required_attachments() # Handle mother update/create mother_fields = [ @@ -1283,8 +1283,8 @@ class GrantBenefitProfile(models.Model): res.user_id.sudo().write({"name": vals.get("name")}) if res.user_id: res.sudo().user_id.write({"name": res.name}) - if not self.env.context.get('force_website', False): - res._validate_required_attachments() + #if not self.env.context.get('force_website', False): + ##res._validate_required_attachments() if not res.code or res.code == _('New'): res.code = self.env['ir.sequence'].sudo().next_by_code('benefit.sequence') or _('New') # Add mother diff --git a/odex25_ensan/odex_benefit/models/service_request.py b/odex25_ensan/odex_benefit/models/service_request.py index 864f2dfa1..b71e8fa2d 100644 --- a/odex25_ensan/odex_benefit/models/service_request.py +++ b/odex25_ensan/odex_benefit/models/service_request.py @@ -144,8 +144,8 @@ class ServiceRequest(models.Model): state = fields.Selection( selection = [ ('draft', 'Draft'), ('researcher', 'Researcher'), - ('send_request', 'Send Request'), - ('first_approve', 'Request First Approve'), + ('waiting_approve', 'Waiting for Operation Manager'), + ('first_approve', 'Waiting for Branch Manager'), ('second_approve', 'Request Second Approve'), ('accounting_approve', 'Accounting Approve'), ('approval_of_beneficiary_services', 'Approval of beneficiary services'), @@ -153,6 +153,7 @@ class ServiceRequest(models.Model): ('family_received_device', 'Family Received Device'), ('refused', 'Refused') ], string='state',default='draft', tracking=True, group_expand='_expand_states') + #dynamic_state = fields.Selection(selection=[],string="State",default='draft',tracking=True,) state_a = fields.Selection(related='state', tracking=False) state_b = fields.Selection(related='state', tracking=False) refuse_reason_id = fields.Many2one('service.refuse.reason', string="Refuse Reason") @@ -409,7 +410,7 @@ class ServiceRequest(models.Model): def action_researcher_send_request(self): for rec in self: - rec.state = 'send_request' + rec.state = 'waiting_approve' def action_operations_chief_approve(self): for rec in self: diff --git a/odex25_ensan/odex_benefit/models/services_settings.py b/odex25_ensan/odex_benefit/models/services_settings.py index 8f098e0d3..178936366 100644 --- a/odex25_ensan/odex_benefit/models/services_settings.py +++ b/odex25_ensan/odex_benefit/models/services_settings.py @@ -102,7 +102,10 @@ class ServicesSettings(models.Model): ('service', 'Amount by Service'), ], string="Max Limit Type" ) - needs_beneficiary_manager_approval = fields.Boolean() + needs_beneficiary_manager_approval = fields.Boolean("Needs Beneficiary Manager Approval") + needs_services_head_approval = fields.Boolean(string="Needs Services Head Approval") + needs_legal_approval = fields.Boolean(string="Needs Legal Approval") + needs_project_management_approval = fields.Boolean(string="Needs Project Management Approval") allow_non_beneficiary = fields.Boolean(string="Allow Non Beneficiary") diff --git a/odex25_ensan/odex_benefit/views/service_request.xml b/odex25_ensan/odex_benefit/views/service_request.xml index cee6e8061..b67d55972 100644 --- a/odex25_ensan/odex_benefit/views/service_request.xml +++ b/odex25_ensan/odex_benefit/views/service_request.xml @@ -19,16 +19,16 @@