odoo-addon-base-tier-validation 17.0.2.3.2.1__py3-none-any.whl → 17.0.2.3.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,7 @@ Base Tier Validation
7
7
  !! This file is generated by oca-gen-addon-readme !!
8
8
  !! changes will be overwritten. !!
9
9
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10
- !! source digest: sha256:3687572682629edee22a15d36a33201f134bc3f2147eaaaee4bd3bb567a0c8ab
10
+ !! source digest: sha256:383888146dbed9d6782bb997d2c3c5737d1603d2345785aef167a0ac028790f3
11
11
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
12
 
13
13
  .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
@@ -3,7 +3,7 @@
3
3
  {
4
4
  "name": "Base Tier Validation",
5
5
  "summary": "Implement a validation process based on tiers.",
6
- "version": "17.0.2.3.2",
6
+ "version": "17.0.2.3.4",
7
7
  "development_status": "Mature",
8
8
  "maintainers": ["LoisRForgeFlow"],
9
9
  "category": "Tools",
@@ -26,7 +26,11 @@ class TierReview(models.Model):
26
26
  default="waiting",
27
27
  )
28
28
  model = fields.Char(string="Related Document Model", index=True)
29
- res_id = fields.Integer(string="Related Document ID", index=True)
29
+ res_id = fields.Many2oneReference(
30
+ string="Related Document ID",
31
+ index=True,
32
+ model_field="model",
33
+ )
30
34
  definition_id = fields.Many2one(comodel_name="tier.definition")
31
35
  company_id = fields.Many2one(
32
36
  related="definition_id.company_id",
@@ -726,8 +726,9 @@ class TierValidation(models.AbstractModel):
726
726
  if rec.evaluate_tier(td):
727
727
  sequence += 1
728
728
  vals_list.append(rec._prepare_tier_review_vals(td, sequence))
729
- self._update_counter({"review_created": True})
730
729
  created_trs = tr_obj.create(vals_list)
730
+ if any(self.mapped("can_review")):
731
+ self._update_counter({"review_created": True})
731
732
  self._notify_review_requested(created_trs)
732
733
  return created_trs
733
734
 
@@ -7,5 +7,5 @@ access_tier_review,access.tier.review,model_tier_review,base.group_user,1,1,1,1
7
7
  access_tier_definition_all,tier.definition.all,model_tier_definition,base.group_user,1,0,0,0
8
8
  access_tier_definition_settings,tier.definition.settings,model_tier_definition,base.group_erp_manager,1,1,1,1
9
9
  access_comment_wizard,access.comment.wizard,model_comment_wizard,base.group_user,1,1,1,1
10
- access_tier_validation_exceptions_all,tier.validation.exceptions,model_tier_validation_exception,,1,0,0,0
10
+ access_tier_validation_exceptions_all,tier.validation.exceptions,model_tier_validation_exception,base.group_user,1,0,0,0
11
11
  access_tier_validation_exceptions_settings,tier.validation.exceptions,model_tier_validation_exception,base.group_system,1,1,1,1
@@ -367,7 +367,7 @@ 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:3687572682629edee22a15d36a33201f134bc3f2147eaaaee4bd3bb567a0c8ab
370
+ !! source digest: sha256:383888146dbed9d6782bb997d2c3c5737d1603d2345785aef167a0ac028790f3
371
371
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
372
372
  <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Mature" src="https://img.shields.io/badge/maturity-Mature-brightgreen.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/server-ux/tree/17.0/base_tier_validation"><img alt="OCA/server-ux" src="https://img.shields.io/badge/github-OCA%2Fserver--ux-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/server-ux-17-0/server-ux-17-0-base_tier_validation"><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/server-ux&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
373
373
  <p>Validating some operations is a common need across different areas in a
@@ -131,11 +131,8 @@ class TierTierValidation(CommonTierValidation):
131
131
  )
132
132
  # Request validation
133
133
  self.test_record.with_user(self.test_user_2.id).request_validation()
134
- self.test_record.invalidate_model()
135
134
  test_record.with_user(self.test_user_2.id).request_validation()
136
- test_record.invalidate_model()
137
135
  self.test_record_2.with_user(self.test_user_2.id).request_validation()
138
- self.test_record_2.invalidate_model()
139
136
  # Get review user count as systray icon would do and check count value
140
137
  docs = self.test_user_1.with_user(self.test_user_1).review_user_count()
141
138
  for doc in docs:
@@ -295,14 +292,14 @@ class TierTierValidation(CommonTierValidation):
295
292
  self.assertTrue(reviews)
296
293
 
297
294
  record1 = test_record.with_user(self.test_user_1.id)
