Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(Bank Reconciliation): Redesign #24273

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
af288f3
feat(Bank Reconciliation): Redesign
hasnain2808 Jan 8, 2021
3836e84
fix(Bank Reconciliation): tests
hasnain2808 Jan 8, 2021
8680931
chore: rename
hasnain2808 Jan 8, 2021
df34f4c
fix(Bank Reconciliation): fix old patch
hasnain2808 Jan 8, 2021
1420f0f
fix: no transactions broken
hasnain2808 Jan 8, 2021
72e318b
chore(Bank Reconciliation): fix sider
hasnain2808 Jan 8, 2021
c79f2fa
chore(Bank Reconciliation): fix translation issues
hasnain2808 Jan 8, 2021
be37318
feat(Bank Reconciliation ): union to case when
hasnain2808 Jan 8, 2021
cd75c7f
chore(Bank Reconciliation): Refactor
hasnain2808 Jan 9, 2021
eb860df
feat(Bank Reconciliation): Better Toasts
hasnain2808 Jan 9, 2021
f10b7b4
chore: remove debug
hasnain2808 Jan 9, 2021
7d5b419
feat(Bank Reconciliation): add desk pages
hasnain2808 Jan 11, 2021
168e4b3
feat(Bank Reconciliation): Minor Fixes
hasnain2808 Jan 11, 2021
189bcf1
fix: sider
hasnain2808 Jan 11, 2021
c1eb365
fix: sider
hasnain2808 Jan 11, 2021
9aa907f
fix: sider
hasnain2808 Jan 11, 2021
e5cd3f2
fix: travis
hasnain2808 Jan 11, 2021
2953774
chore(Bank Reconciliation): add comments
hasnain2808 Jan 14, 2021
da57e0a
feat(Bank Reconciliation): edit in full page
hasnain2808 Feb 1, 2021
79de5dc
feat: download template
hasnain2808 Feb 1, 2021
9636238
fix: hide datatable when no proposals
hasnain2808 Feb 1, 2021
3e7cd96
fix: ux
hasnain2808 Feb 1, 2021
4345a4e
feat:no bank transaction found message
hasnain2808 Feb 1, 2021
da3d6f3
fix: minor fixes
hasnain2808 Feb 4, 2021
76ca37c
fix: sider
hasnain2808 Feb 4, 2021
3e6e5c5
chore: fix capitalization
hasnain2808 Feb 4, 2021
93af8f0
fix: make compatible with v13
hasnain2808 Feb 10, 2021
ad5ca98
fix: remove extra db commits
hasnain2808 Feb 10, 2021
42a0db3
chore: remove print stmts
hasnain2808 Feb 15, 2021
c95cc76
fix: adjjust padding
hasnain2808 Feb 15, 2021
c60b8a8
Merge branch 'develop' into Bank-Reconciliation-Doctype
hasnain2808 Feb 16, 2021
ec56e28
chore delete accounts.py
hasnain2808 Feb 16, 2021
eed34a5
chore: delete accounting
hasnain2808 Feb 16, 2021
cf74055
fix: sider
hasnain2808 Feb 16, 2021
78022fc
fix: sider
hasnain2808 Feb 16, 2021
ca3ed99
fix: payment entry not getting created
hasnain2808 Feb 16, 2021
f568e71
Merge branch 'Bank-Reconciliation-Doctype' of https://github.com/hasn…
hasnain2808 Feb 16, 2021
6066a91
Merge branch 'develop' into Bank-Reconciliation-Doctype
hasnain2808 Feb 17, 2021
9f808f0
fix: rename bank transacton
hasnain2808 Feb 17, 2021
ea5c819
Merge branch 'develop' into Bank-Reconciliation-Doctype
nabinhait Feb 22, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
3 changes: 2 additions & 1 deletion erpnext/accounts/doctype/bank_account/bank_account.json
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@
},
{
"default": "0",
"description": "Setting the account as a Company Account is necessary for Bank Reconciliation",
"fieldname": "is_company_account",
"fieldtype": "Check",
"label": "Is Company Account"
Expand Down Expand Up @@ -207,7 +208,7 @@
}
],
"links": [],
"modified": "2020-07-17 13:59:50.795412",
"modified": "2020-10-23 16:48:06.303658",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Account",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
// Copyright (c) 2020, Frappe Technologies Pvt. Ltd. and contributors
// For license information, please see license.txt
frappe.provide("erpnext.accounts.bank_reconciliation");

