Revert "Stock Entry: get fg item incoming rate if bom is mentioned"

This reverts commit 297939325a49f51140971f99c5f240162b656f36.
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py
index 1dc624f..3df78c8 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.py
@@ -217,8 +217,8 @@
 					Available Qty: {4}, Transfer Qty: {5}""").format(d.idx, d.s_warehouse,
 					self.posting_date, self.posting_time, d.actual_qty, d.transfer_qty))
 
+			# get incoming rate
 			if not d.bom_no:
-				# set incoming rate
 				if not flt(d.incoming_rate) or d.s_warehouse or self.purpose == "Sales Return":
 					incoming_rate = self.get_incoming_rate(args)
 					if flt(incoming_rate) > 0:
@@ -227,16 +227,15 @@
 				d.amount = flt(d.transfer_qty) * flt(d.incoming_rate)
 				raw_material_cost += flt(d.amount)
 
-			# bom no exists and purpose is Manufacture/Repack
-			elif self.purpose == "Manufacture/Repack":
-
-				# set incoming rate for fg item
-				if not flt(d.incoming_rate):
-					bom = frappe.db.get_value("BOM", d.bom_no, ["operating_cost", "quantity"], as_dict=1)
-					operation_cost_per_unit = flt(bom.operating_cost) / flt(bom.quantity)
-					d.incoming_rate = operation_cost_per_unit + (raw_material_cost / flt(d.transfer_qty))
-
-				d.amount = flt(d.transfer_qty) * flt(d.incoming_rate)
+		# set incoming rate for fg item
+		if self.production_order and self.purpose == "Manufacture/Repack":
+			for d in self.get("mtn_details"):
+				if d.bom_no:
+					if not flt(d.incoming_rate):
+						bom = frappe.db.get_value("BOM", d.bom_no, ["operating_cost", "quantity"], as_dict=1)
+						operation_cost_per_unit = flt(bom.operating_cost) / flt(bom.quantity)
+						d.incoming_rate = operation_cost_per_unit + (raw_material_cost / flt(d.transfer_qty))
+					d.amount = flt(d.transfer_qty) * flt(d.incoming_rate)
 
 	def get_incoming_rate(self, args):
 		incoming_rate = 0