diff --git a/project_tasks_from_templates/README.rst b/project_tasks_from_templates/README.rst new file mode 100755 index 000000000..4c8b8f959 --- /dev/null +++ b/project_tasks_from_templates/README.rst @@ -0,0 +1,33 @@ +Project Templates v15 +===================== +This module will helps you to create projects and tasks from templates. + + +Configuration +============= +* No additional configurations needed + +Company +------- +* `Cybrosys Techno Solutions `__ + +Credits +------- +* Developers: Ajmunnisa KP @ cybrosys, odoo@cybrosys.com + + +Contacts +-------- +* Mail Contact : odoo@cybrosys.com +* Website : https://cybrosys.com + +Bug Tracker +----------- +Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. + +Maintainer +========== +.. image:: https://cybrosys.com/images/logo.png + :target: https://cybrosys.com + +This module is maintained by Cybrosys Technologies. diff --git a/project_tasks_from_templates/__init__.py b/project_tasks_from_templates/__init__.py new file mode 100755 index 000000000..8bf80ef3c --- /dev/null +++ b/project_tasks_from_templates/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2022-TODAY Cybrosys Technologies(). +# Author: Cybrosys Technogies @cybrosys(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +from . import models diff --git a/project_tasks_from_templates/__manifest__.py b/project_tasks_from_templates/__manifest__.py new file mode 100755 index 000000000..ad6fba0d5 --- /dev/null +++ b/project_tasks_from_templates/__manifest__.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2022-TODAY Cybrosys Technologies(). +# Author: Cybrosys Technogies @cybrosys(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +{ + 'name': 'Project Templates', + 'version': '15.0.1.0.0', + 'category': "Project", + 'summary': """This app allows your project team to create project template and task template""", + 'description': "This app allows your project team to create project template and task template", + 'author': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'depends': ['base', 'project'], + 'data': [ + 'views/project_task.xml', + 'security/ir.model.access.csv', + ], + 'images': ['static/description/banner.png'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/project_tasks_from_templates/doc/RELEASE_NOTES.md b/project_tasks_from_templates/doc/RELEASE_NOTES.md new file mode 100755 index 000000000..4dd750d3c --- /dev/null +++ b/project_tasks_from_templates/doc/RELEASE_NOTES.md @@ -0,0 +1,6 @@ +## Module + +#### 05.06.2022 +#### Version 15.0.1.0.0 +#### ADD +Initial Commit for Project Templates diff --git a/project_tasks_from_templates/models/__init__.py b/project_tasks_from_templates/models/__init__.py new file mode 100755 index 000000000..a2fdf63ea --- /dev/null +++ b/project_tasks_from_templates/models/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2022-TODAY Cybrosys Technologies(). +# Author: Cybrosys Technogies @cybrosys(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +from . import project diff --git a/project_tasks_from_templates/models/project.py b/project_tasks_from_templates/models/project.py new file mode 100755 index 000000000..c3807f31c --- /dev/null +++ b/project_tasks_from_templates/models/project.py @@ -0,0 +1,82 @@ +# -*- coding: utf-8 -*- +############################################################################# +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2022-TODAY Cybrosys Technologies(). +# Author: Cybrosys Technogies @cybrosys(odoo@cybrosys.com) +# +# You can modify it under the terms of the GNU AFFERO +# GENERAL PUBLIC LICENSE (AGPL v3), Version 3. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. +# +# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE +# (AGPL v3) along with this program. +# If not, see . +# +############################################################################# + +from odoo import models, fields, api, _ + + +class Project(models.Model): + _inherit = 'project.project' + + project_template_id = fields.Many2one('project.task.template') + + def create_task(self, item, parent): + vals = {'project_id': self.id, + 'name': item.name, + 'parent_id': parent, + 'stage_id': self.env['project.task.type'].search([('sequence', '=', 1)], limit=1).id, + 'user_ids': item.user_ids, + 'description': item.description + } + task_id = self.env['project.task'].create(vals).id + for sub_task in item.child_ids: + self.create_task(sub_task, task_id) + + def action_create_project_from_template(self): + template_id = self.project_template_id + for item in template_id.task_ids: + self.create_task(item, False) + return { + 'view_mode': 'form', + 'res_model': 'project.project', + 'res_id': self.id, + 'type': 'ir.actions.act_window', + 'context': self._context + } + + +class ProjectTaskCustom(models.Model): + _name = 'project.task.custom' + + name = fields.Char("Name", required=True) + project_template_id = fields.Many2one('project.task.template') + description = fields.Text("Task Description") + user_ids = fields.Many2many('res.users', relation='project_task_custom_user_rel', column1='task_id', + column2='user_id', + string='Assignees', tracking=True) + parent_id = fields.Many2one('project.task.custom', string='Parent Task', index=True) + child_ids = fields.One2many('project.task.custom', 'parent_id', string="Sub-tasks") + + def action_open_task(self): + return { + 'view_mode': 'form', + 'res_model': 'project.task.custom', + 'res_id': self.id, + 'type': 'ir.actions.act_window', + 'context': self._context + } + + +class ProjectTaskTemplate(models.Model): + _name = 'project.task.template' + + name = fields.Char("Template name", translate=True) + task_ids = fields.One2many('project.task.custom', 'project_template_id', string="Tasks") diff --git a/project_tasks_from_templates/security/ir.model.access.csv b/project_tasks_from_templates/security/ir.model.access.csv new file mode 100755 index 000000000..f2ec0c49b --- /dev/null +++ b/project_tasks_from_templates/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_project_project_templates_manager,project.project.templates,model_project_task_template,project.group_project_manager,1,1,1,1 +access_project_project_templates_task_manager,project.project.templates.tasks,model_project_task_custom,project.group_project_manager,1,1,1,1 diff --git a/project_tasks_from_templates/static/description/assets/icons/check.png b/project_tasks_from_templates/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/check.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/chevron.png b/project_tasks_from_templates/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/chevron.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/cogs.png b/project_tasks_from_templates/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/cogs.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/consultation.png b/project_tasks_from_templates/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/consultation.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/ecom-black.png b/project_tasks_from_templates/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/ecom-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/education-black.png b/project_tasks_from_templates/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/education-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/hotel-black.png b/project_tasks_from_templates/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/hotel-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/license.png b/project_tasks_from_templates/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/license.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/lifebuoy.png b/project_tasks_from_templates/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/lifebuoy.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/logo.png b/project_tasks_from_templates/static/description/assets/icons/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/logo.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/manufacturing-black.png b/project_tasks_from_templates/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/manufacturing-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/pos-black.png b/project_tasks_from_templates/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/pos-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/puzzle.png b/project_tasks_from_templates/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/puzzle.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/restaurant-black.png b/project_tasks_from_templates/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/restaurant-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/service-black.png b/project_tasks_from_templates/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/service-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/trading-black.png b/project_tasks_from_templates/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/trading-black.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/training.png b/project_tasks_from_templates/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/training.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/update.png b/project_tasks_from_templates/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/update.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/user.png b/project_tasks_from_templates/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/user.png differ diff --git a/project_tasks_from_templates/static/description/assets/icons/wrench.png b/project_tasks_from_templates/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/icons/wrench.png differ diff --git a/project_tasks_from_templates/static/description/assets/modules/budget_image.png b/project_tasks_from_templates/static/description/assets/modules/budget_image.png new file mode 100644 index 000000000..b50130c7d Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/modules/budget_image.png differ diff --git a/project_tasks_from_templates/static/description/assets/modules/credit_image.png b/project_tasks_from_templates/static/description/assets/modules/credit_image.png new file mode 100644 index 000000000..3ad04ecfd Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/modules/credit_image.png differ diff --git a/project_tasks_from_templates/static/description/assets/modules/employee_image.png b/project_tasks_from_templates/static/description/assets/modules/employee_image.png new file mode 100644 index 000000000..30ad58232 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/modules/employee_image.png differ diff --git a/project_tasks_from_templates/static/description/assets/modules/export_image.png b/project_tasks_from_templates/static/description/assets/modules/export_image.png new file mode 100644 index 000000000..492980ad0 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/modules/export_image.png differ diff --git a/project_tasks_from_templates/static/description/assets/modules/gantt_image.png b/project_tasks_from_templates/static/description/assets/modules/gantt_image.png new file mode 100644 index 000000000..1ae7cfe3b Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/modules/gantt_image.png differ diff --git a/project_tasks_from_templates/static/description/assets/modules/quotation_image.png b/project_tasks_from_templates/static/description/assets/modules/quotation_image.png new file mode 100644 index 000000000..499b1a72f Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/modules/quotation_image.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/hero.gif b/project_tasks_from_templates/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..9ce299a84 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/hero.gif differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_1.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_1.png new file mode 100644 index 000000000..a9ace79a7 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_1.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_10.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_10.png new file mode 100644 index 000000000..70bf3605b Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_10.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_2.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_2.png new file mode 100644 index 000000000..3c7883a67 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_2.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_3.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_3.png new file mode 100644 index 000000000..1a6bac7d9 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_3.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_4.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_4.png new file mode 100644 index 000000000..593dc6919 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_4.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_5.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_5.png new file mode 100644 index 000000000..85872b44c Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_5.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_6.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_6.png new file mode 100644 index 000000000..27c1a3a98 Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_6.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_7.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_7.png new file mode 100644 index 000000000..05fcba96d Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_7.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_8.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_8.png new file mode 100644 index 000000000..e6815e33c Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_8.png differ diff --git a/project_tasks_from_templates/static/description/assets/screenshots/screenshot_9.png b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_9.png new file mode 100644 index 000000000..457b3117c Binary files /dev/null and b/project_tasks_from_templates/static/description/assets/screenshots/screenshot_9.png differ diff --git a/project_tasks_from_templates/static/description/banner.png b/project_tasks_from_templates/static/description/banner.png new file mode 100644 index 000000000..4da0b5904 Binary files /dev/null and b/project_tasks_from_templates/static/description/banner.png differ diff --git a/project_tasks_from_templates/static/description/icon.png b/project_tasks_from_templates/static/description/icon.png new file mode 100644 index 000000000..61121c187 Binary files /dev/null and b/project_tasks_from_templates/static/description/icon.png differ diff --git a/project_tasks_from_templates/static/description/index.html b/project_tasks_from_templates/static/description/index.html new file mode 100644 index 000000000..0bec302cd --- /dev/null +++ b/project_tasks_from_templates/static/description/index.html @@ -0,0 +1,608 @@ +
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+ +
+
+
+
+ +
+
+
+

