diff --git a/foundation/erpnext_foundation/doctype/membership/membership.py b/foundation/erpnext_foundation/doctype/membership/membership.py index 5ea494cd..6418802d 100644 --- a/foundation/erpnext_foundation/doctype/membership/membership.py +++ b/foundation/erpnext_foundation/doctype/membership/membership.py @@ -22,7 +22,8 @@ class Membership(Document): )).insert(ignore_permissions=True) member_name = member.name - self.member = member_name + if self.get("__islocal"): + self.member = member_name # get last membership (if active) last_membership = foundation.get_last_membership() @@ -43,3 +44,12 @@ class Membership(Document): self.load_from_db() self.db_set('paid', 1) + self.link_member_with_service_provider() + + def link_member_with_service_provider(self): + service_provider = frappe.db.get_value("Service Provider", dict(owner=frappe.session.user)) + + if service_provider: + frappe.db.set_value("Service Provider", service_provider, "member", frappe.session.user, + update_modified=False) +