fix: Remarks fix
diff --git a/erpnext/loan_management/doctype/loan/loan.js b/erpnext/loan_management/doctype/loan/loan.js
index 8d101b8..28af3a9 100644
--- a/erpnext/loan_management/doctype/loan/loan.js
+++ b/erpnext/loan_management/doctype/loan/loan.js
@@ -7,7 +7,8 @@
setup: function(frm) {
frm.make_methods = {
'Loan Disbursement': function() { frm.trigger('make_loan_disbursement') },
- 'Loan Security Unpledge': function() { frm.trigger('create_loan_security_unpledge') }
+ 'Loan Security Unpledge': function() { frm.trigger('create_loan_security_unpledge') },
+ 'Loan Write Off': function() { frm.trigger('make_loan_write_off_entry') }
}
},
onload: function (frm) {
diff --git a/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.json b/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.json
index 893609e..d6bf08a 100644
--- a/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.json
+++ b/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.json
@@ -27,6 +27,7 @@
"section_break_15",
"process_loan_interest_accrual",
"repayment_schedule_name",
+ "last_accrual_date",
"amended_from"
],
"fields": [
@@ -163,13 +164,20 @@
"fieldtype": "Currency",
"label": "Penalty Amount",
"options": "Company:company:default_currency"
+ },
+ {
+ "fieldname": "last_accrual_date",
+ "fieldtype": "Date",
+ "hidden": 1,
+ "label": "Last Accrual Date",
+ "read_only": 1
}
],
"in_create": 1,
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
- "modified": "2020-10-11 11:17:44.704694",
+ "modified": "2020-11-06 13:22:40.197916",
"modified_by": "Administrator",
"module": "Loan Management",
"name": "Loan Interest Accrual",
diff --git a/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.py b/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.py
index 22ff666..d642400 100644
--- a/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.py
+++ b/erpnext/loan_management/doctype/loan_interest_accrual/loan_interest_accrual.py
@@ -22,6 +22,9 @@
if not self.interest_amount and not self.payable_principal_amount:
frappe.throw(_("Interest Amount or Principal Amount is mandatory"))
+ if not self.last_accrual_date:
+ self.last_accrual_date = get_last_accrual_date(self.loan)
+
def on_submit(self):
self.make_gl_entries()
@@ -50,7 +53,7 @@
"against_voucher_type": "Loan",
"against_voucher": self.loan,
"remarks": _("Interest accrued from {0} to {1} against loan: {2}").format(
- get_last_accural_date(self.loan), self.posting_date, self.loan),
+ self.last_accrual_date, self.posting_date, self.loan),
"cost_center": erpnext.get_default_cost_center(self.company),
"posting_date": self.posting_date
})
@@ -67,7 +70,7 @@
"against_voucher_type": "Loan",
"against_voucher": self.loan,
"remarks": ("Interest accrued from {0} to {1} against loan: {2}").format(
- get_last_accural_date(self.loan), self.posting_date, self.loan),
+ self.last_accrual_date, self.posting_date, self.loan),
"cost_center": erpnext.get_default_cost_center(self.company),
"posting_date": self.posting_date
})
@@ -213,13 +216,13 @@
def get_no_of_days_for_interest_accural(loan, posting_date):
- last_interest_accrual_date = get_last_accural_date(loan.name)
+ last_interest_accrual_date = get_last_accrual_date(loan.name)
no_of_days = date_diff(posting_date or nowdate(), last_interest_accrual_date) + 1
return no_of_days
-def get_last_accural_date(loan):
+def get_last_accrual_date(loan):
last_posting_date = frappe.db.sql(""" SELECT MAX(posting_date) from `tabLoan Interest Accrual`
WHERE loan = %s and docstatus = 1""", (loan))
diff --git a/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py b/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py
index e478cb8..bb91abd 100644
--- a/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py
+++ b/erpnext/loan_management/doctype/loan_repayment/loan_repayment.py
@@ -14,7 +14,7 @@
from erpnext.accounts.general_ledger import make_gl_entries
from erpnext.loan_management.doctype.loan_security_shortfall.loan_security_shortfall import update_shortfall_status
from erpnext.loan_management.doctype.process_loan_interest_accrual.process_loan_interest_accrual import process_loan_interest_accrual_for_demand_loans
-from erpnext.loan_management.doctype.loan_interest_accrual.loan_interest_accrual import get_per_day_interest, get_last_accural_date
+from erpnext.loan_management.doctype.loan_interest_accrual.loan_interest_accrual import get_per_day_interest, get_last_accrual_date
class LoanRepayment(AccountsController):
@@ -78,7 +78,7 @@
if self.total_interest_paid > self.interest_payable:
if not self.is_term_loan:
# get last loan interest accrual date
- last_accrual_date = get_last_accural_date(self.against_loan)
+ last_accrual_date = get_last_accrual_date(self.against_loan)
# get posting date upto which interest has to be accrued
per_day_interest = flt(get_per_day_interest(self.pending_principal_amount,
@@ -87,7 +87,6 @@
no_of_days = flt(flt(self.total_interest_paid - self.interest_payable,
precision)/per_day_interest, 0) - 1
-
posting_date = add_days(last_accrual_date, no_of_days)
# book excess interest paid
@@ -368,7 +367,7 @@
if due_date:
pending_days = date_diff(posting_date, due_date) + 1
else:
- last_accrual_date = get_last_accural_date(against_loan_doc.name)
+ last_accrual_date = get_last_accrual_date(against_loan_doc.name)
pending_days = date_diff(posting_date, last_accrual_date) + 1
if pending_days > 0:
diff --git a/erpnext/loan_management/doctype/process_loan_interest_accrual/process_loan_interest_accrual.json b/erpnext/loan_management/doctype/process_loan_interest_accrual/process_loan_interest_accrual.json
index b78c3ba..828df2e 100644
--- a/erpnext/loan_management/doctype/process_loan_interest_accrual/process_loan_interest_accrual.json
+++ b/erpnext/loan_management/doctype/process_loan_interest_accrual/process_loan_interest_accrual.json
@@ -52,14 +52,16 @@
{
"fieldname": "accrual_type",
"fieldtype": "Select",
+ "hidden": 1,
"label": "Accrual Type",
- "options": "Regular\nRepayment\nDisbursement"
+ "options": "Regular\nRepayment\nDisbursement",
+ "read_only": 1
}
],
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
- "modified": "2020-11-06 04:43:56.581670",
+ "modified": "2020-11-06 13:28:51.478909",
"modified_by": "Administrator",
"module": "Loan Management",
"name": "Process Loan Interest Accrual",