+ Project Templates

+

+ This app allows your project team to create project template. +

+ +
+
+ + + +
+
+

+ Overview +

+
+ +
+

+ Sometimes, you may require to create different projects with similar tasks. Manually entering datas like task name, task description, + assigned persons, etc for all these projects will consume a lot of time. In such cases, this module will help you to create and + manage projects from project templates.

+
+

+ +
+ + +
+
+

+ Features +

+
+ +
+
+ +
+
+

+ Allows to create project from project template.

+
+
+ +
+
+ +
+
+

+ Multiple levels of tasks and sub tasks from template.

+
+
+ + +
+ +
+
+

+ Screenshots +

+
+
+

+ Project -> Configuration -> Project Templates

+

+ When you install the module, an extra menu named Project Templates can be seen under the Configuration tab of Project App.

+ +
+ +
+

+ Create a new Project Template.

+

+

+ +
+ +
+

+ Specify the template name and add tasks.

+ +
+ + +
+

+ Sub tasks

+

+ + You can create multiple levels of tasks using templates. Specify the task details. +

+ +
+ + +
+

+ Project Templates List View

+ +
+ + +
+

+ Create Project Using create button.

+ +
+ +
+

+ Choose the project template.

+ +
+
+

You can see the tasks are created as configured in the template. + +

