[ADD] Lunch: new configuration doc
closes odoo/documentation#8417 Signed-off-by: Lara Martini (larm) <larm@odoo.com>
@ -15,3 +15,4 @@ Human resources
|
||||
hr/time_off
|
||||
hr/recruitment
|
||||
hr/referrals
|
||||
hr/lunch
|
||||
|
310
content/applications/hr/lunch.rst
Normal file
@ -0,0 +1,310 @@
|
||||
=====
|
||||
Lunch
|
||||
=====
|
||||
|
||||
The *Lunch* application in Odoo allows users a convenient way to order food and pay for their meal
|
||||
directly from the database.
|
||||
|
||||
Before employees can use the *Lunch* application, there are a number of configurations to consider:
|
||||
settings, vendors, locations, products, product categories, and alerts. Once these are created,
|
||||
employees can view offerings and order food.
|
||||
|
||||
Settings
|
||||
========
|
||||
|
||||
Only two settings are needed to configure in the *Lunch* app: overdraft settings and notifications.
|
||||
To access the settings, navigate to :menuselection:`Lunch app --> Configuration: Settings`.
|
||||
|
||||
Configure the following:
|
||||
|
||||
- :guilabel:`Lunch Overdraft`: enter the maximum overdraft amount for employees. The currency
|
||||
format is determined by the localization setting of the company.
|
||||
- :guilabel:`Reception notification`: set the message users receive via the *Discuss* app when their
|
||||
food has been delivered. The default message `Your lunch has been delivered. Enjoy your meal!`
|
||||
populates this field, but can be modified, if desired.
|
||||
|
||||
.. tip::
|
||||
If in a database with multiple languages installed, many forms in the *Lunch* application have
|
||||
the option of entering translations for various fields.
|
||||
|
||||
If translations are available to be configured, a language code appears next to a translatable
|
||||
field on a form. To add translations for that field, click the two letter language code (for
|
||||
example, :guilabel:`EN` for English) and a translation pop-up window appears.
|
||||
|
||||
The following is an example for the :guilabel:`Reception notification` field in the settings
|
||||
menu:
|
||||
|
||||
Navigate to :menuselection:`Lunch app --> Configuration: Settings`. Click the :guilabel:`EN` In
|
||||
the top-right of the text box beneath the :guilabel:`Reception notification` section. A
|
||||
:guilabel:`Translate: company_lunch_notify_message` pop-up window loads with the option to enter
|
||||
a translation for the other languages used by the database.
|
||||
|
||||
The first column lists the different languages in alphabetical order, with the currently selected
|
||||
language in bold. The second column has the currently configured message in each column. The last
|
||||
column in the far-right provides a text box to type in a translation for each language.
|
||||
|
||||
Enter the text that should appear for each language, then click :guilabel:`Save`.
|
||||
|
||||
.. image:: lunch/translation.png
|
||||
:align: center
|
||||
:alt: The translation text box, with the current language highlighted, and the Arabic
|
||||
translation field highlighted.
|
||||
|
||||
Vendors
|
||||
=======
|
||||
|
||||
Before food can be ordered, the restaurants that make the food, referred to as *vendors* in Odoo,
|
||||
**must** be configured.
|
||||
|
||||
First navigate to :menuselection:`Lunch app --> Configuration: Vendors`, and all currently
|
||||
configured vendors for the *Lunch* app appear in a default Kanban view. To change to a list view,
|
||||
click the :guilabel:`≣ (four horizontal lines)` icon in the top-right corner.
|
||||
|
||||
To add a new vendor, click the :guilabel:`New` button in the top-left corner, and a new lunch
|
||||
supplier form loads.
|
||||
|
||||
Fill out the following fields on the form.
|
||||
|
||||
Vendor information
|
||||
------------------
|
||||
|
||||
- :guilabel:`Vendor`: enter a name for the vendor.
|
||||
- :guilabel:`Vendor`: select the vendor from the drop-down menu. If the vendor has not already been
|
||||
entered in the system, type in the vendor name and click either :guilabel:`Create "vendor"` to add
|
||||
them, or :guilabel:`Create and edit...` to create the vendor and edit the vendor form. The vendor
|
||||
form allows for more detail, aside from the name, to be entered, such as contact information.
|
||||
|
||||
.. note::
|
||||
If a selection is made to the drop-down :guilabel:`Vendor` field, the text :guilabel:`Vendor`
|
||||
field (above the drop-down :guilabel:`Vendor` field) updates with the name of the vendor chosen
|
||||
from the drop-down menu.
|
||||
|
||||
The list of vendors that is presented in the drop-down menu is pulled from the *Contacts*
|
||||
application.
|
||||
|
||||
- :guilabel:`Address`: enter the vendor's address in the various fields in this section.
|
||||
- :guilabel:`Email`: enter the vendor's email in this field.
|
||||
- :guilabel:`Phone`: enter the vendor's phone number in this field.
|
||||
- :guilabel:`Company`: if this vendor is only available to a specific company, select the company
|
||||
from the drop-down menu. If this field is left blank, the vendor's items are available to **all**
|
||||
companies.
|
||||
|
||||
.. image:: lunch/vendor-info.png
|
||||
:align: center
|
||||
:alt: The top portion of the vendor form filled out.
|
||||
|
||||
Availability
|
||||
------------
|
||||
|
||||
The :guilabel:`AVAILABILITY` section presents a table with two rows. The days of the week populate
|
||||
the top row, and the bottom row has checkboxes. Check the corresponding box for each day of the week
|
||||
the vendor is available.
|
||||
|
||||
By default, Monday through Friday have checkmarks.
|
||||
|
||||
.. image:: lunch/availability.png
|
||||
:align: center
|
||||
:alt: The default view of the availability section, with Mon-Fri enabled.
|
||||
|
||||
Orders
|
||||
------
|
||||
|
||||
- :guilabel:`Delivery`: using the drop-down menu, select either :guilabel:`Delivery` if the vendor
|
||||
delivers food to the office, or :guilabel:`No Delivery` if ordered food must be picked up.
|
||||
- :guilabel:`Location`: select which locations are able to order from this vendor. Multiple
|
||||
locations can be selected. If this field is left blank, **all** locations can order from the
|
||||
vendor.
|
||||
|
||||
.. note::
|
||||
By default, an `HQ Office` location is created by default when creating a database, and is
|
||||
available to select from the list.
|
||||
|
||||
- :guilabel:`Send Order By`: click the radio button to select how orders are sent to the vendor. The
|
||||
available options are :guilabel:`Phone` or :guilabel:`Email`.
|
||||
- :guilabel:`Order Time`: this field appears if :guilabel:`Email` is selected for :guilabel:`Send
|
||||
Order By`. Enter the time that an order must be emailed for the order to be accepted. Enter the
|
||||
time in a `HH:MM` format, then select either :guilabel:`AM` or :guilabel:`PM` from the drop-down
|
||||
next to the time field.
|
||||
|
||||
.. image:: lunch/orders.png
|
||||
:align: center
|
||||
:alt: The orders section of a vendor form, with all fields filled out.
|
||||
|
||||
Extras
|
||||
------
|
||||
|
||||
When ordering an item in the *Lunch* app, it is possible to show extra items that can be added to an
|
||||
order, sometimes referred to as *add-ons*. These can be configured in any manner that suits the
|
||||
products being offered.
|
||||
|
||||
By default, Odoo allows for three types of extra items, which can be thought of as *categories*. By
|
||||
default, the first type or *category* of add-ons is labeled `Extras`, the second is labeled
|
||||
`Beverages`, and the third is labeled `Extra Label 3`.
|
||||
|
||||
.. important::
|
||||
When configuring the extras, it is important to keep in mind that all the extras configured will
|
||||
appear for **every item** offered by the vendor. That means that only items which apply to
|
||||
**all** products from the vendor should be added.
|
||||
|
||||
Configure extras
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
Enter the following information for each of the three available extra sections:
|
||||
|
||||
- :guilabel:`Extra (#) Label`: enter a name for the type of extra, such as `Toppings` or
|
||||
`Beverages`. This can be thought of as a *category*.
|
||||
- :guilabel:`Extra (#) Quantity`: select how the extras are allowed to be selected. The options are:
|
||||
|
||||
- :guilabel:`None or More`: select this if the user is not required to select anything.
|
||||
- :guilabel:`One or More`: select this to **require** the user to make at least one selection.
|
||||
- :guilabel:`Only One`: select this to **require** the user to make only one selection.
|
||||
|
||||
Add extras
|
||||
~~~~~~~~~~
|
||||
|
||||
After the labels and quantities have been configured for an extra category, the individual extra
|
||||
items must be added for each category.
|
||||
|
||||
Click :guilabel:`Add a line` at the bottom of the list that appears on the right-hand side of the
|
||||
extra category. Enter the :guilabel:`Name` and :guilabel:`Price` for each item being added. The
|
||||
price can remain at `$0.00` if there is no cost. This is common for items like disposable silverware
|
||||
or condiments.
|
||||
|
||||
.. example::
|
||||
For a pizzeria that only offers personal pies, see their extras configured as follows:
|
||||
|
||||
The first extra is configured for the various toppings they offer. The :guilabel:`Extra 1 Label`
|
||||
is set to `Toppings`, and the :guilabel:`Extra 1 Quantity` is set to :guilabel:`None or More`.
|
||||
The various toppings are then added, with their corresponding costs.
|
||||
|
||||
.. image:: lunch/extras.png
|
||||
:align: center
|
||||
:alt: The first of the extras configured for pizza toppings.
|
||||
|
||||
The pizzeria also offers a free beverage with any purchase. To set this up, the :guilabel:`Extra
|
||||
2 Label` is set to `Beverages`, and the :guilabel:`Extra 1 Quantity` is set to :guilabel:`Only
|
||||
One`. The various beverage choices are added, and the cost for each remains zero.
|
||||
|
||||
.. image:: lunch/beverages.png
|
||||
:align: center
|
||||
:alt: The second of the extras configured for a free beverage with purchase.
|
||||
|
||||
Locations
|
||||
=========
|
||||
|
||||
By default, Odoo creates an `HQ Office` location when the *Lunch* application is installed. If a
|
||||
company has more than one location, they must be configured.
|
||||
|
||||
To add a location, navigate to :menuselection:`Lunch app --> Configuration: Locations`. The
|
||||
currently configured locations appear in a list view. Click the :guilabel:`New` button in the
|
||||
top-left corner and a blank line appears beneath the last location in the list.
|
||||
|
||||
Enter the name of the location in the field. Next, click into the :guilabel:`Address` field to the
|
||||
right of the name, and enter the location's address. It is possible to enter multiple lines in the
|
||||
address field.
|
||||
|
||||
Repeat this for all locations that need to be added.
|
||||
|
||||
.. image:: lunch/locations.png
|
||||
:align: center
|
||||
:alt: A list view of the locations with the new button highlighted.
|
||||
|
||||
Products
|
||||
========
|
||||
|
||||
Before any orders can be placed, the individual products that are being offered must be configured,
|
||||
as no products are pre-configured in Odoo, by default.
|
||||
|
||||
First, navigate to the products page by going to :menuselection:`Lunch app --> Configuration:
|
||||
Products`. Next click the :guilabel:`New` button in the top-left corner and a blank product form
|
||||
loads.
|
||||
|
||||
Enter the following information on the form:
|
||||
|
||||
- :guilabel:`Product Name*`: enter the name for the product.
|
||||
- :guilabel:`Product Category*`: using the drop-down menu, select the category this product falls
|
||||
under.
|
||||
- :guilabel:`Vendor*`: using the drop-down menu, select the vendor that supplies this product.
|
||||
- :guilabel:`Price`: enter the price for the product. The currency is determined by the localization
|
||||
of the company.
|
||||
- :guilabel:`Description`: enter a description of the product in this field. This description
|
||||
appears beneath the product photo when users are viewing the options for the day.
|
||||
- :guilabel:`New Until`: using the calendar popover, select the date that the product will no
|
||||
longer be labeled as new. Until this date, a green `New` tag appears on the product.
|
||||
- :guilabel:`Company`: if the product should only be available to a specific company, select it from
|
||||
the drop-down menu. If this field is left blank, this product is available for all companies in
|
||||
the database.
|
||||
- Image: hover over the image box in the top-right corner of the form, and click the :guilabel:`✏️
|
||||
(pencil)` edit icon that appears. A file explorer pop-up window appears. Navigate to the image,
|
||||
then click :guilabel:`Open`.
|
||||
|
||||
(*) indicates required field.
|
||||
|
||||
.. image:: lunch/product.png
|
||||
:align: center
|
||||
:alt: A product form filled out for a nine inch pizza.
|
||||
|
||||
Product categories
|
||||
==================
|
||||
|
||||
Product categories are a way to organize the offerings in the *Lunch* app, and allows for users to
|
||||
quickly filter the offerings when reviewing the menu for the day.
|
||||
|
||||
To add or modify categories, navigate to :menuselection:`Lunch app --> Configuration: Product
|
||||
Categories`. The available categories appear in a list view. In the *Lunch* app, there are four
|
||||
default categories : :guilabel:`Sandwich`, :guilabel:`Pizza`, :guilabel:`Burger`, and
|
||||
:guilabel:`Drinks`.
|
||||
|
||||
To add a new category, click the :guilabel:`New` button in the top-left corner, and a blank category
|
||||
form loads. Enter a name in the :guilabel:`Product Category` field. If the category is
|
||||
company-specific and should only appear for a certain company, select the :guilabel:`Company` from
|
||||
the drop-down menu.
|
||||
|
||||
If desired, add a photo for the category. Hover over the image box in the top-right, and click the
|
||||
:guilabel:`✏️ (pencil)` edit icon that appears. A file explorer pop-up window appears. Navigate to
|
||||
the image, then click :guilabel:`Open`.
|
||||
|
||||
.. image:: lunch/category.png
|
||||
:align: center
|
||||
:alt: The category form, with the fields filled out for a Soup category.
|
||||
|
||||
Alerts
|
||||
======
|
||||
|
||||
It is possible to set up alerts that can either be displayed in the *Lunch* app, or be sent to
|
||||
specific employees via the *Discuss* app.
|
||||
|
||||
No alerts are pre-configured by default. To set up an alert, navigate to :menuselection:`Lunch app
|
||||
--> Configuration: Alerts`. Click the :guilabel:`New` button in the top-left corner and a blank
|
||||
lunch alert form loads. Enter the following information on the form:
|
||||
|
||||
- :guilabel:`Alert Name`: enter a name for the alert. This should be short and descriptive, such as
|
||||
`New Lunch Vendor` or `Order by 11`. This field is **required**.
|
||||
- :guilabel:`Display`: select whether the alert is visible in the *Lunch* app (:guilabel:`Alert in
|
||||
app)` or sent to employees via the *Discuss* app in a chat window (:guilabel:`Chat notification`).
|
||||
|
||||
- :guilabel:`Recipients`: this field only appears if :guilabel:`Chat notification` is selected for
|
||||
the :guilabel:`Display` option. Select who receives the chat alert. The options are:
|
||||
:guilabel:`Everyone`, :guilabel:`Employee who ordered last week`, :guilabel:`Employee who
|
||||
ordered last month`, or :guilabel:`Employee who ordered last year`.
|
||||
|
||||
- :guilabel:`Location`: select the locations the alert should appear for from the drop-down menu.
|
||||
Multiple locations can be selected. This field is **required**, therefore, if the alert applies
|
||||
to all locations, select all the locations from the drop-down menu.
|
||||
- :guilabel:`Show Until`: if the alert should expire on a specific date, select the date from the
|
||||
calendar picker.
|
||||
- :guilabel:`Active`: this option is on (appears green) by default. To turn off the alert, click the
|
||||
toggle so that it no longer appears green.
|
||||
- :guilabel:`Message`: Enter the alert message in this field. This field is **required**.
|
||||
- :guilabel:`Notification Time`: select the days of the week the alert should be sent. By default,
|
||||
all seven days are active. Click on a checkbox to change the setting from active to inactive.
|
||||
|
||||
If :guilabel:`Chat notification` was selected for the :guilabel:`Display` option, a
|
||||
:guilabel:`Time` field also appears. Enter the time the chat message should be sent. Next, select
|
||||
if the time is either :guilabel:`AM` or :guilabel:`PM` using the drop-down menu to the right of
|
||||
the :guilabel:`Time` field.
|
||||
|
||||
.. image:: lunch/alert.png
|
||||
:align: center
|
||||
:alt: An alert form with al the information filled out for a chat alert sent at 10:30 AM, asking
|
||||
employees to submit orders by 11:30 AM.
|
BIN
content/applications/hr/lunch/alert.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
content/applications/hr/lunch/availability.png
Normal file
After Width: | Height: | Size: 6.8 KiB |
BIN
content/applications/hr/lunch/beverages.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
content/applications/hr/lunch/category.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
content/applications/hr/lunch/extras.png
Normal file
After Width: | Height: | Size: 7.9 KiB |
BIN
content/applications/hr/lunch/locations.png
Normal file
After Width: | Height: | Size: 8.3 KiB |
BIN
content/applications/hr/lunch/orders.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
content/applications/hr/lunch/product.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
content/applications/hr/lunch/translation.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
content/applications/hr/lunch/vendor-info.png
Normal file
After Width: | Height: | Size: 11 KiB |