diff --git a/customer_product_qrcode/__init__.py b/customer_product_qrcode/__init__.py index 17890c0a2..4aa785a6b 100755 --- a/customer_product_qrcode/__init__.py +++ b/customer_product_qrcode/__init__.py @@ -28,5 +28,5 @@ def _set_qr(cr, registry): env = api.Environment(cr, SUPERUSER_ID, {}) for record in env['product.product'].search([]): name = record.name.replace(" ", "") - record.sequence = 'DEF' + name.upper()+str(record.id) + record.sequences= 'DEF' + name.upper()+str(record.id) record.generate_qr() diff --git a/customer_product_qrcode/__manifest__.py b/customer_product_qrcode/__manifest__.py index c28d62009..1af6e95e4 100755 --- a/customer_product_qrcode/__manifest__.py +++ b/customer_product_qrcode/__manifest__.py @@ -21,7 +21,7 @@ ############################################################################# { 'name': 'Customer and Product QR Code Generator', - 'version': '16.0.1.0.0', + 'version': '16.0.2.0.1', 'summary': 'Generate Unique QR Codes for Customers and Products', 'description': 'QR Code, QR Code Generator, Odoo QR Code Generator,' ' Customer QR Code, Product QR Code, QR, QR Code Odoo', diff --git a/customer_product_qrcode/doc/RELEASE_NOTES.md b/customer_product_qrcode/doc/RELEASE_NOTES.md index e20da985c..70badd798 100644 --- a/customer_product_qrcode/doc/RELEASE_NOTES.md +++ b/customer_product_qrcode/doc/RELEASE_NOTES.md @@ -7,4 +7,9 @@ #### 29.05.2023 #### Version 16.0.1.0.1 #### FIX -- Fixed the issue in Save Function \ No newline at end of file +- Fixed the issue in Save Function + +#### 13.06.2024 +#### Version 16.0.2.0.1 +#### FIX +- Fixed the issue in Sequence Creation \ No newline at end of file diff --git a/customer_product_qrcode/models/models.py b/customer_product_qrcode/models/models.py index a965694b3..4d2fa1317 100755 --- a/customer_product_qrcode/models/models.py +++ b/customer_product_qrcode/models/models.py @@ -37,7 +37,7 @@ class Partners(models.Model): """Extends the res.partner model to include QR code functionality.""" _inherit = 'res.partner' - sequence = fields.Char(string="QR Sequence", readonly=True) + sequences = fields.Char(string="QR Sequence", readonly=True) qr = fields.Binary(string="QR Code") def init(self): @@ -46,7 +46,10 @@ class Partners(models.Model): for record in self.env['res.partner'].search( [('customer_rank', '=', True)]): name = record.name.replace(" ", "") - record.sequence = 'DEF' + name.upper() + str(record.id) + print(name,'ssssssssssssssssssssss') + print(str(record.id),type(record.id),'cxxxxxxxxxxxxxxxxxxxx') + record.sequences = 'DEF' + name.upper() + str(record.id) + print(record.sequences,'ccccccccccccccc',type(record.sequences)) @api.model def create(self, vals): @@ -58,22 +61,22 @@ class Partners(models.Model): prefix = str(prefix) seq = prefix + self.env['ir.sequence'].next_by_code( 'res.partner') or '/' - vals['sequence'] = seq + vals['sequences'] = seq return super(Partners, self).create(vals) - @api.depends('sequence') + @api.depends('sequences') def generate_qr(self): """Generate a QR code based on the partner's sequence and store it in the 'qr' field of the partner record.""" if qrcode and base64: - if not self.sequence: + if not self.sequences: prefix = self.env['ir.config_parameter'].sudo().get_param( 'customer_product_qr.config.customer_prefix') if not prefix: raise UserError( _('Set A Customer Prefix In General Settings')) prefix = str(prefix) - self.sequence = prefix + self.env['ir.sequence'].next_by_code( + self.sequences = prefix + self.env['ir.sequence'].next_by_code( 'res.partner') or '/' qr = qrcode.QRCode( version=1, @@ -81,7 +84,7 @@ class Partners(models.Model): box_size=10, border=4, ) - qr.add_data(self.sequence) + qr.add_data(self.sequences) qr.make(fit=True) img = qr.make_image() temp = BytesIO() @@ -96,7 +99,7 @@ class Partners(models.Model): _('Necessary Requirements To Run This Operation Is Not Satisfied')) def get_partner_by_qr(self, **args): - return self.env['res.partner'].search([('sequence', '=', self.id), ], + return self.env['res.partner'].search([('sequences', '=', self.id), ], limit=1).id @@ -104,7 +107,7 @@ class Products(models.Model): """Extends the product.product model to include QR code functionality.""" _inherit = 'product.product' - sequence = fields.Char(string="QR Sequence", readonly=True) + sequences = fields.Char(string="QR Sequence", readonly=True) qr = fields.Binary(string="QR Code") @api.model @@ -118,14 +121,14 @@ class Products(models.Model): prefix = str(prefix) seq = prefix + self.env['ir.sequence'].next_by_code( 'product.product') or '/' - vals['sequence'] = seq + vals['sequences'] = seq qr = qrcode.QRCode( version=1, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=10, border=4, ) - qr.add_data(vals['sequence']) + qr.add_data(vals['sequences']) qr.make(fit=True) img = qr.make_image() temp = BytesIO() @@ -134,19 +137,19 @@ class Products(models.Model): vals.update({'qr': qr_image}) return super(Products, self).create(vals) - @api.depends('sequence') + @api.depends('sequences') def generate_qr(self): """Generate a QR code based on the product's sequence and store it in the 'qr' field of the product.""" if qrcode and base64: - if not self.sequence: + if not self.sequences: prefix = self.env['ir.config_parameter'].sudo().get_param( 'customer_product_qr.config.product_prefix') if not prefix: raise UserError( _('Set A Customer Prefix In General Settings')) prefix = str(prefix) - self.sequence = prefix + self.env['ir.sequence'].next_by_code( + self.sequences = prefix + self.env['ir.sequence'].next_by_code( 'product.product') or '/' qr = qrcode.QRCode( version=1, @@ -154,7 +157,7 @@ class Products(models.Model): box_size=10, border=4, ) - qr.add_data(self.sequence) + qr.add_data(self.sequences) qr.make(fit=True) img = qr.make_image() temp = BytesIO() @@ -171,7 +174,7 @@ class Products(models.Model): def get_product_by_qr(self, **args): """Retrieve a product based on the provided QR sequence.""" return self.env['product.product'].search( - [('sequence', '=', self.id), ], limit=1).id + [('sequences', '=', self.id), ], limit=1).id class ProductTemplate(models.Model): diff --git a/customer_product_qrcode/views/view.xml b/customer_product_qrcode/views/view.xml index 517b7e057..837621cd5 100755 --- a/customer_product_qrcode/views/view.xml +++ b/customer_product_qrcode/views/view.xml @@ -9,12 +9,12 @@