+ +
+ +
+ +
+ +
+ +
+
+

Suggested Products

+
+ + +
+
+ + + +
+
+
+

Our Services

+
+
+ +
+
+ +
+
+ Odoo + Customization
+
+ +
+
+ +
+
+ Odoo + Implementation
+
+ +
+
+ +
+
+ Odoo + Support
+
+ + +
+
+ +
+
+ Hire + Odoo + Developer
+
+ +
+
+ +
+
+ Odoo + Integration
+
+ +
+
+ +
+
+ Odoo + Migration
+
+ + +
+
+ +
+
+ Odoo + Consultancy
+
+ +
+
+ +
+
+ Odoo + Implementation
+
+ +
+
+ +
+
+ Odoo + Licensing Consultancy
+
+
+
+ + + +
+
+
+

Our Industries

+
+
+ +
+
+ +
+ Trading +
+

+ Easily procure + and + sell your products

+
+
+ +
+
+ +
+ POS +
+

+ Easy + configuration + and convivial experience

+
+
+ +
+
+ +
+ Education +
+

+ A platform for + educational management

+
+
+ +
+
+ +
+ Manufacturing +
+

+ Plan, track and + schedule your operations

+
+
+ +
+
+ +
+ E-commerce & Website +
+

+ Mobile + friendly, + awe-inspiring product pages

+
+
+ +
+
+ +
+ Service Management +
+

+ Keep track of + services and invoice

+
+
+ +
+
+ +
+ Restaurant +
+

+ Run your bar or + restaurant methodically

+
+
+ +
+
+ +
+ Hotel Management +
+

+ An + all-inclusive + hotel management application

+
+
+ +
+
+ + + + + +
+
+
+

Need Help?

+
+
+
+ + +
+ +
+ + +
+ +
+ +
+ +
+
+ +
+ +
+ +
+
+ +
+
+
+ + +
\ No newline at end of file diff --git a/project_tasks_from_templates/views/project_task.xml b/project_tasks_from_templates/views/project_task.xml new file mode 100755 index 000000000..c9b5ebcca --- /dev/null +++ b/project_tasks_from_templates/views/project_task.xml @@ -0,0 +1,97 @@ + + + + + Project Templates + project.task.template + tree,form + + + + + + project.template.tasks.manager + project.task.template + +
+ + + + + + + + + + + +