diff --git a/sf_warehouse/models/model.py b/sf_warehouse/models/model.py index 718a5877..98a4b513 100644 --- a/sf_warehouse/models/model.py +++ b/sf_warehouse/models/model.py @@ -854,12 +854,14 @@ class Sf_stock_move_line(models.Model): def _check_destination_location_id(self): for item in self: if item: - line_destination_location_ids = [] - for obj in item.picking_id.move_line_ids: - if obj.destination_location_id: - line_destination_location_ids.append(obj.destination_location_id.barcode) - if item.destination_location_id.barcode in line_destination_location_ids: - raise ValidationError('【%s】货位已经被占用,请重新选择!!!' % item.destination_location_id.barcode) + i = 0 + barcode = item.destination_location_id.barcode + for line in item.picking_id.move_line_ids_without_package: + if barcode and barcode == line.destination_location_id.barcode: + i += 1 + if i > 1: + raise ValidationError( + '【%s】货位已经被占用,请重新选择!!!' % item.destination_location_id.barcode) class SfStockPicking(models.Model):