diff --git a/erpnext/patches/v12_0/move_parameters_to_priority.py b/erpnext/patches/v12_0/move_parameters_to_priority.py
deleted file mode 100644
index 310bfe2..0000000
--- a/erpnext/patches/v12_0/move_parameters_to_priority.py
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright (c) 2017, Frappe and Contributors
-# License: GNU General Public License v3. See license.txt
-
-from __future__ import unicode_literals
-import frappe
-
-def execute():
-	priority = ["Low", "Medium", "High"]
-
-	service_levels = frappe.get_list("Service Level")
-	for service_level in service_levels:
-		doc = frappe.get_doc("Service Level", service_level)
-		for value in priority:
-			doc.append("priorities",
-				{
-					"priority": "{0}".format(value),
-					"response_time": doc.response_time,
-					"response_time_period": doc.response_time_period,
-					"resolution_time": doc.resolution_time,
-					"resolution_time_period": doc.resolution_time_period,
-				}
-			)
-		doc.save(ignore_permissions=True)
-
-	service_level_agreements = frappe.get_list("Service Level Agreement")
-	for service_level_agreement in service_level_agreements:
-		doc = frappe.get_doc("Service Level Agreement", service_level_agreement)
-		for value in priority:
-			doc.append("priorities",
-				{
-					"priority": "{0}".format(value),
-					"response_time": doc.response_time,
-					"response_time_period": doc.response_time_period,
-					"resolution_time": doc.resolution_time,
-					"resolution_time_period": doc.resolution_time_period,
-				}
-			)
-		doc.save(ignore_permissions=True)
\ No newline at end of file
diff --git a/erpnext/support/doctype/issue/issue.js b/erpnext/support/doctype/issue/issue.js
index 7c93973..05bfe97 100644
--- a/erpnext/support/doctype/issue/issue.js
+++ b/erpnext/support/doctype/issue/issue.js
@@ -1,6 +1,7 @@
 frappe.ui.form.on("Issue", {
 	onload: function(frm) {
 		frm.email_field = "raised_by";
+
 		if (frm.doc.service_level_agreement) {
 			frappe.call({
 				method: "erpnext.support.doctype.service_level_agreement.service_level_agreement.get_service_level_agreement_priorities",
@@ -19,6 +20,24 @@
 					}
 				}
 			});
+
+			frappe.call({
+				method: "erpnext.support.doctype.service_level_agreement.service_level_agreement.get_valid_service_level_agreements",
+				args: {
+					customer: frm.doc.customer,
+				},
+				callback: function (r) {
+					if (r && r.message) {
+						frm.set_query('service_level_agreement', function() {
+							return {
+								filters: {
+									"name": ["in", r.message],
+								}
+							};
+						});
+					}
+				}
+			});
 		}
 	},
 
diff --git a/erpnext/support/doctype/service_level_agreement/service_level_agreement.py b/erpnext/support/doctype/service_level_agreement/service_level_agreement.py
index aeeb86d..5d71e1f 100644
--- a/erpnext/support/doctype/service_level_agreement/service_level_agreement.py
+++ b/erpnext/support/doctype/service_level_agreement/service_level_agreement.py
@@ -70,6 +70,18 @@
 def get_service_level_agreement_priorities(name):
 	return [priority.priority for priority in frappe.get_list("Service Level Priority", filters={"parent": name}, fields=["priority"])]
 
+@frappe.whitelist()
+def get_valid_service_level_agreements(customer):
+	or_filters = [
+		["Service Level Agreement", "entity", "in", [customer, get_customer_group(customer), get_customer_territory(customer), "IS NULL"]],
+		["Service Level Agreement", "default_service_level_agreement", "=", 1]
+	]
+
+	if not customer:
+		or_filters = ["Service Level Agreement", "default_service_level_agreement", "=", 1]
+
+	return [d.name for d in frappe.get_list("Service Level Agreement", or_filters=or_filters)]
+
 def get_customer_group(customer):
 	if customer:
 		return frappe.db.get_value("Customer", customer, "customer_group")
