From 93dccea0cb91c0d10c28c35bf7c8933af4b7d676 Mon Sep 17 00:00:00 2001 From: Saurabh Date: Mon, 3 Apr 2017 12:44:54 +0530 Subject: [PATCH] [fix] if payment is successful then mark membership status as paid and show only paid memberships --- foundation/__init__.py | 2 +- .../erpnext_foundation/doctype/membership/membership.py | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/foundation/__init__.py b/foundation/__init__.py index 09722870..631ab748 100644 --- a/foundation/__init__.py +++ b/foundation/__init__.py @@ -9,7 +9,7 @@ import frappe def get_last_membership(): '''Returns last membership if exists''' last_membership = frappe.get_all('Membership', 'name,to_date,membership_type', - dict(member=frappe.session.user), order_by='to_date desc', limit=1) + dict(member=frappe.session.user, paid=1), order_by='to_date desc', limit=1) return last_membership and last_membership[0] diff --git a/foundation/erpnext_foundation/doctype/membership/membership.py b/foundation/erpnext_foundation/doctype/membership/membership.py index 5ef6254c..5ea494cd 100644 --- a/foundation/erpnext_foundation/doctype/membership/membership.py +++ b/foundation/erpnext_foundation/doctype/membership/membership.py @@ -38,3 +38,8 @@ class Membership(Document): self.to_date = add_years(self.from_date, 1) + def on_payment_authorized(self, status_changed_to=None): + if status_changed_to in ("Completed", "Authorized"): + self.load_from_db() + self.db_set('paid', 1) +