summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiqdad <ahmadmiqdad27@gmail.com>2025-07-22 13:00:41 +0700
committerMiqdad <ahmadmiqdad27@gmail.com>2025-07-22 13:00:41 +0700
commit69f0fbf98183ea00bb069df3ecd40e91df7081c3 (patch)
treed092d242d080c2f5a87ec47d0842f24780cce7b0
parent92187628f1971ba1f4ee3283cae94090ac4c1e8a (diff)
<miqdad> fix error when 2 item return
-rw-r--r--indoteknik_custom/models/tukar_guling.py48
1 files changed, 24 insertions, 24 deletions
diff --git a/indoteknik_custom/models/tukar_guling.py b/indoteknik_custom/models/tukar_guling.py
index a08d29bd..e546ad9c 100644
--- a/indoteknik_custom/models/tukar_guling.py
+++ b/indoteknik_custom/models/tukar_guling.py
@@ -99,16 +99,16 @@ class TukarGuling(models.Model):
tg_product_ids = self.line_ids.mapped('product_id.id')
for koli_line in self.operations.konfirm_koli_lines:
- pick_move = koli_line.pick_id.move_line_ids_without_package
- if pick_move.product_id.id in tg_product_ids:
- mapping_koli_data.append((0, 0, {
- 'sequence': sequence,
- 'pick_id': koli_line.pick_id.id,
- 'product_id': pick_move.product_id.id,
- 'qty_done': pick_move.qty_done,
- 'qty_return': 0
- }))
- sequence += 10
+ for move in koli_line.pick_id.move_line_ids_without_package:
+ if move.product_id.id in tg_product_ids:
+ mapping_koli_data.append((0, 0, {
+ 'sequence': sequence,
+ 'pick_id': koli_line.pick_id.id,
+ 'product_id': move.product_id.id,
+ 'qty_done': move.qty_done,
+ 'qty_return': 0
+ }))
+ sequence += 10
self.mapping_koli_ids = mapping_koli_data
_logger.info(f"✅ Created {len(mapping_koli_data)} mapping koli lines (from return wizard)")
@@ -128,7 +128,6 @@ class TukarGuling(models.Model):
# Untuk Odoo 14, gunakan move_ids_without_package atau move_lines
moves_to_check = []
-
if hasattr(self.operations, 'move_ids_without_package') and self.operations.move_ids_without_package:
moves_to_check = self.operations.move_ids_without_package
elif hasattr(self.operations, 'move_lines') and self.operations.move_lines:
@@ -160,7 +159,7 @@ class TukarGuling(models.Model):
if lines_data:
self.line_ids = lines_data
- _logger.info(f"Created {len(lines_data)} product lines")
+ _logger.info(f"✅ Created {len(lines_data)} product lines")
# Prepare mapping koli jika BU/OUT
mapping_koli_data = []
@@ -169,23 +168,23 @@ class TukarGuling(models.Model):
if self.operations.picking_type_id.id == 29:
tg_product_ids = [p for p in product_data]
for koli_line in self.operations.konfirm_koli_lines:
- pick_move = koli_line.pick_id.move_line_ids_without_package
- if pick_move.product_id.id in tg_product_ids:
- mapping_koli_data.append((0, 0, {
- 'sequence': sequence,
- 'pick_id': koli_line.pick_id.id,
- 'product_id': pick_move.product_id.id,
- 'qty_done': pick_move.qty_done
- }))
- sequence += 10
+ for move in koli_line.pick_id.move_line_ids_without_package:
+ if move.product_id.id in tg_product_ids:
+ mapping_koli_data.append((0, 0, {
+ 'sequence': sequence,
+ 'pick_id': koli_line.pick_id.id,
+ 'product_id': move.product_id.id,
+ 'qty_done': move.qty_done
+ }))
+ sequence += 10
if mapping_koli_data:
self.mapping_koli_ids = mapping_koli_data
- _logger.info(f"Created {len(mapping_koli_data)} mapping koli lines")
+ _logger.info(f"✅ Created {len(mapping_koli_data)} mapping koli lines")
else:
- _logger.info("No mapping koli lines created")
+ _logger.info("⚠️ No mapping koli lines created")
else:
- _logger.info("No product lines created - no valid moves found")
+ _logger.info("⚠️ No product lines created - no valid moves found")
else:
from_return_picking = self.env.context.get('from_return_picking', False) or \
self.env.context.get('default_line_ids', False)
@@ -196,6 +195,7 @@ class TukarGuling(models.Model):
self.origin = False
+
def action_populate_lines(self):
"""Manual button untuk populate lines - sebagai alternatif"""
self.ensure_one()