diff --git a/odex25_ensan/odex_benefit/i18n/ar_001.po b/odex25_ensan/odex_benefit/i18n/ar_001.po index bbdf84ec1..63c619a0b 100644 --- a/odex25_ensan/odex_benefit/i18n/ar_001.po +++ b/odex25_ensan/odex_benefit/i18n/ar_001.po @@ -10026,7 +10026,7 @@ msgstr "تاريخ الطلب" #. module: odex_benefit #: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_form -msgid "Request First Approve" +msgid "Operations Manager Approval" msgstr "اعتماد رئيس العمليات للطلب" #. module: odex_benefit @@ -14825,7 +14825,9 @@ msgstr "بانتظار رئيسة العمليات" #: model:ir.model.fields.selection,name:odex_benefit.selection__grant_benefit__state__first_approve #: model:ir.model.fields.selection,name:odex_benefit.selection__family_member__state_a__exception_first_approve #: model:ir.model.fields.selection,name:odex_benefit.selection__grant_benefit__state__exception_first_approve +#: model:ir.model.fields.selection,name:odex_benefit.selection__service_request__state__first_approve #: model_terms:ir.ui.view,arch_db:odex_benefit.grant_benefit_search +#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search msgid "Waiting for Branch Manager" msgstr "بانتظار مدير الفرع" @@ -16429,3 +16431,9 @@ msgstr "معلومات عقد الإيجار الجديد" #: model:ir.model.fields,field_description:odex_benefit.field_service_request__new_rent_amount_payment msgid "New Rent Amount Payment" msgstr "مبلغ دفع الإيجار الجديد" + +#. module: odex_benefit +#: model:ir.model.fields.selection,name:odex_benefit.selection__service_request__state__gm_assistant +#: model_terms:ir.ui.view,arch_db:odex_benefit.service_request_search +msgid "Waiting Assistant General Manager" +msgstr "بانتظار مساعد المدير العام" \ No newline at end of file diff --git a/odex25_ensan/odex_benefit/models/service_request.py b/odex25_ensan/odex_benefit/models/service_request.py index 869ed908e..3fd7388ca 100644 --- a/odex25_ensan/odex_benefit/models/service_request.py +++ b/odex25_ensan/odex_benefit/models/service_request.py @@ -146,6 +146,9 @@ class ServiceRequest(models.Model): ('researcher', 'Researcher'), ('waiting_approve', 'Waiting for Operation Manager'), ('first_approve', 'Waiting for Branch Manager'), + ('family_services_manager', 'Waiting Family Services Manager'), + ('legal_department', 'Waiting Legal Department'), + ('projects_department', 'Waiting Projects Department'), ('gm_assistant', 'Waiting Assistant General Manager'), ('accounting_approve', 'Accounting Approve'), ('approval_of_beneficiary_services', 'Approval of beneficiary services'), @@ -440,7 +443,32 @@ class ServiceRequest(models.Model): def action_branch_manager_approve(self): for rec in self: - if rec.service_cat.needs_beneficiary_manager_approval: + if rec.service_cat.needs_services_head_approval or rec.exception: + rec.state = 'family_services_manager' + else: + rec.state = 'accounting_approve' + + def action_family_services_manager_approve(self): + for rec in self: + if rec.service_cat.needs_legal_approval: + rec.state = 'legal_department' + elif rec.service_cat.needs_project_management_approval: + rec.state = 'projects_department' + elif rec.service_cat.needs_beneficiary_manager_approval or rec.exception: + rec.state = 'gm_assistant' + else: + rec.state = 'accounting_approve' + + def action_legal_department_approve(self): + for rec in self: + if rec.service_cat.needs_project_management_approval: + rec.state = 'projects_department' + elif rec.service_cat.needs_beneficiary_manager_approval: + rec.state = 'gm_assistant' + + def action_projects_department_approve(self): + for rec in self: + if rec.service_cat.needs_beneficiary_manager_approval or rec.exception: rec.state = 'gm_assistant' else: rec.state = 'accounting_approve' diff --git a/odex25_ensan/odex_benefit/security/security_view.xml b/odex25_ensan/odex_benefit/security/security_view.xml index e323900b1..130415a4b 100644 --- a/odex25_ensan/odex_benefit/security/security_view.xml +++ b/odex25_ensan/odex_benefit/security/security_view.xml @@ -119,6 +119,25 @@ + + Family Services Manager + + + + + + + Services - Legal Department + + + + + + Services - Projects Department + + + + Show All Benefits Profiles @@ -269,5 +288,13 @@ + + + Service Requests - Legal Department + + + [('service_cat.needs_legal_approval', '=', True)] + + diff --git a/odex25_ensan/odex_benefit/views/service_request.xml b/odex25_ensan/odex_benefit/views/service_request.xml index f6286b7f4..cceb1aad8 100644 --- a/odex25_ensan/odex_benefit/views/service_request.xml +++ b/odex25_ensan/odex_benefit/views/service_request.xml @@ -17,7 +17,7 @@ string="Refuse" class="btn btn-danger" states="researcher" groups="odex_benefit.group_benefit_researcher"/>