summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorit-fixcomart <it@fixcomart.co.id>2025-03-10 21:54:48 +0700
committerit-fixcomart <it@fixcomart.co.id>2025-03-10 21:54:48 +0700
commitba57391edba128d8f58243d0dfd0d16a38e7dfec (patch)
tree34c78febb7698ea130515cf510fbae6c716000eb
parent685c07a85cdad186ec14ad7bf9b78d52b34f8cb5 (diff)
<iman> when duplikat adjust doc number dont create first
-rw-r--r--indoteknik_custom/models/stock_inventory.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/indoteknik_custom/models/stock_inventory.py b/indoteknik_custom/models/stock_inventory.py
index b7020285..69cca5bc 100644
--- a/indoteknik_custom/models/stock_inventory.py
+++ b/indoteknik_custom/models/stock_inventory.py
@@ -54,6 +54,26 @@ class StockInventory(models.Model):
@api.model
def create(self, vals):
+ """Pastikan nomor hanya dibuat saat penyimpanan."""
+ if 'adjusment_type' in vals and not vals.get('number'):
+ vals['number'] = False # Jangan buat number otomatis dulu
+
order = super(StockInventory, self).create(vals)
- self._assign_number(order)
+
+ if order.adjusment_type:
+ self._assign_number(order) # Generate number setelah save
+
return order
+
+ def write(self, vals):
+ """Jika adjusment_type diubah, generate ulang nomor."""
+ res = super(StockInventory, self).write(vals)
+ if 'adjusment_type' in vals:
+ for record in self:
+ self._assign_number(record)
+ return res
+
+ def copy(self, default=None):
+ """Saat duplikasi, adjusment_type dikosongkan dan number tidak ikut terduplikasi."""
+ default = dict(default or {}, adjusment_type=False, number=False)
+ return super(StockInventory, self).copy(default=default)