From 776336b0e26f263168376ac611c45e2400948e50 Mon Sep 17 00:00:00 2001 From: Abdurrahman Saber Date: Sat, 1 Nov 2025 13:18:29 +0200 Subject: [PATCH 1/3] [IMP] exp_official_mission: adjust approval process --- odex25_hr/exp_official_mission/models/hr_official_mission.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/odex25_hr/exp_official_mission/models/hr_official_mission.py b/odex25_hr/exp_official_mission/models/hr_official_mission.py index bd9ffd281..f1386731c 100644 --- a/odex25_hr/exp_official_mission/models/hr_official_mission.py +++ b/odex25_hr/exp_official_mission/models/hr_official_mission.py @@ -564,6 +564,7 @@ class HrOfficialMission(models.Model): def accounting_manager(self): # self.chick_employee_ids() + self = self.sudo() self.employee_ids.chick_not_overtime() self.employee_ids.compute_Training_cost_emp() self.employee_ids.write({'status': 'approved'}) @@ -573,7 +574,7 @@ class HrOfficialMission(models.Model): def accounting_manager_refused(self): for rec in self: - rec.refused() + rec.sudo().refused() # Refuse For The Direct Manager Only def direct_manager_refused(self): @@ -641,6 +642,7 @@ class HrOfficialMission(models.Model): def approve(self): # check if there is dealing with financial + self = self.sudo() self.employee_ids.chick_not_overtime() if self.employee_ids and self.mission_type.related_with_financial: # move amounts to journal entries From 34bccc0445d89176d02bc3bd97c840f8b668dc79 Mon Sep 17 00:00:00 2001 From: Abdurrahman Saber Date: Sun, 2 Nov 2025 15:05:09 +0200 Subject: [PATCH 2/3] [IMP] hr_government_relations, exp_ticket_request: add accounting approva --- .../exp_ticket_request/models/hr_ticketing.py | 10 +++++- .../security/ir.model.access.csv | 7 +++- .../views/hr_ticketing_view.xml | 18 ++++++---- .../models/exit_and_return.py | 18 +++++++--- .../models/request_visa.py | 16 ++++++--- .../security/ir.model.access.csv | 5 +++ .../views/exit_and_return.xml | 36 +++++++++++++------ .../views/request_visa.xml | 23 +++++++++--- 8 files changed, 100 insertions(+), 33 deletions(-) diff --git a/odex25_hr/exp_ticket_request/models/hr_ticketing.py b/odex25_hr/exp_ticket_request/models/hr_ticketing.py index fcab91928..2644d3742 100644 --- a/odex25_hr/exp_ticket_request/models/hr_ticketing.py +++ b/odex25_hr/exp_ticket_request/models/hr_ticketing.py @@ -15,9 +15,11 @@ class HrTicketing(models.Model): STATE_SELECTION = [ ('draft', _('Draft')), ('submit', _('Direct Manager')), + ('accounting', _('Accounting Manager')), ('review', _('Government Relations')), ('confirm', _('HR Manager')), - ('done', _('Financial Manager')), + ('accounting_final', _('Accounting Manager')), + ('done', _('Done')), ('refuse', _('Refused')), # ('cancelled', _('Cancelled')), ] @@ -93,11 +95,17 @@ class HrTicketing(models.Model): self.write({'state': 'submit'}) def review(self): + self.write({'state': 'accounting'}) + + def accounting(self): self.write({'state': 'review'}) def confirm(self): self.write({'state': 'confirm'}) + def accounting_final(self): + self.write({'state': 'accounting_final'}) + def action_done(self): if self.cost_of_tickets > 0: debit_line_vals = { diff --git a/odex25_hr/exp_ticket_request/security/ir.model.access.csv b/odex25_hr/exp_ticket_request/security/ir.model.access.csv index b1a73c0d9..63bd00089 100644 --- a/odex25_hr/exp_ticket_request/security/ir.model.access.csv +++ b/odex25_hr/exp_ticket_request/security/ir.model.access.csv @@ -7,4 +7,9 @@ access_hr_airline_hr,hr.airline.hr.manager,model_hr_airline,hr.group_hr_manager, access_airline_agent,airline.agent,model_airline_agent,base.group_user,1,0,0,0 access_airline_agent_hr,airline.agent.manager,model_airline_agent,hr.group_hr_manager,1,1,1,1 access_hr_airline_city_user,hr_airline_city_user,model_hr_airline_city,base.group_user,1,0,0,0 -access_hr_airline_city_manager,hr_airline_city_manager,model_hr_airline_city,hr.group_hr_manager,1,1,1,1 \ No newline at end of file +access_hr_airline_city_manager,hr_airline_city_manager,model_hr_airline_city,hr.group_hr_manager,1,1,1,1 +access_hr_ticket_request_accounting,hr.ticket.request.accounting,model_hr_ticket_request,hr_base.group_account_manager,1,1,1,1 +access_hr_ticket_request_type_accounting,hr.ticket.request.type.accounting,model_hr_ticket_request_type,hr_base.group_account_manager,1,1,1,1 +access_hr_airline_accounting,hr.airline.accounting,model_hr_airline,hr_base.group_account_manager,1,1,1,1 +access_hr_airline_city_accounting,hr.airline.city.accounting,model_hr_airline_city,hr_base.group_account_manager,1,1,1,1 +access_airline_agent_accounting,airline.agent.accounting,model_airline_agent,hr_base.group_account_manager,1,1,1,1 \ No newline at end of file diff --git a/odex25_hr/exp_ticket_request/views/hr_ticketing_view.xml b/odex25_hr/exp_ticket_request/views/hr_ticketing_view.xml index 8d5c5760f..c0214df69 100644 --- a/odex25_hr/exp_ticket_request/views/hr_ticketing_view.xml +++ b/odex25_hr/exp_ticket_request/views/hr_ticketing_view.xml @@ -20,20 +20,24 @@