frappe.ui.form.on("Bank Reconciliation Tool", {
setup: function (frm) {
frm.set_query("bank_account", function () {
return {
filters: {
company: ["in", frm.doc.company],
},
};
});
},

refresh: function (frm) {
frappe.require("assets/js/bank-reconciliation-tool.min.js", () =>
frm.trigger("make_reconciliation_tool")
);
frm.upload_statement_button = frm.page.set_secondary_action(
__("Upload Bank Statement"),
() =>
frappe.call({
method:
"erpnext.accounts.doctype.bank_statement_import.bank_statement_import.upload_bank_statement",
args: {
dt: frm.doc.doctype,
dn: frm.doc.name,
company: frm.doc.company,
bank_account: frm.doc.bank_account,
},
callback: function (r) {
if (!r.exc) {
var doc = frappe.model.sync(r.message);
frappe.set_route(
"Form",
doc[0].doctype,
doc[0].name
);
}
},
})
);
},

after_save: function (frm) {
frm.trigger("make_reconciliation_tool");
},

bank_account: function (frm) {
frappe.db.get_value(
"Bank Account",
frm.bank_account,
"account",
(r) => {
frappe.db.get_value(
"Account",
r.account,
"account_currency",
(r) => {
frm.currency = r.account_currency;
}
);
}
);
frm.trigger("get_account_opening_balance");
},

bank_statement_from_date: function (frm) {
frm.trigger("get_account_opening_balance");
},

make_reconciliation_tool(frm) {
frm.get_field("reconciliation_tool_cards").$wrapper.empty();
if (frm.doc.bank_account && frm.doc.bank_statement_to_date) {
frm.trigger("get_cleared_balance").then(() => {
if (
frm.doc.bank_account &&
frm.doc.bank_statement_from_date &&
frm.doc.bank_statement_to_date &&
frm.doc.bank_statement_closing_balance
) {
frm.trigger("render_chart");
frm.trigger("render");
frappe.utils.scroll_to(
frm.get_field("reconciliation_tool_cards").$wrapper,
true,
30
);
}
});
}
},

get_account_opening_balance(frm) {
if (frm.doc.bank_account && frm.doc.bank_statement_from_date) {
frappe.call({
method:
"erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.get_account_balance",
args: {
bank_account: frm.doc.bank_account,
till_date: frm.doc.bank_statement_from_date,
},
callback: (response) => {
frm.set_value("account_opening_balance", response.message);
},
});
}
},

get_cleared_balance(frm) {
if (frm.doc.bank_account && frm.doc.bank_statement_to_date) {
return frappe.call({
method:
"erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.get_account_balance",
args: {
bank_account: frm.doc.bank_account,
till_date: frm.doc.bank_statement_to_date,
},
callback: (response) => {
frm.cleared_balance = response.message;
},
});
}
},

render_chart(frm) {
frm.cards_manager = new erpnext.accounts.bank_reconciliation.NumberCardManager(
{
$reconciliation_tool_cards: frm.get_field(
"reconciliation_tool_cards"
).$wrapper,
bank_statement_closing_balance:
frm.doc.bank_statement_closing_balance,
cleared_balance: frm.cleared_balance,
currency: frm.currency,
}
);
},

render(frm) {
if (frm.doc.bank_account) {
frm.bank_reconciliation_data_table_manager = new erpnext.accounts.bank_reconciliation.DataTableManager(
{
company: frm.doc.company,
bank_account: frm.doc.bank_account,
$reconciliation_tool_dt: frm.get_field(
"reconciliation_tool_dt"
).$wrapper,
$no_bank_transactions: frm.get_field(
"no_bank_transactions"
).$wrapper,
bank_statement_from_date: frm.doc.bank_statement_from_date,
bank_statement_to_date: frm.doc.bank_statement_to_date,
bank_statement_closing_balance:
frm.doc.bank_statement_closing_balance,
cards_manager: frm.cards_manager,
}
);
}
},
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
{
"actions": [],
"creation": "2020-12-02 10:13:02.148040",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"company",
"bank_account",
"column_break_1",
"bank_statement_from_date",
"bank_statement_to_date",
"column_break_2",
"account_opening_balance",
"bank_statement_closing_balance",
"section_break_1",
"reconciliation_tool_cards",
"reconciliation_tool_dt",
"no_bank_transactions"
],
"fields": [
{
"fieldname": "company",
"fieldtype": "Link",
"label": "Company",
"options": "Company"
},
{
"fieldname": "bank_account",
"fieldtype": "Link",
"label": "Bank Account",
"options": "Bank Account"
},
{
"fieldname": "column_break_1",
"fieldtype": "Column Break"
},
{
"depends_on": "eval: doc.bank_account",
"fieldname": "bank_statement_from_date",
"fieldtype": "Date",
"label": "Bank Statement From Date"
},
{
"depends_on": "eval: doc.bank_statement_from_date",
"fieldname": "bank_statement_to_date",
"fieldtype": "Date",
"label": "Bank Statement To Date"
},
{
"fieldname": "column_break_2",
"fieldtype": "Column Break"
},
{
"depends_on": "eval: doc.bank_statement_from_date",
"fieldname": "account_opening_balance",
"fieldtype": "Currency",
"label": "Account Opening Balance",
"options": "Currency",
"read_only": 1
},
{
"depends_on": "eval: doc.bank_statement_to_date",
"fieldname": "bank_statement_closing_balance",
"fieldtype": "Currency",
"label": "Bank Statement Closing Balance",
"options": "Currency"
},
{
"depends_on": "eval: doc.bank_statement_closing_balance",
"fieldname": "section_break_1",
"fieldtype": "Section Break",
"label": "Reconcile"
},
{
"fieldname": "reconciliation_tool_cards",
"fieldtype": "HTML"
},
{
"fieldname": "reconciliation_tool_dt",
"fieldtype": "HTML"
},
{
"fieldname": "no_bank_transactions",
"fieldtype": "HTML",
"options": "<div class=\"text-muted text-center\">No Matching Bank Transactions Found</div>"
}
],
"hide_toolbar": 1,
"index_web_pages_for_search": 1,
"issingle": 1,
"links": [],
"modified": "2021-02-02 01:35:53.043578",
"modified_by": "Administrator",
"module": "Accounts",
"name": "Bank Reconciliation Tool",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"delete": 1,
"email": 1,
"print": 1,
"read": 1,
"role": "System Manager",
"share": 1,
"write": 1
}
],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC"
}