diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-10-20 15:31:03 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-10-20 15:31:03 +0700 |
| commit | 49d7b473a8cd458ade6a4e703c276b0771707db2 (patch) | |
| tree | 4b5e6aa8681f16cc02464f92fef1e07210d9300c /indoteknik_custom/models/solr/product_product.py | |
| parent | 4570401835223c2b613c2739fe9684fbe6c15b94 (diff) | |
Add unpublished field on product template and variant
Diffstat (limited to 'indoteknik_custom/models/solr/product_product.py')
| -rw-r--r-- | indoteknik_custom/models/solr/product_product.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/indoteknik_custom/models/solr/product_product.py b/indoteknik_custom/models/solr/product_product.py index e1342fc2..85c94741 100644 --- a/indoteknik_custom/models/solr/product_product.py +++ b/indoteknik_custom/models/solr/product_product.py @@ -5,6 +5,7 @@ from datetime import datetime class ProductProduct(models.Model): _inherit = 'product.product' + unpublished = fields.Boolean(string='Unpublished') last_update_solr = fields.Datetime(string='Last Update Solr') desc_update_solr = fields.Char(string='Desc Update Solr') @@ -63,7 +64,7 @@ class ProductProduct(models.Model): 'search_rank_weekly_i': variant.product_tmpl_id.search_rank_weekly, 'attributes': [x.name for x in variant.product_template_attribute_value_ids], 'has_product_info_b': True, - 'publish_b': variant.active and variant.type == 'product', + 'publish_b': not variant.unpublished, 'qty_sold_f': variant.qty_sold }) @@ -170,8 +171,11 @@ class ProductProduct(models.Model): return results - @api.constrains('active') - def constrains_active(self): + @api.constrains('unpublished') + def _constrains_unpublished(self): for rec in self: + if rec.product_variant_count == 1: + rec.product_tmpl_id.unpublished = rec.unpublished + rec.product_tmpl_id._create_solr_queue_sync_product_template()
\ No newline at end of file |
