Skip to content

Commit aabdfea

Browse files
author
shopinvader-git-bot
committed
Merge PR #10 into 16.0
Signed-off-by lmignon
2 parents 4b065cd + 2d1434c commit aabdfea

File tree

9 files changed

+39
-25
lines changed

9 files changed

+39
-25
lines changed

Diff for: shopinvader_api_delivery_carrier/README.rst

+4-3
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,10 @@ Usage
4040
This module will give you several endpoints for interacting with delivery carrier.
4141
You can play with it with swagger.
4242

43-
* Add a `/set_carrier` route on the `cart_router`: to set a delivery carrier on your cart;
44-
* Create a new `delivery_carrier` router: the route `delivery_carriers` allow to search on delivery carriers. You can filter on a specific cart, or on a specific country and/or zipcode.
45-
* Create a new `deliveries` router: the route `deliveries` allow to search on all deliveries linked to the current partner.
43+
This module provides the following routers:
44+
* ``delivery_carrier_router`` to get the carriers available for a partner;
45+
* ``delivery_carrier_cart_router`` to get the carriers available for a cart, including delivery prices for the cart, and set a carrier on a cart;
46+
* ``delivery_router``: to search on all deliveries linked to the authenticated partner.
4647

4748
Bug Tracker
4849
===========

Diff for: shopinvader_api_delivery_carrier/readme/USAGE.rst

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
This module will give you several endpoints for interacting with delivery carrier.
22
You can play with it with swagger.
33

4-
* Add a `/set_carrier` route on the `cart_router`: to set a delivery carrier on your cart;
5-
* Create a new `delivery_carrier` router: the route `delivery_carriers` allow to search on delivery carriers. You can filter on a specific cart, or on a specific country and/or zipcode.
6-
* Create a new `deliveries` router: the route `deliveries` allow to search on all deliveries linked to the current partner.
4+
This module provides the following routers:
5+
* ``delivery_carrier_router`` to get the carriers available for a partner;
6+
* ``delivery_carrier_cart_router`` to get the carriers available for a cart, including delivery prices for the cart, and set a carrier on a cart;
7+
* ``delivery_router``: to search on all deliveries linked to the authenticated partner.

Diff for: shopinvader_api_delivery_carrier/routers/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
from . import cart
1+
from .cart import delivery_carrier_cart_router
22
from .delivery import delivery_router
33
from .delivery_carrier import delivery_carrier_router

Diff for: shopinvader_api_delivery_carrier/routers/cart.py

+9-5
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
55
from typing import Annotated
66

7-
from fastapi import Depends
7+
from fastapi import APIRouter, Depends
88

99
from odoo import _, api, models
1010
from odoo.exceptions import UserError
@@ -15,16 +15,20 @@
1515
authenticated_partner_env,
1616
)
1717
from odoo.addons.sale.models.sale_order import SaleOrder
18-
from odoo.addons.shopinvader_api_cart.routers import cart_router
1918
from odoo.addons.shopinvader_api_cart.schemas import CartTransaction
2019
from odoo.addons.shopinvader_schema_sale.schemas import Sale
2120

2221
from ..schemas import DeliveryCarrierInput
2322

23+
delivery_carrier_cart_router = APIRouter(tags=["carts"])
2424

