summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indoteknik_custom/models/barcoding_product.py8
-rw-r--r--indoteknik_custom/views/barcoding_product.xml7
2 files changed, 13 insertions, 2 deletions
diff --git a/indoteknik_custom/models/barcoding_product.py b/indoteknik_custom/models/barcoding_product.py
index 6bbf9fde..e1b8f41f 100644
--- a/indoteknik_custom/models/barcoding_product.py
+++ b/indoteknik_custom/models/barcoding_product.py
@@ -12,6 +12,14 @@ class BarcodingProduct(models.Model):
barcoding_product_line = fields.One2many('barcoding.product.line', 'barcoding_product_id', string='Barcoding Product Lines', auto_join=True)
product_id = fields.Many2one('product.product', string="Product", tracking=3)
quantity = fields.Float(string="Quantity", tracking=3)
+ type = fields.Selection([('print', 'Print Barcode'), ('barcoding', 'Add Barcode To Product')], string='Type', default='print')
+ barcode = fields.Char(string="Barcode")
+
+ @api.constrains('barcode')
+ def _send_barcode_to_product(self):
+ for record in self:
+ if record.barcode and not record.product_id.barcode:
+ record.product_id.barcode = record.barcode
@api.onchange('product_id', 'quantity')
def _onchange_product_or_quantity(self):
diff --git a/indoteknik_custom/views/barcoding_product.xml b/indoteknik_custom/views/barcoding_product.xml
index 566655ff..c7473d39 100644
--- a/indoteknik_custom/views/barcoding_product.xml
+++ b/indoteknik_custom/views/barcoding_product.xml
@@ -8,6 +8,7 @@
<tree default_order="create_date desc">
<field name="product_id"/>
<field name="quantity"/>
+ <field name="type"/>
</tree>
</field>
</record>
@@ -32,11 +33,13 @@
<group>
<group>
<field name="product_id" required="1"/>
- <field name="quantity" required="1"/>
+ <field name="type" required="1"/>
+ <field name="quantity" attrs="{'invisible': [['type', 'in', ('barcoding')]], 'required': [['type', 'not in', ('barcoding')]]}"/>
+ <field name="barcode" attrs="{'invisible': [['type', 'in', ('print')]], 'required': [['type', 'not in', ('print')]]}"/>
</group>
</group>
<notebook>
- <page string="Line">
+ <page string="Line" attrs="{'invisible': [['type', 'in', ('barcoding')]]}">
<field name="barcoding_product_line"/>
</page>
</notebook>