Unpaid orders are preserved in the local storage and can be recovered
even if you close the session and open a new one. But they would be
removed if they didn't contain any lines (articles).
On the other hand, it's possible to remove all of the order's lines
after receiving payment. So it's essential to preserve an order which
contains a payment.
Steps to reproduce the issue:
1_ Open a PoS session and create a new order
2_ Add some articles and proceed with the payment
3_ Select one of the payment methods to make the payment
4_ Do not validate the session and click on the "Back" button
5_ Remove all of the order's article and close the session
6_ Open a new session from the same PoS
=> The order with the received payment is removed
The solution is to preserve the orders with a payment line.
opw-2766658
closesodoo/odoo#87502
X-original-commit: c15bc2818d928a102fc58f4cb2ea1a4a7f8755a2
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
Signed-off-by: Masereel Pierre <pim@odoo.com>
Step to reproduce:
- Create a pricelist with 20% discount and
Show discount to the user
- In a SO with public pricelist, add option line OL
- Change pricelist to the one created earlier
Current behaviour:
- OL unit price is 80% of list price
- OL discount is 0%
Behaviour after PR:
- OL unit price is 100% of list price
- OL discount is 20%
opw-2761252
closesodoo/odoo#87640
X-original-commit: 0d4293da09821016d9db56ec1f36fbeff3bf8ef2
Signed-off-by: Damhaut Florian (flda) <flda@odoo.com>
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Steps to reproduce
- Install procurement_jit
- Go to settings
- Search for 'serv'
-> Re**serv**ation is highlighted but also ba**se**d
closesodoo/odoo#87611
X-original-commit: 8bbfbfbf0eb6c2238542166984b558b5734c7a2a
Signed-off-by: Hubert Van De Walle <huvw@odoo.com>
Steps to follow
- Go to Settings
- Type 'Import' in the search bar
-> 'Import & Export' is displayed
Cause of the issue
`_wordHighlighter` works on the HTML as a string
Solution
- Use textContent to get the correct text value
- Replace the content of the highlighted element by
* a textnode with the text before the matched substring
* a `span.highlighter` with the search word
* a textnode with the text after the matcher substring
Other issues
A string concatanated css rule was used to filter the matching elements
This could cause an invalid selector
-> Filter nodes by their textContent instead.
opw-2778304
X-original-commit: fba1b833eab46ff7a20f7151978394da3aaaa566
Part-of: odoo/odoo#87611
On a SO, the delivered quantity of a dropshipped kit is incorrect in
case of a return
To reproduce the issue:
1. Activate Dropshipping
2. Create 3 products: KIT AB, A, B:
- All have the Dropship route and a supplier set
3. Create a BOM of type kit: KIT AB is composed of A & B
4. Create a SO for 1 unit of KIT AB, validate
5. Validate the created PO
6. Deliver the products
7. Create a return for these products
- Error: On the SO, the delivered quantity is 0 but the return is
not validated yet. This quantity should still be 1
8. Validate the return
- Error: On the SO, the delivered quantity is now 1, it should be 0
The 'all or nothing' policy should correctly consider the returns: all
moves (to customer) must be done and the returns must be delivered back
to the customer
OPW-2759250
closesodoo/odoo#87596
X-original-commit: f259d10db577bbf1b11fffd028e678b38d5f402d
Signed-off-by: Tiffany Chang <tic@odoo.com>
Signed-off-by: Adrien Widart <awt@odoo.com>
Steps to reproduce:
1. Install sales
2. Change Mitchell Admin contacts so that he is set in the "YourCompany" company
3. Create a quotation with Michell Admin as the customer
4. Put any item and confirm the quote
5. Receive the product and create the invoice
6. Go to the invoice, confirm the payment and register it
Issue:
-> Error with the journal id
Cause:
The payment is considered as internal payment and in https://github.com/odoo/odoo/blob/6d129783b53115927f664499207c8c800d40bca2/addons/account/models/account_payment.py#L886-L895
There is no destination_journal which violates not-null constraint
Solution:
Be sure that there is a destination journal when `is_internal_transfer` is computed.
opw-2753819
closesodoo/odoo#87625
X-original-commit: 362d8cbf7724431672b8b73fb5f4682d4d2c3f66
Signed-off-by: William André (wan) <wan@odoo.com>
Signed-off-by: yosa-odoo <yosa@odoo.com>
Steps to reproduce the bug:
- Install mrp_landed_costs
- Connect as Admin
- Remove MRP access to Admin and Give him Stock manager access
- Go to inventory settings > Enable “Landed costs”
- Go to inventory > operation > Select any landed cost
- Try to validate
Problem:
An access error is triggered because we check if there are finished moves in the associated pickings and manufacturing orders
before validating the landed cost, but in the "_get_targeted_move_ids" function we access the "mrp_production_ids" field, which is reserved for mrp users.
Solution:
Creating and validating a landed cost is a feature for stock manager users.
We can therefore have users who do not need access to MRP, but who need to validate and submit landed costs.
So we can give access to all of them even if they are not MRP users.
opw-2800367
closesodoo/odoo#87624
X-original-commit: 3b92178b27dcaa25024b9d79ae35c8768cd72fa6
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Djamel Touati (otd) <otd@odoo.com>
Since odoo/odoo#fb9c8cd6 it was no longer possible to open the lunch product
in the kanban view as both _openRecord() (from base class) and
_onSelectRecord() were triggering events.
closesodoo/odoo#87612
Taskid: 2810219
X-original-commit: a497d95e8a4a55884800377d0de32babb78c05ce
Signed-off-by: Kevin Baptiste <kba@odoo.com>
When setting up the PG replication, the slave is considered in recovery
mode. However, `LISTEN / NOTIFY` is not supported in this mode, leading
to an endless loop of crashes.
In recovery mode, we simply deactivate the feature.
closesodoo/odoo#87619
X-original-commit: 6389a64953081130d62f2a1703a27ddfa751098b
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Not all company needs a French TVA number but still needs to provide
FEC file.
Improve that by making the TVA number optional, allowing to export the
FEC file without it. The only difference is that in such case, the vat
number won't be appended to the file name.
Task id #2801629closesodoo/odoo#87620
X-original-commit: 59937bbea86a9d01bb7038f7e307fd88fbb82976
Signed-off-by: Olivier Colson <oco@odoo.com>
Signed-off-by: Nicolas Viseur <vin@odoo.com>
The odoo.addons.web.controllers.main python module have been splitted
over multiple files on the basis 1 controller = 1 file. In this work we
adapt all modules to use the new imports.
A non-exhaustive list of where stuff have been moved:
* main.Home --> home.Home
* main.Session --> session.Session
* main.WebClient --> webclient.WebClient
* main.clean_action --> action.clean_action
* main.ensure_db --> home.ensure_db
The complete list is accessible in odoo.addons.web.controllers.main.
closesodoo/odoo#87571
Related: odoo/enterprise#25746
Signed-off-by: Raphael Collet <rco@odoo.com>
The odoo.addons.web.controllers.main module was a very long bloated file
where many different controllers were concatened. It proved difficult to
work on that file on a regular basis,mainly because ctrl-p "web main.py"
was not pointing the right file.
In this work the file has been split on the basic 1 controller = 1 file.
The original way of importing stuff (through main.py) is still possible
thanks to deprecated aliases.
Part-of: odoo/odoo#87571
PURPOSE
The current 'active' class on the @mentions dropdown is not clear enough.
The purpose of this task is to add a grey hover background when the item is
active.
SPECIFICATION
Add the grey hover background when the item is active
Task-2786679
closesodoo/odoo#87598
X-original-commit: 9685d5fed97bb3ef3a84cfbbde2e757755a4bd2a
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
To reproduce
============
- Sync Google Calendar to Odoo
- Create an event in GCaledar without setting a notification
In Odoo Notification reminder is set
Purpose
=======
we use default reminder given by Google which is notification 30 minutes before even if the event
doesn't have a reminder.
Specification
=============
To solve the issue we use empty reminder instead of the default given by google if no reminder is set.
opw-2792364
closesodoo/odoo#87592
X-original-commit: a25d38dd252a657ea44c822a227e415337003672
Signed-off-by: Arnaud Joset <arj@odoo.com>
Signed-off-by: abla001 <abla@odoo.com>
Install auth_signup, go to /web/login, 500 Internal Server Error.
auth_signup extends the /web/login template and in this extension calls
`keep_query()` which has been wrongly moved from base to http_routing in
commit 880954ebfc. Here, we restored `keep_query()` in the base module
but moved in ir_qweb.
closesodoo/odoo#87491
Related: odoo/enterprise#25754
Signed-off-by: Julien Castiaux <juc@odoo.com>
From 0.77 to 0.33 to make a read on a SO, due to the _compute_timesheet_total_duration
method
X-original-commit: d82c4a5ce30c0efd29b65e4d38312e30d977885b
From 7062 to 567 SQL requests on calendar.event/search_read on odoo.com
From 11.45 to 8.81 seconds
X-original-commit: 1c2fab03796ead64b6807f29314a7fc30b8359b1
Purpose
=======
Both list comprehensions are quite heavy (+- 20 seconds to generate
work entries for 1000 employees over 1 month), because they are O(n²)
X-original-commit: 21fb4786b329916cdabd0a49674d93179295cd32
Purpose
=======
Writing on untracked fields like date_generated_from will fetch allt he fields
values, including non stored ones (like wage_with_holidays, which is heavy).
X-original-commit: 5145e0782b4e3246ab84e81f4a7b450d7f463efe