You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

214 lines
7.9 KiB

  1. ============================
  2. Point Of Sale - Picking Load
  3. ============================
  4. .. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  5. !! This file is generated by oca-gen-addon-readme !!
  6. !! changes will be overwritten. !!
  7. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  8. .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
  9. :target: https://odoo-community.org/page/development-status
  10. :alt: Beta
  11. .. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
  12. :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
  13. :alt: License: AGPL-3
  14. .. |badge3| image:: https://img.shields.io/badge/github-legalsylvain%2Fpos-lightgray.png?logo=github
  15. :target: https://github.com/legalsylvain/pos/tree/10.0-mig-pos_picking_load/pos_picking_load
  16. :alt: legalsylvain/pos
  17. |badge1| |badge2| |badge3|
  18. This module extends the functionality of point of sale to allow you to
  19. load your pickings in the Point of Sale, in order to add / remove products
  20. and so create a PoS Order and mark it as paid.
  21. **Detailled Use Case**
  22. This module is usefull for the following use case
  23. * You have many Sale Orders that have generated pickings. Typically if you have
  24. connected your Odoo instance to an online store like Shop Invader,
  25. Prestashop, Magento, or if you use light Odoo shop (``website_sale``
  26. module).
  27. * Once the order validated, you prepare your pickings
  28. * The customer come in your shop to recover his order
  29. * the customer add (or remove) some products
  30. * the customer pay his order, based on the real delivered products list
  31. **Table of contents**
  32. .. contents::
  33. :local:
  34. Configuration
  35. =============
  36. To configure this module, you need to:
  37. #. Go to Warehouse / Configuration / Types of Operation
  38. #. Select the picking type(s) you want to see in the point of sale
  39. #. Check the box 'Available in Point of Sale'
  40. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/stock_picking_type_form.png
  41. :width: 800 px
  42. Note: This box is NOT enabled by default except in demo data for the type
  43. 'Delivery Orders' of the demo company 'YourCompany'.
  44. #. Go to Point of Sale / Configuration / Point of Sales
  45. #. Select the Point(s) of Sales witch those you want to enable the feature
  46. #. Check the box 'Load Pickings'
  47. #. Set the max quantity of pickings you want to load
  48. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/pos_config_form.png
  49. :width: 800 px
  50. Note: This box is enabled by default
  51. **Technical Notes**
  52. * By default, the Point of Sale will display only the pickings if the state is
  53. in 'Waiting Availability', 'Partially Available' or 'Ready to Transfer'.
  54. You can change this filter by overloading the ``_prepare_filter_for_pos``
  55. function of the model ``stock.picking``.
  56. * By default, the search of pickings will be done on the fields ``name``,
  57. ``origin`` and ``partner_id`` of the picking.
  58. You can change this feature by overloading the
  59. ``_prepare_filter_query_for_pos`` function of the model ``stock.picking``.
  60. * By default, when the PoS order is confirmed, the original picking is
  61. cancelled and the sale order is set to the state 'Done'.
  62. You can change this behaviour by overloading
  63. ``_handle_orders_with_original_picking`` function of the model ``pos.order``.
  64. Usage
  65. =====
  66. To use this module, you need to:
  67. * Launch the point of sale
  68. * On a new order (without lines), click on the 'Load Picking' button.
  69. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_01_load_button.png
  70. :width: 800 px
  71. * Point of sale will load available pickings. (About displayed pickings, see
  72. 'Technical Notes' section).
  73. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_02_picking_list.png
  74. :width: 800 px
  75. * Click on a picking will check if the picking is loadable and if yes, will
  76. display a 'Select' button. (See 'Possible Warnings' Section)
  77. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_03_confirm.png
  78. :width: 800 px
  79. * Confirm the selection, by clicking on 'Select' button. It will display
  80. the content of the moves (as PoS Order Lines)
  81. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_04_pos_order.png
  82. :width: 800 px
  83. The price and the discount will be the sale price and the discount set in
  84. the according Sale Order Line, if it was found. Otherwise, discount will be
  85. set to 0, and unit price will be the unit price of the product when it has been
  86. loaded in the Point of Sale.
  87. **Related Sale Order:**
  88. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_sale_order.png
  89. :width: 800 px
  90. **Related Picking:**
  91. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_stock_picking.png
  92. :width: 800 px
  93. * Finally, you can add / remove products or change quantity and collect the
  94. payment.
  95. When, the order is marked as paid, the original picking will be cancelled,
  96. because Point Of Sale generates a new picking related to the real delivered
  97. products and the original Sale Order will pass to the state 'Done'. (Delivery
  98. exception is ignored).
  99. (See 'Technical Notes' section).
  100. **Possible Warnings**
  101. Some warning messages can appear:
  102. * if some products are not available in the Point of Sale
  103. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_warning_product.png
  104. :width: 800 px
  105. * if the partner is not available in the Point of Sale
  106. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_warning_partner.png
  107. :width: 800 px
  108. * if the picking has been still loaded in another PoS order
  109. .. figure:: https://raw.githubusercontent.com/legalsylvain/pos/10.0-mig-pos_picking_load/pos_picking_load/static/description/load_picking_warning_picking_still_loaded.png
  110. :width: 800 px
  111. Known issues / Roadmap
  112. ======================
  113. * This module will try to get original unit price from the sale order and not
  114. use the Current unit price of the product.
  115. (The price at which you pledged to sell the product).
  116. Some VAT troubles will occure if a product is set with VAT marked as
  117. 'VAT included' and if in the sale order line, there are some VAT marked as
  118. 'VAT excluded' for exemple.
  119. **The VAT settings should be consistent.**
  120. Bug Tracker
  121. ===========
  122. Bugs are tracked on `GitHub Issues <https://github.com/legalsylvain/pos/issues>`_.
  123. In case of trouble, please check there if your issue has already been reported.
  124. If you spotted it first, help us smashing it by providing a detailed and welcomed
  125. `feedback <https://github.com/legalsylvain/pos/issues/new?body=module:%20pos_picking_load%0Aversion:%2010.0-mig-pos_picking_load%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
  126. Do not contact contributors directly about support or help with technical issues.
  127. Credits
  128. =======
  129. Authors
  130. ~~~~~~~
  131. * GRAP
  132. Contributors
  133. ~~~~~~~~~~~~
  134. * Sylvain LE GAL (https://twitter.com/legalsylvain)
  135. * Stefan Rijnhart <stefan@opener.am>
  136. Maintainers
  137. ~~~~~~~~~~~
  138. .. |maintainer-legalsylvain| image:: https://github.com/legalsylvain.png?size=40px
  139. :target: https://github.com/legalsylvain
  140. :alt: legalsylvain
  141. Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
  142. |maintainer-legalsylvain|
  143. This module is part of the `legalsylvain/pos <https://github.com/legalsylvain/pos/tree/10.0-mig-pos_picking_load/pos_picking_load>`_ project on GitHub.
  144. You are welcome to contribute.