odoo-addon-stock-release-channel 18.0.1.1.0__py3-none-any.whl → 18.0.1.1.2__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/stock_release_channel/README.rst +1 -1
- odoo/addons/stock_release_channel/__manifest__.py +1 -1
- odoo/addons/stock_release_channel/i18n/es.po +22 -42
- odoo/addons/stock_release_channel/i18n/fr.po +5 -39
- odoo/addons/stock_release_channel/i18n/it.po +49 -54
- odoo/addons/stock_release_channel/i18n/stock_release_channel.pot +1 -1
- odoo/addons/stock_release_channel/models/stock_release_channel.py +15 -0
- odoo/addons/stock_release_channel/static/description/index.html +1 -1
- odoo/addons/stock_release_channel/tests/models/generator_test_impossible.py +31 -0
- odoo/addons/stock_release_channel/tests/test_release_channel_delivery_date.py +32 -1
- odoo/addons/stock_release_channel/views/stock_picking_views.xml +6 -2
- odoo/addons/stock_release_channel/views/stock_release_channel_views.xml +3 -2
- {odoo_addon_stock_release_channel-18.0.1.1.0.dist-info → odoo_addon_stock_release_channel-18.0.1.1.2.dist-info}/METADATA +2 -2
- {odoo_addon_stock_release_channel-18.0.1.1.0.dist-info → odoo_addon_stock_release_channel-18.0.1.1.2.dist-info}/RECORD +16 -15
- {odoo_addon_stock_release_channel-18.0.1.1.0.dist-info → odoo_addon_stock_release_channel-18.0.1.1.2.dist-info}/WHEEL +0 -0
- {odoo_addon_stock_release_channel-18.0.1.1.0.dist-info → odoo_addon_stock_release_channel-18.0.1.1.2.dist-info}/top_level.txt +0 -0
|
@@ -11,7 +11,7 @@ Stock Release Channels
|
|
|
11
11
|
!! This file is generated by oca-gen-addon-readme !!
|
|
12
12
|
!! changes will be overwritten. !!
|
|
13
13
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
14
|
-
!! source digest: sha256:
|
|
14
|
+
!! source digest: sha256:0e3bededd4f98e146c985777dbb190649092bac2badc8614221b02bfeb3eb7a8
|
|
15
15
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
16
16
|
|
|
17
17
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
{
|
|
6
6
|
"name": "Stock Release Channels",
|
|
7
7
|
"summary": "Manage workload in WMS with release channels",
|
|
8
|
-
"version": "18.0.1.1.
|
|
8
|
+
"version": "18.0.1.1.2",
|
|
9
9
|
"development_status": "Beta",
|
|
10
10
|
"license": "AGPL-3",
|
|
11
11
|
"author": "Camptocamp, BCIM, ACSONE SA/NV, Odoo Community Association (OCA)",
|
|
@@ -25,15 +25,6 @@ msgstr ""
|
|
|
25
25
|
"<i class=\"fa fa-dropbox fa-4x\" role=\"img\" aria-label=\"Release\" "
|
|
26
26
|
"title=\"Automatic Release\"/>"
|
|
27
27
|
|
|
28
|
-
#. module: stock_release_channel
|
|
29
|
-
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
30
|
-
msgid ""
|
|
31
|
-
"<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
32
|
-
"title=\"Details\"/>"
|
|
33
|
-
msgstr ""
|
|
34
|
-
"<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
35
|
-
"title=\"Details\"/>"
|
|
36
|
-
|
|
37
28
|
#. module: stock_release_channel
|
|
38
29
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
39
30
|
msgid "<span class=\"ms-2\">Lock</span>"
|
|
@@ -62,28 +53,24 @@ msgstr "<span>Acciones</span>"
|
|
|
62
53
|
#. module: stock_release_channel
|
|
63
54
|
#. odoo-python
|
|
64
55
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
65
|
-
#, python-format
|
|
66
56
|
msgid "Action 'Lock' is not allowed for channel %(name)s."
|
|
67
57
|
msgstr "La acción 'Bloquear' no está permitida para el canal %(name)s."
|
|
68
58
|
|
|
69
59
|
#. module: stock_release_channel
|
|
70
60
|
#. odoo-python
|
|
71
61
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
72
|
-
#, python-format
|
|
73
62
|
msgid "Action 'Sleep' is not allowed for channel %(name)s."
|
|
74
63
|
msgstr "La acción 'Dormir' no está permitida para el canal %(name)s."
|
|
75
64
|
|
|
76
65
|
#. module: stock_release_channel
|
|
77
66
|
#. odoo-python
|
|
78
67
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
79
|
-
#, python-format
|
|
80
68
|
msgid "Action 'Unlock' is not allowed for channel %(name)s."
|
|
81
69
|
msgstr "La acción 'Desbloquear' no está permitida para el canal %(name)s."
|
|
82
70
|
|
|
83
71
|
#. module: stock_release_channel
|
|
84
72
|
#. odoo-python
|
|
85
73
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
86
|
-
#, python-format
|
|
87
74
|
msgid "Action 'Wake Up' is not allowed for channel %(name)s."
|
|
88
75
|
msgstr "La acción 'Despertar' no está permitida para el canal %(name)s."
|
|
89
76
|
|
|
@@ -111,7 +98,6 @@ msgstr "Todos los movimientos (estimación)"
|
|
|
111
98
|
#. odoo-python
|
|
112
99
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
113
100
|
#: model:ir.model.fields,field_description:stock_release_channel.field_stock_release_channel__count_picking_chain
|
|
114
|
-
#, python-format
|
|
115
101
|
msgid "All Related Transfers"
|
|
116
102
|
msgstr "Todas las transferencias relacionadas"
|
|
117
103
|
|
|
@@ -140,12 +126,8 @@ msgstr "Archivado"
|
|
|
140
126
|
|
|
141
127
|
#. module: stock_release_channel
|
|
142
128
|
#: model:ir.model.fields.selection,name:stock_release_channel.selection__stock_release_channel__state__asleep
|
|
143
|
-
msgid "Asleep"
|
|
144
|
-
msgstr "Dormido"
|
|
145
|
-
|
|
146
|
-
#. module: stock_release_channel
|
|
147
129
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_search_view
|
|
148
|
-
msgid "
|
|
130
|
+
msgid "Asleep"
|
|
149
131
|
msgstr "Dormido"
|
|
150
132
|
|
|
151
133
|
#. module: stock_release_channel
|
|
@@ -156,7 +138,6 @@ msgstr "Asignar Recogidas"
|
|
|
156
138
|
#. module: stock_release_channel
|
|
157
139
|
#. odoo-python
|
|
158
140
|
#: code:addons/stock_release_channel/models/stock_picking.py:0
|
|
159
|
-
#, python-format
|
|
160
141
|
msgid "Assign release channel on %s"
|
|
161
142
|
msgstr "Asignar canal de liberación en %s"
|
|
162
143
|
|
|
@@ -188,7 +169,6 @@ msgstr "Modo por lotes"
|
|
|
188
169
|
#. module: stock_release_channel
|
|
189
170
|
#. odoo-python
|
|
190
171
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
191
|
-
#, python-format
|
|
192
172
|
msgid "Channel %(name)s has no validated transfer yet."
|
|
193
173
|
msgstr "El canal %(name)s aún no tiene transferencia validada."
|
|
194
174
|
|
|
@@ -271,7 +251,6 @@ msgstr "Introduce aquí el código Python."
|
|
|
271
251
|
#. module: stock_release_channel
|
|
272
252
|
#. odoo-python
|
|
273
253
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
274
|
-
#, python-format
|
|
275
254
|
msgid ""
|
|
276
255
|
"Error when evaluating the channel's code:\n"
|
|
277
256
|
" %(name)s \n"
|
|
@@ -354,11 +333,6 @@ msgstr "Nombre de la última selección realizada"
|
|
|
354
333
|
msgid "Last Done Transfer"
|
|
355
334
|
msgstr "Última transferencia realizada"
|
|
356
335
|
|
|
357
|
-
#. module: stock_release_channel
|
|
358
|
-
#: model:ir.model.fields,field_description:stock_release_channel.field_stock_release_channel____last_update
|
|
359
|
-
msgid "Last Modified on"
|
|
360
|
-
msgstr "Última Modificación el"
|
|
361
|
-
|
|
362
336
|
#. module: stock_release_channel
|
|
363
337
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
364
338
|
msgid "Last Transfer"
|
|
@@ -448,7 +422,6 @@ msgstr "Nombre"
|
|
|
448
422
|
#. module: stock_release_channel
|
|
449
423
|
#. odoo-python
|
|
450
424
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
451
|
-
#, python-format
|
|
452
425
|
msgid "No Max transfers to release is configured."
|
|
453
426
|
msgstr "No se ha configurado el número máximo de transferencias a liberar."
|
|
454
427
|
|
|
@@ -466,7 +439,6 @@ msgstr "No hay ningún canal de lanzamiento configurado"
|
|
|
466
439
|
#. odoo-python
|
|
467
440
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
468
441
|
#: code:addons/stock_release_channel/tests/common.py:0
|
|
469
|
-
#, python-format
|
|
470
442
|
msgid "Nothing in the queue!"
|
|
471
443
|
msgstr "¡No hay nada en la cola!"
|
|
472
444
|
|
|
@@ -529,7 +501,6 @@ msgstr "Código Python"
|
|
|
529
501
|
|
|
530
502
|
#. module: stock_release_channel
|
|
531
503
|
#: model:ir.actions.server,name:stock_release_channel.ir_cron_stock_picking_assign_release_channel_ir_actions_server
|
|
532
|
-
#: model:ir.cron,cron_name:stock_release_channel.ir_cron_stock_picking_assign_release_channel
|
|
533
504
|
msgid "Re-assign release channel"
|
|
534
505
|
msgstr "Reasignar canal de liberación"
|
|
535
506
|
|
|
@@ -687,14 +658,12 @@ msgstr "Campo técnico para comprobar si la acción 'Despertar' está permitida.
|
|
|
687
658
|
#. module: stock_release_channel
|
|
688
659
|
#. odoo-python
|
|
689
660
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
690
|
-
#, python-format
|
|
691
661
|
msgid "The number of released transfers in progress is already at the maximum."
|
|
692
662
|
msgstr "El número de transferencias liberadas en curso ya está al máximo."
|
|
693
663
|
|
|
694
664
|
#. module: stock_release_channel
|
|
695
665
|
#. odoo-python
|
|
696
666
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
697
|
-
#, python-format
|
|
698
667
|
msgid "The release of pickings is not allowed for channel %(name)s."
|
|
699
668
|
msgstr "La liberación de recogidas no está permitida para el canal %(name)s."
|
|
700
669
|
|
|
@@ -702,14 +671,10 @@ msgstr "La liberación de recogidas no está permitida para el canal %(name)s."
|
|
|
702
671
|
#: model:ir.model.fields,help:stock_release_channel.field_stock_release_channel__state
|
|
703
672
|
msgid ""
|
|
704
673
|
"The state allows you to control the availability of the release channel.\n"
|
|
705
|
-
"* Open: Manual and automatic picking assignment to the release is effective "
|
|
674
|
+
" * Open: Manual and automatic picking assignment to the release is effective "
|
|
706
675
|
"and release operations are allowed.\n"
|
|
707
|
-
"
|
|
708
|
-
"
|
|
709
|
-
"* Delivering: A background task is running to automatically deliver ready "
|
|
710
|
-
"shipments\n"
|
|
711
|
-
"* Delivering Error: An error occurred in the delivery background task\n"
|
|
712
|
-
"* Delivered: Ready transfers are delivered\n"
|
|
676
|
+
"* Locked: Release operations are forbidden. (Assignement processes are still "
|
|
677
|
+
"working)\n"
|
|
713
678
|
"* Asleep: Assigned pickings not processed are unassigned from the release "
|
|
714
679
|
"channel.\n"
|
|
715
680
|
msgstr ""
|
|
@@ -823,7 +788,6 @@ msgstr "Escribe código Python para filtrar las selecciones."
|
|
|
823
788
|
#. module: stock_release_channel
|
|
824
789
|
#. odoo-python
|
|
825
790
|
#: code:addons/stock_release_channel/models/stock_picking.py:0
|
|
826
|
-
#, python-format
|
|
827
791
|
msgid ""
|
|
828
792
|
"You cannot release delivery of the channel %s because it has been forbidden "
|
|
829
793
|
"in the release channel configuration"
|
|
@@ -833,8 +797,24 @@ msgstr ""
|
|
|
833
797
|
|
|
834
798
|
#. module: stock_release_channel
|
|
835
799
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
836
|
-
msgid "
|
|
837
|
-
msgstr "
|
|
800
|
+
msgid "state"
|
|
801
|
+
msgstr ""
|
|
802
|
+
|
|
803
|
+
#~ msgid ""
|
|
804
|
+
#~ "<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
805
|
+
#~ "title=\"Details\"/>"
|
|
806
|
+
#~ msgstr ""
|
|
807
|
+
#~ "<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
808
|
+
#~ "title=\"Details\"/>"
|
|
809
|
+
|
|
810
|
+
#~ msgid "Aslepp"
|
|
811
|
+
#~ msgstr "Dormido"
|
|
812
|
+
|
|
813
|
+
#~ msgid "Last Modified on"
|
|
814
|
+
#~ msgstr "Última Modificación el"
|
|
815
|
+
|
|
816
|
+
#~ msgid "name"
|
|
817
|
+
#~ msgstr "nombre"
|
|
838
818
|
|
|
839
819
|
#~ msgid ""
|
|
840
820
|
#~ "The state allows you to control the availability of the release channel.\n"
|
|
@@ -23,13 +23,6 @@ msgid ""
|
|
|
23
23
|
"title=\"Automatic Release\"/>"
|
|
24
24
|
msgstr ""
|
|
25
25
|
|
|
26
|
-
#. module: stock_release_channel
|
|
27
|
-
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
28
|
-
msgid ""
|
|
29
|
-
"<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
30
|
-
"title=\"Details\"/>"
|
|
31
|
-
msgstr ""
|
|
32
|
-
|
|
33
26
|
#. module: stock_release_channel
|
|
34
27
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
35
28
|
msgid "<span class=\"ms-2\">Lock</span>"
|
|
@@ -58,28 +51,24 @@ msgstr ""
|
|
|
58
51
|
#. module: stock_release_channel
|
|
59
52
|
#. odoo-python
|
|
60
53
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
61
|
-
#, python-format
|
|
62
54
|
msgid "Action 'Lock' is not allowed for channel %(name)s."
|
|
63
55
|
msgstr ""
|
|
64
56
|
|
|
65
57
|
#. module: stock_release_channel
|
|
66
58
|
#. odoo-python
|
|
67
59
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
68
|
-
#, python-format
|
|
69
60
|
msgid "Action 'Sleep' is not allowed for channel %(name)s."
|
|
70
61
|
msgstr ""
|
|
71
62
|
|
|
72
63
|
#. module: stock_release_channel
|
|
73
64
|
#. odoo-python
|
|
74
65
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
75
|
-
#, python-format
|
|
76
66
|
msgid "Action 'Unlock' is not allowed for channel %(name)s."
|
|
77
67
|
msgstr ""
|
|
78
68
|
|
|
79
69
|
#. module: stock_release_channel
|
|
80
70
|
#. odoo-python
|
|
81
71
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
82
|
-
#, python-format
|
|
83
72
|
msgid "Action 'Wake Up' is not allowed for channel %(name)s."
|
|
84
73
|
msgstr ""
|
|
85
74
|
|
|
@@ -107,7 +96,6 @@ msgstr ""
|
|
|
107
96
|
#. odoo-python
|
|
108
97
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
109
98
|
#: model:ir.model.fields,field_description:stock_release_channel.field_stock_release_channel__count_picking_chain
|
|
110
|
-
#, python-format
|
|
111
99
|
msgid "All Related Transfers"
|
|
112
100
|
msgstr ""
|
|
113
101
|
|
|
@@ -134,12 +122,8 @@ msgstr ""
|
|
|
134
122
|
|
|
135
123
|
#. module: stock_release_channel
|
|
136
124
|
#: model:ir.model.fields.selection,name:stock_release_channel.selection__stock_release_channel__state__asleep
|
|
137
|
-
msgid "Asleep"
|
|
138
|
-
msgstr ""
|
|
139
|
-
|
|
140
|
-
#. module: stock_release_channel
|
|
141
125
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_search_view
|
|
142
|
-
msgid "
|
|
126
|
+
msgid "Asleep"
|
|
143
127
|
msgstr ""
|
|
144
128
|
|
|
145
129
|
#. module: stock_release_channel
|
|
@@ -150,7 +134,6 @@ msgstr ""
|
|
|
150
134
|
#. module: stock_release_channel
|
|
151
135
|
#. odoo-python
|
|
152
136
|
#: code:addons/stock_release_channel/models/stock_picking.py:0
|
|
153
|
-
#, python-format
|
|
154
137
|
msgid "Assign release channel on %s"
|
|
155
138
|
msgstr "Assigner un canal de livraison à %s"
|
|
156
139
|
|
|
@@ -182,7 +165,6 @@ msgstr ""
|
|
|
182
165
|
#. module: stock_release_channel
|
|
183
166
|
#. odoo-python
|
|
184
167
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
185
|
-
#, python-format
|
|
186
168
|
msgid "Channel %(name)s has no validated transfer yet."
|
|
187
169
|
msgstr ""
|
|
188
170
|
|
|
@@ -265,7 +247,6 @@ msgstr ""
|
|
|
265
247
|
#. module: stock_release_channel
|
|
266
248
|
#. odoo-python
|
|
267
249
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
268
|
-
#, python-format
|
|
269
250
|
msgid ""
|
|
270
251
|
"Error when evaluating the channel's code:\n"
|
|
271
252
|
" %(name)s \n"
|
|
@@ -345,11 +326,6 @@ msgstr ""
|
|
|
345
326
|
msgid "Last Done Transfer"
|
|
346
327
|
msgstr ""
|
|
347
328
|
|
|
348
|
-
#. module: stock_release_channel
|
|
349
|
-
#: model:ir.model.fields,field_description:stock_release_channel.field_stock_release_channel____last_update
|
|
350
|
-
msgid "Last Modified on"
|
|
351
|
-
msgstr ""
|
|
352
|
-
|
|
353
329
|
#. module: stock_release_channel
|
|
354
330
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
355
331
|
msgid "Last Transfer"
|
|
@@ -437,7 +413,6 @@ msgstr ""
|
|
|
437
413
|
#. module: stock_release_channel
|
|
438
414
|
#. odoo-python
|
|
439
415
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
440
|
-
#, python-format
|
|
441
416
|
msgid "No Max transfers to release is configured."
|
|
442
417
|
msgstr ""
|
|
443
418
|
|
|
@@ -455,7 +430,6 @@ msgstr "Aucun canal de livraison configuré"
|
|
|
455
430
|
#. odoo-python
|
|
456
431
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
457
432
|
#: code:addons/stock_release_channel/tests/common.py:0
|
|
458
|
-
#, python-format
|
|
459
433
|
msgid "Nothing in the queue!"
|
|
460
434
|
msgstr ""
|
|
461
435
|
|
|
@@ -518,7 +492,6 @@ msgstr ""
|
|
|
518
492
|
|
|
519
493
|
#. module: stock_release_channel
|
|
520
494
|
#: model:ir.actions.server,name:stock_release_channel.ir_cron_stock_picking_assign_release_channel_ir_actions_server
|
|
521
|
-
#: model:ir.cron,cron_name:stock_release_channel.ir_cron_stock_picking_assign_release_channel
|
|
522
495
|
msgid "Re-assign release channel"
|
|
523
496
|
msgstr "Réassigner le canal de livraison"
|
|
524
497
|
|
|
@@ -673,14 +646,12 @@ msgstr ""
|
|
|
673
646
|
#. module: stock_release_channel
|
|
674
647
|
#. odoo-python
|
|
675
648
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
676
|
-
#, python-format
|
|
677
649
|
msgid "The number of released transfers in progress is already at the maximum."
|
|
678
650
|
msgstr ""
|
|
679
651
|
|
|
680
652
|
#. module: stock_release_channel
|
|
681
653
|
#. odoo-python
|
|
682
654
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
683
|
-
#, python-format
|
|
684
655
|
msgid "The release of pickings is not allowed for channel %(name)s."
|
|
685
656
|
msgstr ""
|
|
686
657
|
|
|
@@ -688,14 +659,10 @@ msgstr ""
|
|
|
688
659
|
#: model:ir.model.fields,help:stock_release_channel.field_stock_release_channel__state
|
|
689
660
|
msgid ""
|
|
690
661
|
"The state allows you to control the availability of the release channel.\n"
|
|
691
|
-
"* Open: Manual and automatic picking assignment to the release is effective "
|
|
662
|
+
" * Open: Manual and automatic picking assignment to the release is effective "
|
|
692
663
|
"and release operations are allowed.\n"
|
|
693
|
-
"
|
|
694
|
-
"
|
|
695
|
-
"* Delivering: A background task is running to automatically deliver ready "
|
|
696
|
-
"shipments\n"
|
|
697
|
-
"* Delivering Error: An error occurred in the delivery background task\n"
|
|
698
|
-
"* Delivered: Ready transfers are delivered\n"
|
|
664
|
+
"* Locked: Release operations are forbidden. (Assignement processes are still "
|
|
665
|
+
"working)\n"
|
|
699
666
|
"* Asleep: Assigned pickings not processed are unassigned from the release "
|
|
700
667
|
"channel.\n"
|
|
701
668
|
msgstr ""
|
|
@@ -807,7 +774,6 @@ msgstr ""
|
|
|
807
774
|
#. module: stock_release_channel
|
|
808
775
|
#. odoo-python
|
|
809
776
|
#: code:addons/stock_release_channel/models/stock_picking.py:0
|
|
810
|
-
#, python-format
|
|
811
777
|
msgid ""
|
|
812
778
|
"You cannot release delivery of the channel %s because it has been forbidden "
|
|
813
779
|
"in the release channel configuration"
|
|
@@ -817,7 +783,7 @@ msgstr ""
|
|
|
817
783
|
|
|
818
784
|
#. module: stock_release_channel
|
|
819
785
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
820
|
-
msgid "
|
|
786
|
+
msgid "state"
|
|
821
787
|
msgstr ""
|
|
822
788
|
|
|
823
789
|
#~ msgid ""
|
|
@@ -25,15 +25,6 @@ msgstr ""
|
|
|
25
25
|
"<i class=\"fa fa-dropbox fa-4x\" role=\"img\" aria-label=\"Rilascio\" "
|
|
26
26
|
"title=\"Rilascio automatico\"/>"
|
|
27
27
|
|
|
28
|
-
#. module: stock_release_channel
|
|
29
|
-
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
30
|
-
msgid ""
|
|
31
|
-
"<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
32
|
-
"title=\"Details\"/>"
|
|
33
|
-
msgstr ""
|
|
34
|
-
"<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Dettagli\" "
|
|
35
|
-
"title=\"Dettagli\"/>"
|
|
36
|
-
|
|
37
28
|
#. module: stock_release_channel
|
|
38
29
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
39
30
|
msgid "<span class=\"ms-2\">Lock</span>"
|
|
@@ -62,28 +53,24 @@ msgstr "<span>Azioni</span>"
|
|
|
62
53
|
#. module: stock_release_channel
|
|
63
54
|
#. odoo-python
|
|
64
55
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
65
|
-
#, python-format
|
|
66
56
|
msgid "Action 'Lock' is not allowed for channel %(name)s."
|
|
67
57
|
msgstr "L'azione 'Blocca' non è consentita per il canale %(name)s."
|
|
68
58
|
|
|
69
59
|
#. module: stock_release_channel
|
|
70
60
|
#. odoo-python
|
|
71
61
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
72
|
-
#, python-format
|
|
73
62
|
msgid "Action 'Sleep' is not allowed for channel %(name)s."
|
|
74
63
|
msgstr "L'azione 'Sospendi' non è consentita per il canale %(name)s."
|
|
75
64
|
|
|
76
65
|
#. module: stock_release_channel
|
|
77
66
|
#. odoo-python
|
|
78
67
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
79
|
-
#, python-format
|
|
80
68
|
msgid "Action 'Unlock' is not allowed for channel %(name)s."
|
|
81
69
|
msgstr "L'azione 'Sblocca' non è consentita per il canale %(name)s."
|
|
82
70
|
|
|
83
71
|
#. module: stock_release_channel
|
|
84
72
|
#. odoo-python
|
|
85
73
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
86
|
-
#, python-format
|
|
87
74
|
msgid "Action 'Wake Up' is not allowed for channel %(name)s."
|
|
88
75
|
msgstr "L'azione 'Riattiva' non è consentita per il canale %(name)s."
|
|
89
76
|
|
|
@@ -111,7 +98,6 @@ msgstr "Tutti i movimenti (stima)"
|
|
|
111
98
|
#. odoo-python
|
|
112
99
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
113
100
|
#: model:ir.model.fields,field_description:stock_release_channel.field_stock_release_channel__count_picking_chain
|
|
114
|
-
#, python-format
|
|
115
101
|
msgid "All Related Transfers"
|
|
116
102
|
msgstr "Tutti i trasferimenti relativi"
|
|
117
103
|
|
|
@@ -138,12 +124,8 @@ msgstr "In archivio"
|
|
|
138
124
|
|
|
139
125
|
#. module: stock_release_channel
|
|
140
126
|
#: model:ir.model.fields.selection,name:stock_release_channel.selection__stock_release_channel__state__asleep
|
|
141
|
-
msgid "Asleep"
|
|
142
|
-
msgstr "Sospeso"
|
|
143
|
-
|
|
144
|
-
#. module: stock_release_channel
|
|
145
127
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_search_view
|
|
146
|
-
msgid "
|
|
128
|
+
msgid "Asleep"
|
|
147
129
|
msgstr "Sospeso"
|
|
148
130
|
|
|
149
131
|
#. module: stock_release_channel
|
|
@@ -154,7 +136,6 @@ msgstr "Assegna prelievi"
|
|
|
154
136
|
#. module: stock_release_channel
|
|
155
137
|
#. odoo-python
|
|
156
138
|
#: code:addons/stock_release_channel/models/stock_picking.py:0
|
|
157
|
-
#, python-format
|
|
158
139
|
msgid "Assign release channel on %s"
|
|
159
140
|
msgstr "Assegna canale rilascio in %s"
|
|
160
141
|
|
|
@@ -186,7 +167,6 @@ msgstr "Modalità gruppo"
|
|
|
186
167
|
#. module: stock_release_channel
|
|
187
168
|
#. odoo-python
|
|
188
169
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
189
|
-
#, python-format
|
|
190
170
|
msgid "Channel %(name)s has no validated transfer yet."
|
|
191
171
|
msgstr "Il canale %(name)s non ha ancora un trasferimento validato."
|
|
192
172
|
|
|
@@ -269,7 +249,6 @@ msgstr "Inserire qui il codice Python."
|
|
|
269
249
|
#. module: stock_release_channel
|
|
270
250
|
#. odoo-python
|
|
271
251
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
272
|
-
#, python-format
|
|
273
252
|
msgid ""
|
|
274
253
|
"Error when evaluating the channel's code:\n"
|
|
275
254
|
" %(name)s \n"
|
|
@@ -354,11 +333,6 @@ msgstr "Nome ultimo prelievo effettuato"
|
|
|
354
333
|
msgid "Last Done Transfer"
|
|
355
334
|
msgstr "Ultimo trasferimento effettuato"
|
|
356
335
|
|
|
357
|
-
#. module: stock_release_channel
|
|
358
|
-
#: model:ir.model.fields,field_description:stock_release_channel.field_stock_release_channel____last_update
|
|
359
|
-
msgid "Last Modified on"
|
|
360
|
-
msgstr "Ultima modifica il"
|
|
361
|
-
|
|
362
336
|
#. module: stock_release_channel
|
|
363
337
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
364
338
|
msgid "Last Transfer"
|
|
@@ -448,7 +422,6 @@ msgstr "Nome"
|
|
|
448
422
|
#. module: stock_release_channel
|
|
449
423
|
#. odoo-python
|
|
450
424
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
451
|
-
#, python-format
|
|
452
425
|
msgid "No Max transfers to release is configured."
|
|
453
426
|
msgstr "Non è configurato il nr. massimo di trasferimenti da rilasciare."
|
|
454
427
|
|
|
@@ -466,7 +439,6 @@ msgstr "Non è configurato il canale rilascio"
|
|
|
466
439
|
#. odoo-python
|
|
467
440
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
468
441
|
#: code:addons/stock_release_channel/tests/common.py:0
|
|
469
|
-
#, python-format
|
|
470
442
|
msgid "Nothing in the queue!"
|
|
471
443
|
msgstr "In questa coda non c'è niente!"
|
|
472
444
|
|
|
@@ -529,7 +501,6 @@ msgstr "Codice Python"
|
|
|
529
501
|
|
|
530
502
|
#. module: stock_release_channel
|
|
531
503
|
#: model:ir.actions.server,name:stock_release_channel.ir_cron_stock_picking_assign_release_channel_ir_actions_server
|
|
532
|
-
#: model:ir.cron,cron_name:stock_release_channel.ir_cron_stock_picking_assign_release_channel
|
|
533
504
|
msgid "Re-assign release channel"
|
|
534
505
|
msgstr "Riassegna canale rilascio"
|
|
535
506
|
|
|
@@ -686,14 +657,12 @@ msgstr "Campo tecnico per controllare se è consentita l'azione 'Attiva'."
|
|
|
686
657
|
#. module: stock_release_channel
|
|
687
658
|
#. odoo-python
|
|
688
659
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
689
|
-
#, python-format
|
|
690
660
|
msgid "The number of released transfers in progress is already at the maximum."
|
|
691
661
|
msgstr "Il numero di trasferimenti in corso è già al massimo."
|
|
692
662
|
|
|
693
663
|
#. module: stock_release_channel
|
|
694
664
|
#. odoo-python
|
|
695
665
|
#: code:addons/stock_release_channel/models/stock_release_channel.py:0
|
|
696
|
-
#, python-format
|
|
697
666
|
msgid "The release of pickings is not allowed for channel %(name)s."
|
|
698
667
|
msgstr "Il rilascio dei prelievi non è consentito per il canale %(name)s."
|
|
699
668
|
|
|
@@ -701,29 +670,13 @@ msgstr "Il rilascio dei prelievi non è consentito per il canale %(name)s."
|
|
|
701
670
|
#: model:ir.model.fields,help:stock_release_channel.field_stock_release_channel__state
|
|
702
671
|
msgid ""
|
|
703
672
|
"The state allows you to control the availability of the release channel.\n"
|
|
704
|
-
"* Open: Manual and automatic picking assignment to the release is effective "
|
|
673
|
+
" * Open: Manual and automatic picking assignment to the release is effective "
|
|
705
674
|
"and release operations are allowed.\n"
|
|
706
|
-
"
|
|
707
|
-
"
|
|
708
|
-
"* Delivering: A background task is running to automatically deliver ready "
|
|
709
|
-
"shipments\n"
|
|
710
|
-
"* Delivering Error: An error occurred in the delivery background task\n"
|
|
711
|
-
"* Delivered: Ready transfers are delivered\n"
|
|
675
|
+
"* Locked: Release operations are forbidden. (Assignement processes are still "
|
|
676
|
+
"working)\n"
|
|
712
677
|
"* Asleep: Assigned pickings not processed are unassigned from the release "
|
|
713
678
|
"channel.\n"
|
|
714
679
|
msgstr ""
|
|
715
|
-
"Lo stato consente di controllare la disponibilità del canale di rilascio.\n"
|
|
716
|
-
"* Apri: l'assegnazione manuale e automatica di raccolta al rilascio è "
|
|
717
|
-
"efficace e sono consentite operazioni di rilascio.\n"
|
|
718
|
-
"* Bloccato: le operazioni di rilascio sono vietate. (I processi di "
|
|
719
|
-
"assegnazione stanno ancora funzionando)\n"
|
|
720
|
-
"* Consegna: un'attività di fondo è in esecuzione per consegnare "
|
|
721
|
-
"automaticamente le spedizioni pronte\n"
|
|
722
|
-
"* Errore di consegna: si è verificato un errore nell'attività di background "
|
|
723
|
-
"di consegna\n"
|
|
724
|
-
"* Consegnato: vengono consegnati trasferimenti pronti\n"
|
|
725
|
-
"* Dormienti: i prelievi assegnati non elaborati non sono assegnati dal "
|
|
726
|
-
"canale di rilascio.\n"
|
|
727
680
|
|
|
728
681
|
#. module: stock_release_channel
|
|
729
682
|
#: model:ir.model.fields,help:stock_release_channel.field_stock_release_channel__state_at_wakeup
|
|
@@ -835,7 +788,6 @@ msgstr "Scrivere il codice Python per filtrare i prelievi."
|
|
|
835
788
|
#. module: stock_release_channel
|
|
836
789
|
#. odoo-python
|
|
837
790
|
#: code:addons/stock_release_channel/models/stock_picking.py:0
|
|
838
|
-
#, python-format
|
|
839
791
|
msgid ""
|
|
840
792
|
"You cannot release delivery of the channel %s because it has been forbidden "
|
|
841
793
|
"in the release channel configuration"
|
|
@@ -845,8 +797,51 @@ msgstr ""
|
|
|
845
797
|
|
|
846
798
|
#. module: stock_release_channel
|
|
847
799
|
#: model_terms:ir.ui.view,arch_db:stock_release_channel.stock_release_channel_kanban_view
|
|
848
|
-
msgid "
|
|
849
|
-
msgstr "
|
|
800
|
+
msgid "state"
|
|
801
|
+
msgstr ""
|
|
802
|
+
|
|
803
|
+
#~ msgid ""
|
|
804
|
+
#~ "<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Details\" "
|
|
805
|
+
#~ "title=\"Details\"/>"
|
|
806
|
+
#~ msgstr ""
|
|
807
|
+
#~ "<i class=\"fa fa-ellipsis-v\" role=\"img\" aria-label=\"Dettagli\" "
|
|
808
|
+
#~ "title=\"Dettagli\"/>"
|
|
809
|
+
|
|
810
|
+
#~ msgid "Aslepp"
|
|
811
|
+
#~ msgstr "Sospeso"
|
|
812
|
+
|
|
813
|
+
#~ msgid "Last Modified on"
|
|
814
|
+
#~ msgstr "Ultima modifica il"
|
|
815
|
+
|
|
816
|
+
#~ msgid ""
|
|
817
|
+
#~ "The state allows you to control the availability of the release channel.\n"
|
|
818
|
+
#~ "* Open: Manual and automatic picking assignment to the release is "
|
|
819
|
+
#~ "effective and release operations are allowed.\n"
|
|
820
|
+
#~ " * Locked: Release operations are forbidden. (Assignement processes are "
|
|
821
|
+
#~ "still working)\n"
|
|
822
|
+
#~ "* Delivering: A background task is running to automatically deliver ready "
|
|
823
|
+
#~ "shipments\n"
|
|
824
|
+
#~ "* Delivering Error: An error occurred in the delivery background task\n"
|
|
825
|
+
#~ "* Delivered: Ready transfers are delivered\n"
|
|
826
|
+
#~ "* Asleep: Assigned pickings not processed are unassigned from the release "
|
|
827
|
+
#~ "channel.\n"
|
|
828
|
+
#~ msgstr ""
|
|
829
|
+
#~ "Lo stato consente di controllare la disponibilità del canale di "
|
|
830
|
+
#~ "rilascio.\n"
|
|
831
|
+
#~ "* Apri: l'assegnazione manuale e automatica di raccolta al rilascio è "
|
|
832
|
+
#~ "efficace e sono consentite operazioni di rilascio.\n"
|
|
833
|
+
#~ "* Bloccato: le operazioni di rilascio sono vietate. (I processi di "
|
|
834
|
+
#~ "assegnazione stanno ancora funzionando)\n"
|
|
835
|
+
#~ "* Consegna: un'attività di fondo è in esecuzione per consegnare "
|
|
836
|
+
#~ "automaticamente le spedizioni pronte\n"
|
|
837
|
+
#~ "* Errore di consegna: si è verificato un errore nell'attività di "
|
|
838
|
+
#~ "background di consegna\n"
|
|
839
|
+
#~ "* Consegnato: vengono consegnati trasferimenti pronti\n"
|
|
840
|
+
#~ "* Dormienti: i prelievi assegnati non elaborati non sono assegnati dal "
|
|
841
|
+
#~ "canale di rilascio.\n"
|
|
842
|
+
|
|
843
|
+
#~ msgid "name"
|
|
844
|
+
#~ msgstr "nome"
|
|
850
845
|
|
|
851
846
|
#~ msgid ""
|
|
852
847
|
#~ "The state allows you to control the availability of the release channel.\n"
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import logging
|
|
7
7
|
from collections import defaultdict
|
|
8
8
|
from copy import deepcopy
|
|
9
|
+
from datetime import timedelta
|
|
9
10
|
from operator import itemgetter
|
|
10
11
|
|
|
11
12
|
import pytz
|
|
@@ -27,6 +28,9 @@ from odoo.tools.safe_eval import (
|
|
|
27
28
|
time as safe_time,
|
|
28
29
|
)
|
|
29
30
|
|
|
31
|
+
# This limit is arbitrary but we expect to have a delivery slot within this limit
|
|
32
|
+
DELIVERY_DATE_COMPUTATION_LIMIT_DAYS = 120 # in days
|
|
33
|
+
|
|
30
34
|
_logger = logging.getLogger(__name__)
|
|
31
35
|
|
|
32
36
|
|
|
@@ -960,10 +964,12 @@ class StockReleaseChannel(models.Model):
|
|
|
960
964
|
"""
|
|
961
965
|
self.ensure_one()
|
|
962
966
|
best_dt = order_dt
|
|
967
|
+
limit_dt = order_dt + timedelta(days=DELIVERY_DATE_COMPUTATION_LIMIT_DAYS)
|
|
963
968
|
for step in self._delivery_date_steps:
|
|
964
969
|
funcs = self._delivery_date_generators.get(step)
|
|
965
970
|
if not funcs:
|
|
966
971
|
continue
|
|
972
|
+
_logger.debug(f"Compute earliest delivery date for {step}")
|
|
967
973
|
generators = []
|
|
968
974
|
best_generators = []
|
|
969
975
|
start_dt = best_dt
|
|
@@ -979,14 +985,23 @@ class StockReleaseChannel(models.Model):
|
|
|
979
985
|
best_generators.append(gen)
|
|
980
986
|
# loop until all generators return the same last date
|
|
981
987
|
while len(generators) != len(best_generators):
|
|
988
|
+
if best_dt > limit_dt:
|
|
989
|
+
_logger.debug(
|
|
990
|
+
"Computation for earliest delivery date reached the limit"
|
|
991
|
+
)
|
|
992
|
+
best_dt = None
|
|
993
|
+
break
|
|
982
994
|
for gen in generators:
|
|
983
995
|
if gen in best_generators:
|
|
984
996
|
continue
|
|
985
997
|
best_dt = gen.send(previous_dt := best_dt)
|
|
986
998
|
if best_dt != previous_dt:
|
|
999
|
+
_logger.debug(f"New {step} date {best_dt} from {gen}")
|
|
987
1000
|
best_generators = [gen]
|
|
988
1001
|
else:
|
|
989
1002
|
best_generators.append(gen)
|
|
990
1003
|
for gen in generators:
|
|
991
1004
|
gen.close()
|
|
1005
|
+
if best_dt is None:
|
|
1006
|
+
break
|
|
992
1007
|
return best_dt
|
|
@@ -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:0e3bededd4f98e146c985777dbb190649092bac2badc8614221b02bfeb3eb7a8
|
|
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/stock-logistics-release-channel/tree/18.0/stock_release_channel"><img alt="OCA/stock-logistics-release-channel" src="https://img.shields.io/badge/github-OCA%2Fstock--logistics--release--channel-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/stock-logistics-release-channel-18-0/stock-logistics-release-channel-18-0-stock_release_channel"><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-release-channel&target_branch=18.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
|
378
378
|
<p>Release channels are:</p>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Copyright 2025 Jacques-Etienne Baudoux (BCIM) <je@bcim.be>
|
|
2
|
+
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl)
|
|
3
|
+
|
|
4
|
+
from datetime import timedelta
|
|
5
|
+
|
|
6
|
+
from odoo import models
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
class StockReleaseChannel(models.Model):
|
|
10
|
+
_inherit = "stock.release.channel" # pylint: disable=consider-merging-classes-inherited
|
|
11
|
+
|
|
12
|
+
@property
|
|
13
|
+
def _delivery_date_generators(self):
|
|
14
|
+
d = {}
|
|
15
|
+
d["preparation"] = [
|
|
16
|
+
self._next_delivery_date_one_day,
|
|
17
|
+
self._next_delivery_date_one_year,
|
|
18
|
+
]
|
|
19
|
+
return d
|
|
20
|
+
|
|
21
|
+
def _next_delivery_date_one_day(self, delivery_date, partner=None):
|
|
22
|
+
"""Get a next valid delivery date after 1 day"""
|
|
23
|
+
later = delivery_date + timedelta(days=1)
|
|
24
|
+
while True:
|
|
25
|
+
delivery_date = yield max(delivery_date, later)
|
|
26
|
+
|
|
27
|
+
def _next_delivery_date_one_year(self, delivery_date, partner=None):
|
|
28
|
+
"""Get a next valid delivery outside the limit"""
|
|
29
|
+
later = delivery_date + timedelta(days=365)
|
|
30
|
+
while True:
|
|
31
|
+
delivery_date = yield max(delivery_date, later)
|
|
@@ -5,7 +5,12 @@ from freezegun import freeze_time
|
|
|
5
5
|
|
|
6
6
|
from odoo import fields
|
|
7
7
|
|
|
8
|
-
from .common import
|
|
8
|
+
from .common import (
|
|
9
|
+
FakeModelLoader,
|
|
10
|
+
ReleaseChannelCase,
|
|
11
|
+
StockReleaseChannelDeliveryDateCommon,
|
|
12
|
+
TransactionCase,
|
|
13
|
+
)
|
|
9
14
|
|
|
10
15
|
to_datetime = fields.Datetime.to_datetime
|
|
11
16
|
|
|
@@ -19,6 +24,32 @@ class TestReleaseChannelDeliveryDateFake(StockReleaseChannelDeliveryDateCommon):
|
|
|
19
24
|
self.assertEqual(dt, to_datetime("2025-01-04 10:00:00"))
|
|
20
25
|
|
|
21
26
|
|
|
27
|
+
class TestReleaseChannelDeliveryDateImpossible(TransactionCase):
|
|
28
|
+
@classmethod
|
|
29
|
+
def setUpClass(cls):
|
|
30
|
+
super().setUpClass()
|
|
31
|
+
cls.loader = FakeModelLoader(cls.env, cls.__module__)
|
|
32
|
+
cls.loader.backup_registry()
|
|
33
|
+
from .models.generator_test_impossible import StockReleaseChannel
|
|
34
|
+
|
|
35
|
+
cls.loader.update_registry((StockReleaseChannel,))
|
|
36
|
+
|
|
37
|
+
cls.partner = cls.env.ref("base.main_partner")
|
|
38
|
+
cls.channel = cls.env.ref("stock_release_channel.stock_release_channel_default")
|
|
39
|
+
|
|
40
|
+
@classmethod
|
|
41
|
+
def tearDownClass(cls):
|
|
42
|
+
cls.loader.restore_registry()
|
|
43
|
+
return super().tearDownClass()
|
|
44
|
+
|
|
45
|
+
@freeze_time("2025-01-02 10:00:00")
|
|
46
|
+
def test_delivery_date(self):
|
|
47
|
+
"""Test generator on channel object"""
|
|
48
|
+
now = fields.Datetime.now()
|
|
49
|
+
dt = self.channel._get_earliest_delivery_date(self.partner, now)
|
|
50
|
+
self.assertEqual(dt, None)
|
|
51
|
+
|
|
52
|
+
|
|
22
53
|
class TestReleaseChannelDeliveryDate(ReleaseChannelCase):
|
|
23
54
|
def test_compute_delivery_date(self):
|
|
24
55
|
"""Test delivery date computes with registered generators
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
<field
|
|
52
52
|
name="release_channel_id"
|
|
53
53
|
optional="show"
|
|
54
|
-
|
|
54
|
+
column_invisible="context.get('hide_release_channel_id')"
|
|
55
55
|
/>
|
|
56
56
|
</field>
|
|
57
57
|
</field>
|
|
@@ -65,7 +65,11 @@
|
|
|
65
65
|
<field name="inherit_id" ref="stock.vpicktree" />
|
|
66
66
|
<field name="arch" type="xml">
|
|
67
67
|
<xpath expr="//field[@name='state']" position="before">
|
|
68
|
-
<field
|
|
68
|
+
<field
|
|
69
|
+
name="release_channel_id"
|
|
70
|
+
optional="show"
|
|
71
|
+
column_invisible="context.get('hide_release_channel_id')"
|
|
72
|
+
/>
|
|
69
73
|
</xpath>
|
|
70
74
|
</field>
|
|
71
75
|
</record>
|
|
@@ -348,6 +348,7 @@
|
|
|
348
348
|
<div
|
|
349
349
|
t-attf-class="#{kanban_color(record.color.raw_value)}"
|
|
350
350
|
name="release_channel"
|
|
351
|
+
style="margin: -4px"
|
|
351
352
|
>
|
|
352
353
|
<div>
|
|
353
354
|
<div t-attf-class="o_kanban_card_header">
|
|
@@ -362,8 +363,8 @@
|
|
|
362
363
|
<i
|
|
363
364
|
t-attf-class="{{ classname }}"
|
|
364
365
|
role="img"
|
|
365
|
-
title="
|
|
366
|
-
style="margin-
|
|
366
|
+
title="state"
|
|
367
|
+
style="float: right; margin-right: 14px; line-height: 24px"
|
|
367
368
|
/>
|
|
368
369
|
</div>
|
|
369
370
|
</div>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-stock_release_channel
|
|
3
|
-
Version: 18.0.1.1.
|
|
3
|
+
Version: 18.0.1.1.2
|
|
4
4
|
Requires-Python: >=3.10
|
|
5
5
|
Requires-Dist: odoo-addon-queue_job==18.0.*
|
|
6
6
|
Requires-Dist: odoo-addon-stock_available_to_promise_release==18.0.*
|
|
@@ -30,7 +30,7 @@ Stock Release Channels
|
|
|
30
30
|
!! This file is generated by oca-gen-addon-readme !!
|
|
31
31
|
!! changes will be overwritten. !!
|
|
32
32
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
33
|
-
!! source digest: sha256:
|
|
33
|
+
!! source digest: sha256:0e3bededd4f98e146c985777dbb190649092bac2badc8614221b02bfeb3eb7a8
|
|
34
34
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
35
35
|
|
|
36
36
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
odoo/addons/stock_release_channel/README.rst,sha256=
|
|
1
|
+
odoo/addons/stock_release_channel/README.rst,sha256=8rn-dRmeszPlKUZVVIpYno9KE2XuqKAoRqQJ3wu3H9I,6873
|
|
2
2
|
odoo/addons/stock_release_channel/__init__.py,sha256=X9EJGOE2GtZbS0G82PtSXmWSZ_R8jEM0rlJTDliQjp4,21
|
|
3
|
-
odoo/addons/stock_release_channel/__manifest__.py,sha256=
|
|
3
|
+
odoo/addons/stock_release_channel/__manifest__.py,sha256=nq7HmfqK-ydsFafmaWjWfa3ZlxyjzGjJLiW7-VvHGEU,1351
|
|
4
4
|
odoo/addons/stock_release_channel/data/ir_cron_data.xml,sha256=XILvZIvmn14uZApFNSzzhtzI-M45fV711k5e9D0iN2g,593
|
|
5
5
|
odoo/addons/stock_release_channel/data/queue_job_data.xml,sha256=brhyhM8YU_TKfSumeJtiGw_CxdQzm4H2tnZUJo3ze04,590
|
|
6
6
|
odoo/addons/stock_release_channel/demo/stock_release_channel.xml,sha256=mFDJ2j1nbmAOGbQwFFbT0xrAjW8n893R2MdXTyNhL2c,332
|
|
7
|
-
odoo/addons/stock_release_channel/i18n/es.po,sha256
|
|
8
|
-
odoo/addons/stock_release_channel/i18n/fr.po,sha256=
|
|
9
|
-
odoo/addons/stock_release_channel/i18n/it.po,sha256=
|
|
10
|
-
odoo/addons/stock_release_channel/i18n/stock_release_channel.pot,sha256=
|
|
7
|
+
odoo/addons/stock_release_channel/i18n/es.po,sha256=-RVBDUvnzsyPtGpMxexS4g8-4ijlQrzVB-4dOBvjWuk,33890
|
|
8
|
+
odoo/addons/stock_release_channel/i18n/fr.po,sha256=3_eGxskC46cEYoJwP4zkqFDyePOtbiTbRS1NA-47PFw,29463
|
|
9
|
+
odoo/addons/stock_release_channel/i18n/it.po,sha256=yutxlmnqvjDSO4v_XAwGHnjC3GnvkeQ0jc5kW44txA0,35771
|
|
10
|
+
odoo/addons/stock_release_channel/i18n/stock_release_channel.pot,sha256=uWVCd3oIiirb7kCohHEA0-xGUtpSXX3c_VcsUSN3FbQ,28084
|
|
11
11
|
odoo/addons/stock_release_channel/models/__init__.py,sha256=7bzf3wef0yG6SnmE67xQwGn1EM4phSOfm0o4t8k6-oU,175
|
|
12
12
|
odoo/addons/stock_release_channel/models/res_company.py,sha256=Vj27CcrLlr8vsgMelp9ix5z8IkJYhfEb7FBdO23r2VI,616
|
|
13
13
|
odoo/addons/stock_release_channel/models/res_config_settings.py,sha256=-oh2L7FWf60ACuqY5ojgRvlrqNBr9XXMCd78XVN_w9c,571
|
|
14
14
|
odoo/addons/stock_release_channel/models/res_partner.py,sha256=P4gpRYE8euQzk7TuOPwCp-pvJfMUfVzZqwR5B7oe1Fk,877
|
|
15
15
|
odoo/addons/stock_release_channel/models/stock_move.py,sha256=iaPhHbzM12YtUjexaCU6MMTQcPPntJ0FJS_BX8NKRHE,1592
|
|
16
16
|
odoo/addons/stock_release_channel/models/stock_picking.py,sha256=EKwpiwQSNjiuWmQoT3SMF8sdTRWpF0C8S_0NYhLP_NY,6836
|
|
17
|
-
odoo/addons/stock_release_channel/models/stock_release_channel.py,sha256=
|
|
17
|
+
odoo/addons/stock_release_channel/models/stock_release_channel.py,sha256=eKK0kqVoMqA8tJiC6hlbLIpCJbatgHLSwkzH4XTYabQ,38516
|
|
18
18
|
odoo/addons/stock_release_channel/readme/CONFIGURE.md,sha256=0I_Dh2FtDqoO6y0tHxjwnY5j5SEeGK7_xjURpODgWSg,95
|
|
19
19
|
odoo/addons/stock_release_channel/readme/CONTRIBUTORS.md,sha256=xrrJ3yIkmq6TyzXgi_Uu_C5WhkBmYPMgh46h9kuyCDg,426
|
|
20
20
|
odoo/addons/stock_release_channel/readme/CREDITS.md,sha256=Q-HpCW3wq96Eb9WSup9SZYdgfKNTKnwMcOgCzALQ7jE,50
|
|
@@ -22,7 +22,7 @@ odoo/addons/stock_release_channel/readme/DESCRIPTION.md,sha256=fxYLZyWH-ndmc1VGz
|
|
|
22
22
|
odoo/addons/stock_release_channel/readme/USAGE.md,sha256=EQWkBSmQwzakAkciBlkSek32TTkSVDSNRG1pRg7cB84,1600
|
|
23
23
|
odoo/addons/stock_release_channel/security/stock_release_channel.xml,sha256=tSwRdeAVTiScbTCMLOiCJNbYcywepNPZy9rRv2b1SoY,1469
|
|
24
24
|
odoo/addons/stock_release_channel/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
25
|
-
odoo/addons/stock_release_channel/static/description/index.html,sha256=
|
|
25
|
+
odoo/addons/stock_release_channel/static/description/index.html,sha256=6lJCqbEO8M2lnnJyueVYfPDLqudOZCGhvXoH5tomnsw,17933
|
|
26
26
|
odoo/addons/stock_release_channel/static/src/js/progressbar_fractional_widget.esm.js,sha256=GNoV3ZbDZXTLxRTyKkp0jwRL99Dr2EgH3TNuBWW80u0,1859
|
|
27
27
|
odoo/addons/stock_release_channel/static/src/scss/stock_release_channel.scss,sha256=TvyOGHzF7XuxZlTPBmf4aUj3b_quOHPFalpZ0LW5vfM,977
|
|
28
28
|
odoo/addons/stock_release_channel/tests/__init__.py,sha256=GKpdQIuWCHiN-e1yatgmy07kzgmlrXm8M66uTWfUjIk,266
|
|
@@ -32,16 +32,17 @@ odoo/addons/stock_release_channel/tests/test_channel_action.py,sha256=dtaYBCAOyN
|
|
|
32
32
|
odoo/addons/stock_release_channel/tests/test_channel_computed_fields.py,sha256=TbVkrpn5Sq6nt-QRQEi2OisjkwUuvwPJ75a0V77FsM0,4725
|
|
33
33
|
odoo/addons/stock_release_channel/tests/test_channel_release_batch.py,sha256=nvLf6TqcnhaA78gSpmK7Pb9unqxTm0RnY4f1QcqFlkY,2247
|
|
34
34
|
odoo/addons/stock_release_channel/tests/test_release_channel.py,sha256=Myh2rR11CCeKeGZ-9u1a4GbrHeYhrJ3LeRpsiN7WYnM,5529
|
|
35
|
-
odoo/addons/stock_release_channel/tests/test_release_channel_delivery_date.py,sha256=
|
|
35
|
+
odoo/addons/stock_release_channel/tests/test_release_channel_delivery_date.py,sha256=VDfkf61KxMRuv3k0rGvrCuLz2Nux3dmK01Tmz6nNbSI,2039
|
|
36
36
|
odoo/addons/stock_release_channel/tests/test_release_channel_lifecycle.py,sha256=hCtjqWMgLorYhdnzB8lp3ksmC3qTBrrVVtEMuifrVvE,4455
|
|
37
37
|
odoo/addons/stock_release_channel/tests/test_release_channel_partner.py,sha256=jMdMJRZ1UR6z6diA-DxRmHm-AN01J0YFEa1d9KqctPk,3471
|
|
38
38
|
odoo/addons/stock_release_channel/tests/models/__init__.py,sha256=O2PABMBnRskr9BvR4dVDAJBQQUSH8B1Y5sVZAvWOYlQ,29
|
|
39
39
|
odoo/addons/stock_release_channel/tests/models/generator_test.py,sha256=ovDRsU1aPKED_17RCAUcFYvsvbUu-4A3HqM5dmwgkVU,1227
|
|
40
|
+
odoo/addons/stock_release_channel/tests/models/generator_test_impossible.py,sha256=83LPISkxFBQ1OTUlaBrT3mQxa-sBoooNDqXjlP33TG8,1062
|
|
40
41
|
odoo/addons/stock_release_channel/views/res_config_settings.xml,sha256=ehTEpYyfEiyg0KPmU0gjMVhC_3zfW3MFDsY6ADnZYc4,1229
|
|
41
42
|
odoo/addons/stock_release_channel/views/res_partner.xml,sha256=01rh7UBBsNqDokHzXsPt7rZKtpT03YKy-e8DHctdbZI,993
|
|
42
|
-
odoo/addons/stock_release_channel/views/stock_picking_views.xml,sha256=
|
|
43
|
-
odoo/addons/stock_release_channel/views/stock_release_channel_views.xml,sha256=
|
|
44
|
-
odoo_addon_stock_release_channel-18.0.1.1.
|
|
45
|
-
odoo_addon_stock_release_channel-18.0.1.1.
|
|
46
|
-
odoo_addon_stock_release_channel-18.0.1.1.
|
|
47
|
-
odoo_addon_stock_release_channel-18.0.1.1.
|
|
43
|
+
odoo/addons/stock_release_channel/views/stock_picking_views.xml,sha256=LesPS6bpRomZBpXX84b7ehO5cQvz-DuK6UF73nu1FLA,2963
|
|
44
|
+
odoo/addons/stock_release_channel/views/stock_release_channel_views.xml,sha256=lirRheO0-JuQBmZ2qiE8GL4mLEZQ2lq8ijZdYY7YwXU,46358
|
|
45
|
+
odoo_addon_stock_release_channel-18.0.1.1.2.dist-info/METADATA,sha256=rlkE8Yc_bJ7ZnBduBbPZK_KP5s3S1kZ6JjrA1VpQXy0,7637
|
|
46
|
+
odoo_addon_stock_release_channel-18.0.1.1.2.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
|
|
47
|
+
odoo_addon_stock_release_channel-18.0.1.1.2.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
|
|
48
|
+
odoo_addon_stock_release_channel-18.0.1.1.2.dist-info/RECORD,,
|
|
File without changes
|