mirror of
https://github.com/erpnext/foundation.git
synced 2026-10-16 18:00:47 +02:00
[hotfix] validate payment amount before redirecting to payment gateway
This commit is contained in:
@@ -5,10 +5,25 @@
|
||||
from __future__ import unicode_literals
|
||||
import frappe
|
||||
from frappe.model.document import Document
|
||||
from frappe.utils import add_days, add_years, nowdate, getdate
|
||||
from frappe.utils import add_days, add_years, nowdate, getdate, cint, fmt_money
|
||||
from frappe import _
|
||||
import foundation
|
||||
|
||||
currency_wise_membership_plan_mapper = {
|
||||
"Gold": {
|
||||
"USD": 5000,
|
||||
"INR": 300000,
|
||||
},
|
||||
"Silver": {
|
||||
"USD": 1500,
|
||||
"INR": 100000,
|
||||
},
|
||||
"Individual": {
|
||||
"USD": 200,
|
||||
"INR": 10000,
|
||||
}
|
||||
}
|
||||
|
||||
class Membership(Document):
|
||||
def validate(self):
|
||||
member_name = frappe.get_value('Member', dict(email=frappe.session.user))
|
||||
@@ -61,3 +76,14 @@ class Membership(Document):
|
||||
"member": self.member,
|
||||
"show_in_website": 1
|
||||
}).insert(ignore_mandatory=True, ignore_permissions = True)
|
||||
|
||||
def validate_payment(self):
|
||||
membership_fees = currency_wise_membership_plan_mapper\
|
||||
.get(self.membership_type, {}).get(self.currency)
|
||||
|
||||
if cint(membership_fees) != cint(self.amount):
|
||||
formated_membership_fees = fmt_money(membership_fees, precision=0, currency=self.currency)
|
||||
|
||||
frappe.msgprint("For Membership Type: {0}, the fees are {1}".format(self.membership_type,
|
||||
formated_membership_fees), raise_exception=frappe.ValidationError,
|
||||
title="Validate Payment Amount", indicator='red')
|
||||
|
||||
Reference in New Issue
Block a user