================
Resource booking
================
..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:59ca230a37d737431cbc0df890d5f8ed789435503c356ddc3142d2f11e4b3ed1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png
:target: https://odoo-community.org/page/development-status
:alt: Production/Stable
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fcalendar-lightgray.png?logo=github
:target: https://github.com/OCA/calendar/tree/16.0/resource_booking
:alt: OCA/calendar
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/calendar-16-0/calendar-16-0-resource_booking
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/calendar&target_branch=16.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
This module adds a new app to allow you to book resource combinations in given
schedules.
Example use cases:
* Management of consultations in a clinic.
* Salesman appointments.
* Classroom and projector reservations.
* Hotel room booking.
Among the things you can do:
* Specify the type of booking, which includes a calendar of availability.
* Specify which resources can be booked together. All of them must be free to be booked.
* Place pending bookings, effectively giving permissions to someone to see the availability calendar and choose one slot.
* Partners can do that from their portals.
* If a partner has no user, he can still do the same via a tokenized URL.
* Backend users can also do that from the backend.
* Booking lifecycle with computed states.
* Automatic meeting creation and deletion.
* Automatic conflict detection.
* Deadline to block modifications.
**Table of contents**
.. contents::
:local:
Installation
============
To install this module, you need to install these dependencies:
#. `freezegun <https://github.com/spulec/freezegun>`__
#. `web_calendar_slot_duration <https://odoo-community.org/shop/product/calendar-slot-duration-6202>`__
When someone is a manager, he will have access to *Resource Bookings >
Configuration*, where he will be able to configure resources, leaves and
schedules. This menu is just provided as a shortcut. However, if you want to
manage that stuff more comfortably:
* To manage human resources, install `hr <https://apps.odoo.com/app/employees>`__.
* To manage their leaves, install `hr_holidays <https://apps.odoo.com/app/time-off>`__.
* To manage work centers, install `mrp <https://apps.odoo.com/app/manufacturing>`__.
Configuration
=============
To let some backend user to book resources:
#. Go to *Settings > Users & Companies > Users*.
#. Pick or create one.
#. Assign *Resource Booking > User*.
To let some backend user to configure types and combinations, and to be able to
modify overdue bookings:
#. Go to *Settings > Users & Companies > Users*.
#. Pick or create one.
#. Assign *Resource Booking > Manager*.
To configure one booking type:
#. Go to *Resource Bookings > Types*.
#. Create one.
#. Give it a *name*.
#. Set the *Duration*, to know the time assigned to each calendar slot. It will
also be the default duration for each booking, although that can be changed
later if necessary.
#. Set the *Modifications Deadline*, to forbid non-managers to alter dates of
a booking when it's too late.
#. Choose one *Availability Calendar*. No bookings will exist outside of it.
#. Under *Meeting defaults*, you will be able to fill some values that will
be used by default on calendar meetings. These will appear in the global
calendar when some booking is reserved.
#. Choose some *Available resource combinations*. All combinations in the same
line must be free to be booked together; otherwise the booking will not be
able to be scheduled. You can sort them.
#. Pick up one *Combination Assignment*. If you choose *Sorted*, then the order
of the combinations you chose will indicate the one that is selected first.
Of course, it must be free to be selected.
#. Save.
Usage
=====
This module installs a new app, "Resource bookings".
Bookings may involve you:
* Maybe because you requested to book something.
* Maybe because you are one of the booked resources, if a booking represents
some kind of appointment.
To see which bookings involve you:
#. Go to *Resource Bookings > Bookings*.
#. You can switch to the list view if you need to see also the pending ones.
#. You can remove the "Involving me" filter if you want to see others' bookings.
To book some resources:
#. Go to *Resource Bookings > Types*.
#. Pick the type of booking you want.
#. Click on *Booking Count*.
#. Click on a free slot.
#. Fill the *Requester*, which may or not be yourself.
#. Uncheck *Auto assign* and pick one *Resources combination*, in case the one
assigned automatically isn't the one you want.
To invite someone to book a resource combination from the portal:
#. Go to *Resource Bookings > Types*.
#. Pick the type of booking you want.
#. Click on *Booking Count*.
#. Click on the list view icon.
#. Click on *Create*.
#. Fill the *Requester*.
#. Uncheck *Auto assign* and pick one *Resources combination*, if you want that
the requester is assigned to that combination. Otherwise, leave it empty,
and some free combination will be assigned automatically when the requester
picks a free slot.
#. Choose the *duration*, in case it is different from the one specified in the
resource booking type.
#. Click on *Share > Send*.
#. The requester will receive an email to select a calendar slot from his portal.
Known issues / Roadmap
======================
* Allow combination auto-assignment based on least used combination.
* Allow customer to choose combination.
* Some error messages would be a bit more helpful if they specify the schedule
impossibility reason, but that should be done without affecting performance.
* Optimize ``_calendar_event_busy_intervals()`` to make it work in batch.
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/calendar/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/calendar/issues/new?body=module:%20resource_booking%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
Do not contact contributors directly about support or help with technical issues.
Credits
=======
Authors
~~~~~~~
* Tecnativa
Contributors
~~~~~~~~~~~~
* Jairo Llopis <jairo.llopis@tecnativa.com> (https://www.tecnativa.com/)
* Henrik Norlin (https://ows.cloud)
Maintainers
~~~~~~~~~~~
This module is maintained by the OCA.
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
.. |maintainer-pedrobaeza| image:: https://github.com/pedrobaeza.png?size=40px
:target: https://github.com/pedrobaeza
:alt: pedrobaeza
.. |maintainer-ows-cloud| image:: https://github.com/ows-cloud.png?size=40px
:target: https://github.com/ows-cloud
:alt: ows-cloud
Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:
|maintainer-pedrobaeza| |maintainer-ows-cloud|
This module is part of the `OCA/calendar <https://github.com/OCA/calendar/tree/16.0/resource_booking>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
Raw data
{
"_id": null,
"home_page": "https://github.com/OCA/calendar",
"name": "odoo-addon-resource-booking",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": null,
"author": "Tecnativa, Odoo Community Association (OCA)",
"author_email": "support@odoo-community.org",
"download_url": null,
"platform": null,
"description": "================\nResource booking\n================\n\n.. \n !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n !! This file is generated by oca-gen-addon-readme !!\n !! changes will be overwritten. !!\n !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n !! source digest: sha256:59ca230a37d737431cbc0df890d5f8ed789435503c356ddc3142d2f11e4b3ed1\n !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n\n.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png\n :target: https://odoo-community.org/page/development-status\n :alt: Production/Stable\n.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png\n :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html\n :alt: License: AGPL-3\n.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fcalendar-lightgray.png?logo=github\n :target: https://github.com/OCA/calendar/tree/16.0/resource_booking\n :alt: OCA/calendar\n.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png\n :target: https://translation.odoo-community.org/projects/calendar-16-0/calendar-16-0-resource_booking\n :alt: Translate me on Weblate\n.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png\n :target: https://runboat.odoo-community.org/builds?repo=OCA/calendar&target_branch=16.0\n :alt: Try me on Runboat\n\n|badge1| |badge2| |badge3| |badge4| |badge5|\n\nThis module adds a new app to allow you to book resource combinations in given\nschedules.\n\nExample use cases:\n\n* Management of consultations in a clinic.\n* Salesman appointments.\n* Classroom and projector reservations.\n* Hotel room booking.\n\nAmong the things you can do:\n\n* Specify the type of booking, which includes a calendar of availability.\n* Specify which resources can be booked together. All of them must be free to be booked.\n* Place pending bookings, effectively giving permissions to someone to see the availability calendar and choose one slot.\n* Partners can do that from their portals.\n* If a partner has no user, he can still do the same via a tokenized URL.\n* Backend users can also do that from the backend.\n* Booking lifecycle with computed states.\n* Automatic meeting creation and deletion.\n* Automatic conflict detection.\n* Deadline to block modifications.\n\n**Table of contents**\n\n.. contents::\n :local:\n\nInstallation\n============\n\nTo install this module, you need to install these dependencies:\n\n#. `freezegun <https://github.com/spulec/freezegun>`__\n#. `web_calendar_slot_duration <https://odoo-community.org/shop/product/calendar-slot-duration-6202>`__\n\nWhen someone is a manager, he will have access to *Resource Bookings >\nConfiguration*, where he will be able to configure resources, leaves and\nschedules. This menu is just provided as a shortcut. However, if you want to\nmanage that stuff more comfortably:\n\n* To manage human resources, install `hr <https://apps.odoo.com/app/employees>`__.\n* To manage their leaves, install `hr_holidays <https://apps.odoo.com/app/time-off>`__.\n* To manage work centers, install `mrp <https://apps.odoo.com/app/manufacturing>`__.\n\nConfiguration\n=============\n\nTo let some backend user to book resources:\n\n#. Go to *Settings > Users & Companies > Users*.\n#. Pick or create one.\n#. Assign *Resource Booking > User*.\n\nTo let some backend user to configure types and combinations, and to be able to\nmodify overdue bookings:\n\n#. Go to *Settings > Users & Companies > Users*.\n#. Pick or create one.\n#. Assign *Resource Booking > Manager*.\n\nTo configure one booking type:\n\n#. Go to *Resource Bookings > Types*.\n#. Create one.\n#. Give it a *name*.\n#. Set the *Duration*, to know the time assigned to each calendar slot. It will\n also be the default duration for each booking, although that can be changed\n later if necessary.\n#. Set the *Modifications Deadline*, to forbid non-managers to alter dates of\n a booking when it's too late.\n#. Choose one *Availability Calendar*. No bookings will exist outside of it.\n#. Under *Meeting defaults*, you will be able to fill some values that will\n be used by default on calendar meetings. These will appear in the global\n calendar when some booking is reserved.\n#. Choose some *Available resource combinations*. All combinations in the same\n line must be free to be booked together; otherwise the booking will not be\n able to be scheduled. You can sort them.\n#. Pick up one *Combination Assignment*. If you choose *Sorted*, then the order\n of the combinations you chose will indicate the one that is selected first.\n Of course, it must be free to be selected.\n#. Save.\n\nUsage\n=====\n\nThis module installs a new app, \"Resource bookings\".\n\nBookings may involve you:\n\n* Maybe because you requested to book something.\n* Maybe because you are one of the booked resources, if a booking represents\n some kind of appointment.\n\nTo see which bookings involve you:\n\n#. Go to *Resource Bookings > Bookings*.\n#. You can switch to the list view if you need to see also the pending ones.\n#. You can remove the \"Involving me\" filter if you want to see others' bookings.\n\nTo book some resources:\n\n#. Go to *Resource Bookings > Types*.\n#. Pick the type of booking you want.\n#. Click on *Booking Count*.\n#. Click on a free slot.\n#. Fill the *Requester*, which may or not be yourself.\n#. Uncheck *Auto assign* and pick one *Resources combination*, in case the one\n assigned automatically isn't the one you want.\n\nTo invite someone to book a resource combination from the portal:\n\n#. Go to *Resource Bookings > Types*.\n#. Pick the type of booking you want.\n#. Click on *Booking Count*.\n#. Click on the list view icon.\n#. Click on *Create*.\n#. Fill the *Requester*.\n#. Uncheck *Auto assign* and pick one *Resources combination*, if you want that\n the requester is assigned to that combination. Otherwise, leave it empty,\n and some free combination will be assigned automatically when the requester\n picks a free slot.\n#. Choose the *duration*, in case it is different from the one specified in the\n resource booking type.\n#. Click on *Share > Send*.\n#. The requester will receive an email to select a calendar slot from his portal.\n\nKnown issues / Roadmap\n======================\n\n* Allow combination auto-assignment based on least used combination.\n* Allow customer to choose combination.\n* Some error messages would be a bit more helpful if they specify the schedule\n impossibility reason, but that should be done without affecting performance.\n* Optimize ``_calendar_event_busy_intervals()`` to make it work in batch.\n\nBug Tracker\n===========\n\nBugs are tracked on `GitHub Issues <https://github.com/OCA/calendar/issues>`_.\nIn case of trouble, please check there if your issue has already been reported.\nIf you spotted it first, help us to smash it by providing a detailed and welcomed\n`feedback <https://github.com/OCA/calendar/issues/new?body=module:%20resource_booking%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.\n\nDo not contact contributors directly about support or help with technical issues.\n\nCredits\n=======\n\nAuthors\n~~~~~~~\n\n* Tecnativa\n\nContributors\n~~~~~~~~~~~~\n\n* Jairo Llopis <jairo.llopis@tecnativa.com> (https://www.tecnativa.com/)\n* Henrik Norlin (https://ows.cloud)\n\nMaintainers\n~~~~~~~~~~~\n\nThis module is maintained by the OCA.\n\n.. image:: https://odoo-community.org/logo.png\n :alt: Odoo Community Association\n :target: https://odoo-community.org\n\nOCA, or the Odoo Community Association, is a nonprofit organization whose\nmission is to support the collaborative development of Odoo features and\npromote its widespread use.\n\n.. |maintainer-pedrobaeza| image:: https://github.com/pedrobaeza.png?size=40px\n :target: https://github.com/pedrobaeza\n :alt: pedrobaeza\n.. |maintainer-ows-cloud| image:: https://github.com/ows-cloud.png?size=40px\n :target: https://github.com/ows-cloud\n :alt: ows-cloud\n\nCurrent `maintainers <https://odoo-community.org/page/maintainer-role>`__:\n\n|maintainer-pedrobaeza| |maintainer-ows-cloud| \n\nThis module is part of the `OCA/calendar <https://github.com/OCA/calendar/tree/16.0/resource_booking>`_ project on GitHub.\n\nYou are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.\n",
"bugtrack_url": null,
"license": "AGPL-3",
"summary": "Manage appointments and resource booking",
"version": "16.0.1.4.1.7",
"project_urls": {
"Homepage": "https://github.com/OCA/calendar"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "be6794a2fda69721e226f2c00ae9f292af0b232fbb3001079d9dc50e7a8ffeea",
"md5": "c28d09e535f5adb1d172109e830171ff",
"sha256": "3e60e7eaba4499410f0e4f047a844256ef1e82f59b3ad3d66979566368338893"
},
"downloads": -1,
"filename": "odoo_addon_resource_booking-16.0.1.4.1.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c28d09e535f5adb1d172109e830171ff",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 210740,
"upload_time": "2024-11-15T02:47:13",
"upload_time_iso_8601": "2024-11-15T02:47:13.027371Z",
"url": "https://files.pythonhosted.org/packages/be/67/94a2fda69721e226f2c00ae9f292af0b232fbb3001079d9dc50e7a8ffeea/odoo_addon_resource_booking-16.0.1.4.1.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-15 02:47:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "OCA",
"github_project": "calendar",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "cssselect",
"specs": []
}
],
"lcname": "odoo-addon-resource-booking"
}