[fix] dashboard for customer, supplier
diff --git a/erpnext/public/js/utils/party.js b/erpnext/public/js/utils/party.js
index 1896f88..2f45a35 100644
--- a/erpnext/public/js/utils/party.js
+++ b/erpnext/public/js/utils/party.js
@@ -2,6 +2,7 @@
 // License: GNU General Public License v3. See license.txt
 
 frappe.provide("erpnext.utils");
+frappe.provide('erpnext.party');
 erpnext.utils.get_party_details = function(frm, method, args, callback) {
 	if(!method) {
 		method = "erpnext.accounts.party.get_party_details";
@@ -69,7 +70,7 @@
 				if(r.message) {
 					frm.set_value(display_field, r.message)
 				}
-				
+
 				if(frappe.meta.get_docfield(frm.doc.doctype, "taxes") && !is_your_company_address) {
 					if(!erpnext.utils.validate_mandatory(frm, "Customer/Supplier",
 						frm.doc.customer || frm.doc.supplier, address_field)) return;
@@ -99,7 +100,7 @@
 	} else {
 		frm.set_value(display_field, null);
 	}
-	
+
 }
 
 erpnext.utils.get_contact_details = function(frm) {
@@ -139,3 +140,30 @@
 		}
 	});
 }
+
+erpnext.party.setup_dashboard = function(frm) {
+	frm.dashboard.reset(frm.doc);
+	if(frm.doc.__islocal)
+		return;
+
+	$.each(frm.doc.__onload.transactions, function(i, doctype) {
+		frm.dashboard.add_doctype_badge(doctype, frm.doc.doctype.toLowerCase());
+	})
+
+	return frappe.call({
+		type: "GET",
+		method: "erpnext.accounts.party_status.get_transaction_info",
+		args: {
+			party_type: frm.doc.doctype,
+			party_name: frm.doc.name
+		},
+		callback: function(r) {
+			$.each(r.message.transaction_count, function(i, d) {
+				if(d.count) {
+					frm.dashboard.set_badge_count(d.name, d.count)
+				}
+			})
+		}
+	});
+
+}