25-
@cart_router.post("/set_carrier")
26-
@cart_router.post("/{uuid}/set_carrier")
27-
@cart_router.post("/current/set_carrier")
25+
26+
@delivery_carrier_cart_router.post("/set_carrier", deprecated=True)
27+
@delivery_carrier_cart_router.post("/{uuid}/set_carrier", deprecated=True)
28+
@delivery_carrier_cart_router.post("/current/set_carrier", deprecated=True)
29+
@delivery_carrier_cart_router.post("/carrier")
30+
@delivery_carrier_cart_router.post("/{uuid}/carrier")
31+
@delivery_carrier_cart_router.post("/current/carrier")
2832
def set_carrier(
2933
env: Annotated[api.Environment, Depends(authenticated_partner_env)],
3034
partner: Annotated["ResPartner", Depends(authenticated_partner)],

Diff for: shopinvader_api_delivery_carrier/routers/delivery.py

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ def search(
2828
partner: Annotated["ResPartner", Depends(authenticated_partner)],
2929
paging_: Annotated[Paging, Depends(paging)],
3030
) -> PagedCollection[Picking]:
31+
"""Return all outgoing Deliveries for the authenticated partner."""
3132
count, pickings = (
3233
env["shopinvader_api_delivery_carrier.delivery_router.helper"]
3334
.new({"partner": partner})

Diff for: shopinvader_api_delivery_carrier/routers/delivery_carrier.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
DeliveryCarrierSearch,
2020
DeliveryCarrierWithPrice,
2121
)
22+
from .cart import delivery_carrier_cart_router
2223

2324
delivery_carrier_router = APIRouter(tags=["delivery_carriers"])
2425

@@ -46,8 +47,10 @@ def search(
4647
]
4748

4849

49-
@delivery_carrier_router.get("/{uuid}/delivery_carriers")
50-
@delivery_carrier_router.get("/current/delivery_carriers")
50+
@delivery_carrier_router.get("/{uuid}/delivery_carriers", deprecated=True)
51+
@delivery_carrier_router.get("/current/delivery_carriers", deprecated=True)
52+
@delivery_carrier_cart_router.get("/{uuid}/delivery_carriers")
53+
@delivery_carrier_cart_router.get("/current/delivery_carriers")
5154
def search_current(
5255
data: Annotated[DeliveryCarrierSearch, Depends()],
5356
env: Annotated[api.Environment, Depends(authenticated_partner_env)],

Diff for: shopinvader_api_delivery_carrier/static/description/index.html

+4-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
<?xml version="1.0" encoding="utf-8"?>
21
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
32
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
43
<head>
@@ -394,11 +393,10 @@ <h1 class="title">Shopinvader Carrier</h1>
394393
<h1><a class="toc-backref" href="#toc-entry-1">Usage</a></h1>
395394
<p>This module will give you several endpoints for interacting with delivery carrier.
396395
You can play with it with swagger.</p>
397-
<ul class="simple">
398-
<li>Add a <cite>/set_carrier</cite> route on the <cite>cart_router</cite>: to set a delivery carrier on your cart;</li>
399-
<li>Create a new <cite>delivery_carrier</cite> router: the route <cite>delivery_carriers</cite> allow to search on delivery carriers. You can filter on a specific cart, or on a specific country and/or zipcode.</li>
400-
<li>Create a new <cite>deliveries</cite> router: the route <cite>deliveries</cite> allow to search on all deliveries linked to the current partner.</li>
401-
</ul>
396+
<p>This module provides the following routers:
397+
* <tt class="docutils literal">delivery_carrier_router</tt> to get the carriers available for a partner;
398+
* <tt class="docutils literal">delivery_carrier_cart_router</tt> to get the carriers available for a cart, including delivery prices for the cart, and set a carrier on a cart;
399+
* <tt class="docutils literal">delivery_router</tt>: to search on all deliveries linked to the authenticated partner.</p>
402400
</div>
403401
<div class="section" id="bug-tracker">
404402
<h1><a class="toc-backref" href="#toc-entry-2">Bug Tracker</a></h1>

Diff for: shopinvader_api_delivery_carrier/tests/test_set_carrier.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@
88

99
from odoo.tests.common import tagged
1010

11-
from odoo.addons.shopinvader_api_cart.routers import cart_router
12-
11+
from ..routers import delivery_carrier_cart_router
1312
from .common import TestShopinvaderDeliveryCarrierCommon
1413

1514

@@ -31,7 +30,9 @@ def setUpClass(cls) -> None:
3130
]
3231

3332
def test_setting_free_carrier(self):
34-
with self._create_test_client(router=cart_router) as test_client:
33+
with self._create_test_client(
34+
router=delivery_carrier_cart_router
35+
) as test_client:
3536
data = {
3637
"carrier_id": self.free_carrier.id,
3738
}
@@ -56,7 +57,9 @@ def test_setting_free_carrier(self):
5657
)
5758

5859
def test_setting_poste_carrier(self):
59-
with self._create_test_client(router=cart_router) as test_client:
60+
with self._create_test_client(
61+
router=delivery_carrier_cart_router
62+
) as test_client:
6063
data = {
6164
"carrier_id": self.poste_carrier.id,
6265
}

Diff for: shopinvader_api_delivery_carrier/tests/test_sync_cart.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
from odoo.addons.shopinvader_api_cart.routers import cart_router
1313

14+
from ..routers import delivery_carrier_cart_router
1415
from .common import TestShopinvaderDeliveryCarrierCommon
1516

1617

@@ -33,7 +34,9 @@ def setUpClass(cls) -> None:
3334
cls.trans_uuid_1 = str(uuid.uuid4())
3435

3536
def _set_carrier(self, carrier):
36-
with self._create_test_client(router=cart_router) as test_client:
37+
with self._create_test_client(
38+
router=delivery_carrier_cart_router
39+
) as test_client:
3740
data = {
3841
"carrier_id": carrier.id,
3942
}

0 commit comments

Comments
 (0)