mirror of
https://github.com/frappe/erpnext.git
synced 2026-03-26 22:52:10 +01:00
@@ -299,7 +299,7 @@ frappe.ui.form.on("Bank Statement Import", {
|
|||||||
// method: 'frappe.core.doctype.data_import.data_import.get_preview_from_template',
|
// method: 'frappe.core.doctype.data_import.data_import.get_preview_from_template',
|
||||||
|
|
||||||
show_import_preview(frm, preview_data) {
|
show_import_preview(frm, preview_data) {
|
||||||
let import_log = JSON.parse(frm.doc.statement_import_log || "[]");
|
let import_log = preview_data.import_log;
|
||||||
|
|
||||||
if (frm.import_preview && frm.import_preview.doctype === frm.doc.reference_doctype) {
|
if (frm.import_preview && frm.import_preview.doctype === frm.doc.reference_doctype) {
|
||||||
frm.import_preview.preview_data = preview_data;
|
frm.import_preview.preview_data = preview_data;
|
||||||
@@ -413,16 +413,18 @@ frappe.ui.form.on("Bank Statement Import", {
|
|||||||
frm.trigger("show_import_log");
|
frm.trigger("show_import_log");
|
||||||
},
|
},
|
||||||
|
|
||||||
show_import_log(frm) {
|
render_import_log(frm) {
|
||||||
let import_log = JSON.parse(frm.doc.statement_import_log || "[]");
|
frappe.call({
|
||||||
let logs = import_log;
|
method: "erpnext.accounts.doctype.bank_statement_import.bank_statement_import.get_import_logs",
|
||||||
frm.toggle_display("import_log", false);
|
args: {
|
||||||
frm.toggle_display("import_log_section", logs.length > 0);
|
docname: frm.doc.name,
|
||||||
|
},
|
||||||
|
callback: function (r) {
|
||||||
|
let logs = r.message;
|
||||||
|
|
||||||
if (logs.length === 0) {
|
if (logs.length === 0) return;
|
||||||
frm.get_field("import_log_preview").$wrapper.empty();
|
|
||||||
return;
|
frm.toggle_display("import_log_section", true);
|
||||||
}
|
|
||||||
|
|
||||||
let rows = logs
|
let rows = logs
|
||||||
.map((log) => {
|
.map((log) => {
|
||||||
@@ -446,8 +448,7 @@ frappe.ui.form.on("Bank Statement Import", {
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
let messages = log.messages
|
let messages = JSON.parse(log.messages || "[]")
|
||||||
.map(JSON.parse)
|
|
||||||
.map((m) => {
|
.map((m) => {
|
||||||
let title = m.title ? `<strong>${m.title}</strong>` : "";
|
let title = m.title ? `<strong>${m.title}</strong>` : "";
|
||||||
let message = m.message ? `<div>${m.message}</div>` : "";
|
let message = m.message ? `<div>${m.message}</div>` : "";
|
||||||
@@ -473,7 +474,7 @@ frappe.ui.form.on("Bank Statement Import", {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return `<tr>
|
return `<tr>
|
||||||
<td>${log.row_indexes.join(", ")}</td>
|
<td>${JSON.parse(log.row_indexes).join(", ")}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="indicator ${indicator_color}">${title}</div>
|
<div class="indicator ${indicator_color}">${title}</div>
|
||||||
</td>
|
</td>
|
||||||
@@ -501,4 +502,33 @@ frappe.ui.form.on("Bank Statement Import", {
|
|||||||
</table>
|
</table>
|
||||||
`);
|
`);
|
||||||
},
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
show_import_log(frm) {
|
||||||
|
frm.toggle_display("import_log_section", false);
|
||||||
|
|
||||||
|
if (frm.is_new() || frm.import_in_progress) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
frappe.call({
|
||||||
|
method: "frappe.client.get_count",
|
||||||
|
args: {
|
||||||
|
doctype: "Data Import Log",
|
||||||
|
filters: {
|
||||||
|
data_import: frm.doc.name,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
callback: function (r) {
|
||||||
|
let count = r.message;
|
||||||
|
if (count < 5000) {
|
||||||
|
frm.trigger("render_import_log");
|
||||||
|
} else {
|
||||||
|
frm.toggle_display("import_log_section", false);
|
||||||
|
frm.add_custom_button(__("Export Import Log"), () => frm.trigger("export_import_log"));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -270,6 +270,19 @@ def get_import_status(docname):
|
|||||||
return import_status
|
return import_status
|
||||||
|
|
||||||
|
|
||||||
|
@frappe.whitelist()
|
||||||
|
def get_import_logs(docname: str):
|
||||||
|
frappe.has_permission("Bank Statement Import")
|
||||||
|
|
||||||
|
return frappe.get_all(
|
||||||
|
"Data Import Log",
|
||||||
|
fields=["success", "docname", "messages", "exception", "row_indexes"],
|
||||||
|
filters={"data_import": docname},
|
||||||
|
limit_page_length=5000,
|
||||||
|
order_by="log_index",
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def upload_bank_statement(**args):
|
def upload_bank_statement(**args):
|
||||||
args = frappe._dict(args)
|
args = frappe._dict(args)
|
||||||
|
|||||||
Reference in New Issue
Block a user