diff --git a/cor_custom/models/hr_employee.py b/cor_custom/models/hr_employee.py
index e07c35d..4f42fab 100755
--- a/cor_custom/models/hr_employee.py
+++ b/cor_custom/models/hr_employee.py
@@ -6,4 +6,9 @@ from odoo import api, fields, models, _
class HrEmployee(models.Model):
_inherit = 'hr.employee'
- budgeted_hour_week = fields.Integer("Budgeted Hours")
\ No newline at end of file
+ budgeted_hour_week = fields.Integer("Budgeted Hours")
+
+class EmployeePublic(models.Model):
+ _inherit = 'hr.employee.public'
+
+ budgeted_hour_week = fields.Integer("Budgeted Hours")
diff --git a/planning/views/planning_views.xml b/planning/views/planning_views.xml
index bdeb3bd..9cef9fe 100755
--- a/planning/views/planning_views.xml
+++ b/planning/views/planning_views.xml
@@ -43,7 +43,7 @@
-
+
@@ -120,6 +120,8 @@
+
+
diff --git a/project_forecast/__manifest__.py b/project_forecast/__manifest__.py
index 919a273..c0c16d6 100755
--- a/project_forecast/__manifest__.py
+++ b/project_forecast/__manifest__.py
@@ -8,7 +8,7 @@
""",
'category': 'Operations/Project',
'version': '1.0',
- 'depends': ['project', 'planning'],
+ 'depends': ['project', 'planning', 'cor_custom'],
'data': [
'views/planning_views.xml',
'views/project_forecast_views.xml',
diff --git a/project_forecast/models/project_forecast.py b/project_forecast/models/project_forecast.py
index 661de26..f86a465 100755
--- a/project_forecast/models/project_forecast.py
+++ b/project_forecast/models/project_forecast.py
@@ -29,6 +29,30 @@ class PlanningShift(models.Model):
else:
self.task_id.project_id = self.project_id
+ @api.onchange('employee_id')
+ def _onchange_employee_id(self):
+ domain = []
+ if self.employee_id and not self.employee_id.user_id:
+ self.project_id = False
+ domain = [('id', 'in', [])]
+ if self.employee_id:
+ self.project_id = False
+ domain = [('id', 'in', [])]
+ if self.employee_id and self.employee_id.user_id:
+ manager_id = self.env['project.project'].search(
+ [('user_id', '=', self.employee_id.user_id.id), ('allow_forecast', '=', True)]).ids
+ emp_project_ids = self.env['project.project'].search(
+ [('privacy_visibility', 'in', ('employees', 'portal')), ('allow_forecast', '=', True)]).ids
+ project_ids = self.env['project.project'].search(
+ [('privacy_visibility', '=', 'followers'), ('allow_forecast', '=', True),
+ ('allowed_internal_user_ids', 'in', self.employee_id.user_id.id)]).ids
+ emp_all_project_ids = manager_id + emp_project_ids + project_ids
+ domain = [('id', 'in', list(set(emp_all_project_ids)))]
+ result = {
+ 'domain': {'project_id': domain},
+ }
+ return result
+
@api.onchange('project_id')
def _onchange_project_id(self):
domain = [] if not self.project_id else [('project_id', '=', self.project_id.id)]
diff --git a/project_forecast/views/project_forecast_views.xml b/project_forecast/views/project_forecast_views.xml
index 506c21f..22c7ba5 100755
--- a/project_forecast/views/project_forecast_views.xml
+++ b/project_forecast/views/project_forecast_views.xml
@@ -119,7 +119,7 @@
-
+ action="project_forecast_action_by_project"/> -->