diff --git a/event_catering/README.rst b/event_catering/README.rst new file mode 100644 index 000000000..4805bdb7f --- /dev/null +++ b/event_catering/README.rst @@ -0,0 +1,50 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +Event Catering Service +====================== +Event Catering attaches catering service to Event Management module thus +extending the scope of the Event Management Module. When you install this +module, a new service 'Catering' will be available in event management. + +Configuration +============= +* Automatically creates from event order. +* Catering manager can update the state of the event order. +* Single click for completing a work. + +License +------- +Affero General Public License v3.0 (AGPL v3) +(http://www.gnu.org/licenses/agpl-3.0-standalone.html) + +Company +------- +* `Cybrosys Techno Solutions `__ + +Credits +------- +Developer : (V15) Vishnuraj @ Cybrosys + +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. + +For support and more information, please visit `Our Website `__ + +Further information +=================== +HTML Description: ``__ diff --git a/event_catering/__init__.py b/event_catering/__init__.py new file mode 100644 index 000000000..d690203af --- /dev/null +++ b/event_catering/__init__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Vishnuraj (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/event_catering/__manifest__.py b/event_catering/__manifest__.py new file mode 100644 index 000000000..3d7951df0 --- /dev/null +++ b/event_catering/__manifest__.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Vishnuraj (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': 'Event Catering Service', + 'version': '15.0.1.0.0', + "category": "Industries", + 'summary': """ Catering Service for Event Management Module.""", + 'description': """Event Catering attaches catering service to + Event Management module thus extending the scope of the Event Management + Module. When you install this module, a new service 'Catering' will be + available in event management. """, + 'author': 'Cybrosys Techno Solutions', + 'company': 'Cybrosys Techno Solutions', + 'maintainer': 'Cybrosys Techno Solutions', + 'website': "https://www.cybrosys.com", + 'depends': ['event_management'], + 'data': ['security/event_catering_manager_groups.xml', + 'security/event_catering_security.xml', + 'security/ir.model.access.csv', + 'data/catering_service_data.xml', + 'data/ir_sequence_data.xml', + 'views/event_management_catering_views.xml', + 'views/event_management_views.xml', + ], + 'images': ['static/description/banner.png'], + 'license': 'AGPL-3', + 'installable': True, + 'auto_install': False, + 'application': False, +} diff --git a/event_catering/data/catering_service_data.xml b/event_catering/data/catering_service_data.xml new file mode 100644 index 000000000..c5c4954c4 --- /dev/null +++ b/event_catering/data/catering_service_data.xml @@ -0,0 +1,10 @@ + + + + + Catering Service + service + + + diff --git a/event_catering/data/ir_sequence_data.xml b/event_catering/data/ir_sequence_data.xml new file mode 100644 index 000000000..427621a41 --- /dev/null +++ b/event_catering/data/ir_sequence_data.xml @@ -0,0 +1,14 @@ + + + + + + Catering Service + catering.order.sequence + %(day)s/%(month)s/%(year)s + CAT- + 1 + 2 + + + diff --git a/event_catering/doc/RELEASE_NOTES.md b/event_catering/doc/RELEASE_NOTES.md new file mode 100644 index 000000000..541ba8271 --- /dev/null +++ b/event_catering/doc/RELEASE_NOTES.md @@ -0,0 +1,7 @@ +## Module + +#### 18.07.2023 +#### Version 15.0.1.0.0 +##### ADD + +- Initial Commit for Event Catering Service diff --git a/event_catering/models/__init__.py b/event_catering/models/__init__.py new file mode 100644 index 000000000..530949a4c --- /dev/null +++ b/event_catering/models/__init__.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies(). +# Author: Vishnuraj (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 event_catering_work +from . import event_management +from . import event_management_catering +from . import event_service_line diff --git a/event_catering/models/event_catering_work.py b/event_catering/models/event_catering_work.py new file mode 100644 index 000000000..9c22ae711 --- /dev/null +++ b/event_catering/models/event_catering_work.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Vishnuraj (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 api, fields, models + + +class EventCateringWork(models.Model): + """ + This class is for creating catering works. + it contains fields and functions for the model. + Methods: + _onchange_service_id(self): + calculate value of amount field when change the service_id + _compute_sub_total(self): + computes sub_total field + """ + _name = 'event.catering.work' + _description = "Event Catering Work" + + service_id = fields.Many2one('product.product', string="Services", + required=True, help="Choose the services") + quantity = fields.Float(string="Quantity", default=1, + help="How many quantity consumed") + amount = fields.Float(string="Amount", help="Amount per quantity") + sub_total = fields.Float(string="Sub Total", compute="_compute_sub_total", + readonly=True, help="Shows subtotal") + currency_id = fields.Many2one('res.currency', readonly=True, + string="Currency", + default=lambda self: + self.env.user.company_id.currency_id, + help="Select the currency") + catering_id = fields.Many2one('event.management.catering', + string="Catering Id", + help="Select the catering") + work_status = fields.Selection([('open', 'Open'), ('done', 'Done')], + string="Work Status", default='open', + help="Shows the current status of catering") + + @api.onchange('service_id') + def _onchange_service_id(self): + """ Function for calculate amount field when change service_id field """ + self.amount = self.service_id.lst_price + + @api.depends('quantity', 'amount') + def _compute_sub_total(self): + """ Computes sub_total field when quantity or amount changes """ + for rec in self: + rec.sub_total = rec.quantity * rec.amount diff --git a/event_catering/models/event_management.py b/event_catering/models/event_management.py new file mode 100644 index 000000000..29e6c5db9 --- /dev/null +++ b/event_catering/models/event_management.py @@ -0,0 +1,110 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Vishnuraj (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 api, fields, models + + +class EventManagement(models.Model): + """ + This class is used to create catering details in Event management. + It contains fields and functions for the model + Methods: + _compute_catering_pending(self): + function to computes catering_pending field + _compute_catering_done(self): + function to computes catering done field + action_event_confirm(self): + actions to perform when clicking on the 'Confirm' button. + action_view_catering_service(self): + actions to perform when clicking on the 'Pending Done' smart button. + """ + _inherit = 'event.management' + + catering_on = fields.Boolean(string="Catering Active", default=False, + help="Shows thw catering is active or not") + catering_id = fields.Many2one('event.management.catering', + string="Catering Id", + help="Corresponding catering in event") + catering_pending = fields.Integer(string='Catering Pending', + compute='_compute_catering_pending', + help="Shows count of catering " + "works are pending") + catering_done = fields.Integer(string='Catering Done', + compute='_compute_catering_done', + help="Shows how many catering works are done" + ) + + @api.depends('catering_id.catering_works_ids.work_status') + def _compute_catering_pending(self): + """ Computes catering_pending field """ + self.catering_pending = False + for order in self.catering_id: + pending = 0 + for lines in order.catering_works_ids: + if lines.work_status == 'open': + pending += 1 + self.catering_pending = pending + + @api.depends('catering_id.catering_works_ids.work_status') + def _compute_catering_done(self): + """ Computes catering_done field """ + self.catering_done = False + for order in self.catering_id: + done = 0 + for lines in order.catering_works_ids: + if lines.work_status == 'done': + done += 1 + self.catering_done = done + + def action_event_confirm(self): + """ + Extended function for the 'Confirm' button to create catering service + when confirming event. + """ + catering_line = self.service_line_ids.search([ + ('service', '=', 'catering'), ('event_id', '=', self.id)]) + if len(catering_line) > 0: + self.catering_on = True + self.catering_id = self.env['event.management.catering'].create({ + 'name': self.env['ir.sequence'].next_by_code( + 'catering.order.sequence'), + 'start_date': catering_line.date_from, + 'end_date': catering_line.date_to, + 'parent_event_id': self.id, + 'event_type_id': self.type_of_event_id.id, + 'catering_id': catering_line.id, + }).id + super(EventManagement, self).action_event_confirm() + + def action_view_catering_service(self): + """ + This function returns an action that display existing catering + service of the event. + """ + action = self.env.ref( + 'event_catering.event_management_catering_action'). \ + sudo().read()[0] + action['views'] = [(self.env.ref( + 'event_catering.event_management_catering_view_form').id, 'form')] + action['res_id'] = self.catering_id.id + if self.catering_id.id is not False: + return action + return False diff --git a/event_catering/models/event_management_catering.py b/event_catering/models/event_management_catering.py new file mode 100644 index 000000000..f7a3be3ef --- /dev/null +++ b/event_catering/models/event_management_catering.py @@ -0,0 +1,91 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Vishnuraj (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 api, fields, models, _ +from odoo.exceptions import UserError + + +class EventManagementCatering(models.Model): + """ + This class is for creating catering services. + it contains fields and functions for the model. + Methods: + _compute_price_subtotal(self): + computes price_subtotal field + action_catering_done(self): + actions to perform when clicking on the 'Done' button. + """ + _name = 'event.management.catering' + _description = "Event Management Catering" + + name = fields.Char(string="Name", readonly=True, help="Name of caterings") + date = fields.Date(string="Date", default=fields.Date.today, readonly=True, + help="date of catering created") + start_date = fields.Datetime(string="Start date", readonly=True, + help="starting date of catering service") + end_date = fields.Datetime(string="End date", readonly=True, + help="end date of catering service") + catering_works_ids = fields.One2many('event.catering.work', 'catering_id', + string="Catering Works", + help="selected catering works") + state = fields.Selection([('open', 'Open'), ('done', 'Done')], + string="State", default="open", + help="Current state of event") + note = fields.Text(string="Terms and conditions", + help="Display terms and condition for this service") + price_subtotal = fields.Float(string='Total', + compute='_compute_price_subtotal', + readonly=True, store=True, + help="Shows the total price") + parent_event_id = fields.Many2one('event.management', string="Event", + readonly=True, help="Parent event") + catering_id = fields.Integer(string="Catering Id", + help="Catering serial no") + currency_id = fields.Many2one('res.currency', readonly=True, + string="Currency", + default=lambda self: + self.env.user.company_id.currency_id, + help="Select currency") + event_type_id = fields.Many2one('event.management.type', + string="Event Type", readonly=True, + help="Select the type of event") + + @api.depends('catering_works_ids') + def _compute_price_subtotal(self): + """ Computes price_subtotal field """ + total = 0 + for items in self.catering_works_ids: + total += items.quantity * items.amount + self.price_subtotal = total + + def action_catering_done(self): + """ Function for the 'Done' button to change the state to 'Done'. """ + for items in self.catering_works_ids: + if items.work_status == 'open': + raise UserError(_("Catering works are pending")) + for items in self.sudo().parent_event_id.service_line_ids: + if items.id == self.sudo().catering_id: + items.sudo().write({ + 'amount': self.price_subtotal, + 'state': 'done', + 'related_product_id': self.env.ref( + 'event_catering.catering_service_product').id}) + self.state = "done" diff --git a/event_catering/models/event_service_line.py b/event_catering/models/event_service_line.py new file mode 100644 index 000000000..19b62582b --- /dev/null +++ b/event_catering/models/event_service_line.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +############################################################################### +# +# Cybrosys Technologies Pvt. Ltd. +# +# Copyright (C) 2023-TODAY Cybrosys Technologies() +# Author: Vishnuraj (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 fields, models + + +class EventServiceLine(models.Model): + """ This class adding options to service line of event management model """ + _inherit = 'event.service.line' + + service = fields.Selection(selection_add=[('catering', 'Catering')], + help="Adding catering option to services", + ondelete={'catering': 'cascade'},) diff --git a/event_catering/security/event_catering_manager_groups.xml b/event_catering/security/event_catering_manager_groups.xml new file mode 100644 index 000000000..c269d8066 --- /dev/null +++ b/event_catering/security/event_catering_manager_groups.xml @@ -0,0 +1,14 @@ + + + + + Catering Manager + + + + + + + diff --git a/event_catering/security/event_catering_security.xml b/event_catering/security/event_catering_security.xml new file mode 100644 index 000000000..8442b3b4e --- /dev/null +++ b/event_catering/security/event_catering_security.xml @@ -0,0 +1,30 @@ + + + + + event.catering.rule.own.event.manager + + [('create_uid','=',user.id)] + + + + + event.catering.rule.own.catering.manager + + [('create_uid','=',user.id)] + + + + + event.catering.rule.all.catering.manager + + [] + + + diff --git a/event_catering/security/ir.model.access.csv b/event_catering/security/ir.model.access.csv new file mode 100644 index 000000000..b0066507b --- /dev/null +++ b/event_catering/security/ir.model.access.csv @@ -0,0 +1,8 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_event_management_catering_event_manager,access.event.management.catering.event.manager,event_catering.model_event_management_catering,event_management.group_event_manager,1,1,1,1 +access_event_catering_work_event_manager,access.event.catering.work.event.manager,event_catering.model_event_catering_work,event_management.group_event_manager,1,1,1,1 +access_event_management_catering_catering_manager,access.event.management.catering.catering.manager,event_catering.model_event_management_catering,event_catering.event_catering_group_catering_manager,1,1,1,1 +access_event_catering_work_catering_manager,access.event.catering.work.catering.manager,event_catering.model_event_catering_work,event_catering.event_catering_group_catering_manager,1,1,1,1 +access_event_management_type_catering_manager,access.event.management.type.catering.manager,event_management.model_event_management_type,event_catering.event_catering_group_catering_manager,1,0,0,0 +access_event_management_catering_manager,access.event.management.catering.manager,event_management.model_event_management,event_catering.event_catering_group_catering_manager,1,1,1,0 +access_event_service_line_catering_manager,access.event.service.line.catering.manager,event_management.model_event_service_line,event_catering.event_catering_group_catering_manager,1,1,1,1 diff --git a/event_catering/static/description/assets/icons/check.png b/event_catering/static/description/assets/icons/check.png new file mode 100644 index 000000000..c8e85f51d Binary files /dev/null and b/event_catering/static/description/assets/icons/check.png differ diff --git a/event_catering/static/description/assets/icons/chevron.png b/event_catering/static/description/assets/icons/chevron.png new file mode 100644 index 000000000..2089293d6 Binary files /dev/null and b/event_catering/static/description/assets/icons/chevron.png differ diff --git a/event_catering/static/description/assets/icons/cogs.png b/event_catering/static/description/assets/icons/cogs.png new file mode 100644 index 000000000..95d0bad62 Binary files /dev/null and b/event_catering/static/description/assets/icons/cogs.png differ diff --git a/event_catering/static/description/assets/icons/consultation.png b/event_catering/static/description/assets/icons/consultation.png new file mode 100644 index 000000000..8319d4baa Binary files /dev/null and b/event_catering/static/description/assets/icons/consultation.png differ diff --git a/event_catering/static/description/assets/icons/ecom-black.png b/event_catering/static/description/assets/icons/ecom-black.png new file mode 100644 index 000000000..a9385ff13 Binary files /dev/null and b/event_catering/static/description/assets/icons/ecom-black.png differ diff --git a/event_catering/static/description/assets/icons/education-black.png b/event_catering/static/description/assets/icons/education-black.png new file mode 100644 index 000000000..3eb09b27b Binary files /dev/null and b/event_catering/static/description/assets/icons/education-black.png differ diff --git a/event_catering/static/description/assets/icons/hotel-black.png b/event_catering/static/description/assets/icons/hotel-black.png new file mode 100644 index 000000000..130f613be Binary files /dev/null and b/event_catering/static/description/assets/icons/hotel-black.png differ diff --git a/event_catering/static/description/assets/icons/license.png b/event_catering/static/description/assets/icons/license.png new file mode 100644 index 000000000..a5869797e Binary files /dev/null and b/event_catering/static/description/assets/icons/license.png differ diff --git a/event_catering/static/description/assets/icons/lifebuoy.png b/event_catering/static/description/assets/icons/lifebuoy.png new file mode 100644 index 000000000..658d56ccc Binary files /dev/null and b/event_catering/static/description/assets/icons/lifebuoy.png differ diff --git a/event_catering/static/description/assets/icons/logo.png b/event_catering/static/description/assets/icons/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/event_catering/static/description/assets/icons/logo.png differ diff --git a/event_catering/static/description/assets/icons/manufacturing-black.png b/event_catering/static/description/assets/icons/manufacturing-black.png new file mode 100644 index 000000000..697eb0e9f Binary files /dev/null and b/event_catering/static/description/assets/icons/manufacturing-black.png differ diff --git a/event_catering/static/description/assets/icons/pos-black.png b/event_catering/static/description/assets/icons/pos-black.png new file mode 100644 index 000000000..97c0f90c1 Binary files /dev/null and b/event_catering/static/description/assets/icons/pos-black.png differ diff --git a/event_catering/static/description/assets/icons/puzzle.png b/event_catering/static/description/assets/icons/puzzle.png new file mode 100644 index 000000000..65cf854e7 Binary files /dev/null and b/event_catering/static/description/assets/icons/puzzle.png differ diff --git a/event_catering/static/description/assets/icons/restaurant-black.png b/event_catering/static/description/assets/icons/restaurant-black.png new file mode 100644 index 000000000..4a35eb939 Binary files /dev/null and b/event_catering/static/description/assets/icons/restaurant-black.png differ diff --git a/event_catering/static/description/assets/icons/service-black.png b/event_catering/static/description/assets/icons/service-black.png new file mode 100644 index 000000000..301ab51cb Binary files /dev/null and b/event_catering/static/description/assets/icons/service-black.png differ diff --git a/event_catering/static/description/assets/icons/trading-black.png b/event_catering/static/description/assets/icons/trading-black.png new file mode 100644 index 000000000..9398ba2f1 Binary files /dev/null and b/event_catering/static/description/assets/icons/trading-black.png differ diff --git a/event_catering/static/description/assets/icons/training.png b/event_catering/static/description/assets/icons/training.png new file mode 100644 index 000000000..884ca024d Binary files /dev/null and b/event_catering/static/description/assets/icons/training.png differ diff --git a/event_catering/static/description/assets/icons/update.png b/event_catering/static/description/assets/icons/update.png new file mode 100644 index 000000000..ecbc5a01a Binary files /dev/null and b/event_catering/static/description/assets/icons/update.png differ diff --git a/event_catering/static/description/assets/icons/user.png b/event_catering/static/description/assets/icons/user.png new file mode 100644 index 000000000..6ffb23d9f Binary files /dev/null and b/event_catering/static/description/assets/icons/user.png differ diff --git a/event_catering/static/description/assets/icons/wrench.png b/event_catering/static/description/assets/icons/wrench.png new file mode 100644 index 000000000..6c04dea0f Binary files /dev/null and b/event_catering/static/description/assets/icons/wrench.png differ diff --git a/event_catering/static/description/assets/misc/categories.png b/event_catering/static/description/assets/misc/categories.png new file mode 100644 index 000000000..bedf1e0b1 Binary files /dev/null and b/event_catering/static/description/assets/misc/categories.png differ diff --git a/event_catering/static/description/assets/misc/check-box.png b/event_catering/static/description/assets/misc/check-box.png new file mode 100644 index 000000000..42caf24b9 Binary files /dev/null and b/event_catering/static/description/assets/misc/check-box.png differ diff --git a/event_catering/static/description/assets/misc/compass.png b/event_catering/static/description/assets/misc/compass.png new file mode 100644 index 000000000..d5fed8faa Binary files /dev/null and b/event_catering/static/description/assets/misc/compass.png differ diff --git a/event_catering/static/description/assets/misc/corporate.png b/event_catering/static/description/assets/misc/corporate.png new file mode 100644 index 000000000..2eb13edbf Binary files /dev/null and b/event_catering/static/description/assets/misc/corporate.png differ diff --git a/event_catering/static/description/assets/misc/customer-support.png b/event_catering/static/description/assets/misc/customer-support.png new file mode 100644 index 000000000..79efc72ed Binary files /dev/null and b/event_catering/static/description/assets/misc/customer-support.png differ diff --git a/event_catering/static/description/assets/misc/cybrosys-logo.png b/event_catering/static/description/assets/misc/cybrosys-logo.png new file mode 100644 index 000000000..cc3cc0ccf Binary files /dev/null and b/event_catering/static/description/assets/misc/cybrosys-logo.png differ diff --git a/event_catering/static/description/assets/misc/features.png b/event_catering/static/description/assets/misc/features.png new file mode 100644 index 000000000..b41769f77 Binary files /dev/null and b/event_catering/static/description/assets/misc/features.png differ diff --git a/event_catering/static/description/assets/misc/logo.png b/event_catering/static/description/assets/misc/logo.png new file mode 100644 index 000000000..478462d3e Binary files /dev/null and b/event_catering/static/description/assets/misc/logo.png differ diff --git a/event_catering/static/description/assets/misc/pictures.png b/event_catering/static/description/assets/misc/pictures.png new file mode 100644 index 000000000..56d255fe9 Binary files /dev/null and b/event_catering/static/description/assets/misc/pictures.png differ diff --git a/event_catering/static/description/assets/misc/pie-chart.png b/event_catering/static/description/assets/misc/pie-chart.png new file mode 100644 index 000000000..426e05244 Binary files /dev/null and b/event_catering/static/description/assets/misc/pie-chart.png differ diff --git a/event_catering/static/description/assets/misc/right-arrow.png b/event_catering/static/description/assets/misc/right-arrow.png new file mode 100644 index 000000000..730984a06 Binary files /dev/null and b/event_catering/static/description/assets/misc/right-arrow.png differ diff --git a/event_catering/static/description/assets/misc/star.png b/event_catering/static/description/assets/misc/star.png new file mode 100644 index 000000000..2eb9ab29f Binary files /dev/null and b/event_catering/static/description/assets/misc/star.png differ diff --git a/event_catering/static/description/assets/misc/support.png b/event_catering/static/description/assets/misc/support.png new file mode 100644 index 000000000..4f18b8b82 Binary files /dev/null and b/event_catering/static/description/assets/misc/support.png differ diff --git a/event_catering/static/description/assets/misc/whatsapp.png b/event_catering/static/description/assets/misc/whatsapp.png new file mode 100644 index 000000000..d513a5356 Binary files /dev/null and b/event_catering/static/description/assets/misc/whatsapp.png differ diff --git a/event_catering/static/description/assets/modules/1.png b/event_catering/static/description/assets/modules/1.png new file mode 100644 index 000000000..5238bdeab Binary files /dev/null and b/event_catering/static/description/assets/modules/1.png differ diff --git a/event_catering/static/description/assets/modules/2.png b/event_catering/static/description/assets/modules/2.png new file mode 100644 index 000000000..1ae7cfe3b Binary files /dev/null and b/event_catering/static/description/assets/modules/2.png differ diff --git a/event_catering/static/description/assets/modules/3.png b/event_catering/static/description/assets/modules/3.png new file mode 100644 index 000000000..3c3ff1afb Binary files /dev/null and b/event_catering/static/description/assets/modules/3.png differ diff --git a/event_catering/static/description/assets/modules/4.png b/event_catering/static/description/assets/modules/4.png new file mode 100644 index 000000000..3fae4631e Binary files /dev/null and b/event_catering/static/description/assets/modules/4.png differ diff --git a/event_catering/static/description/assets/modules/5.gif b/event_catering/static/description/assets/modules/5.gif new file mode 100644 index 000000000..2a5f8e659 Binary files /dev/null and b/event_catering/static/description/assets/modules/5.gif differ diff --git a/event_catering/static/description/assets/modules/6.png b/event_catering/static/description/assets/modules/6.png new file mode 100644 index 000000000..7f2815273 Binary files /dev/null and b/event_catering/static/description/assets/modules/6.png differ diff --git a/event_catering/static/description/assets/screenshots/Screenshot1.png b/event_catering/static/description/assets/screenshots/Screenshot1.png new file mode 100644 index 000000000..2e91a9da3 Binary files /dev/null and b/event_catering/static/description/assets/screenshots/Screenshot1.png differ diff --git a/event_catering/static/description/assets/screenshots/Screenshot2.png b/event_catering/static/description/assets/screenshots/Screenshot2.png new file mode 100644 index 000000000..a25e7f483 Binary files /dev/null and b/event_catering/static/description/assets/screenshots/Screenshot2.png differ diff --git a/event_catering/static/description/assets/screenshots/Screenshot3.png b/event_catering/static/description/assets/screenshots/Screenshot3.png new file mode 100644 index 000000000..6a2088499 Binary files /dev/null and b/event_catering/static/description/assets/screenshots/Screenshot3.png differ diff --git a/event_catering/static/description/assets/screenshots/hero.gif b/event_catering/static/description/assets/screenshots/hero.gif new file mode 100644 index 000000000..d2e48a1d4 Binary files /dev/null and b/event_catering/static/description/assets/screenshots/hero.gif differ diff --git a/event_catering/static/description/banner.png b/event_catering/static/description/banner.png new file mode 100644 index 000000000..12fc084c3 Binary files /dev/null and b/event_catering/static/description/banner.png differ diff --git a/event_catering/static/description/icon.png b/event_catering/static/description/icon.png new file mode 100644 index 000000000..35e6fbb23 Binary files /dev/null and b/event_catering/static/description/icon.png differ diff --git a/event_catering/static/description/index.html b/event_catering/static/description/index.html new file mode 100644 index 000000000..4da092965 --- /dev/null +++ b/event_catering/static/description/index.html @@ -0,0 +1,653 @@ + +
+
+
+
+ +
+
+
+ Community +
+
+ Enterprise +
+
+
+
+
+ +
+
+
+ +

+ Event Catering Service +

+

+ A Module for managing catering services, Supporting module + for Event Management +

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

+ Overview +

+
+ +
+

+ Event Catering attaches catering service to Event Management + module thus + extending the scope of the Event Management Module. When install + this + module, a new service 'Catering' will be available in event + management +

+
+
+ + + +
+
+

+ Features +

+
+ +
+
+ +
+
+

+ Automatically created from the particular event order. +

+
+
+ +
+
+ +
+
+

+ Catering and Event Manager can update the state of event + order and thus the catering order. +

+
+
+ +
+
+ +
+
+

+ Simply complete the work order on a single click. +

+
+
+
+ + + +
+
+

+ Screenshots +

+
+
+

+ Catering Service Form View +

+

+ User can add the product to be serviced. +

+ +
+ +
+

+ Catering Service Kanban view +

+

+ Details including Event Type and Reference can be viewed in + kanban view. +

+ +
+ +
+

+ Catering Service Tree view +

+

+ Event type, Start and End dates etc. can be viewed in tree + view. +

+ +
+
+ + + +
+
+

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/event_catering/static/img/catering_product-image.jpeg b/event_catering/static/img/catering_product-image.jpeg new file mode 100644 index 000000000..8563d90ea Binary files /dev/null and b/event_catering/static/img/catering_product-image.jpeg differ diff --git a/event_catering/views/event_management_catering_views.xml b/event_catering/views/event_management_catering_views.xml new file mode 100644 index 000000000..f4116b319 --- /dev/null +++ b/event_catering/views/event_management_catering_views.xml @@ -0,0 +1,165 @@ + + + + + event.management.catering.view.tree + event.management.catering + + + + + + + + + + + + + event.management.catering.view.kanban + event.management.catering + + + + + +
+
+ type +
+
+
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + event.management.catering.view.form + event.management.catering + +
+
+
+ +

+ +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + event.management.catering.view.search + event.management.catering + + + + + + + + + + + + + + + Catering Service + event.management.catering + ir.actions.act_window + kanban,tree,form + +

+ You can't create a direct catering. +

+

+ Catering service is created from event order. +

+
+
+ + + diff --git a/event_catering/views/event_management_views.xml b/event_catering/views/event_management_views.xml new file mode 100644 index 000000000..3ea4dbef1 --- /dev/null +++ b/event_catering/views/event_management_views.xml @@ -0,0 +1,40 @@ + + + + + event.management.view.form.inherit.event.catering + + event.management + + +
+ +
+ + + + +
+