Metadata-Version: 2.1
Name: odoo-addon-shopfloor_mobile_base
Version: 18.0.1.0.3
Requires-Python: >=3.10
Requires-Dist: odoo-addon-shopfloor_base==18.0.*
Requires-Dist: odoo==18.0.*
Summary: Mobile frontend for WMS Shopfloor app
Home-page: https://github.com/OCA/shopfloor-app
License: LGPL-3
Author: Camptocamp, BCIM, Akretion, Odoo Community Association (OCA)
Author-email: support@odoo-community.org
Classifier: Programming Language :: Python
Classifier: Framework :: Odoo
Classifier: Framework :: Odoo :: 18.0
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)
Classifier: Development Status :: 4 - Beta
Description-Content-Type: text/x-rst

.. image:: https://odoo-community.org/readme-banner-image
   :target: https://odoo-community.org/get-involved?utm_source=readme
   :alt: Odoo Community Association

================
Shopfloor mobile
================

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

.. |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-LGPL--3-blue.png
    :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
    :alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fshopfloor--app-lightgray.png?logo=github
    :target: https://github.com/OCA/shopfloor-app/tree/18.0/shopfloor_mobile_base
    :alt: OCA/shopfloor-app
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
    :target: https://translation.odoo-community.org/projects/shopfloor-app-18-0/shopfloor-app-18-0-shopfloor_mobile_base
    :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/shopfloor-app&target_branch=18.0
    :alt: Try me on Runboat

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

Base frontend for Shopfloor applications.

The work is organized in scenario. A scenario represents a process in
the workplace (eg: for WMS -> receive, deliver). The app allows to start
each process through the main menu.

Each scenario is linked to a specific menu item which can be configured
in the backend. Each scenario drives you through the work to do.

Tech details
------------

- This frontend is built on top of `VueJS <vuejs.org>`__ and
  `VuetifyJS <vuetifyjs.com/>`__ and relies on shopfloor module that
  exposes REST API in Odoo (based in turn on
  `base_rest <https://github.com/OCA/rest-framework/tree/13.0/base_rest>`__).

- The whole business logic comes from shopfloor_base module, this module
  takes care of providing a nice and reactive UI to work with.

- No Odoo JS is used, no assets machinery used.

  Static assets are loaded straight, served by a specific controller.
  This app is a Single Page App, hence resources are loaded only once.

  The version of the module appended to the URL of each resources makes
  sure it's not cached when the version changes.

- When developing you can use a demo mode which allows to define
  interactive scenario with pure JS demo data, without interacting with
  Odoo. Nothing to deal with Odoo demo data.

**Table of contents**

.. contents::
   :local:

Usage
=====

Pre-requisites
--------------

- Your Odoo instance is accessible via mobile device
- You have an API Key configured

Start the app
-------------

- Go to "Inventory -> Configuration -> Shopfloor -> Shopfloor App"
- In the login screen fill in your API key
- Hit "Login"

Select a profile
----------------

Several profiles can be configured in the backend, you must choose one
before starting.

- Tap on "Configure profile"
- Select a profile

This will load all available menu items for the selected profile.

Change language
---------------

- Go to "Settings -> Language"
- Select a language

Customization
-------------

Please refer to shopfloor_mobile_custom_example.

Working environment
-------------------

You can control which running env is considerd by Odoo config or env
vars.

For Odoo config: running_env or shopfloor_running_env.

For env var: RUNNING_ENV or SHOPFLOOR_RUNNING_ENV.

Expected key RUNNING_ENV is compliant w/ server_environment naming but
is not depending on it.

Additionally, as specific key for Shopfloor is supported.

**You don't need \`server_environment\` module to use this feature.**

Known issues / Roadmap
======================

- Split module by scenario

- Improve documentation and demo data

- Document each component

- Document demo mode

- Find / create a nice icon

- Finish base translations (move all UI strings to translatable terms)

- Use SCSS

- Refactor states definition

  States are now part of the scenario data. They should be specific
  objects with their own class. They should also provide all the actions
  that should be displayed w/ their handlers when needed. Actions can be
  popup actions or buttons at the bottom of the screen. The tricky part
  here could be how to register this states for the given component.
  Today states have access to the full object of the scenario component
  as they are part of it. \_get_state_spec could probably lookup for
  registered states (eg: when you register a component in the registry
  you should provide states as well). When we'll have states in this
  fashion we should also consider if they should provide their own
  template. This way the component template will hold only the generic
  bits of the scenario.

- Back buttons should be smarter

  In some cases getting back using history is fine but very often this
  could lead to outdated data display. To mitigate this in particular
  scenario's steps, custom handlers for the back action have been
  implemented. For instance, in cluster_picking when you hit back on
  manual selection it forces the state to go to start and reload. For
  starting we should provide on_back property to all states where we
  want to display it (no more specific check on the state to display
  this button). This part is also related to "Refactor states
  definition".

- Load modules/components dependencies

  As of today we are using bare ES6 imports which requires devs to know
  the exact path of the resource. If the resource changes name or path
  dependent files will be broken. It would be nice to have a way to
  declare modules by name as Odoo JS does.

- Get rid of custom assets controller?

  A controller takes care of loading static assets but seems to not be
  needed anymore.

Changelog
=========

13.0.1.0.0
----------

First official version.

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

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

* Camptocamp
* BCIM
* Akretion

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

- Simone Orsi <simahawk@gmail.com>
- Thierry Ducrest <thierry.ducrest@camptocamp.com>
- Guewen Baconnier <guewen.baconnier@camptocamp.com>
- Juan Miguel Sánchez Arce <juan.sanchez@camptocamp.com>
- Raphaël Reverdy <raphael.reverdy@akretion.com>
- Sébastien Beau <sebastien.beau@akretion.com>
- Jacques-Etienne Baudoux <je@bcim.be>

Design

- Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
- Jacques-Etienne Baudoux <je@bcim.be>

Other credits
-------------

**Financial support**

- Cosanum
- Camptocamp R&D
- Akretion R&D

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

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

|maintainer-simahawk| 

This module is part of the `OCA/shopfloor-app <https://github.com/OCA/shopfloor-app/tree/18.0/shopfloor_mobile_base>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
