diff --git a/.claude/settings.local.json b/.claude/settings.local.json index a0eff50..697b9cf 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -18,7 +18,8 @@ "Bash(ls:*)", "Bash(move lab_logo.png lims_management/static/img/lab_logo.png)", "WebFetch(domain:github.com)", - "WebFetch(domain:apps.odoo.com)" + "WebFetch(domain:apps.odoo.com)", + "Bash(dir:*)" ], "deny": [] } diff --git a/lims_management/models/__pycache__/sale_order.cpython-312.pyc b/lims_management/models/__pycache__/sale_order.cpython-312.pyc index fa60ec8..31b1b70 100644 Binary files a/lims_management/models/__pycache__/sale_order.cpython-312.pyc and b/lims_management/models/__pycache__/sale_order.cpython-312.pyc differ diff --git a/lims_management/models/sale_order.py b/lims_management/models/sale_order.py index 5024cb5..c4a10f3 100644 --- a/lims_management/models/sale_order.py +++ b/lims_management/models/sale_order.py @@ -136,8 +136,16 @@ class SaleOrder(models.Model): try: sample_type = group_data['sample_type'] + # Generate a unique lot name using sequence + sequence = self.env['ir.sequence'].next_by_code('stock.lot.serial') + if not sequence: + # Fallback to timestamp-based name if no sequence exists + import time + sequence = 'LAB-' + str(int(time.time()))[-8:] + # Prepare sample values vals = { + 'name': sequence, # Add the lot name 'product_id': sample_type.product_variant_id.id, 'patient_id': self.partner_id.id, 'doctor_id': self.doctor_id.id if self.doctor_id else False,