chore: Clean up imports (#27302)

* chore: Added isort to pre-commit config

* chore: Sort imports with isort

* chore: Clean up imports with pycln

* chore: Sort imports with isort

* chore: Fix import issues

* chore: Clean up sider issues

* chore: Remove import errors from flake8 ignore list

* chore: Clean up lint issues
diff --git a/erpnext/demo/user/manufacturing.py b/erpnext/demo/user/manufacturing.py
index bece079..6e01f0f 100644
--- a/erpnext/demo/user/manufacturing.py
+++ b/erpnext/demo/user/manufacturing.py
@@ -3,21 +3,23 @@
 
 from __future__ import unicode_literals
 
-import frappe, random, erpnext
+import random
 from datetime import timedelta
-from frappe.utils.make_random import how_many
+
+import frappe
 from frappe.desk import query_report
-from erpnext.manufacturing.doctype.workstation.workstation import WorkstationHolidayError
+from frappe.utils.make_random import how_many
+
+import erpnext
 from erpnext.manufacturing.doctype.work_order.test_work_order import make_wo_order_test_record
 
+
 def work():
 	if random.random() < 0.3: return
 
 	frappe.set_user(frappe.db.get_global('demo_manufacturing_user'))
 	if not frappe.get_all('Sales Order'): return
 
-	from erpnext.projects.doctype.timesheet.timesheet import OverlapError
-
 	ppt = frappe.new_doc("Production Plan")
 	ppt.company = erpnext.get_default_company()
 	# ppt.use_multi_level_bom = 1 #refactored
@@ -68,9 +70,12 @@
 
 def make_stock_entry_from_pro(pro_id, purpose):
 	from erpnext.manufacturing.doctype.work_order.work_order import make_stock_entry
+	from erpnext.stock.doctype.stock_entry.stock_entry import (
+		DuplicateEntryForWorkOrderError,
+		IncorrectValuationRateError,
+		OperationsNotCompleteError,
+	)
 	from erpnext.stock.stock_ledger import NegativeStockError
-	from erpnext.stock.doctype.stock_entry.stock_entry import IncorrectValuationRateError, \
-		DuplicateEntryForWorkOrderError, OperationsNotCompleteError
 
 	try:
 		st = frappe.get_doc(make_stock_entry(pro_id, purpose))