odoo-addon-delivery-multi-destination 16.0.1.0.1__py3-none-any.whl → 16.0.2.0.0.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- odoo/addons/delivery_multi_destination/README.rst +1 -1
- odoo/addons/delivery_multi_destination/__init__.py +1 -0
- odoo/addons/delivery_multi_destination/__manifest__.py +1 -1
- odoo/addons/delivery_multi_destination/demo/delivery_carrier_demo.xml +1 -0
- odoo/addons/delivery_multi_destination/i18n/cs_CZ.po +30 -16
- odoo/addons/delivery_multi_destination/i18n/de.po +30 -16
- odoo/addons/delivery_multi_destination/i18n/delivery_multi_destination.pot +29 -0
- odoo/addons/delivery_multi_destination/i18n/es.po +32 -15
- odoo/addons/delivery_multi_destination/i18n/fr.po +30 -16
- odoo/addons/delivery_multi_destination/i18n/it.po +32 -15
- odoo/addons/delivery_multi_destination/i18n/nl.po +30 -16
- odoo/addons/delivery_multi_destination/i18n/nl_NL.po +30 -16
- odoo/addons/delivery_multi_destination/i18n/pt_BR.po +34 -17
- odoo/addons/delivery_multi_destination/i18n/sl.po +32 -18
- odoo/addons/delivery_multi_destination/i18n/zh_CN.po +30 -16
- odoo/addons/delivery_multi_destination/migrations/16.0.2.0.0/pre-migration.py +15 -0
- odoo/addons/delivery_multi_destination/models/delivery_carrier.py +101 -70
- odoo/addons/delivery_multi_destination/readme/newsfragments/540.feature.rst +4 -0
- odoo/addons/delivery_multi_destination/static/description/index.html +1 -1
- odoo/addons/delivery_multi_destination/tests/test_delivery_multi_destination.py +16 -2
- odoo/addons/delivery_multi_destination/wizards/__init__.py +5 -0
- odoo/addons/delivery_multi_destination/wizards/choose_delivery_carrier.py +27 -0
- {odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info → odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info}/METADATA +2 -2
- odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info/RECORD +35 -0
- odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info/RECORD +0 -31
- {odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info → odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info}/WHEEL +0 -0
- {odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info → odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info}/top_level.txt +0 -0
|
@@ -21,10 +21,40 @@ class DeliveryCarrier(models.Model):
|
|
|
21
21
|
ondelete="cascade",
|
|
22
22
|
)
|
|
23
23
|
destination_type = fields.Selection(
|
|
24
|
-
selection=[
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
selection=[
|
|
25
|
+
("one", "One destination"),
|
|
26
|
+
("multi", "Multiple destinations"),
|
|
27
|
+
],
|
|
28
|
+
compute="_compute_destination_type",
|
|
29
|
+
inverse="_inverse_destination_type",
|
|
30
|
+
store=True,
|
|
27
31
|
)
|
|
32
|
+
delivery_type = fields.Selection(
|
|
33
|
+
selection_add=[("base_on_destination", "Based on Destination")],
|
|
34
|
+
ondelete={"base_on_destination": "set default"},
|
|
35
|
+
)
|
|
36
|
+
|
|
37
|
+
@api.depends("delivery_type")
|
|
38
|
+
def _compute_destination_type(self):
|
|
39
|
+
for carrier in self:
|
|
40
|
+
if carrier.delivery_type == "base_on_destination":
|
|
41
|
+
carrier.destination_type = "multi"
|
|
42
|
+
else:
|
|
43
|
+
carrier.destination_type = "one"
|
|
44
|
+
|
|
45
|
+
def _inverse_destination_type(self):
|
|
46
|
+
for carrier in self:
|
|
47
|
+
# Switch to multi
|
|
48
|
+
if carrier.destination_type == "multi":
|
|
49
|
+
carrier.delivery_type = "base_on_destination"
|
|
50
|
+
# Switch away from multi -> we know that destination_type is
|
|
51
|
+
# non-multi. However, in a hypothetical scenario where we switch
|
|
52
|
+
# from one non-multi destination_type to another, we don't want to
|
|
53
|
+
# forcibly reset delivery_type to 'fixed' each time, so we check
|
|
54
|
+
# whether delivery_type is invalid for a non-multi destination_type
|
|
55
|
+
# before we forcibly reset to 'fixed'.
|
|
56
|
+
elif carrier.delivery_type == "base_on_destination":
|
|
57
|
+
carrier.delivery_type = "fixed"
|
|
28
58
|
|
|
29
59
|
@api.onchange("destination_type", "child_ids")
|
|
30
60
|
def _onchange_destination_type(self):
|
|
@@ -32,14 +62,14 @@ class DeliveryCarrier(models.Model):
|
|
|
32
62
|
if self.destination_type == "multi" and self.child_ids and not self.product_id:
|
|
33
63
|
self.product_id = fields.first(self.child_ids.product_id)
|
|
34
64
|
|
|
35
|
-
def search(self,
|
|
36
|
-
"""Don't show by default
|
|
65
|
+
def search(self, domain, offset=0, limit=None, order=None, count=False):
|
|
66
|
+
"""Don't show children carriers by default."""
|
|
37
67
|
if not self.env.context.get("show_children_carriers"):
|
|
38
|
-
if
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return super(
|
|
42
|
-
|
|
68
|
+
if domain is None:
|
|
69
|
+
domain = []
|
|
70
|
+
domain += [("parent_id", "=", False)]
|
|
71
|
+
return super().search(
|
|
72
|
+
domain,
|
|
43
73
|
offset=offset,
|
|
44
74
|
limit=limit,
|
|
45
75
|
order=order,
|
|
@@ -48,10 +78,17 @@ class DeliveryCarrier(models.Model):
|
|
|
48
78
|
|
|
49
79
|
@api.model
|
|
50
80
|
def name_search(self, name="", args=None, operator="ilike", limit=100):
|
|
51
|
-
"""Don't show by default
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
81
|
+
"""Don't show children carriers by default."""
|
|
82
|
+
if not self.env.context.get("show_children_carriers"):
|
|
83
|
+
if args is None:
|
|
84
|
+
args = []
|
|
85
|
+
args += [("parent_id", "=", False)]
|
|
86
|
+
return super().name_search(
|
|
87
|
+
name=name,
|
|
88
|
+
args=args,
|
|
89
|
+
operator=operator,
|
|
90
|
+
limit=limit,
|
|
91
|
+
)
|
|
55
92
|
|
|
56
93
|
def available_carriers(self, partner):
|
|
57
94
|
"""If the carrier is multi, we test the availability on children."""
|
|
@@ -66,60 +103,54 @@ class DeliveryCarrier(models.Model):
|
|
|
66
103
|
available |= carrier
|
|
67
104
|
return available
|
|
68
105
|
|
|
69
|
-
def
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
106
|
+
def base_on_destination_rate_shipment(self, order):
|
|
107
|
+
carrier = self.with_context(show_children_carriers=True)
|
|
108
|
+
for subcarrier in carrier.child_ids:
|
|
109
|
+
if subcarrier._match_address(order.partner_shipping_id):
|
|
110
|
+
return subcarrier.rate_shipment(order)
|
|
111
|
+
# this should normally not happen, because the delivery carrier should
|
|
112
|
+
# be filtered out before, but in case it is somehow selected anyway,
|
|
113
|
+
# at least it will fail nicely.
|
|
114
|
+
return {
|
|
115
|
+
"success": False,
|
|
116
|
+
"price": 0.0,
|
|
117
|
+
"error_message": _(
|
|
118
|
+
"Error: this delivery method is not available for this address."
|
|
119
|
+
),
|
|
120
|
+
"warning_message": False,
|
|
121
|
+
}
|
|
83
122
|
|
|
84
|
-
def
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
except Exception: # pylint: disable=except-pass
|
|
119
|
-
pass
|
|
120
|
-
finally:
|
|
121
|
-
p.carrier_id = carrier
|
|
122
|
-
if not picking_res:
|
|
123
|
-
raise ValidationError(_("There is no matching delivery rule."))
|
|
124
|
-
res += picking_res
|
|
125
|
-
return res
|
|
123
|
+
def base_on_destination_send_shipping(self, pickings):
|
|
124
|
+
carrier = self.with_context(show_children_carriers=True)
|
|
125
|
+
res = []
|
|
126
|
+
for p in pickings:
|
|
127
|
+
picking_res = False
|
|
128
|
+
for subcarrier in carrier.child_ids.filtered(
|
|
129
|
+
lambda x: not x.company_id or x.company_id == p.company_id
|
|
130
|
+
):
|
|
131
|
+
if subcarrier.delivery_type == "fixed":
|
|
132
|
+
if subcarrier._match_address(p.partner_id):
|
|
133
|
+
picking_res = [
|
|
134
|
+
{
|
|
135
|
+
"exact_price": subcarrier.fixed_price,
|
|
136
|
+
"tracking_number": False,
|
|
137
|
+
}
|
|
138
|
+
]
|
|
139
|
+
break
|
|
140
|
+
else:
|
|
141
|
+
try:
|
|
142
|
+
# on base_on_rule_send_shipping, the method
|
|
143
|
+
# _get_price_available is called using p.carrier_id,
|
|
144
|
+
# ignoring the self arg, so we need to temporarily replace
|
|
145
|
+
# it with the subcarrier
|
|
146
|
+
p.carrier_id = subcarrier.id
|
|
147
|
+
picking_res = subcarrier.send_shipping(p)
|
|
148
|
+
break
|
|
149
|
+
except Exception: # pylint: disable=except-pass
|
|
150
|
+
pass
|
|
151
|
+
finally:
|
|
152
|
+
p.carrier_id = carrier
|
|
153
|
+
if not picking_res:
|
|
154
|
+
raise ValidationError(_("There is no matching delivery rule."))
|
|
155
|
+
res += picking_res
|
|
156
|
+
return res
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
Introduced 'based on destination' delivery type. This is the delivery type used
|
|
2
|
+
by all multi-destination carriers instead of 'fixed'. Consequently, destination
|
|
3
|
+
type has been turned into a computed field that checks if the delivery type is
|
|
4
|
+
'based on destination' or not.
|
|
@@ -372,7 +372,7 @@ ul.auto-toc {
|
|
|
372
372
|
!! This file is generated by oca-gen-addon-readme !!
|
|
373
373
|
!! changes will be overwritten. !!
|
|
374
374
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
375
|
-
!! source digest: sha256:
|
|
375
|
+
!! source digest: sha256:25e624cc13975bea90a7a3aadc32eef1f35fefa8ea2223ba32dc6dd702552b28
|
|
376
376
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
|
377
377
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/license-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/delivery-carrier/tree/16.0/delivery_multi_destination"><img alt="OCA/delivery-carrier" src="https://img.shields.io/badge/github-OCA%2Fdelivery--carrier-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/delivery-carrier-16-0/delivery-carrier-16-0-delivery_multi_destination"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/delivery-carrier&target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
|
378
378
|
<p>This module allows to set different price rules depending on the destination.</p>
|
|
@@ -72,6 +72,7 @@ class TestDeliveryMultiDestination(common.TransactionCase):
|
|
|
72
72
|
{
|
|
73
73
|
"name": "Test carrier single",
|
|
74
74
|
"destination_type": "one",
|
|
75
|
+
"fixed_price": 100,
|
|
75
76
|
"child_ids": False,
|
|
76
77
|
}
|
|
77
78
|
)
|
|
@@ -84,8 +85,7 @@ class TestDeliveryMultiDestination(common.TransactionCase):
|
|
|
84
85
|
carrier_form = Form(self.env["delivery.carrier"])
|
|
85
86
|
carrier_form.name = "Test carrier multi"
|
|
86
87
|
carrier_form.product_id = self.product
|
|
87
|
-
carrier_form.delivery_type = "
|
|
88
|
-
carrier_form.fixed_price = 100
|
|
88
|
+
carrier_form.delivery_type = "base_on_destination"
|
|
89
89
|
# this needs to be done in this order
|
|
90
90
|
carrier_form.destination_type = "multi"
|
|
91
91
|
for child_item in childs:
|
|
@@ -136,6 +136,20 @@ class TestDeliveryMultiDestination(common.TransactionCase):
|
|
|
136
136
|
sale_order_line = order.order_line.filtered("is_delivery")
|
|
137
137
|
self.assertAlmostEqual(sale_order_line.price_unit, 150, 2)
|
|
138
138
|
|
|
139
|
+
def test_compute(self):
|
|
140
|
+
self.carrier_multi.delivery_type = "fixed"
|
|
141
|
+
self.assertEqual(self.carrier_multi.destination_type, "one")
|
|
142
|
+
self.carrier_multi.delivery_type = "base_on_destination"
|
|
143
|
+
self.assertEqual(self.carrier_multi.destination_type, "multi")
|
|
144
|
+
|
|
145
|
+
def test_inverse(self):
|
|
146
|
+
self.carrier_multi.destination_type = "one"
|
|
147
|
+
self.assertEqual(self.carrier_multi.destination_type, "one")
|
|
148
|
+
self.assertEqual(self.carrier_multi.delivery_type, "fixed")
|
|
149
|
+
self.carrier_multi.destination_type = "multi"
|
|
150
|
+
self.assertEqual(self.carrier_multi.destination_type, "multi")
|
|
151
|
+
self.assertEqual(self.carrier_multi.delivery_type, "base_on_destination")
|
|
152
|
+
|
|
139
153
|
def test_search(self):
|
|
140
154
|
carriers = self.env["delivery.carrier"].search([])
|
|
141
155
|
children_carrier = self.carrier_multi.with_context(
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: 2024 Coop IT Easy SC
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
4
|
+
|
|
5
|
+
from odoo import _, api, models
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class ChooseDeliveryCarrier(models.TransientModel):
|
|
9
|
+
_inherit = "choose.delivery.carrier"
|
|
10
|
+
|
|
11
|
+
@api.onchange("carrier_id")
|
|
12
|
+
def _onchange_carrier_id(self):
|
|
13
|
+
result = super()._onchange_carrier_id()
|
|
14
|
+
if self.delivery_type == "base_on_destination":
|
|
15
|
+
vals = self._get_shipment_rate()
|
|
16
|
+
# although ._onchange_carrier_id() in the delivery module can
|
|
17
|
+
# return a dict with an "error" key and a string value, this is
|
|
18
|
+
# not handled by the caller (see BaseModel._onchange_eval()),
|
|
19
|
+
# which only handles dicts with a "warning" key and a dict as a
|
|
20
|
+
# value.
|
|
21
|
+
if vals.get("error_message"):
|
|
22
|
+
return {
|
|
23
|
+
"warning": {"title": _("Error"), "message": vals["error_message"]}
|
|
24
|
+
}
|
|
25
|
+
if vals.get("warning_message"):
|
|
26
|
+
return {"warning": {"message": vals["warning_message"]}}
|
|
27
|
+
return result
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-delivery_multi_destination
|
|
3
|
-
Version: 16.0.
|
|
3
|
+
Version: 16.0.2.0.0.6
|
|
4
4
|
Summary: Multiple destinations for the same delivery method
|
|
5
5
|
Home-page: https://github.com/OCA/delivery-carrier
|
|
6
6
|
Author: Tecnativa, Odoo Community Association (OCA)
|
|
@@ -26,7 +26,7 @@ Multiple destinations for the same delivery method
|
|
|
26
26
|
!! This file is generated by oca-gen-addon-readme !!
|
|
27
27
|
!! changes will be overwritten. !!
|
|
28
28
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
29
|
-
!! source digest: sha256:
|
|
29
|
+
!! source digest: sha256:25e624cc13975bea90a7a3aadc32eef1f35fefa8ea2223ba32dc6dd702552b28
|
|
30
30
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
31
31
|
|
|
32
32
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
odoo/addons/delivery_multi_destination/README.rst,sha256=aiwO7yxzseVQ6ZLKa1vKyuFmYMP6tMCsIdygI6WVxtA,4418
|
|
2
|
+
odoo/addons/delivery_multi_destination/__init__.py,sha256=zI6OgKd-jvRibsvs40jL7kgXqg4cvbAufnC02Ac8Zvs,109
|
|
3
|
+
odoo/addons/delivery_multi_destination/__manifest__.py,sha256=yTSZaOuW6OnwvZLcy0DFj5Hvn_J2_NTCWCBgJZl7xkk,694
|
|
4
|
+
odoo/addons/delivery_multi_destination/demo/delivery_carrier_demo.xml,sha256=6k6ImN8f1e6UtuhUCNFXWVL-X0ROrOkUVXKSHnc_m30,3817
|
|
5
|
+
odoo/addons/delivery_multi_destination/i18n/cs_CZ.po,sha256=oJ93mx5Mvhe5jW6g_3wCZDGIVSlAFtQTECrlGLSxkzI,4761
|
|
6
|
+
odoo/addons/delivery_multi_destination/i18n/de.po,sha256=mnmL6qUHHQxpT-NTPccUeZkUb7jf-Ud0MUgj588mm1Y,4634
|
|
7
|
+
odoo/addons/delivery_multi_destination/i18n/delivery_multi_destination.pot,sha256=os7ybwX4dY0lrqjenS8m7mgYKmG9ZZJ-EHM4X_HHgUg,4152
|
|
8
|
+
odoo/addons/delivery_multi_destination/i18n/es.po,sha256=fQdQFDcpzbf0VhPhl9xLpoOlYEVS2F9VqFtTIgKPTUo,4885
|
|
9
|
+
odoo/addons/delivery_multi_destination/i18n/fr.po,sha256=LpVpZNFnz_r69PCL4VdJhhR-2EoTHHOnRZyc4fq-BME,4452
|
|
10
|
+
odoo/addons/delivery_multi_destination/i18n/it.po,sha256=usXBioDAeiR2WyuOcuaV_YXnk0yCatmL85hhiPVDRNA,4843
|
|
11
|
+
odoo/addons/delivery_multi_destination/i18n/nl.po,sha256=GECjjy8OwVi7nAlRqNCDo8us-NbSaYjS2rssK4sHIQU,4452
|
|
12
|
+
odoo/addons/delivery_multi_destination/i18n/nl_NL.po,sha256=BpwWz6PPORRtx7qQ_MZ4YgYGNek39RTJvyujBGagsLs,4461
|
|
13
|
+
odoo/addons/delivery_multi_destination/i18n/pt_BR.po,sha256=LaJ-56qOnsZf3_LFe00rMHD5a5ZYgSkobZrhVmXeaGk,5049
|
|
14
|
+
odoo/addons/delivery_multi_destination/i18n/sl.po,sha256=y7td5RwT0r_Rz9JM3N7uyBt7lT_JoesUOGsa2uq9GBc,4581
|
|
15
|
+
odoo/addons/delivery_multi_destination/i18n/zh_CN.po,sha256=F77ETzLT-Zdg4u5s1aDr2O3cxbg41tKBZaObOSegXTY,4617
|
|
16
|
+
odoo/addons/delivery_multi_destination/migrations/16.0.2.0.0/pre-migration.py,sha256=LssV1emY80IxVTUUyx8w6Skx2xgALvlxLyTBUOQNLOg,387
|
|
17
|
+
odoo/addons/delivery_multi_destination/models/__init__.py,sha256=-K4wh1XVA03SZzTTycr_kcgawLtJanP54sq4kwHL5eA,97
|
|
18
|
+
odoo/addons/delivery_multi_destination/models/delivery_carrier.py,sha256=fLtiiTbGSQnC7YJq5_HSnMPWMUF9dOEThsd1_jnRxSI,6299
|
|
19
|
+
odoo/addons/delivery_multi_destination/readme/CONFIGURE.rst,sha256=7ODOGLMD-pk4sqqbXT2EEvsJ-rafrnQz4Xwe3WeD9Xk,386
|
|
20
|
+
odoo/addons/delivery_multi_destination/readme/CONTRIBUTORS.rst,sha256=qYFJW8WItTLugT9t5wMcw4A9AVUrCAI5UPrKlwaNJnc,209
|
|
21
|
+
odoo/addons/delivery_multi_destination/readme/DESCRIPTION.rst,sha256=zGE7V1m8-nd6FcVva5rSgmnD1i8gOQoIP_4aMeHKEGE,383
|
|
22
|
+
odoo/addons/delivery_multi_destination/readme/ROADMAP.rst,sha256=mFUYDdJtYvVAOcxbnU3uIEAb5pCfyvKC-FoOFbx_9ko,129
|
|
23
|
+
odoo/addons/delivery_multi_destination/readme/USAGE.rst,sha256=1L4dwqAZ4L8oNQMO90fp64D4_IVf1AEpBGpun6HNFDo,153
|
|
24
|
+
odoo/addons/delivery_multi_destination/readme/newsfragments/540.feature.rst,sha256=HcMNzTYCiVEPVJM7nmzRf6Nl9uSO5iI8QY32tcYmB8o,270
|
|
25
|
+
odoo/addons/delivery_multi_destination/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
26
|
+
odoo/addons/delivery_multi_destination/static/description/index.html,sha256=XFmOKNy61Te44Ov8jeGZkQcF__cXPRxTbEZaLuk6lm0,14477
|
|
27
|
+
odoo/addons/delivery_multi_destination/tests/__init__.py,sha256=84QCPauC2-TkXZsq1euuy3oNLYJpiocgsAVkUqpUsLI,112
|
|
28
|
+
odoo/addons/delivery_multi_destination/tests/test_delivery_multi_destination.py,sha256=IX8m8fi6TeH3QiNTQGTPmlFrgmWALqlNTphpzRem8Tk,8149
|
|
29
|
+
odoo/addons/delivery_multi_destination/views/delivery_carrier_view.xml,sha256=EpJXlKQraYrvdjNnXEf28hWladF3ak0vbCyAnpQHPq4,4234
|
|
30
|
+
odoo/addons/delivery_multi_destination/wizards/__init__.py,sha256=WzkF-IFQ_LPMzbez5zfXFInhBYCYOjtu79Jrg7g5-2c,133
|
|
31
|
+
odoo/addons/delivery_multi_destination/wizards/choose_delivery_carrier.py,sha256=X8lmXdG2WYYLat-vHKWsUzJx7MevDzmRH9XREek8PUc,1072
|
|
32
|
+
odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info/METADATA,sha256=JldvZfBNqX3LDsNN3lPKgzGII_ppO6MUv48snsEiPms,4974
|
|
33
|
+
odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
34
|
+
odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
|
|
35
|
+
odoo_addon_delivery_multi_destination-16.0.2.0.0.6.dist-info/RECORD,,
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
odoo/addons/delivery_multi_destination/README.rst,sha256=sMlwqkiBtJw4lVcORKR_3j6W2ruYr9yQVnRaS8yrteg,4418
|
|
2
|
-
odoo/addons/delivery_multi_destination/__init__.py,sha256=eShEGRadAlxopoLqIQ4-N42FM7MWPSuBe0h_l1cXTPM,87
|
|
3
|
-
odoo/addons/delivery_multi_destination/__manifest__.py,sha256=tYybI9qPY1iV-wrh1dMvD93mmPNHQUfeQRGWcjQEuzI,694
|
|
4
|
-
odoo/addons/delivery_multi_destination/demo/delivery_carrier_demo.xml,sha256=8B4KyxiIkHNsfKVjP5GmInxWHacxOpv4UnhUSI1rg18,3753
|
|
5
|
-
odoo/addons/delivery_multi_destination/i18n/cs_CZ.po,sha256=Gy90AL5-iA9bSzCVk_x83-uC14HTtNy-6cet7lVxOJc,5186
|
|
6
|
-
odoo/addons/delivery_multi_destination/i18n/de.po,sha256=YMzrA3CrCYt5WpmDOWnWwHWlLdHTGnBPSPjh8yOlvUA,5059
|
|
7
|
-
odoo/addons/delivery_multi_destination/i18n/delivery_multi_destination.pot,sha256=AIP8TaInXZ__vkMXmR6nNG4NIYy-mEdKqRp9HHTb49U,3201
|
|
8
|
-
odoo/addons/delivery_multi_destination/i18n/es.po,sha256=T_PWVcFdRcsyMC9nXH7UdI4N87QS6V38YhLmkXHXkOY,5279
|
|
9
|
-
odoo/addons/delivery_multi_destination/i18n/fr.po,sha256=SG4tDQJEr3Sl_Z9agYRo0ynL9XjVobmYSF9zBAh_N-Y,4877
|
|
10
|
-
odoo/addons/delivery_multi_destination/i18n/it.po,sha256=Kl8gCNq2ROR_EcuSOrznMJ38x45i1nSMNS4lxGy2mDk,5237
|
|
11
|
-
odoo/addons/delivery_multi_destination/i18n/nl.po,sha256=IqNJr-phqOD3N012UyS5i9f3DQfPN3qPDhOA_N-FsXs,4877
|
|
12
|
-
odoo/addons/delivery_multi_destination/i18n/nl_NL.po,sha256=fikck4zgmwKf3MYgTh41O2JBUasrtW09Jpl5hQV1dds,4886
|
|
13
|
-
odoo/addons/delivery_multi_destination/i18n/pt_BR.po,sha256=dT7k4N1HoMzK8izV-fe6uucF9l8o4mqPadMNXe2aSB8,5443
|
|
14
|
-
odoo/addons/delivery_multi_destination/i18n/sl.po,sha256=_3ENaKvSpzNj9YgTcewlKXj3AI9e6Hhc2_iGU6lZO9A,5006
|
|
15
|
-
odoo/addons/delivery_multi_destination/i18n/zh_CN.po,sha256=H-BZaqv1GF2iSJJ-TIhB2dLKGztd3w05XJwvPNSRYpI,5042
|
|
16
|
-
odoo/addons/delivery_multi_destination/models/__init__.py,sha256=-K4wh1XVA03SZzTTycr_kcgawLtJanP54sq4kwHL5eA,97
|
|
17
|
-
odoo/addons/delivery_multi_destination/models/delivery_carrier.py,sha256=qqzYBc9UdP6gJOK7VS558tU_B1IPQOWVbZnT5jyOsnk,5152
|
|
18
|
-
odoo/addons/delivery_multi_destination/readme/CONFIGURE.rst,sha256=7ODOGLMD-pk4sqqbXT2EEvsJ-rafrnQz4Xwe3WeD9Xk,386
|
|
19
|
-
odoo/addons/delivery_multi_destination/readme/CONTRIBUTORS.rst,sha256=qYFJW8WItTLugT9t5wMcw4A9AVUrCAI5UPrKlwaNJnc,209
|
|
20
|
-
odoo/addons/delivery_multi_destination/readme/DESCRIPTION.rst,sha256=zGE7V1m8-nd6FcVva5rSgmnD1i8gOQoIP_4aMeHKEGE,383
|
|
21
|
-
odoo/addons/delivery_multi_destination/readme/ROADMAP.rst,sha256=mFUYDdJtYvVAOcxbnU3uIEAb5pCfyvKC-FoOFbx_9ko,129
|
|
22
|
-
odoo/addons/delivery_multi_destination/readme/USAGE.rst,sha256=1L4dwqAZ4L8oNQMO90fp64D4_IVf1AEpBGpun6HNFDo,153
|
|
23
|
-
odoo/addons/delivery_multi_destination/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
24
|
-
odoo/addons/delivery_multi_destination/static/description/index.html,sha256=Qs23K8Y5fa4jeemDTH5IJjFDcHSqZNwxbWvkdigOzuE,14477
|
|
25
|
-
odoo/addons/delivery_multi_destination/tests/__init__.py,sha256=84QCPauC2-TkXZsq1euuy3oNLYJpiocgsAVkUqpUsLI,112
|
|
26
|
-
odoo/addons/delivery_multi_destination/tests/test_delivery_multi_destination.py,sha256=kMvXo_By6mpnymJuqFowUR9jEK5AD-env4MYD08fnWw,7428
|
|
27
|
-
odoo/addons/delivery_multi_destination/views/delivery_carrier_view.xml,sha256=EpJXlKQraYrvdjNnXEf28hWladF3ak0vbCyAnpQHPq4,4234
|
|
28
|
-
odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info/METADATA,sha256=qG7W7UWNKjZGV7UMMUy0s1uZB0McyKy0m4_q7-KnRa8,4972
|
|
29
|
-
odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
|
30
|
-
odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
|
|
31
|
-
odoo_addon_delivery_multi_destination-16.0.1.0.1.dist-info/RECORD,,
|
|
File without changes
|