298
- record1.invalidate_model()
299
295
  self.assertTrue(record1.can_review)
300
296
  # Validation will be all by sequence
297
+ self.assertEqual(len(record1.review_ids), 2)
301
298
  self.assertEqual(
302
- 2, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
299
+ 1, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
303
300
  )
304
301
  self.assertEqual(
305
- 0, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
302
+ 1, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
306
303
  )
307
304
  record1.validate_tier()
308
305
  self.assertEqual(
@@ -311,14 +308,29 @@ class TierTierValidation(CommonTierValidation):
311
308
  self.assertEqual(
312
309
  1, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
313
310
  )
311
+ self.assertEqual(
312
+ 1, len(record1.review_ids.filtered(lambda x: x.status == "approved"))
313
+ )
314
314
  record1.validate_tier()
315
315
  self.assertEqual(
316
316
  0, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
317
317
  )
318
+ self.assertEqual(
319
+ 0, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
320
+ )
321
+ self.assertEqual(
322
+ 2, len(record1.review_ids.filtered(lambda x: x.status == "approved"))
323
+ )
318
324
  record1.validate_tier()
325
+ self.assertEqual(
326
+ 0, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
327
+ )
319
328
  self.assertEqual(
320
329
  0, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
321
330
  )
331
+ self.assertEqual(
332
+ 2, len(record1.review_ids.filtered(lambda x: x.status == "approved"))
333
+ )
322
334
 
323
335
  def test_12_approve_sequence_same_user_bypassed(self):
324
336
  """Similar to test_12_approve_sequence, with all same users,
@@ -354,14 +366,14 @@ class TierTierValidation(CommonTierValidation):
354
366
  self.assertTrue(reviews)
355
367
 
356
368
  record1 = test_record.with_user(self.test_user_1.id)
357
- record1.invalidate_model()
358
369
  self.assertTrue(record1.can_review)
359
370
  # When the first tier is validated, all the rest will be approved.
371
+ self.assertEqual(len(record1.review_ids), 2)
360
372
  self.assertEqual(
361
- 2, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
373
+ 1, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
362
374
  )
363
375
  self.assertEqual(
364
- 0, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
376
+ 1, len(record1.review_ids.filtered(lambda x: x.status == "pending"))
365
377
  )
366
378
  record1.validate_tier()
367
379
  self.assertEqual(
@@ -370,6 +382,9 @@ class TierTierValidation(CommonTierValidation):
370
382
  self.assertEqual(
371
383
  0, len(record1.review_ids.filtered(lambda x: x.status == "waiting"))
372
384
  )
385
+ self.assertEqual(
386
+ 2, len(record1.review_ids.filtered(lambda x: x.status == "approved"))
387
+ )
373
388
 
374
389
  def test_13_onchange_review_type(self):
375
390
  tier_def_id = self.tier_def_obj.create(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-base_tier_validation
3
- Version: 17.0.2.3.2.1
3
+ Version: 17.0.2.3.4
4
4
  Requires-Python: >=3.10
5
5
  Requires-Dist: odoo>=17.0a,<17.1dev
6
6
  Summary: Implement a validation process based on tiers.
@@ -23,7 +23,7 @@ Base Tier Validation
23
23
  !! This file is generated by oca-gen-addon-readme !!
24
24
  !! changes will be overwritten. !!
25
25
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
26
- !! source digest: sha256:3687572682629edee22a15d36a33201f134bc3f2147eaaaee4bd3bb567a0c8ab
26
+ !! source digest: sha256:383888146dbed9d6782bb997d2c3c5737d1603d2345785aef167a0ac028790f3
27
27
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
28
28
 
29
29
  .. |badge1| image:: https://img.shields.io/badge/maturity-Mature-brightgreen.png
@@ -1,6 +1,6 @@
1
- odoo/addons/base_tier_validation/README.rst,sha256=AW4aMgoxiM4LeE3BzKwBFnVHOCwWALlFDz2keDw2msk,8904
1
+ odoo/addons/base_tier_validation/README.rst,sha256=r8O0BITf4GFm1o3cEF00oo5IZHoW2Mw6Q2bjQsJfbUc,8904
2
2
  odoo/addons/base_tier_validation/__init__.py,sha256=rKfzYX9RhkkCxgh2f0PJLYN45Kw8T8-fwxw1pbjLuug,108
3
- odoo/addons/base_tier_validation/__manifest__.py,sha256=I2PzTfp8sJOW4_yGUjQqDT6F_JYfIElDwAnyDdu4iM8,1674
3
+ odoo/addons/base_tier_validation/__manifest__.py,sha256=f90jg2MHWYBHDt5SHX60iu-G1J39xknh-RUlhvMUis8,1674
4
4
  odoo/addons/base_tier_validation/data/cron_data.xml,sha256=HMA_SgAk3_vLu_QQLHd0UyzPASuDRj5cvpiK_17esQc,707
5
5
  odoo/addons/base_tier_validation/data/mail_data.xml,sha256=hXhGTSyG2NAsDfZShmpyBKTXJi46L5PP1mFJAlKmlVE,1984
6
6
  odoo/addons/base_tier_validation/i18n/base_tier_validation.pot,sha256=ShkkRe-CS7a4eBPc86lxy4u2sfn4Forn2ck85in9JeE,33179
@@ -16,19 +16,19 @@ odoo/addons/base_tier_validation/models/__init__.py,sha256=X8c8CFM5eOXyIErFr7xsa
16
16
  odoo/addons/base_tier_validation/models/res_config_settings.py,sha256=xMdQiCfU5p7Z5puKcSRvJihLpI9ulyVFUd_QJjAOuwc,619
17
17
  odoo/addons/base_tier_validation/models/res_users.py,sha256=0xJZVWDUfdJwA3_ysHKO99cQph2m8iz0Zr5JU90td68,2163
18
18
  odoo/addons/base_tier_validation/models/tier_definition.py,sha256=_aMzT4DAzV2C0dWm85UwomMlXRyjNN-Bo9xLaSfl58U,5775
19
- odoo/addons/base_tier_validation/models/tier_review.py,sha256=2otyKeErcz1DrMTwbKGrtPUiIov3KCC9CMHsKWIYJNk,8336
20
- odoo/addons/base_tier_validation/models/tier_validation.py,sha256=nHo96cSjrDXmGQqRCTo224U_J8FhozRDp85421AvfS0,35386
19
+ odoo/addons/base_tier_validation/models/tier_review.py,sha256=F6oEiE6CkIIAYAbQN9mUfyrUyqqhxdVfU9kvduNqnRg,8398
20
+ odoo/addons/base_tier_validation/models/tier_validation.py,sha256=yeb-KWE_PWpDGScMAGDvBZ45b-QjyGqcV8GxdQ4iM7w,35425
21
21
  odoo/addons/base_tier_validation/models/tier_validation_exception.py,sha256=9H_FbTF04IyB2u6a82UAdIPmv_MUcFKmLNVl7UOM1lg,2882
22
22
  odoo/addons/base_tier_validation/readme/CONFIGURE.md,sha256=MuyVCH75T0_3Rtrkl7RUg7XzxjoU7zUkbPWv84_a-XU,1709
23
23
  odoo/addons/base_tier_validation/readme/CONTRIBUTORS.md,sha256=QM71L1RKrzDEgNvfgXjNAoWy3dMxH5k26HhcrrpdYRs,664
24
24
  odoo/addons/base_tier_validation/readme/DESCRIPTION.md,sha256=SJukiMB1jvhcY8zrM6BLWCJrLJtMUPAg7dzzmJbyv18,958
25
25
  odoo/addons/base_tier_validation/readme/HISTORY.md,sha256=P8GfoUhYG7QGIpa8Z0L67E3YEeZBFQCwpDXnt5WG-DY,1332
26
26
  odoo/addons/base_tier_validation/readme/ROADMAP.md,sha256=HRRQQuOlSeOF5yfqG0KuANnvrde8y6Suz2pbrXB1OyU,864
27
- odoo/addons/base_tier_validation/security/ir.model.access.csv,sha256=Fh7oRtUpyI0jS7DdWdN7zr5OYwfBg1XB71AuoS0-hp4,1139
27
+ odoo/addons/base_tier_validation/security/ir.model.access.csv,sha256=_NMShHIoKCQztT8he6qxGQlAvuLrFuz-MeNqXhSzQiM,1154
28
28
  odoo/addons/base_tier_validation/security/tier_validation_security.xml,sha256=eWFwz-osHgYFmVoEVzOSboO9oqUMtQ8oygyaz0os50Y,806
29
29
  odoo/addons/base_tier_validation/static/description/icon.png,sha256=ocMS0YO1xbJs6kkXqCuw71UnsCa_4d1U5cMvzcKSH2U,4993
30
30
  odoo/addons/base_tier_validation/static/description/icon.svg,sha256=SBeR3DJDE_jBR3Z92Yn3r7WPOkpsRlOd61t1Tuk7M_A,2684
31
- odoo/addons/base_tier_validation/static/description/index.html,sha256=x6dM4NYGq97aZ183GT2ixer1Of8jQ8Fyoi23XQfzdWI,23747
31
+ odoo/addons/base_tier_validation/static/description/index.html,sha256=i1XEiVm-vA1liAs3U01FhJ3RfoNkWwif7mqDBgFq1Mk,23747
32
32
  odoo/addons/base_tier_validation/static/src/components/tier_review_menu/tier_review_menu.esm.js,sha256=MNfjKSg-9h3JfeXiYlf15SAdVHjj3aUvedj0BqVvJrk,2254
33
33
  odoo/addons/base_tier_validation/static/src/components/tier_review_menu/tier_review_menu.xml,sha256=_wIy5Gv2VUJEXD5_FGphx1J19-Y8uzFlWryuPqlIh8c,2798
34
34
  odoo/addons/base_tier_validation/static/src/components/tier_review_widget/tier_review_widget.esm.js,sha256=MDWUp2ozeRdBoLeCfTcOnD-bKnk3yF6pHwtTAnsLZmg,1090
@@ -38,7 +38,7 @@ odoo/addons/base_tier_validation/static/src/js/services/tier_review_service.esm.
38
38
  odoo/addons/base_tier_validation/templates/tier_validation_templates.xml,sha256=VI6kY0V6nVSz6KQ9GRxY_9TZkRrJgzBzsl9xFKtA__Y,3620
39
39
  odoo/addons/base_tier_validation/tests/__init__.py,sha256=7tj1DSbPnyA__lAKxvjX53Ll_ZTE8y8Z1bewtZJoURI,166
40
40
  odoo/addons/base_tier_validation/tests/common.py,sha256=0UDM1P5r7c2YftiBIs42ykFQdznWXzYur8SNscRK8cI,5966
41
- odoo/addons/base_tier_validation/tests/test_tier_validation.py,sha256=I8hVKYLcaiVGY7XKRI-rQ3wNsB1yR1VGqEdNWgaYSwk,42670
41
+ odoo/addons/base_tier_validation/tests/test_tier_validation.py,sha256=WVZNMIGu2Rh0EjwuVUVuoLXBUgjy2yzqEK2OhR4J8zM,43283
42
42
  odoo/addons/base_tier_validation/tests/test_tier_validation_reminder.py,sha256=jsLU-7pJtbUvKPi7ddXU4jAwiJp32pKTrluarrtLKvU,1963
43
43
  odoo/addons/base_tier_validation/tests/tier_validation_tester.py,sha256=m25QbB9-9Goxx1Fiz0qwsVO3WPL6jrtMlGDW6VQbLik,3345
44
44
  odoo/addons/base_tier_validation/views/res_config_settings_views.xml,sha256=5HbrsAVaXRoQNX7utIQ_EzZrqzKnwBrV9uHsi-PHb9M,2640
@@ -48,7 +48,7 @@ odoo/addons/base_tier_validation/views/tier_validation_exception_view.xml,sha256
48
48
  odoo/addons/base_tier_validation/wizard/__init__.py,sha256=52q6-LAjYeJ1Vu5ahon_jnhds9VsoJvYaQCiZc82WKw,95
49
49
  odoo/addons/base_tier_validation/wizard/comment_wizard.py,sha256=gj7zCcpe47-2ifxSRlE6okQ1wtq5Ok3JBVg2CtN0ZIU,879
50
50
  odoo/addons/base_tier_validation/wizard/comment_wizard_view.xml,sha256=9XFTqrNwDCZH2IEX3HutaznSkBYk-6RERXzUDwObz4I,979
51
- odoo_addon_base_tier_validation-17.0.2.3.2.1.dist-info/METADATA,sha256=iuv7H-t7kj8kZ62qC6a8zQZzA-UxmasVgbvn-2ZFoF0,9488
52
- odoo_addon_base_tier_validation-17.0.2.3.2.1.dist-info/WHEEL,sha256=9fEMia4zL7ZuZbnCOrcYogUhmn4XFIVaJ8G4YGI31xc,81
53
- odoo_addon_base_tier_validation-17.0.2.3.2.1.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
54
- odoo_addon_base_tier_validation-17.0.2.3.2.1.dist-info/RECORD,,
51
+ odoo_addon_base_tier_validation-17.0.2.3.4.dist-info/METADATA,sha256=XfLS1bbNfT2BdBihkmd5HGyO-whMJvHwFd2Z41025Q8,9486
52
+ odoo_addon_base_tier_validation-17.0.2.3.4.dist-info/WHEEL,sha256=9fEMia4zL7ZuZbnCOrcYogUhmn4XFIVaJ8G4YGI31xc,81
53
+ odoo_addon_base_tier_validation-17.0.2.3.4.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
54
+ odoo_addon_base_tier_validation-17.0.2.3.4.dist-info/RECORD,,