odoo-addon-stock-request 17.0.1.0.1__py3-none-any.whl → 17.0.1.1.0__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.
@@ -7,7 +7,7 @@ Stock Request
7
7
  !! This file is generated by oca-gen-addon-readme !!
8
8
  !! changes will be overwritten. !!
9
9
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10
- !! source digest: sha256:276daaaf3647da7ee2fff7b06943628b5abbb5eabb8526ad37205cad53fa60e1
10
+ !! source digest: sha256:f9f06e384154affc554d5604a741d02eccbf51bdad12585e266e8e1529099600
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -4,7 +4,7 @@
4
4
  {
5
5
  "name": "Stock Request",
6
6
  "summary": "Internal request for stock",
7
- "version": "17.0.1.0.1",
7
+ "version": "17.0.1.1.0",
8
8
  "license": "LGPL-3",
9
9
  "website": "https://github.com/OCA/stock-logistics-request",
10
10
  "author": "ForgeFlow, Odoo Community Association (OCA)",
@@ -739,6 +739,7 @@ msgstr ""
739
739
  #. module: stock_request
740
740
  #: model:ir.model.fields,field_description:stock_request.field_stock_request__route_id
741
741
  #: model:ir.model.fields,field_description:stock_request.field_stock_request_abstract__route_id
742
+ #: model:ir.model.fields,field_description:stock_request.field_stock_request_order__route_id
742
743
  #: model_terms:ir.ui.view,arch_db:stock_request.stock_request_search
743
744
  msgid "Route"
744
745
  msgstr ""
@@ -746,6 +747,7 @@ msgstr ""
746
747
  #. module: stock_request
747
748
  #: model:ir.model.fields,field_description:stock_request.field_stock_request__route_ids
748
749
  #: model:ir.model.fields,field_description:stock_request.field_stock_request_abstract__route_ids
750
+ #: model:ir.model.fields,field_description:stock_request.field_stock_request_order__route_ids
749
751
  msgid "Routes"
750
752
  msgstr ""
751
753
 
@@ -957,6 +959,11 @@ msgstr ""
957
959
  msgid "The picking policy must be equal to the order"
958
960
  msgstr ""
959
961
 
962
+ #. module: stock_request
963
+ #: model:ir.model.fields,help:stock_request.field_stock_request_order__route_id
964
+ msgid "The route related to a stock request order"
965
+ msgstr ""
966
+
960
967
  #. module: stock_request
961
968
  #. odoo-python
962
969
  #: code:addons/stock_request/models/stock_request_order.py:0
@@ -148,9 +148,15 @@ class StockRequest(models.Model):
148
148
  done_qty = abs(other_qty - incoming_qty)
149
149
  open_qty = sum(request.allocation_ids.mapped("open_product_qty"))
150
150
  uom = request.product_id.uom_id
151
- request.qty_done = uom._compute_quantity(done_qty, request.product_uom_id)
151
+ request.qty_done = uom._compute_quantity(
152
+ done_qty,
153
+ request.product_uom_id,
154
+ rounding_method="HALF-UP",
155
+ )
152
156
  request.qty_in_progress = uom._compute_quantity(
153
- open_qty, request.product_uom_id
157
+ open_qty,
158
+ request.product_uom_id,
159
+ rounding_method="HALF-UP",
154
160
  )
155
161
  request.qty_cancelled = (
156
162
  max(
@@ -158,6 +164,7 @@ class StockRequest(models.Model):
158
164
  uom._compute_quantity(
159
165
  request.product_qty - done_qty - open_qty,
160
166
  request.product_uom_id,
167
+ rounding_method="HALF-UP",
161
168
  ),
162
169
  )
163
170
  if request.allocation_ids
@@ -32,7 +32,9 @@ class StockRequest(models.AbstractModel):
32
32
  def _compute_product_qty(self):
33
33
  for rec in self:
34
34
  rec.product_qty = rec.product_uom_id._compute_quantity(
35
- rec.product_uom_qty, rec.product_id.product_tmpl_id.uom_id
35
+ rec.product_uom_qty,
36
+ rec.product_id.product_tmpl_id.uom_id,
37
+ rounding_method="HALF-UP",
36
38
  )
37
39
 
38
40
  name = fields.Char(copy=False, required=True, readonly=True, default="/")
@@ -69,7 +69,9 @@ class StockRequestAllocation(models.Model):
69
69
  def _compute_requested_product_qty(self):
70
70
  for rec in self:
71
71
  rec.requested_product_qty = rec.product_uom_id._compute_quantity(
72
- rec.requested_product_uom_qty, rec.product_id.uom_id
72
+ rec.requested_product_uom_qty,
73
+ rec.product_id.uom_id,
74
+ rounding_method="HALF-UP",
73
75
  )
74
76
 
75
77
  @api.depends(
@@ -126,10 +126,88 @@ class StockRequestOrder(models.Model):
126
126
  string="Stock requests", compute="_compute_stock_request_count", readonly=True
127
127
  )
128
128
 
129
+ route_ids = fields.Many2many(
130
+ "stock.route",
131
+ string="Routes",
132
+ compute="_compute_route_ids",
133
+ readonly=True,
134
+ store=True,
135
+ )
136
+
137
+ route_id = fields.Many2one(
138
+ "stock.route",
139
+ compute="_compute_route_id",
140
+ inverse="_inverse_route_id",
141
+ readonly=True,
142
+ store=True,
143
+ help="The route related to a stock request order",
144
+ )
145
+
129
146
  _sql_constraints = [
130
147
  ("name_uniq", "unique(name, company_id)", "Stock Request name must be unique")
131
148
  ]
132
149
 
150
+ @api.depends("warehouse_id", "location_id", "stock_request_ids")
151
+ def _compute_route_ids(self):
152
+ route_obj = self.env["stock.route"]
153
+ routes = route_obj.search(
154
+ [("warehouse_ids", "in", self.mapped("warehouse_id").ids)]
155
+ )
156
+ routes_by_warehouse = {}
157
+ for route in routes:
158
+ for warehouse in route.warehouse_ids:
159
+ routes_by_warehouse.setdefault(warehouse.id, self.env["stock.route"])
160
+ routes_by_warehouse[warehouse.id] |= route
161
+ for record in self:
162
+ routes = route_obj
163
+ if record.warehouse_id and routes_by_warehouse.get(record.warehouse_id.id):
164
+ routes |= routes_by_warehouse[record.warehouse_id.id]
165
+ parents = record.get_parents().ids
166
+ valid_routes = []
167
+ for route in routes:
168
+ if any(p.location_dest_id.id in parents for p in route.rule_ids):
169
+ valid_routes.append(route)
170
+ filtered_routes = self.env["stock.route"].browse(
171
+ [route.id for route in valid_routes]
172
+ )
173
+ if record.stock_request_ids:
174
+ all_routes = record.stock_request_ids.mapped("route_ids")
175
+ common_routes = all_routes
176
+ for line in record.stock_request_ids:
177
+ common_routes &= line.route_ids
178
+ final_routes = filtered_routes | common_routes
179
+ record.route_ids = [(6, 0, final_routes.ids)]
180
+ else:
181
+ record.route_ids = [(6, 0, filtered_routes.ids)]
182
+
183
+ def get_parents(self):
184
+ location = self.location_id
185
+ result = location
186
+ while location.location_id:
187
+ location = location.location_id
188
+ result |= location
189
+ return result
190
+
191
+ @api.depends("stock_request_ids")
192
+ def _compute_route_id(self):
193
+ for order in self:
194
+ if order.stock_request_ids:
195
+ first_route = order.stock_request_ids[0].route_id or False
196
+ if any(r.route_id != first_route for r in order.stock_request_ids):
197
+ first_route = False
198
+ order.route_id = first_route
199
+
200
+ def _inverse_route_id(self):
201
+ for order in self:
202
+ if order.route_id:
203
+ order.stock_request_ids.write({"route_id": order.route_id.id})
204
+
205
+ @api.onchange("route_id")
206
+ def _onchange_route_id(self):
207
+ if self.route_id:
208
+ for request in self.stock_request_ids:
209
+ request.route_id = self.route_id
210
+
133
211
  @api.depends("stock_request_ids.state")
134
212
  def _compute_state(self):
135
213
  for item in self:
@@ -366,7 +366,7 @@ ul.auto-toc {
366
366
  !! This file is generated by oca-gen-addon-readme !!
367
367
  !! changes will be overwritten. !!
368
368
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
369
- !! source digest: sha256:276daaaf3647da7ee2fff7b06943628b5abbb5eabb8526ad37205cad53fa60e1
369
+ !! source digest: sha256:f9f06e384154affc554d5604a741d02eccbf51bdad12585e266e8e1529099600
370
370
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
371
371
  <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/lgpl-3.0-standalone.html"><img alt="License: LGPL-3" src="https://img.shields.io/badge/licence-LGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/stock-logistics-request/tree/17.0/stock_request"><img alt="OCA/stock-logistics-request" src="https://img.shields.io/badge/github-OCA%2Fstock--logistics--request-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/stock-logistics-request-17-0/stock-logistics-request-17-0-stock_request"><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/stock-logistics-request&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
372
372
  <p>This module was written to allow users to request products that are
@@ -77,6 +77,9 @@ class TestStockRequest(common.TransactionCase):
77
77
  self.route_2 = self._create_location_route(
78
78
  name="Transfer", company_id=self.company_2.id
79
79
  )
80
+ self.route_3 = self._create_location_route(
81
+ name="Transfer", company_id=self.main_company.id
82
+ )
80
83
  self.uom_dozen = self.env["uom.uom"].create(
81
84
  {
82
85
  "name": "Test-DozenA",
@@ -1341,3 +1344,227 @@ class TestStockRequestOrderState(TestStockRequest):
1341
1344
  self.assertEqual(self.request_a.state, "cancel")
1342
1345
  self.assertEqual(self.request_b.state, "done")
1343
1346
  self.assertEqual(self.order.state, "done")
1347
+
1348
+ def test_rounding_half_up_in_progress_01(self):
1349
+ product_half_up = self._create_product(
1350
+ "HALFUP", "HalfUp Product", self.main_company.id
1351
+ )
1352
+ product_half_up.uom_id.rounding = 1.0
1353
+ vals = {
1354
+ "product_id": product_half_up.id,
1355
+ "product_uom_id": product_half_up.uom_id.id,
1356
+ "product_uom_qty": 0.5,
1357
+ "company_id": self.main_company.id,
1358
+ "warehouse_id": self.warehouse.id,
1359
+ "location_id": self.virtual_loc.id,
1360
+ }
1361
+ stock_request = self.stock_request.create(vals)
1362
+ stock_request.action_confirm()
1363
+ self.assertEqual(
1364
+ stock_request.qty_in_progress,
1365
+ 1,
1366
+ "Quantity in progress should be the rounded up after confirmation",
1367
+ )
1368
+
1369
+ def test_rounding_half_up_in_progress_02(self):
1370
+ product_half_up = self._create_product(
1371
+ "HALFUP", "HalfUp Product", self.main_company.id
1372
+ )
1373
+ product_half_up.uom_id.rounding = 1.0
1374
+ vals = {
1375
+ "product_id": product_half_up.id,
1376
+ "product_uom_id": product_half_up.uom_id.id,
1377
+ "product_uom_qty": 1.49,
1378
+ "company_id": self.main_company.id,
1379
+ "warehouse_id": self.warehouse.id,
1380
+ "location_id": self.virtual_loc.id,
1381
+ }
1382
+ stock_request = self.stock_request.create(vals)
1383
+ stock_request.action_confirm()
1384
+ self.assertEqual(
1385
+ stock_request.qty_in_progress,
1386
+ 1,
1387
+ "Quantity in progress should be the rounded down after confirmation",
1388
+ )
1389
+
1390
+ def test_route_id_propagation_on_creation(self):
1391
+ order_vals = {
1392
+ "company_id": self.main_company.id,
1393
+ "warehouse_id": self.warehouse.id,
1394
+ "location_id": self.warehouse.lot_stock_id.id,
1395
+ "expected_date": fields.Datetime.now(),
1396
+ "route_id": self.route.id,
1397
+ "stock_request_ids": [
1398
+ (
1399
+ 0,
1400
+ 0,
1401
+ {
1402
+ "product_id": self.product.id,
1403
+ "product_uom_id": self.product.uom_id.id,
1404
+ "product_uom_qty": 5.0,
1405
+ },
1406
+ ),
1407
+ (
1408
+ 0,
1409
+ 0,
1410
+ {
1411
+ "product_id": self.product.id,
1412
+ "product_uom_id": self.product.uom_id.id,
1413
+ "product_uom_qty": 10.0,
1414
+ },
1415
+ ),
1416
+ ],
1417
+ }
1418
+ order = self.request_order.create(order_vals)
1419
+ self.assertEqual(len(order.stock_request_ids), 2)
1420
+ order.write({"route_id": self.route_3})
1421
+ for request in order.stock_request_ids:
1422
+ self.assertEqual(
1423
+ request.route_id.id,
1424
+ order.route_id.id,
1425
+ "The route_id from stock.request.order has not "
1426
+ "been set in the associated stock.requests.",
1427
+ )
1428
+
1429
+ def test_compute_route_id_consistency_1(self):
1430
+ order_vals = {
1431
+ "company_id": self.main_company.id,
1432
+ "warehouse_id": self.warehouse.id,
1433
+ "location_id": self.warehouse.lot_stock_id.id,
1434
+ "expected_date": fields.Datetime.now(),
1435
+ "stock_request_ids": [
1436
+ (
1437
+ 0,
1438
+ 0,
1439
+ {
1440
+ "product_id": self.product.id,
1441
+ "product_uom_id": self.product.uom_id.id,
1442
+ "product_uom_qty": 5.0,
1443
+ "route_id": self.route.id,
1444
+ },
1445
+ ),
1446
+ (
1447
+ 0,
1448
+ 0,
1449
+ {
1450
+ "product_id": self.product.id,
1451
+ "product_uom_id": self.product.uom_id.id,
1452
+ "product_uom_qty": 10.0,
1453
+ "route_id": self.route_3.id,
1454
+ },
1455
+ ),
1456
+ ],
1457
+ }
1458
+ order = self.request_order.create(order_vals)
1459
+ order._compute_route_id()
1460
+ self.assertFalse(
1461
+ order.route_id,
1462
+ "Route ID should be False due to inconsistent routes in stock requests.",
1463
+ )
1464
+
1465
+ def test_compute_route_id_consistency_2(self):
1466
+ order_vals = {
1467
+ "company_id": self.main_company.id,
1468
+ "warehouse_id": self.warehouse.id,
1469
+ "location_id": self.warehouse.lot_stock_id.id,
1470
+ "expected_date": fields.Datetime.now(),
1471
+ "stock_request_ids": [
1472
+ (
1473
+ 0,
1474
+ 0,
1475
+ {
1476
+ "product_id": self.product.id,
1477
+ "product_uom_id": self.product.uom_id.id,
1478
+ "product_uom_qty": 5.0,
1479
+ "route_id": self.route.id,
1480
+ },
1481
+ ),
1482
+ (
1483
+ 0,
1484
+ 0,
1485
+ {
1486
+ "product_id": self.product.id,
1487
+ "product_uom_id": self.product.uom_id.id,
1488
+ "product_uom_qty": 10.0,
1489
+ "route_id": self.route.id,
1490
+ },
1491
+ ),
1492
+ ],
1493
+ }
1494
+ order = self.request_order.create(order_vals)
1495
+ order._compute_route_id()
1496
+ self.assertEqual(order.route_id, self.route)
1497
+
1498
+ def test_inverse_route_id_propagation(self):
1499
+ order_vals = {
1500
+ "company_id": self.main_company.id,
1501
+ "warehouse_id": self.warehouse.id,
1502
+ "location_id": self.warehouse.lot_stock_id.id,
1503
+ "expected_date": fields.Datetime.now(),
1504
+ "stock_request_ids": [
1505
+ (
1506
+ 0,
1507
+ 0,
1508
+ {
1509
+ "product_id": self.product.id,
1510
+ "product_uom_id": self.product.uom_id.id,
1511
+ "product_uom_qty": 5.0,
1512
+ },
1513
+ ),
1514
+ (
1515
+ 0,
1516
+ 0,
1517
+ {
1518
+ "product_id": self.product.id,
1519
+ "product_uom_id": self.product.uom_id.id,
1520
+ "product_uom_qty": 10.0,
1521
+ },
1522
+ ),
1523
+ ],
1524
+ }
1525
+ order = self.request_order.create(order_vals)
1526
+ order.route_id = self.route.id
1527
+ order._inverse_route_id()
1528
+ for request in order.stock_request_ids:
1529
+ self.assertEqual(
1530
+ request.route_id.id,
1531
+ self.route.id,
1532
+ "Route ID should propagate to all stock requests.",
1533
+ )
1534
+
1535
+ def test_onchange_route_id_propagation(self):
1536
+ order_vals = {
1537
+ "company_id": self.main_company.id,
1538
+ "warehouse_id": self.warehouse.id,
1539
+ "location_id": self.warehouse.lot_stock_id.id,
1540
+ "expected_date": fields.Datetime.now(),
1541
+ "stock_request_ids": [
1542
+ (
1543
+ 0,
1544
+ 0,
1545
+ {
1546
+ "product_id": self.product.id,
1547
+ "product_uom_id": self.product.uom_id.id,
1548
+ "product_uom_qty": 5.0,
1549
+ },
1550
+ ),
1551
+ (
1552
+ 0,
1553
+ 0,
1554
+ {
1555
+ "product_id": self.product.id,
1556
+ "product_uom_id": self.product.uom_id.id,
1557
+ "product_uom_qty": 10.0,
1558
+ },
1559
+ ),
1560
+ ],
1561
+ }
1562
+ order = self.request_order.create(order_vals)
1563
+ order.route_id = self.route.id
1564
+ order._onchange_route_id()
1565
+ for request in order.stock_request_ids:
1566
+ self.assertEqual(
1567
+ request.route_id.id,
1568
+ self.route.id,
1569
+ "Route ID should update on all stock requests on onchange.",
1570
+ )
@@ -95,6 +95,14 @@
95
95
  groups="stock.group_stock_multi_locations"
96
96
  />
97
97
  <field name="allow_virtual_location" invisible="1" />
98
+ <field name="route_ids" invisible="1" />
99
+ <field
100
+ name="route_id"
101
+ groups="stock.group_stock_multi_locations"
102
+ readonly="state != 'draft'"
103
+ domain="[('id','in',route_ids)]"
104
+ options="{'no_create': True}"
105
+ />
98
106
  <field
99
107
  name="procurement_group_id"
100
108
  groups="stock.group_adv_location"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-stock_request
3
- Version: 17.0.1.0.1
3
+ Version: 17.0.1.1.0
4
4
  Requires-Python: >=3.10
5
5
  Requires-Dist: odoo>=17.0a,<17.1dev
6
6
  Summary: Internal request for stock
@@ -22,7 +22,7 @@ Stock Request
22
22
  !! This file is generated by oca-gen-addon-readme !!
23
23
  !! changes will be overwritten. !!
24
24
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
25
- !! source digest: sha256:276daaaf3647da7ee2fff7b06943628b5abbb5eabb8526ad37205cad53fa60e1
25
+ !! source digest: sha256:f9f06e384154affc554d5604a741d02eccbf51bdad12585e266e8e1529099600
26
26
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
27
27
 
28
28
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -1,6 +1,6 @@
1
- odoo/addons/stock_request/README.rst,sha256=Mzij9F5Swgu1Xllv_yhO77NNGCRDZkHzl5NH7gaIwlA,4877
1
+ odoo/addons/stock_request/README.rst,sha256=W6u6ZfE2_YlYBhiUPGFLc1hd4uUaKdBYvSay8WxJB_c,4877
2
2
  odoo/addons/stock_request/__init__.py,sha256=X9EJGOE2GtZbS0G82PtSXmWSZ_R8jEM0rlJTDliQjp4,21
3
- odoo/addons/stock_request/__manifest__.py,sha256=0My5P3u0vRJVnpNGuoVrF5G7YhsdlldYI8NfoCUd-20,949
3
+ odoo/addons/stock_request/__manifest__.py,sha256=H_hEVoDblWdEpzVQJZaC1UXhQvNeNeJBt6nffVLg5jc,949
4
4
  odoo/addons/stock_request/data/stock_request_sequence_data.xml,sha256=MKvzK__cH1gecmyqWK6Vj7yJ0o1-oKbqy2ydNoTUhs0,683
5
5
  odoo/addons/stock_request/i18n/ca.po,sha256=-zMtmik3AlceFY1A7YnyEctmHyyGdXyP5Ggzicy6MJU,43954
6
6
  odoo/addons/stock_request/i18n/de.po,sha256=ByNVbp_DfoNWUt27O6Gqd975ocZ6OGYpUP8_Pil6GIo,49181
@@ -25,7 +25,7 @@ odoo/addons/stock_request/i18n/pt_BR.po,sha256=Jpbj_rqNNy8XIiVVKel5RaxucOFZS4uGs
25
25
  odoo/addons/stock_request/i18n/ro.po,sha256=pskS33LJJ5WzbxE9BXiXOt6hx-UO9ooTJIOviN_X3dI,43997
26
26
  odoo/addons/stock_request/i18n/ru.po,sha256=m1WL-SazHjs4gHwSDuaPvU-Fyq7UpvWGSHRqW8_BJ2I,44113
27
27
  odoo/addons/stock_request/i18n/sl.po,sha256=0ed7QCibQiHqyZZPeSocMfomKCGnpoQG_TAw6s8jP28,44011
28
- odoo/addons/stock_request/i18n/stock_request.pot,sha256=xzkqDw2xbkviICHIc8Jdyvknu3fPceoExC6WBUFPfGs,43650
28
+ odoo/addons/stock_request/i18n/stock_request.pot,sha256=ZCF-MGcwnZTsH73kSEY7iKkzeK0yLo-yuBIegX0285U,44004
29
29
  odoo/addons/stock_request/i18n/tr.po,sha256=7YAdcUQ1EqE5LtciqWQ086F0BFNpzG4wHCLfBetqM9k,43951
30
30
  odoo/addons/stock_request/i18n/tr_TR.po,sha256=2ABNIRWVjGtP2-l_1voGrMePjSmUUEX8Ms6jBE91TOM,43969
31
31
  odoo/addons/stock_request/i18n/vi_VN.po,sha256=4PBHHjsaE59x31CZhqp2HEhzjpaAoey7t8msFjGGlH0,43974
@@ -38,10 +38,10 @@ odoo/addons/stock_request/models/stock_location.py,sha256=ckie9pUiJ2r_pU_-ojYZie
38
38
  odoo/addons/stock_request/models/stock_move.py,sha256=Pu8aIo3ydPuoUbUuBcKjCND_VRilp5Uh6AKnzQmbOhs,2782
39
39
  odoo/addons/stock_request/models/stock_move_line.py,sha256=75R5LJjHZtU-fTHcC_vhnoMhgDEG-S9fYuUsD_vmzQ4,2765
40
40
  odoo/addons/stock_request/models/stock_picking.py,sha256=XmdxMG-GNKJjF6RE8inj45TBy1eEhmRh4nzb-0bMQs0,1339
41
- odoo/addons/stock_request/models/stock_request.py,sha256=0m5SfECu2ZM1vgH8-C40kgvIEbgY_AEpQpD9GJIz4oQ,16069
42
- odoo/addons/stock_request/models/stock_request_abstract.py,sha256=5t4nAyLHEIWh3i5NKKa_hRaZ7eNG66nUZTCzuJxMiYo,9445
43
- odoo/addons/stock_request/models/stock_request_allocation.py,sha256=1c_OH1oWS-93lc__erTtlGxDr4FlOVffFMXRbRZxhEY,2867
44
- odoo/addons/stock_request/models/stock_request_order.py,sha256=7JxEWcjjZY5oyJlg-m8dZvf1AfPGE82WoZTL4cViYr4,12192
41
+ odoo/addons/stock_request/models/stock_request.py,sha256=yO1yTRN-92TV14gSum2QOuwx0go2fqt0mef1vzjeiww,16270
42
+ odoo/addons/stock_request/models/stock_request_abstract.py,sha256=6U0dh2NWcIndDSKYfwMLMJREZc1pPfS_sUoTwjweAh0,9505
43
+ odoo/addons/stock_request/models/stock_request_allocation.py,sha256=Kqq6VcZgYSbw2OSooeWgzVLBlWyiVJbR71dyKciPzUg,2927
44
+ odoo/addons/stock_request/models/stock_request_order.py,sha256=jkNQT2dkocE9F_xT9zWYBHmvsI2GSHFUvTaaT8B5qw8,15146
45
45
  odoo/addons/stock_request/models/stock_route.py,sha256=VFATxVyY7QGHjX3R83wSrST-EgXstJZY1QS0uALgbQw,853
46
46
  odoo/addons/stock_request/models/stock_rule.py,sha256=BQSN-HB1snD0ex-pGwcVwxZHmxXDSb4aI1VNDkIjYKM,1033
47
47
  odoo/addons/stock_request/models/stock_warehouse.py,sha256=yiJG9Yw2A1dBXwi61ehdlRbyD8PnGJqiyfJxxyN8KQQ,1476
@@ -54,18 +54,18 @@ odoo/addons/stock_request/security/ir.model.access.csv,sha256=dsUwAR79-qQNVwCZhv
54
54
  odoo/addons/stock_request/security/stock_request_security.xml,sha256=VP0gCObFyM2wl0jcsO_J0vt2_jV0BQWtj4UMSqPellA,5978
55
55
  odoo/addons/stock_request/static/description/icon.png,sha256=HZGM_z7Ta3zNQ2924BUiMfDuVSCWqrEwUQMWXBnK7yk,15218
56
56
  odoo/addons/stock_request/static/description/icon.svg,sha256=e3qo4KGYRy7Mfzhb_bCfVA-73Rk2Lx1z9_kz7tTjdO0,9771
57
- odoo/addons/stock_request/static/description/index.html,sha256=dZSyZKpsD8_JNOUcMCCiiWJ3EL5jSYCOTqT6vV6ptp0,15995
57
+ odoo/addons/stock_request/static/description/index.html,sha256=-PWVpOMf6Y26M4VYcp3vmlMaGhvuN8Oqd3nN68IU5lQ,15995
58
58
  odoo/addons/stock_request/tests/__init__.py,sha256=3NQ2fafGprBbsMjR2Y__yzyvFX5Vio1r0j6tT3FTbas,33
59
- odoo/addons/stock_request/tests/test_stock_request.py,sha256=c3X5e7I8PndUkVzEXDyob04mBkRZm-8HUS7gcOC96Ks,54884
59
+ odoo/addons/stock_request/tests/test_stock_request.py,sha256=W0xKB_53MvH9ckHbt3qBzDbkRFBCNNhQZQ3ZFDr2BKI,63076
60
60
  odoo/addons/stock_request/views/product.xml,sha256=CJ6RE5uGQLlIMDCPKxw8nhodb_rR3jaj-mF5ozCFUKI,1517
61
61
  odoo/addons/stock_request/views/res_config_settings_views.xml,sha256=kE05fmV2drjepSISURc67R7Uk_62zayWtncGSxzKTBo,6260
62
62
  odoo/addons/stock_request/views/stock_move_views.xml,sha256=Z5pNG0WfYz-CTlxgB-rma0BoT08VQDHnm3J_Ksu9BxA,1072
63
63
  odoo/addons/stock_request/views/stock_picking_views.xml,sha256=fmOupY9n5FFuFZtYz1C5wy77OpX-7DmIBVrGJ2uEAVw,1017
64
64
  odoo/addons/stock_request/views/stock_request_allocation_views.xml,sha256=NhoVR2RSOx_OuiKP34g5yzc4U0jNHbVwHySZsIF9BOc,2615
65
65
  odoo/addons/stock_request/views/stock_request_menu.xml,sha256=S_3HPkmYcHC_xtPjusHiZX7RUW5CGrJW3w52ScnJFNw,1308
66
- odoo/addons/stock_request/views/stock_request_order_views.xml,sha256=nEFtoyX7dnytFmT1uZ2GBphAKpN1IEnvnuA_IJSWGRk,10938
66
+ odoo/addons/stock_request/views/stock_request_order_views.xml,sha256=xVN0r-S1h9B4xg-duX00qNix3SM-4kTmDDP5JUzvA5s,11383
67
67
  odoo/addons/stock_request/views/stock_request_views.xml,sha256=o_9aY_EOfHymmrg79uQJcVi4snCTUMt3CWacxmnIrxY,12136
68
- odoo_addon_stock_request-17.0.1.0.1.dist-info/METADATA,sha256=6rJHvOpOdKYnrT3YU_IvahgGg3lw0FKRKIx9gBFX08g,5410
69
- odoo_addon_stock_request-17.0.1.0.1.dist-info/WHEEL,sha256=8Rd4enx1PCuyDWP4SABqO5Fv8rpaknqp3VzjoFFLa6c,83
70
- odoo_addon_stock_request-17.0.1.0.1.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
71
- odoo_addon_stock_request-17.0.1.0.1.dist-info/RECORD,,
68
+ odoo_addon_stock_request-17.0.1.1.0.dist-info/METADATA,sha256=6A2UTMY2zSHcSPcE6CbuDVcsY7SNXd9FxCqSxHCDPtw,5410
69
+ odoo_addon_stock_request-17.0.1.1.0.dist-info/WHEEL,sha256=8Rd4enx1PCuyDWP4SABqO5Fv8rpaknqp3VzjoFFLa6c,83
70
+ odoo_addon_stock_request-17.0.1.1.0.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
71
+ odoo_addon_stock_request-17.0.1.1.0.dist-info/RECORD,,