odoo-addon-quality-control-stock-oca 15.0.1.0.0.5__py3-none-any.whl → 16.0.1.0.0.3__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/quality_control_stock_oca/README.rst +6 -6
- odoo/addons/quality_control_stock_oca/__manifest__.py +2 -1
- odoo/addons/quality_control_stock_oca/i18n/ca.po +7 -7
- odoo/addons/quality_control_stock_oca/i18n/de.po +7 -7
- odoo/addons/quality_control_stock_oca/i18n/el_GR.po +7 -7
- odoo/addons/quality_control_stock_oca/i18n/es.po +7 -7
- odoo/addons/quality_control_stock_oca/i18n/quality_control_stock_oca.pot +8 -8
- odoo/addons/quality_control_stock_oca/models/qc_inspection.py +18 -34
- odoo/addons/quality_control_stock_oca/models/stock_picking.py +1 -1
- odoo/addons/quality_control_stock_oca/models/stock_picking_type.py +13 -8
- odoo/addons/quality_control_stock_oca/models/stock_production_lot.py +1 -1
- odoo/addons/quality_control_stock_oca/static/description/index.html +4 -4
- odoo/addons/quality_control_stock_oca/tests/test_quality_control_stock.py +82 -101
- odoo/addons/quality_control_stock_oca/views/qc_trigger_view.xml +13 -0
- odoo/addons/quality_control_stock_oca/views/stock_picking_view.xml +9 -5
- odoo/addons/quality_control_stock_oca/views/stock_production_lot_view.xml +11 -7
- {odoo_addon_quality_control_stock_oca-15.0.1.0.0.5.dist-info → odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info}/METADATA +11 -11
- {odoo_addon_quality_control_stock_oca-15.0.1.0.0.5.dist-info → odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info}/RECORD +20 -19
- {odoo_addon_quality_control_stock_oca-15.0.1.0.0.5.dist-info → odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info}/WHEEL +0 -0
- {odoo_addon_quality_control_stock_oca-15.0.1.0.0.5.dist-info → odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info}/top_level.txt +0 -0
@@ -7,7 +7,7 @@ Quality control - Stock (OCA)
|
|
7
7
|
!! This file is generated by oca-gen-addon-readme !!
|
8
8
|
!! changes will be overwritten. !!
|
9
9
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
10
|
-
!! source digest: sha256:
|
10
|
+
!! source digest: sha256:7430252681826a0a0f9a869194458e38ac20900898f0f8ff40422f13702695ee
|
11
11
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
12
12
|
|
13
13
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
@@ -17,13 +17,13 @@ Quality control - Stock (OCA)
|
|
17
17
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
18
18
|
:alt: License: AGPL-3
|
19
19
|
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmanufacture-lightgray.png?logo=github
|
20
|
-
:target: https://github.com/OCA/manufacture/tree/
|
20
|
+
:target: https://github.com/OCA/manufacture/tree/16.0/quality_control_stock_oca
|
21
21
|
:alt: OCA/manufacture
|
22
22
|
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
23
|
-
:target: https://translation.odoo-community.org/projects/manufacture-
|
23
|
+
:target: https://translation.odoo-community.org/projects/manufacture-16-0/manufacture-16-0-quality_control_stock_oca
|
24
24
|
:alt: Translate me on Weblate
|
25
25
|
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
|
26
|
-
:target: https://runboat.odoo-community.org/builds?repo=OCA/manufacture&target_branch=
|
26
|
+
:target: https://runboat.odoo-community.org/builds?repo=OCA/manufacture&target_branch=16.0
|
27
27
|
:alt: Try me on Runboat
|
28
28
|
|
29
29
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
@@ -48,7 +48,7 @@ Bug Tracker
|
|
48
48
|
Bugs are tracked on `GitHub Issues <https://github.com/OCA/manufacture/issues>`_.
|
49
49
|
In case of trouble, please check there if your issue has already been reported.
|
50
50
|
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
51
|
-
`feedback <https://github.com/OCA/manufacture/issues/new?body=module:%20quality_control_stock_oca%0Aversion:%
|
51
|
+
`feedback <https://github.com/OCA/manufacture/issues/new?body=module:%20quality_control_stock_oca%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
52
52
|
|
53
53
|
Do not contact contributors directly about support or help with technical issues.
|
54
54
|
|
@@ -89,6 +89,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
89
89
|
mission is to support the collaborative development of Odoo features and
|
90
90
|
promote its widespread use.
|
91
91
|
|
92
|
-
This module is part of the `OCA/manufacture <https://github.com/OCA/manufacture/tree/
|
92
|
+
This module is part of the `OCA/manufacture <https://github.com/OCA/manufacture/tree/16.0/quality_control_stock_oca>`_ project on GitHub.
|
93
93
|
|
94
94
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
{
|
7
7
|
"name": "Quality control - Stock (OCA)",
|
8
|
-
"version": "
|
8
|
+
"version": "16.0.1.0.0",
|
9
9
|
"category": "Quality control",
|
10
10
|
"license": "AGPL-3",
|
11
11
|
"author": "OdooMRP team, AvanzOSC, Serv. Tecnol. Avanzados - Pedro M. Baeza, "
|
@@ -16,6 +16,7 @@
|
|
16
16
|
"views/qc_inspection_view.xml",
|
17
17
|
"views/stock_picking_view.xml",
|
18
18
|
"views/stock_production_lot_view.xml",
|
19
|
+
"views/qc_trigger_view.xml",
|
19
20
|
],
|
20
21
|
"post_init_hook": "post_init_hook",
|
21
22
|
"installable": True,
|
@@ -20,37 +20,37 @@ msgstr ""
|
|
20
20
|
"X-Generator: Poedit 2.0.6\n"
|
21
21
|
|
22
22
|
#. module: quality_control_stock_oca
|
23
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__created_inspections
|
23
24
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__created_inspections
|
24
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__created_inspections
|
25
25
|
msgid "Created inspections"
|
26
26
|
msgstr ""
|
27
27
|
|
28
28
|
#. module: quality_control_stock_oca
|
29
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__done_inspections
|
29
30
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__done_inspections
|
30
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__done_inspections
|
31
31
|
msgid "Done inspections"
|
32
32
|
msgstr ""
|
33
33
|
|
34
34
|
#. module: quality_control_stock_oca
|
35
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
35
36
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__qc_inspections_ids
|
36
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__qc_inspections_ids
|
37
37
|
msgid "Inspections"
|
38
38
|
msgstr ""
|
39
39
|
|
40
40
|
#. module: quality_control_stock_oca
|
41
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__passed_inspections
|
41
42
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__passed_inspections
|
42
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__passed_inspections
|
43
43
|
msgid "Inspections OK"
|
44
44
|
msgstr ""
|
45
45
|
|
46
46
|
#. module: quality_control_stock_oca
|
47
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__failed_inspections
|
47
48
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__failed_inspections
|
48
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__failed_inspections
|
49
49
|
msgid "Inspections failed"
|
50
50
|
msgstr ""
|
51
51
|
|
52
52
|
#. module: quality_control_stock_oca
|
53
|
-
#: model:ir.model.fields,help:quality_control_stock_oca.
|
53
|
+
#: model:ir.model.fields,help:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
54
54
|
msgid "Inspections related to this lot."
|
55
55
|
msgstr ""
|
56
56
|
|
@@ -68,7 +68,7 @@ msgid "Lot"
|
|
68
68
|
msgstr ""
|
69
69
|
|
70
70
|
#. module: quality_control_stock_oca
|
71
|
-
#: model:ir.model,name:quality_control_stock_oca.
|
71
|
+
#: model:ir.model,name:quality_control_stock_oca.model_stock_lot
|
72
72
|
msgid "Lot/Serial"
|
73
73
|
msgstr ""
|
74
74
|
|
@@ -25,37 +25,37 @@ msgstr ""
|
|
25
25
|
"X-Generator: Poedit 2.0.6\n"
|
26
26
|
|
27
27
|
#. module: quality_control_stock_oca
|
28
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__created_inspections
|
28
29
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__created_inspections
|
29
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__created_inspections
|
30
30
|
msgid "Created inspections"
|
31
31
|
msgstr "Erstellte Prüfungen"
|
32
32
|
|
33
33
|
#. module: quality_control_stock_oca
|
34
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__done_inspections
|
34
35
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__done_inspections
|
35
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__done_inspections
|
36
36
|
msgid "Done inspections"
|
37
37
|
msgstr "Durchgeführte Prüfungen"
|
38
38
|
|
39
39
|
#. module: quality_control_stock_oca
|
40
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
40
41
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__qc_inspections_ids
|
41
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__qc_inspections_ids
|
42
42
|
msgid "Inspections"
|
43
43
|
msgstr "Prüfungen"
|
44
44
|
|
45
45
|
#. module: quality_control_stock_oca
|
46
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__passed_inspections
|
46
47
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__passed_inspections
|
47
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__passed_inspections
|
48
48
|
msgid "Inspections OK"
|
49
49
|
msgstr "Prüfungen OK"
|
50
50
|
|
51
51
|
#. module: quality_control_stock_oca
|
52
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__failed_inspections
|
52
53
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__failed_inspections
|
53
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__failed_inspections
|
54
54
|
msgid "Inspections failed"
|
55
55
|
msgstr "Prüfungen gescheitert"
|
56
56
|
|
57
57
|
#. module: quality_control_stock_oca
|
58
|
-
#: model:ir.model.fields,help:quality_control_stock_oca.
|
58
|
+
#: model:ir.model.fields,help:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
59
59
|
msgid "Inspections related to this lot."
|
60
60
|
msgstr "Prüfungen mit Bezug auf dieses Los."
|
61
61
|
|
@@ -73,7 +73,7 @@ msgid "Lot"
|
|
73
73
|
msgstr "Los"
|
74
74
|
|
75
75
|
#. module: quality_control_stock_oca
|
76
|
-
#: model:ir.model,name:quality_control_stock_oca.
|
76
|
+
#: model:ir.model,name:quality_control_stock_oca.model_stock_lot
|
77
77
|
msgid "Lot/Serial"
|
78
78
|
msgstr "Chargen-/Seriennummer"
|
79
79
|
|
@@ -20,37 +20,37 @@ msgstr ""
|
|
20
20
|
"X-Generator: Poedit 2.0.6\n"
|
21
21
|
|
22
22
|
#. module: quality_control_stock_oca
|
23
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__created_inspections
|
23
24
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__created_inspections
|
24
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__created_inspections
|
25
25
|
msgid "Created inspections"
|
26
26
|
msgstr ""
|
27
27
|
|
28
28
|
#. module: quality_control_stock_oca
|
29
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__done_inspections
|
29
30
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__done_inspections
|
30
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__done_inspections
|
31
31
|
msgid "Done inspections"
|
32
32
|
msgstr ""
|
33
33
|
|
34
34
|
#. module: quality_control_stock_oca
|
35
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
35
36
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__qc_inspections_ids
|
36
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__qc_inspections_ids
|
37
37
|
msgid "Inspections"
|
38
38
|
msgstr ""
|
39
39
|
|
40
40
|
#. module: quality_control_stock_oca
|
41
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__passed_inspections
|
41
42
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__passed_inspections
|
42
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__passed_inspections
|
43
43
|
msgid "Inspections OK"
|
44
44
|
msgstr ""
|
45
45
|
|
46
46
|
#. module: quality_control_stock_oca
|
47
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__failed_inspections
|
47
48
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__failed_inspections
|
48
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__failed_inspections
|
49
49
|
msgid "Inspections failed"
|
50
50
|
msgstr ""
|
51
51
|
|
52
52
|
#. module: quality_control_stock_oca
|
53
|
-
#: model:ir.model.fields,help:quality_control_stock_oca.
|
53
|
+
#: model:ir.model.fields,help:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
54
54
|
msgid "Inspections related to this lot."
|
55
55
|
msgstr ""
|
56
56
|
|
@@ -68,7 +68,7 @@ msgid "Lot"
|
|
68
68
|
msgstr ""
|
69
69
|
|
70
70
|
#. module: quality_control_stock_oca
|
71
|
-
#: model:ir.model,name:quality_control_stock_oca.
|
71
|
+
#: model:ir.model,name:quality_control_stock_oca.model_stock_lot
|
72
72
|
msgid "Lot/Serial"
|
73
73
|
msgstr ""
|
74
74
|
|
@@ -23,37 +23,37 @@ msgstr ""
|
|
23
23
|
"X-Generator: Poedit 2.0.6\n"
|
24
24
|
|
25
25
|
#. module: quality_control_stock_oca
|
26
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__created_inspections
|
26
27
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__created_inspections
|
27
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__created_inspections
|
28
28
|
msgid "Created inspections"
|
29
29
|
msgstr "Inspecciones creadas"
|
30
30
|
|
31
31
|
#. module: quality_control_stock_oca
|
32
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__done_inspections
|
32
33
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__done_inspections
|
33
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__done_inspections
|
34
34
|
msgid "Done inspections"
|
35
35
|
msgstr "Inspecciones realizadas"
|
36
36
|
|
37
37
|
#. module: quality_control_stock_oca
|
38
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
38
39
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__qc_inspections_ids
|
39
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__qc_inspections_ids
|
40
40
|
msgid "Inspections"
|
41
41
|
msgstr "Inspecciones"
|
42
42
|
|
43
43
|
#. module: quality_control_stock_oca
|
44
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__passed_inspections
|
44
45
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__passed_inspections
|
45
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__passed_inspections
|
46
46
|
msgid "Inspections OK"
|
47
47
|
msgstr "Inspecciones correctas"
|
48
48
|
|
49
49
|
#. module: quality_control_stock_oca
|
50
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__failed_inspections
|
50
51
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__failed_inspections
|
51
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__failed_inspections
|
52
52
|
msgid "Inspections failed"
|
53
53
|
msgstr "Inspecciones fallidas"
|
54
54
|
|
55
55
|
#. module: quality_control_stock_oca
|
56
|
-
#: model:ir.model.fields,help:quality_control_stock_oca.
|
56
|
+
#: model:ir.model.fields,help:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
57
57
|
msgid "Inspections related to this lot."
|
58
58
|
msgstr "Inspecciones relativas a este lote."
|
59
59
|
|
@@ -71,7 +71,7 @@ msgid "Lot"
|
|
71
71
|
msgstr "Lote"
|
72
72
|
|
73
73
|
#. module: quality_control_stock_oca
|
74
|
-
#: model:ir.model,name:quality_control_stock_oca.
|
74
|
+
#: model:ir.model,name:quality_control_stock_oca.model_stock_lot
|
75
75
|
msgid "Lot/Serial"
|
76
76
|
msgstr "Lote/Nº de serie"
|
77
77
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
#
|
5
5
|
msgid ""
|
6
6
|
msgstr ""
|
7
|
-
"Project-Id-Version: Odoo Server
|
7
|
+
"Project-Id-Version: Odoo Server 16.0\n"
|
8
8
|
"Report-Msgid-Bugs-To: \n"
|
9
9
|
"Last-Translator: \n"
|
10
10
|
"Language-Team: \n"
|
@@ -14,37 +14,37 @@ msgstr ""
|
|
14
14
|
"Plural-Forms: \n"
|
15
15
|
|
16
16
|
#. module: quality_control_stock_oca
|
17
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__created_inspections
|
17
18
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__created_inspections
|
18
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__created_inspections
|
19
19
|
msgid "Created inspections"
|
20
20
|
msgstr ""
|
21
21
|
|
22
22
|
#. module: quality_control_stock_oca
|
23
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__done_inspections
|
23
24
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__done_inspections
|
24
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__done_inspections
|
25
25
|
msgid "Done inspections"
|
26
26
|
msgstr ""
|
27
27
|
|
28
28
|
#. module: quality_control_stock_oca
|
29
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
29
30
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__qc_inspections_ids
|
30
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__qc_inspections_ids
|
31
31
|
msgid "Inspections"
|
32
32
|
msgstr ""
|
33
33
|
|
34
34
|
#. module: quality_control_stock_oca
|
35
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__passed_inspections
|
35
36
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__passed_inspections
|
36
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__passed_inspections
|
37
37
|
msgid "Inspections OK"
|
38
38
|
msgstr ""
|
39
39
|
|
40
40
|
#. module: quality_control_stock_oca
|
41
|
+
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_lot__failed_inspections
|
41
42
|
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_picking__failed_inspections
|
42
|
-
#: model:ir.model.fields,field_description:quality_control_stock_oca.field_stock_production_lot__failed_inspections
|
43
43
|
msgid "Inspections failed"
|
44
44
|
msgstr ""
|
45
45
|
|
46
46
|
#. module: quality_control_stock_oca
|
47
|
-
#: model:ir.model.fields,help:quality_control_stock_oca.
|
47
|
+
#: model:ir.model.fields,help:quality_control_stock_oca.field_stock_lot__qc_inspections_ids
|
48
48
|
msgid "Inspections related to this lot."
|
49
49
|
msgstr ""
|
50
50
|
|
@@ -62,7 +62,7 @@ msgid "Lot"
|
|
62
62
|
msgstr ""
|
63
63
|
|
64
64
|
#. module: quality_control_stock_oca
|
65
|
-
#: model:ir.model,name:quality_control_stock_oca.
|
65
|
+
#: model:ir.model,name:quality_control_stock_oca.model_stock_lot
|
66
66
|
msgid "Lot/Serial"
|
67
67
|
msgstr ""
|
68
68
|
|
@@ -13,7 +13,7 @@ class QcInspection(models.Model):
|
|
13
13
|
comodel_name="stock.picking", compute="_compute_picking", store=True
|
14
14
|
)
|
15
15
|
lot_id = fields.Many2one(
|
16
|
-
comodel_name="stock.
|
16
|
+
comodel_name="stock.lot", compute="_compute_lot", store=True
|
17
17
|
)
|
18
18
|
|
19
19
|
def object_selection_values(self):
|
@@ -22,21 +22,18 @@ class QcInspection(models.Model):
|
|
22
22
|
[
|
23
23
|
("stock.picking", "Picking List"),
|
24
24
|
("stock.move", "Stock Move"),
|
25
|
-
("stock.
|
25
|
+
("stock.lot", "Lot/Serial Number"),
|
26
26
|
]
|
27
27
|
)
|
28
28
|
return result
|
29
29
|
|
30
30
|
@api.depends("object_id")
|
31
31
|
def _compute_picking(self):
|
32
|
-
for inspection in self:
|
33
|
-
if inspection.object_id:
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
inspection.picking_id = inspection.object_id
|
38
|
-
elif inspection.object_id._name == "stock.move.line":
|
39
|
-
inspection.picking_id = inspection.object_id.picking_id
|
32
|
+
for inspection in self.filtered("object_id"):
|
33
|
+
if inspection.object_id._name == "stock.move":
|
34
|
+
inspection.picking_id = inspection.object_id.picking_id
|
35
|
+
elif inspection.object_id._name == "stock.picking":
|
36
|
+
inspection.picking_id = inspection.object_id
|
40
37
|
|
41
38
|
@api.depends("object_id")
|
42
39
|
def _compute_lot(self):
|
@@ -46,19 +43,13 @@ class QcInspection(models.Model):
|
|
46
43
|
move_lines = self.env["stock.move.line"].search(
|
47
44
|
[("lot_id", "!=", False), ("move_id", "in", [move.id for move in moves])]
|
48
45
|
)
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
move_lines.filtered(
|
57
|
-
lambda line: line.move_id == inspection.object_id
|
58
|
-
)
|
59
|
-
).lot_id
|
60
|
-
elif inspection.object_id._name == "stock.production.lot":
|
61
|
-
inspection.lot_id = inspection.object_id
|
46
|
+
for inspection in self.filtered("object_id"):
|
47
|
+
if inspection.object_id._name == "stock.move":
|
48
|
+
inspection.lot_id = first(
|
49
|
+
move_lines.filtered(lambda x: x.move_id == inspection.object_id)
|
50
|
+
).lot_id
|
51
|
+
elif inspection.object_id._name == "stock.lot":
|
52
|
+
inspection.lot_id = inspection.object_id
|
62
53
|
|
63
54
|
@api.depends("object_id")
|
64
55
|
def _compute_product_id(self):
|
@@ -67,25 +58,18 @@ class QcInspection(models.Model):
|
|
67
58
|
for inspection in self.filtered("object_id"):
|
68
59
|
if inspection.object_id._name == "stock.move":
|
69
60
|
inspection.product_id = inspection.object_id.product_id
|
70
|
-
elif inspection.object_id._name == "stock.
|
71
|
-
inspection.product_id = inspection.object_id.product_id
|
72
|
-
elif inspection.object_id._name == "stock.production.lot":
|
61
|
+
elif inspection.object_id._name == "stock.lot":
|
73
62
|
inspection.product_id = inspection.object_id.product_id
|
74
63
|
return res
|
75
64
|
|
76
65
|
@api.onchange("object_id")
|
77
66
|
def onchange_object_id(self):
|
78
|
-
if self.object_id:
|
79
|
-
|
80
|
-
self.qty = self.object_id.product_qty
|
81
|
-
elif self.object_id._name == "stock.move.line":
|
82
|
-
self.qty = self.object_id.product_qty
|
67
|
+
if self.object_id and self.object_id._name == "stock.move":
|
68
|
+
self.qty = self.object_id.product_qty
|
83
69
|
|
84
70
|
def _prepare_inspection_header(self, object_ref, trigger_line):
|
85
71
|
res = super()._prepare_inspection_header(object_ref, trigger_line)
|
86
72
|
# Fill qty when coming from pack operations
|
87
|
-
if object_ref and object_ref._name == "stock.move.line":
|
88
|
-
res["qty"] = object_ref.product_qty
|
89
73
|
if object_ref and object_ref._name == "stock.move":
|
90
74
|
res["qty"] = object_ref.product_uom_qty
|
91
75
|
return res
|
@@ -98,5 +82,5 @@ class QcInspectionLine(models.Model):
|
|
98
82
|
comodel_name="stock.picking", related="inspection_id.picking_id", store=True
|
99
83
|
)
|
100
84
|
lot_id = fields.Many2one(
|
101
|
-
comodel_name="stock.
|
85
|
+
comodel_name="stock.lot", related="inspection_id.lot_id", store=True
|
102
86
|
)
|
@@ -64,7 +64,7 @@ class StockPicking(models.Model):
|
|
64
64
|
.sudo()
|
65
65
|
.search([("picking_type_id", "=", self.picking_type_id.id)])
|
66
66
|
)
|
67
|
-
for operation in self.
|
67
|
+
for operation in self.move_ids:
|
68
68
|
trigger_lines = set()
|
69
69
|
for model in [
|
70
70
|
"qc.trigger.product_category_line",
|
@@ -8,15 +8,20 @@ from odoo import api, models
|
|
8
8
|
class StockPickingType(models.Model):
|
9
9
|
_inherit = "stock.picking.type"
|
10
10
|
|
11
|
+
def _prepare_qc_trigger_vals(self):
|
12
|
+
self.ensure_one()
|
13
|
+
return {
|
14
|
+
"name": self.display_name,
|
15
|
+
"company_id": self.warehouse_id.company_id.id,
|
16
|
+
"picking_type_id": self.id,
|
17
|
+
"partner_selectable": True,
|
18
|
+
}
|
19
|
+
|
11
20
|
def _create_qc_trigger(self):
|
21
|
+
values = []
|
12
22
|
for picking_type in self:
|
13
|
-
|
14
|
-
|
15
|
-
"company_id": picking_type.warehouse_id.company_id.id,
|
16
|
-
"picking_type_id": picking_type.id,
|
17
|
-
"partner_selectable": True,
|
18
|
-
}
|
19
|
-
self.env["qc.trigger"].sudo().create(qc_trigger)
|
23
|
+
values.append(picking_type._prepare_qc_trigger_vals())
|
24
|
+
self.env["qc.trigger"].sudo().create(values)
|
20
25
|
|
21
26
|
@api.model_create_multi
|
22
27
|
def create(self, val_list):
|
@@ -32,5 +37,5 @@ class StockPickingType(models.Model):
|
|
32
37
|
qc_triggers = qc_trigger_model.search(
|
33
38
|
[("picking_type_id", "=", rec.id)]
|
34
39
|
)
|
35
|
-
qc_triggers.write({"name": rec.
|
40
|
+
qc_triggers.write({"name": rec.display_name})
|
36
41
|
return res
|
@@ -367,9 +367,9 @@ ul.auto-toc {
|
|
367
367
|
!! This file is generated by oca-gen-addon-readme !!
|
368
368
|
!! changes will be overwritten. !!
|
369
369
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
370
|
-
!! source digest: sha256:
|
370
|
+
!! source digest: sha256:7430252681826a0a0f9a869194458e38ac20900898f0f8ff40422f13702695ee
|
371
371
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
372
|
-
<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/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/manufacture/tree/
|
372
|
+
<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/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/manufacture/tree/16.0/quality_control_stock_oca"><img alt="OCA/manufacture" src="https://img.shields.io/badge/github-OCA%2Fmanufacture-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/manufacture-16-0/manufacture-16-0-quality_control_stock_oca"><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/manufacture&target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
373
373
|
<p>This module defines triggers that creates inspections when stock moves are done.</p>
|
374
374
|
<p>It also adds some shortcuts on picking and lots to these inspections.</p>
|
375
375
|
<p><strong>Table of contents</strong></p>
|
@@ -396,7 +396,7 @@ ul.auto-toc {
|
|
396
396
|
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/manufacture/issues">GitHub Issues</a>.
|
397
397
|
In case of trouble, please check there if your issue has already been reported.
|
398
398
|
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
399
|
-
<a class="reference external" href="https://github.com/OCA/manufacture/issues/new?body=module:%20quality_control_stock_oca%0Aversion:%
|
399
|
+
<a class="reference external" href="https://github.com/OCA/manufacture/issues/new?body=module:%20quality_control_stock_oca%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
400
400
|
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
401
401
|
</div>
|
402
402
|
<div class="section" id="credits">
|
@@ -432,7 +432,7 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
|
|
432
432
|
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
|
433
433
|
mission is to support the collaborative development of Odoo features and
|
434
434
|
promote its widespread use.</p>
|
435
|
-
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/manufacture/tree/
|
435
|
+
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/manufacture/tree/16.0/quality_control_stock_oca">OCA/manufacture</a> project on GitHub.</p>
|
436
436
|
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
437
437
|
</div>
|
438
438
|
</div>
|
@@ -1,119 +1,90 @@
|
|
1
1
|
# Copyright 2015 Oihane Crucelaegui - AvanzOSC
|
2
2
|
# Copyright 2018 Simone Rubino - Agile Business Group
|
3
3
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
|
4
|
+
from odoo.tests import Form, new_test_user
|
5
|
+
from odoo.tools import mute_logger
|
4
6
|
|
5
|
-
from odoo.tests.
|
7
|
+
from odoo.addons.quality_control_oca.tests.test_quality_control import (
|
8
|
+
TestQualityControlOcaBase,
|
9
|
+
)
|
6
10
|
|
7
11
|
|
8
|
-
class
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
self.sequence = self.env["ir.sequence"].create(
|
24
|
-
{"code": "out", "name": "outgoing_sequence"}
|
25
|
-
)
|
26
|
-
inspection_lines = self.inspection_model._prepare_inspection_lines(self.test)
|
27
|
-
self.inspection1 = self.inspection_model.create(
|
28
|
-
{"name": "Test Inspection", "inspection_lines": inspection_lines}
|
29
|
-
)
|
30
|
-
self.trigger = self.qc_trigger_model.search(
|
31
|
-
[("picking_type_id", "=", self.picking_type.id)]
|
32
|
-
)
|
33
|
-
self.lot = self.env["stock.production.lot"].create(
|
12
|
+
class TestQualityControlStockOca(TestQualityControlOcaBase):
|
13
|
+
@classmethod
|
14
|
+
def setUpClass(cls):
|
15
|
+
super().setUpClass()
|
16
|
+
cls.qc_trigger_model = cls.env["qc.trigger"]
|
17
|
+
cls.picking_type_model = cls.env["stock.picking.type"]
|
18
|
+
cls.partner1 = cls.env["res.partner"].create({"name": "Test partner 1"})
|
19
|
+
cls.partner2 = cls.env["res.partner"].create({"name": "Test partner 2"})
|
20
|
+
cls.picking_type = cls.env.ref("stock.picking_type_out")
|
21
|
+
cls.location = cls.picking_type.default_location_src_id
|
22
|
+
cls.location_dest = cls.picking_type.default_location_dest_id
|
23
|
+
cls.trigger = cls.qc_trigger_model.search(
|
24
|
+
[("picking_type_id", "=", cls.picking_type.id)]
|
25
|
+
)
|
26
|
+
cls.lot = cls.env["stock.lot"].create(
|
34
27
|
{
|
35
28
|
"name": "Lot for tests",
|
36
|
-
"product_id":
|
37
|
-
"company_id": self.company.id,
|
29
|
+
"product_id": cls.product.id,
|
38
30
|
}
|
39
31
|
)
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
"product_id": self.product.id,
|
49
|
-
"product_uom": self.product.uom_id.id,
|
50
|
-
"product_uom_qty": 2.0,
|
51
|
-
"location_id": self.picking_type.default_location_src_id.id,
|
52
|
-
"location_dest_id": self.location_dest.id,
|
53
|
-
"quantity_done": 1.0,
|
54
|
-
}
|
55
|
-
self.picking1 = (
|
56
|
-
self.picking_model.with_user(self.user1_id)
|
57
|
-
.with_context(default_picking_type_id=self.picking_type.id)
|
58
|
-
.create(
|
59
|
-
{
|
60
|
-
"partner_id": self.partner1.id,
|
61
|
-
"picking_type_id": self.picking_type.id,
|
62
|
-
"move_lines": [(0, 0, move_vals)],
|
63
|
-
"location_dest_id": self.location_dest.id,
|
64
|
-
}
|
65
|
-
)
|
32
|
+
cls.product.detailed_type = "product"
|
33
|
+
cls.env["stock.quant"].create(
|
34
|
+
{
|
35
|
+
"product_id": cls.product.id,
|
36
|
+
"location_id": cls.location.id,
|
37
|
+
"quantity": 1,
|
38
|
+
"lot_id": cls.lot.id,
|
39
|
+
}
|
66
40
|
)
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
],
|
89
|
-
"sequence": sequence,
|
90
|
-
}
|
91
|
-
)
|
92
|
-
sequence += 10
|
41
|
+
cls.user = new_test_user(
|
42
|
+
cls.env,
|
43
|
+
login="test_quality_control_stock_oca",
|
44
|
+
groups="%s,%s"
|
45
|
+
% (
|
46
|
+
"stock.group_stock_user",
|
47
|
+
"quality_control_oca.group_quality_control_user",
|
48
|
+
),
|
49
|
+
)
|
50
|
+
picking_form = Form(
|
51
|
+
cls.env["stock.picking"]
|
52
|
+
.with_user(cls.user)
|
53
|
+
.with_context(default_picking_type_id=cls.picking_type.id)
|
54
|
+
)
|
55
|
+
picking_form.partner_id = cls.partner1
|
56
|
+
with picking_form.move_ids_without_package.new() as move_form:
|
57
|
+
move_form.product_id = cls.product
|
58
|
+
move_form.product_uom_qty = 2
|
59
|
+
cls.picking1 = picking_form.save()
|
60
|
+
cls.picking1.action_confirm()
|
61
|
+
cls.picking1.move_ids.move_line_ids.qty_done = 1
|
93
62
|
|
63
|
+
@mute_logger("odoo.models.unlink")
|
94
64
|
def test_inspection_create_for_product(self):
|
95
65
|
self.product.qc_triggers = [
|
96
66
|
(0, 0, {"trigger": self.trigger.id, "test": self.test.id})
|
97
67
|
]
|
98
|
-
self.picking1.
|
68
|
+
self.picking1._action_done()
|
99
69
|
self.assertEqual(
|
100
70
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
101
71
|
)
|
102
72
|
inspection = self.picking1.qc_inspections_ids[:1]
|
103
|
-
self.assertEqual(inspection.qty,
|
73
|
+
self.assertEqual(inspection.qty, self.picking1.move_ids.product_uom_qty)
|
104
74
|
self.assertEqual(
|
105
75
|
inspection.test, self.test, "Wrong test picked when creating inspection."
|
106
76
|
)
|
107
77
|
# Try in this context if onchange with an stock.pack.operation works
|
108
78
|
inspection.qty = 5
|
109
79
|
inspection.onchange_object_id()
|
110
|
-
self.assertEqual(inspection.qty,
|
80
|
+
self.assertEqual(inspection.qty, self.picking1.move_ids.product_uom_qty)
|
111
81
|
|
82
|
+
@mute_logger("odoo.models.unlink")
|
112
83
|
def test_inspection_create_for_template(self):
|
113
84
|
self.product.product_tmpl_id.qc_triggers = [
|
114
85
|
(0, 0, {"trigger": self.trigger.id, "test": self.test.id})
|
115
86
|
]
|
116
|
-
self.picking1.
|
87
|
+
self.picking1._action_done()
|
117
88
|
self.assertEqual(
|
118
89
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
119
90
|
)
|
@@ -123,11 +94,12 @@ class TestQualityControl(TransactionCase):
|
|
123
94
|
"Wrong test picked when creating inspection.",
|
124
95
|
)
|
125
96
|
|
97
|
+
@mute_logger("odoo.models.unlink")
|
126
98
|
def test_inspection_create_for_category(self):
|
127
99
|
self.product.categ_id.qc_triggers = [
|
128
100
|
(0, 0, {"trigger": self.trigger.id, "test": self.test.id})
|
129
101
|
]
|
130
|
-
self.picking1.
|
102
|
+
self.picking1._action_done()
|
131
103
|
self.assertEqual(
|
132
104
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
133
105
|
)
|
@@ -137,6 +109,7 @@ class TestQualityControl(TransactionCase):
|
|
137
109
|
"Wrong test picked when creating inspection.",
|
138
110
|
)
|
139
111
|
|
112
|
+
@mute_logger("odoo.models.unlink")
|
140
113
|
def test_inspection_create_for_product_partner(self):
|
141
114
|
self.product.qc_triggers = [
|
142
115
|
(
|
@@ -149,7 +122,7 @@ class TestQualityControl(TransactionCase):
|
|
149
122
|
},
|
150
123
|
)
|
151
124
|
]
|
152
|
-
self.picking1.
|
125
|
+
self.picking1._action_done()
|
153
126
|
self.assertEqual(
|
154
127
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
155
128
|
)
|
@@ -159,6 +132,7 @@ class TestQualityControl(TransactionCase):
|
|
159
132
|
"Wrong test picked when creating inspection.",
|
160
133
|
)
|
161
134
|
|
135
|
+
@mute_logger("odoo.models.unlink")
|
162
136
|
def test_inspection_create_for_template_partner(self):
|
163
137
|
self.product.product_tmpl_id.qc_triggers = [
|
164
138
|
(
|
@@ -171,7 +145,7 @@ class TestQualityControl(TransactionCase):
|
|
171
145
|
},
|
172
146
|
)
|
173
147
|
]
|
174
|
-
self.picking1.
|
148
|
+
self.picking1._action_done()
|
175
149
|
self.assertEqual(
|
176
150
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
177
151
|
)
|
@@ -181,6 +155,7 @@ class TestQualityControl(TransactionCase):
|
|
181
155
|
"Wrong test picked when creating inspection.",
|
182
156
|
)
|
183
157
|
|
158
|
+
@mute_logger("odoo.models.unlink")
|
184
159
|
def test_inspection_create_for_category_partner(self):
|
185
160
|
self.product.categ_id.qc_triggers = [
|
186
161
|
(
|
@@ -193,7 +168,7 @@ class TestQualityControl(TransactionCase):
|
|
193
168
|
},
|
194
169
|
)
|
195
170
|
]
|
196
|
-
self.picking1.
|
171
|
+
self.picking1._action_done()
|
197
172
|
self.assertEqual(
|
198
173
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
199
174
|
)
|
@@ -203,6 +178,7 @@ class TestQualityControl(TransactionCase):
|
|
203
178
|
"Wrong test picked when creating inspection.",
|
204
179
|
)
|
205
180
|
|
181
|
+
@mute_logger("odoo.models.unlink")
|
206
182
|
def test_inspection_create_for_product_wrong_partner(self):
|
207
183
|
self.product.qc_triggers = [
|
208
184
|
(
|
@@ -215,11 +191,12 @@ class TestQualityControl(TransactionCase):
|
|
215
191
|
},
|
216
192
|
)
|
217
193
|
]
|
218
|
-
self.picking1.
|
194
|
+
self.picking1._action_done()
|
219
195
|
self.assertEqual(
|
220
196
|
self.picking1.created_inspections, 0, "No inspection must be created"
|
221
197
|
)
|
222
198
|
|
199
|
+
@mute_logger("odoo.models.unlink")
|
223
200
|
def test_inspection_create_for_template_wrong_partner(self):
|
224
201
|
self.product.product_tmpl_id.qc_triggers = [
|
225
202
|
(
|
@@ -232,11 +209,12 @@ class TestQualityControl(TransactionCase):
|
|
232
209
|
},
|
233
210
|
)
|
234
211
|
]
|
235
|
-
self.picking1.
|
212
|
+
self.picking1._action_done()
|
236
213
|
self.assertEqual(
|
237
214
|
self.picking1.created_inspections, 0, "No inspection must be created"
|
238
215
|
)
|
239
216
|
|
217
|
+
@mute_logger("odoo.models.unlink")
|
240
218
|
def test_inspection_create_for_category_wrong_partner(self):
|
241
219
|
self.product.categ_id.qc_triggers = [
|
242
220
|
(
|
@@ -249,11 +227,12 @@ class TestQualityControl(TransactionCase):
|
|
249
227
|
},
|
250
228
|
)
|
251
229
|
]
|
252
|
-
self.picking1.
|
230
|
+
self.picking1._action_done()
|
253
231
|
self.assertEqual(
|
254
232
|
self.picking1.created_inspections, 0, "No inspection must be created"
|
255
233
|
)
|
256
234
|
|
235
|
+
@mute_logger("odoo.models.unlink")
|
257
236
|
def test_inspection_create_only_one(self):
|
258
237
|
self.product.qc_triggers = [
|
259
238
|
(0, 0, {"trigger": self.trigger.id, "test": self.test.id})
|
@@ -261,7 +240,7 @@ class TestQualityControl(TransactionCase):
|
|
261
240
|
self.product.categ_id.qc_triggers = [
|
262
241
|
(0, 0, {"trigger": self.trigger.id, "test": self.test.id})
|
263
242
|
]
|
264
|
-
self.picking1.
|
243
|
+
self.picking1._action_done()
|
265
244
|
self.assertEqual(
|
266
245
|
self.picking1.created_inspections, 1, "Only one inspection must be created"
|
267
246
|
)
|
@@ -284,8 +263,8 @@ class TestQualityControl(TransactionCase):
|
|
284
263
|
{
|
285
264
|
"name": "Test Picking Type",
|
286
265
|
"code": "outgoing",
|
287
|
-
"sequence_code":
|
288
|
-
"sequence_id": self.
|
266
|
+
"sequence_code": self.picking_type.sequence_code,
|
267
|
+
"sequence_id": self.picking_type.sequence_id.id,
|
289
268
|
}
|
290
269
|
)
|
291
270
|
trigger = self.qc_trigger_model.search(
|
@@ -307,7 +286,7 @@ class TestQualityControl(TransactionCase):
|
|
307
286
|
def test_qc_inspection_picking(self):
|
308
287
|
self.inspection1.write(
|
309
288
|
{
|
310
|
-
"name": self.picking1.
|
289
|
+
"name": self.picking1.move_ids[:1]._name + "inspection",
|
311
290
|
"object_id": "%s,%d" % (self.picking1._name, self.picking1.id),
|
312
291
|
}
|
313
292
|
)
|
@@ -316,23 +295,25 @@ class TestQualityControl(TransactionCase):
|
|
316
295
|
def test_qc_inspection_stock_move(self):
|
317
296
|
self.inspection1.write(
|
318
297
|
{
|
319
|
-
"name": self.picking1.
|
298
|
+
"name": self.picking1.move_ids[:1]._name + "inspection",
|
320
299
|
"object_id": "%s,%d"
|
321
|
-
% (self.picking1.
|
300
|
+
% (self.picking1.move_ids[:1]._name, self.picking1.move_ids[:1].id),
|
322
301
|
}
|
323
302
|
)
|
324
303
|
self.inspection1.onchange_object_id()
|
325
304
|
self.assertEqual(self.inspection1.picking_id, self.picking1)
|
326
305
|
self.assertEqual(self.inspection1.lot_id, self.lot)
|
327
306
|
self.assertEqual(
|
328
|
-
self.inspection1.product_id, self.picking1.
|
307
|
+
self.inspection1.product_id, self.picking1.move_ids[:1].product_id
|
308
|
+
)
|
309
|
+
self.assertEqual(
|
310
|
+
self.inspection1.qty, self.picking1.move_ids[:1].product_uom_qty
|
329
311
|
)
|
330
|
-
self.assertEqual(self.inspection1.qty, self.picking1.move_lines[:1].product_qty)
|
331
312
|
|
332
313
|
def test_qc_inspection_lot(self):
|
333
314
|
self.inspection1.write(
|
334
315
|
{
|
335
|
-
"name": self.picking1.
|
316
|
+
"name": self.picking1.move_ids[:1]._name + "inspection",
|
336
317
|
"object_id": "%s,%d" % (self.lot._name, self.lot.id),
|
337
318
|
}
|
338
319
|
)
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8" ?>
|
2
|
+
<odoo>
|
3
|
+
<record model="ir.ui.view" id="qc_trigger_form_view">
|
4
|
+
<field name="name">qc.trigger.form</field>
|
5
|
+
<field name="model">qc.trigger</field>
|
6
|
+
<field name='inherit_id' ref='quality_control_oca.qc_trigger_form_view' />
|
7
|
+
<field name="arch" type="xml">
|
8
|
+
<xpath expr="//field[@name='partner_selectable']" position="after">
|
9
|
+
<field name="picking_type_id" readonly="1" />
|
10
|
+
</xpath>
|
11
|
+
</field>
|
12
|
+
</record>
|
13
|
+
</odoo>
|
@@ -36,10 +36,6 @@
|
|
36
36
|
<field name="name">stock.picking.qc.view</field>
|
37
37
|
<field name="model">stock.picking</field>
|
38
38
|
<field name="inherit_id" ref="stock.view_picking_form" />
|
39
|
-
<field
|
40
|
-
name="groups_id"
|
41
|
-
eval="[(4, ref('quality_control_oca.group_quality_control_user'))]"
|
42
|
-
/>
|
43
39
|
<field name="arch" type="xml">
|
44
40
|
<div name="button_box" position="inside">
|
45
41
|
<button
|
@@ -47,6 +43,7 @@
|
|
47
43
|
type="action"
|
48
44
|
name="%(action_qc_inspection_per_picking)d"
|
49
45
|
icon="fa-list"
|
46
|
+
groups="quality_control_oca.group_quality_control_user"
|
50
47
|
>
|
51
48
|
<field
|
52
49
|
name="created_inspections"
|
@@ -59,6 +56,7 @@
|
|
59
56
|
type="action"
|
60
57
|
name="%(action_qc_inspection_per_picking_done)d"
|
61
58
|
icon="fa-pencil"
|
59
|
+
groups="quality_control_oca.group_quality_control_user"
|
62
60
|
>
|
63
61
|
<field name="done_inspections" widget="statinfo" />
|
64
62
|
</button>
|
@@ -67,6 +65,7 @@
|
|
67
65
|
type="action"
|
68
66
|
name="%(action_qc_inspection_per_picking_passed)d"
|
69
67
|
icon="fa-thumbs-o-up"
|
68
|
+
groups="quality_control_oca.group_quality_control_user"
|
70
69
|
>
|
71
70
|
<field name="passed_inspections" widget="statinfo" />
|
72
71
|
</button>
|
@@ -75,8 +74,13 @@
|
|
75
74
|
type="action"
|
76
75
|
name="%(action_qc_inspection_per_picking_failed)d"
|
77
76
|
icon="fa-thumbs-o-down"
|
77
|
+
groups="quality_control_oca.group_quality_control_user"
|
78
78
|
>
|
79
|
-
<field
|
79
|
+
<field
|
80
|
+
name="failed_inspections"
|
81
|
+
widget="statinfo"
|
82
|
+
groups="quality_control_oca.group_quality_control_user"
|
83
|
+
/>
|
80
84
|
</button>
|
81
85
|
</div>
|
82
86
|
</field>
|
@@ -33,13 +33,9 @@
|
|
33
33
|
>[('lot_id', '=', active_id), ('state', '=', 'failed')]</field>
|
34
34
|
</record>
|
35
35
|
<record model="ir.ui.view" id="stock_lot_qc_view">
|
36
|
-
<field name="name">stock.
|
37
|
-
<field name="model">stock.
|
36
|
+
<field name="name">stock.lot.qc.view</field>
|
37
|
+
<field name="model">stock.lot</field>
|
38
38
|
<field name="inherit_id" ref="stock.view_production_lot_form" />
|
39
|
-
<field
|
40
|
-
name="groups_id"
|
41
|
-
eval="[(4, ref('quality_control_oca.group_quality_control_user'))]"
|
42
|
-
/>
|
43
39
|
<field name="arch" type="xml">
|
44
40
|
<div name="button_box" position="inside">
|
45
41
|
<button
|
@@ -47,6 +43,7 @@
|
|
47
43
|
type="action"
|
48
44
|
name="%(action_qc_inspection_per_lot)d"
|
49
45
|
icon="fa-list"
|
46
|
+
groups="quality_control_oca.group_quality_control_user"
|
50
47
|
>
|
51
48
|
<field
|
52
49
|
name="created_inspections"
|
@@ -59,6 +56,7 @@
|
|
59
56
|
type="action"
|
60
57
|
name="%(action_qc_inspection_per_lot_done)d"
|
61
58
|
icon="fa-pencil"
|
59
|
+
groups="quality_control_oca.group_quality_control_user"
|
62
60
|
>
|
63
61
|
<field name="done_inspections" widget="statinfo" />
|
64
62
|
</button>
|
@@ -67,6 +65,7 @@
|
|
67
65
|
type="action"
|
68
66
|
name="%(action_qc_inspection_per_lot_passed)d"
|
69
67
|
icon="fa-thumbs-o-up"
|
68
|
+
groups="quality_control_oca.group_quality_control_user"
|
70
69
|
>
|
71
70
|
<field name="passed_inspections" widget="statinfo" />
|
72
71
|
</button>
|
@@ -75,8 +74,13 @@
|
|
75
74
|
type="action"
|
76
75
|
name="%(action_qc_inspection_per_lot_failed)d"
|
77
76
|
icon="fa-thumbs-o-down"
|
77
|
+
groups="quality_control_oca.group_quality_control_user"
|
78
78
|
>
|
79
|
-
<field
|
79
|
+
<field
|
80
|
+
name="failed_inspections"
|
81
|
+
widget="statinfo"
|
82
|
+
groups="quality_control_oca.group_quality_control_user"
|
83
|
+
/>
|
80
84
|
</button>
|
81
85
|
</div>
|
82
86
|
</field>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: odoo-addon-quality-control-stock-oca
|
3
|
-
Version:
|
3
|
+
Version: 16.0.1.0.0.3
|
4
4
|
Summary: Quality control - Stock (OCA)
|
5
5
|
Home-page: https://github.com/OCA/manufacture
|
6
6
|
Author: OdooMRP team, AvanzOSC, Serv. Tecnol. Avanzados - Pedro M. Baeza, Agile Business Group, Odoo Community Association (OCA)
|
@@ -9,11 +9,11 @@ License: AGPL-3
|
|
9
9
|
Platform: UNKNOWN
|
10
10
|
Classifier: Programming Language :: Python
|
11
11
|
Classifier: Framework :: Odoo
|
12
|
-
Classifier: Framework :: Odoo ::
|
12
|
+
Classifier: Framework :: Odoo :: 16.0
|
13
13
|
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
|
14
|
-
Requires-Python: >=3.
|
15
|
-
Requires-Dist: odoo-addon-quality-control-oca <
|
16
|
-
Requires-Dist: odoo <
|
14
|
+
Requires-Python: >=3.10
|
15
|
+
Requires-Dist: odoo-addon-quality-control-oca <16.1dev,>=16.0dev
|
16
|
+
Requires-Dist: odoo <16.1dev,>=16.0a
|
17
17
|
|
18
18
|
=============================
|
19
19
|
Quality control - Stock (OCA)
|
@@ -24,7 +24,7 @@ Quality control - Stock (OCA)
|
|
24
24
|
!! This file is generated by oca-gen-addon-readme !!
|
25
25
|
!! changes will be overwritten. !!
|
26
26
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
27
|
-
!! source digest: sha256:
|
27
|
+
!! source digest: sha256:7430252681826a0a0f9a869194458e38ac20900898f0f8ff40422f13702695ee
|
28
28
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
29
29
|
|
30
30
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
@@ -34,13 +34,13 @@ Quality control - Stock (OCA)
|
|
34
34
|
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
35
35
|
:alt: License: AGPL-3
|
36
36
|
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmanufacture-lightgray.png?logo=github
|
37
|
-
:target: https://github.com/OCA/manufacture/tree/
|
37
|
+
:target: https://github.com/OCA/manufacture/tree/16.0/quality_control_stock_oca
|
38
38
|
:alt: OCA/manufacture
|
39
39
|
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
40
|
-
:target: https://translation.odoo-community.org/projects/manufacture-
|
40
|
+
:target: https://translation.odoo-community.org/projects/manufacture-16-0/manufacture-16-0-quality_control_stock_oca
|
41
41
|
:alt: Translate me on Weblate
|
42
42
|
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
|
43
|
-
:target: https://runboat.odoo-community.org/builds?repo=OCA/manufacture&target_branch=
|
43
|
+
:target: https://runboat.odoo-community.org/builds?repo=OCA/manufacture&target_branch=16.0
|
44
44
|
:alt: Try me on Runboat
|
45
45
|
|
46
46
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
@@ -65,7 +65,7 @@ Bug Tracker
|
|
65
65
|
Bugs are tracked on `GitHub Issues <https://github.com/OCA/manufacture/issues>`_.
|
66
66
|
In case of trouble, please check there if your issue has already been reported.
|
67
67
|
If you spotted it first, help us to smash it by providing a detailed and welcomed
|
68
|
-
`feedback <https://github.com/OCA/manufacture/issues/new?body=module:%20quality_control_stock_oca%0Aversion:%
|
68
|
+
`feedback <https://github.com/OCA/manufacture/issues/new?body=module:%20quality_control_stock_oca%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
69
69
|
|
70
70
|
Do not contact contributors directly about support or help with technical issues.
|
71
71
|
|
@@ -106,7 +106,7 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
|
|
106
106
|
mission is to support the collaborative development of Odoo features and
|
107
107
|
promote its widespread use.
|
108
108
|
|
109
|
-
This module is part of the `OCA/manufacture <https://github.com/OCA/manufacture/tree/
|
109
|
+
This module is part of the `OCA/manufacture <https://github.com/OCA/manufacture/tree/16.0/quality_control_stock_oca>`_ project on GitHub.
|
110
110
|
|
111
111
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
112
112
|
|
@@ -1,10 +1,10 @@
|
|
1
|
-
odoo/addons/quality_control_stock_oca/README.rst,sha256=
|
1
|
+
odoo/addons/quality_control_stock_oca/README.rst,sha256=a7HyZ7LysbKD8PO_TFvI4RR9e0YUh3J7pabwjvxPAGk,3407
|
2
2
|
odoo/addons/quality_control_stock_oca/__init__.py,sha256=9AmVrugo-4RwxFv5RtciHQyj_eQwAZj8d_TT44vxLJE,504
|
3
|
-
odoo/addons/quality_control_stock_oca/__manifest__.py,sha256=
|
4
|
-
odoo/addons/quality_control_stock_oca/i18n/ca.po,sha256=
|
5
|
-
odoo/addons/quality_control_stock_oca/i18n/de.po,sha256=
|
6
|
-
odoo/addons/quality_control_stock_oca/i18n/el_GR.po,sha256
|
7
|
-
odoo/addons/quality_control_stock_oca/i18n/es.po,sha256
|
3
|
+
odoo/addons/quality_control_stock_oca/__manifest__.py,sha256=auG24sJKJB2AsM-Y8XsdINtzEppOYsoKU_pnVby2AYU,883
|
4
|
+
odoo/addons/quality_control_stock_oca/i18n/ca.po,sha256=R1s7jJCe0Gh8E39pmdr1nfVFkw7IBLQI5DZpRtsLIH8,6084
|
5
|
+
odoo/addons/quality_control_stock_oca/i18n/de.po,sha256=NPN2YapKjudiSK4fejhh78ybJyjjtuqQ0xeY-Tzmz2E,6972
|
6
|
+
odoo/addons/quality_control_stock_oca/i18n/el_GR.po,sha256=elsAV-RfZ4F-VB_FrvihwG0X-7Wb2GGeZN9pojHthnE,6097
|
7
|
+
odoo/addons/quality_control_stock_oca/i18n/es.po,sha256=l4L80SMmuvi_IPqqz8kTQbz5J_Pqy1Ah7UD7SiAwyCQ,6797
|
8
8
|
odoo/addons/quality_control_stock_oca/i18n/es_AR.po,sha256=wrBKPasNwr0rR5vIFY_p7iuAuuZLID2IaisUAHUWW1g,6195
|
9
9
|
odoo/addons/quality_control_stock_oca/i18n/es_ES.po,sha256=u4jNy71FhJjoAtuQ0HKl-wmCoji-agchIaOaRMg11WU,6179
|
10
10
|
odoo/addons/quality_control_stock_oca/i18n/es_MX.po,sha256=1keRLmAu4nBco5nje0WTuiLMVsjvmDiVMhzcuHLRHMQ,6176
|
@@ -21,7 +21,7 @@ odoo/addons/quality_control_stock_oca/i18n/nl.po,sha256=GXj_8kRaZqhpJQ-MVMUgSH97
|
|
21
21
|
odoo/addons/quality_control_stock_oca/i18n/nl_NL.po,sha256=xcwiN2sCQS3W1P0M5aE5Tp-W9G8ZBCq8krHeSf6Fae8,6179
|
22
22
|
odoo/addons/quality_control_stock_oca/i18n/pt.po,sha256=Ly04eCrZzExYkEKxfUPuXRESMWf-KaKMXt4vW3bUKtI,6164
|
23
23
|
odoo/addons/quality_control_stock_oca/i18n/pt_BR.po,sha256=lIZFtpk7g6-RcJwQcXiswItLCRdg-rwDlHojGmzXcHE,6792
|
24
|
-
odoo/addons/quality_control_stock_oca/i18n/quality_control_stock_oca.pot,sha256=
|
24
|
+
odoo/addons/quality_control_stock_oca/i18n/quality_control_stock_oca.pot,sha256=IOwQn9wLbK-JEeWXkSMP_H_AnozSWm22ouKW58dvGTg,5797
|
25
25
|
odoo/addons/quality_control_stock_oca/i18n/ro.po,sha256=jOpxXvRpgwzQd9SWiRQLFpJxLbQcWBmpQMdSWi8OM-E,6206
|
26
26
|
odoo/addons/quality_control_stock_oca/i18n/ru.po,sha256=fKaDRzsDEDaOocdBAlGyaUDyhj-V1PyY0k6jgqRLMU0,6305
|
27
27
|
odoo/addons/quality_control_stock_oca/i18n/sk.po,sha256=rObaplMYi1YFCfDD-xW-RDjq1AIHCDNGgvBW-qmeJiA,6187
|
@@ -31,22 +31,23 @@ odoo/addons/quality_control_stock_oca/i18n/tr_TR.po,sha256=-TPDLS0tnjF1hDRXTataC
|
|
31
31
|
odoo/addons/quality_control_stock_oca/i18n/vi_VN.po,sha256=pCaoaXZ4TjjTpuCI5DfBbfXI54Cplr2K75inuZC2Q3w,6357
|
32
32
|
odoo/addons/quality_control_stock_oca/i18n/zh_CN.po,sha256=MEjTg3DLIz13vxqT0FNhsrD9IIywWI_BKx0zMqHaCv0,6168
|
33
33
|
odoo/addons/quality_control_stock_oca/models/__init__.py,sha256=5W6REeWDL4dOmC9jP6Re4A8OjdXBgFl12DYLtxyTvNU,215
|
34
|
-
odoo/addons/quality_control_stock_oca/models/qc_inspection.py,sha256=
|
34
|
+
odoo/addons/quality_control_stock_oca/models/qc_inspection.py,sha256=0k_VxBirjYhC12g0U2ESTpRIw6hbQVpPt5oFgCgjeUE,3295
|
35
35
|
odoo/addons/quality_control_stock_oca/models/qc_trigger.py,sha256=WzRANS7KMEGStII3wlJ-x3zCn9-tnP890VfrDlcydAs,391
|
36
|
-
odoo/addons/quality_control_stock_oca/models/stock_picking.py,sha256=
|
37
|
-
odoo/addons/quality_control_stock_oca/models/stock_picking_type.py,sha256=
|
38
|
-
odoo/addons/quality_control_stock_oca/models/stock_production_lot.py,sha256=
|
36
|
+
odoo/addons/quality_control_stock_oca/models/stock_picking.py,sha256=bVjsKurJU7s2xlxgqyxKgt_APT3KKVs3mKH1Pea3OOY,3236
|
37
|
+
odoo/addons/quality_control_stock_oca/models/stock_picking_type.py,sha256=A9R0O24GM4hRNv3k-Hi9kHE2kixoyH8vgk8qQytkOeA,1361
|
38
|
+
odoo/addons/quality_control_stock_oca/models/stock_production_lot.py,sha256=wTlHrBL7F2TyTY0CMen-8JW3TYnI5Wup6iEYhEoCe3o,1923
|
39
39
|
odoo/addons/quality_control_stock_oca/readme/CONTRIBUTORS.rst,sha256=SOMUd5YEC6mcdjdBxWciyPwJKj4zNkeYvJmltr742A8,312
|
40
40
|
odoo/addons/quality_control_stock_oca/readme/DESCRIPTION.rst,sha256=AejtLJR6otMvuF5R56p6vXwDaMWE1dW3lg6tLEIyKsQ,152
|
41
41
|
odoo/addons/quality_control_stock_oca/readme/ROADMAP.rst,sha256=uLH6_pi5ctOOlycssnwF2ggGwjYJMOmfzmCoTsFMonA,32
|
42
42
|
odoo/addons/quality_control_stock_oca/static/description/icon.png,sha256=x3L6LkPBxlV3mIf1zIvHJZloOgNUDiOBOaFgqggexoo,9215
|
43
|
-
odoo/addons/quality_control_stock_oca/static/description/index.html,sha256=
|
43
|
+
odoo/addons/quality_control_stock_oca/static/description/index.html,sha256=P7aboocbBx7qRw9YPlqKXL66Z-sRY4PGAZzMNtMZZBY,13372
|
44
44
|
odoo/addons/quality_control_stock_oca/tests/__init__.py,sha256=DoOTjy4_SOM0tQiBUfjxHikooStDz_NrSluVnfx07bk,107
|
45
|
-
odoo/addons/quality_control_stock_oca/tests/test_quality_control_stock.py,sha256=
|
45
|
+
odoo/addons/quality_control_stock_oca/tests/test_quality_control_stock.py,sha256=IgAw4ZgeNb-ixx_KH1B6CG9IdSbtlwMRbzZ3GS-1giM,11608
|
46
46
|
odoo/addons/quality_control_stock_oca/views/qc_inspection_view.xml,sha256=zERew9HMxyarqS9m41JjPnPLoadTx-L5fys9iO3ZP4Q,3936
|
47
|
-
odoo/addons/quality_control_stock_oca/views/
|
48
|
-
odoo/addons/quality_control_stock_oca/views/
|
49
|
-
|
50
|
-
odoo_addon_quality_control_stock_oca-
|
51
|
-
odoo_addon_quality_control_stock_oca-
|
52
|
-
odoo_addon_quality_control_stock_oca-
|
47
|
+
odoo/addons/quality_control_stock_oca/views/qc_trigger_view.xml,sha256=Iva-jto2Yr6qcIsSFnVdugjhUFfERUzPeKwWnpfsJkQ,527
|
48
|
+
odoo/addons/quality_control_stock_oca/views/stock_picking_view.xml,sha256=jXaLi5xFle8cDNWYqmQduu_HNpGWMPAyBO2RW887s5E,4015
|
49
|
+
odoo/addons/quality_control_stock_oca/views/stock_production_lot_view.xml,sha256=LYFOchJ8n89vVy4C840k8uedbXPH3KkqhtjcfwUws6M,3946
|
50
|
+
odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info/METADATA,sha256=PnS_evB-cK6IHXc7lf5FY2p0F9-TKCehOyJOnAgfo7g,4099
|
51
|
+
odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
52
|
+
odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info/top_level.txt,sha256=qBj40grFkGOfDZ2WDSw3y1RnDlgG0u8rP8pvGNdbz4w,5
|
53
|
+
odoo_addon_quality_control_stock_oca-16.0.1.0.0.3.dist-info/RECORD,,
|
File without changes
|