From 24aae19813737309c96d32635b6fac9c4e77cf9f Mon Sep 17 00:00:00 2001 From: Jared Kipe Date: Tue, 24 Apr 2018 09:49:18 -0700 Subject: [PATCH 1/3] Initial commit `hr_department_project` for 11.0 --- hr_department_project/__init__.py | 2 ++ hr_department_project/__manifest__.py | 24 +++++++++++++++++++ hr_department_project/models/__init__.py | 3 +++ hr_department_project/models/hr.py | 22 +++++++++++++++++ hr_department_project/models/project.py | 7 ++++++ hr_department_project/views/hr_views.xml | 15 ++++++++++++ hr_department_project/views/project_views.xml | 24 +++++++++++++++++++ 7 files changed, 97 insertions(+) create mode 100644 hr_department_project/__init__.py create mode 100644 hr_department_project/__manifest__.py create mode 100644 hr_department_project/models/__init__.py create mode 100644 hr_department_project/models/hr.py create mode 100644 hr_department_project/models/project.py create mode 100644 hr_department_project/views/hr_views.xml create mode 100644 hr_department_project/views/project_views.xml diff --git a/hr_department_project/__init__.py b/hr_department_project/__init__.py new file mode 100644 index 00000000..a0fdc10f --- /dev/null +++ b/hr_department_project/__init__.py @@ -0,0 +1,2 @@ +# -*- coding: utf-8 -*- +from . import models diff --git a/hr_department_project/__manifest__.py b/hr_department_project/__manifest__.py new file mode 100644 index 00000000..9169d5d7 --- /dev/null +++ b/hr_department_project/__manifest__.py @@ -0,0 +1,24 @@ +{ + 'name': 'HR Department Project', + 'version': '11.0.1.0.0', + 'author': 'Hibou Corp. ', + 'category': 'Human Resources', + 'summary': 'Provide default project per Department', + 'description': """ +HR Department Project +===================== + +Define a 'default project' for every department. This is a bridge module to allow other modules to use this behavior. +""", + 'website': 'https://hibou.io/', + 'depends': [ + 'project', + 'hr', + ], + 'data': [ + 'views/hr_views.xml', + 'views/project_views.xml', + ], + 'installable': True, + 'auto_install': False, +} diff --git a/hr_department_project/models/__init__.py b/hr_department_project/models/__init__.py new file mode 100644 index 00000000..4723a666 --- /dev/null +++ b/hr_department_project/models/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- +from . import project +from . import hr diff --git a/hr_department_project/models/hr.py b/hr_department_project/models/hr.py new file mode 100644 index 00000000..2d0fb2f9 --- /dev/null +++ b/hr_department_project/models/hr.py @@ -0,0 +1,22 @@ +from odoo import api, fields, models, _ + + +class Department(models.Model): + _inherit = 'hr.department' + + project_ids = fields.One2many('project.project', 'department_id', string='Projects') + project_count = fields.Integer(compute='_compute_project_count', string='Project Count') + + def _compute_project_count(self): + for department in self: + department.project_count = len(department.with_context(active_test=False).project_ids) + + def project_tree_view(self): + self.ensure_one() + action = self.env.ref('project.open_view_project_all').read()[0] + action['domain'] = [('department_id', '=', self.id)] + action['context'] = { + 'default_department_id': self.id, + 'default_user_id': self.manager_id.id if self.manager_id else 0, + } + return action diff --git a/hr_department_project/models/project.py b/hr_department_project/models/project.py new file mode 100644 index 00000000..e6bd32f1 --- /dev/null +++ b/hr_department_project/models/project.py @@ -0,0 +1,7 @@ +from odoo import api, fields, models, _ + + +class Project(models.Model): + _inherit = 'project.project' + + department_id = fields.Many2one('hr.department', string='Department') diff --git a/hr_department_project/views/hr_views.xml b/hr_department_project/views/hr_views.xml new file mode 100644 index 00000000..609e23aa --- /dev/null +++ b/hr_department_project/views/hr_views.xml @@ -0,0 +1,15 @@ + + + + hr.department.form.inherited + hr.department + + + + + + + + \ No newline at end of file diff --git a/hr_department_project/views/project_views.xml b/hr_department_project/views/project_views.xml new file mode 100644 index 00000000..7c7af6da --- /dev/null +++ b/hr_department_project/views/project_views.xml @@ -0,0 +1,24 @@ + + + + project.project.form.inherited + project.project + + + + + + + + + + project.project.select.inherited + project.project + + + + + + + + \ No newline at end of file From 709d03364b1369202483387f8c23d11e14b46b28 Mon Sep 17 00:00:00 2001 From: Kristen Marie Kulha Date: Fri, 8 Jun 2018 15:41:59 -0700 Subject: [PATCH 2/3] Add README. --- hr_department_project/README.rst | 36 ++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 hr_department_project/README.rst diff --git a/hr_department_project/README.rst b/hr_department_project/README.rst new file mode 100644 index 00000000..981bdfe1 --- /dev/null +++ b/hr_department_project/README.rst @@ -0,0 +1,36 @@ +***************************** +Hibou - HR Department Project +***************************** + +Define a default project for every department. + +For more information and add-ons, visit `Hibou.io `_. + + +============= +Main Features +============= + +* Adds new smart button to HR Department form view for projects which displays the number of projects for that department. +* New project tree view for department-specific projects. +* Adds new Department field to projects. +* Adds new filter to group projects by Department. + +.. image:: https://user-images.githubusercontent.com/15882954/41183026-42afc7b4-6b2d-11e8-9531-f3e56b92b332.png + :alt: 'Project Create' + :width: 988 + :align: left + +.. image:: https://user-images.githubusercontent.com/15882954/41183324-fa790b84-6b2e-11e8-956b-3724a4b49e56.png + :alt: 'Department Detail' + :width: 988 + :align: left + + +======= +License +======= + +Please see `LICENSE `_. + +Copyright Hibou Corp. 2018 From 3c256fb1fa605dee9afcd1fa8c9651c15e30bcaf Mon Sep 17 00:00:00 2001 From: Bhoomi Date: Thu, 29 Aug 2019 10:44:45 -0400 Subject: [PATCH 3/3] MIG `hr_department_project` For Odoo 12.0 --- hr_department_project/__manifest__.py | 2 +- hr_department_project/models/__init__.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hr_department_project/__manifest__.py b/hr_department_project/__manifest__.py index 9169d5d7..cc15435a 100644 --- a/hr_department_project/__manifest__.py +++ b/hr_department_project/__manifest__.py @@ -1,6 +1,6 @@ { 'name': 'HR Department Project', - 'version': '11.0.1.0.0', + 'version': '12.0.1.0.0', 'author': 'Hibou Corp. ', 'category': 'Human Resources', 'summary': 'Provide default project per Department', diff --git a/hr_department_project/models/__init__.py b/hr_department_project/models/__init__.py index 4723a666..feb08ba8 100644 --- a/hr_department_project/models/__init__.py +++ b/hr_department_project/models/__init__.py @@ -1,3 +1,3 @@ # -*- coding: utf-8 -*- -from . import project from . import hr +from . import project