Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions pms_sale/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

==========
PMS - Sale
==========

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:5c12a3b12350202cb3c4fdf576aefde369683dc02bba278d69d5c36aa0c6a105
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-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%2Fpms-lightgray.png?logo=github
:target: https://github.com/OCA/pms/tree/19.0/pms_sale
:alt: OCA/pms
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/pms-19-0/pms-19-0-pms_sale
: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/pms&target_branch=19.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module integrates the Sales application with the Property
Management System, enabling property reservations through sale orders.

It includes:

- **Reservation management**: create and manage property reservations
linked to sale orders.
- **Guest management**: track guest details per reservation.
- **Stage management**: configurable workflow stages for reservations.
- **Mail notifications**: automated email templates for confirmations
and reminders.
- **Reservation configurator wizard**: guided wizard for property,
dates, guests, and pricing.
- **Timeline view**: visualise all reservations on a calendar timeline.
- **Payment link integration**: send payment links directly from
reservations.

**Table of contents**

.. contents::
:local:

Configuration
=============

- Go to Properties > Configuration > Settings.

Usage
=====

To use this module, please read the complete user guide at
`roomdoo.com <roomdoo.com>`__.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/pms/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/pms/issues/new?body=module:%20pms_sale%0Aversion:%2019.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
-------

* Gray Matter Logic

Contributors
------------

- \`Open Source Integrators <https://www.opensourceintegrators.com>\`:

- Maxime Chambreuil <mchambreuil@opensourceintegrators.com>
- Serpent Consulting Services Pvt. Ltd. <support@serpentcs.com>

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-max3903| image:: https://github.com/max3903.png?size=40px
:target: https://github.com/max3903
:alt: max3903

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-max3903|

This module is part of the `OCA/pms <https://github.com/OCA/pms/tree/19.0/pms_sale>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
3 changes: 3 additions & 0 deletions pms_sale/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from . import models
from . import wizards
39 changes: 39 additions & 0 deletions pms_sale/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copyright 2019 Darío Lodeiros, Alexandre Díaz, Jose Luis Algara, Pablo Quesada
# Copyright (c) 2021 Gray Matter Logic
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{
"name": "PMS - Sale",
"summary": "Manage reservations",
"version": "19.0.1.0.0",
"development_status": "Beta",
"category": "Generic Modules/Property Management System",
"website": "https://github.com/OCA/pms",
"author": "Gray Matter Logic, Odoo Community Association (OCA)",
"maintainers": ["max3903"],
"license": "AGPL-3",
"depends": ["pms_account", "sale", "web_timeline", "calendar"],
"data": [
"security/ir.model.access.csv",
"data/ir_sequence.xml",
"data/product_data.xml",
"data/pms_stage.xml",
"views/product_views.xml",
"views/pms_property_reservation.xml",
"views/pms_mail_views.xml",
"views/pms_property.xml",
"views/pms_reservation_guest_views.xml",
"views/pms_reservation_views.xml",
"wizards/pms_configurator_views.xml",
"views/sale_order_views.xml",
"views/pms_team_views.xml",
"views/menu.xml",
"views/account_move.xml",
],
"assets": {
"web.assets_backend": [
"pms_sale/static/src/js/pms_configurator_controller.esm.js",
"pms_sale/static/src/js/pms_sale_product_field.esm.js",
"pms_sale/static/src/js/timeline.esm.js",
],
},
}
9 changes: 9 additions & 0 deletions pms_sale/data/ir_sequence.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<odoo noupdate="1">
<!-- Sequence for pms.reservation -->
<record id="seq_pms_reservation" model="ir.sequence">
<field name="name">PMS Reservation</field>
<field name="code">pms.reservation</field>
<field name="padding">5</field>
<field name="company_id" eval="False" />
</record>
</odoo>
50 changes: 50 additions & 0 deletions pms_sale/data/pms_stage.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
<odoo>
<record id="pms_stage_new" model="pms.stage">
<field name="name">New</field>
<field name="sequence">10</field>
<field name="is_default">1</field>
<field name="stage_type">reservation</field>
<field name="team_ids" eval="[(4, ref('pms_base.pms_team_default'))]" />
</record>

<record id="pms_stage_booked" model="pms.stage">
<field name="name">Booked</field>
<field name="sequence">20</field>
<field name="stage_type">reservation</field>
<field name="custom_color">#FF6961</field>
<field name="team_ids" eval="[(4, ref('pms_base.pms_team_default'))]" />
</record>

<record id="pms_stage_confirmed" model="pms.stage">
<field name="name">Confirmed</field>
<field name="sequence">30</field>
<field name="stage_type">reservation</field>
<field name="custom_color">#FFB347</field>
<field name="team_ids" eval="[(4, ref('pms_base.pms_team_default'))]" />
</record>

<record id="pms_stage_checked_in" model="pms.stage">
<field name="name">Checked In</field>
<field name="sequence">40</field>
<field name="stage_type">reservation</field>
<field name="custom_color">#77DD77</field>
<field name="team_ids" eval="[(4, ref('pms_base.pms_team_default'))]" />
</record>

<record id="pms_stage_checked_out" model="pms.stage">
<field name="name">Checked Out</field>
<field name="sequence">50</field>
<field name="is_closed">1</field>
<field name="stage_type">reservation</field>
<field name="team_ids" eval="[(4, ref('pms_base.pms_team_default'))]" />
</record>

<record id="pms_stage_cancelled" model="pms.stage">
<field name="name">Cancelled</field>
<field name="sequence">99</field>
<field name="is_closed">1</field>
<field name="fold">1</field>
<field name="stage_type">reservation</field>
<field name="team_ids" eval="[(4, ref('pms_base.pms_team_default'))]" />
</record>
</odoo>
12 changes: 12 additions & 0 deletions pms_sale/data/product_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<odoo noupdate="0">
<record id="product_category_reservation" model="product.category">
<field name="name">Reservations</field>
</record>

<record id="product_product_reservation" model="product.product">
<field name="name">Reservation</field>
<field name="type">service</field>
<field name="reservation_ok" eval="True" />
<field name="categ_id" ref="pms_sale.product_category_reservation" />
</record>
</odoo>
Loading
Loading