refactor: control monitoring through settings page

(cherry picked from commit a42482ce35)
This commit is contained in:
ruthra kumar
2024-03-27 10:01:03 +05:30
committed by Mergify
parent 9fbb4f676b
commit 9bae5e37cd

View File

@@ -2102,37 +2102,41 @@ def get_party_types_from_account_type(account_type):
def run_ledger_health_checks(): def run_ledger_health_checks():
# run for last 1 month health_monitor_settings = frappe.get_doc("Ledger Health Monitor")
period_end = getdate() if health_monitor_settings.enable_health_monitor:
period_start = add_days(period_end, -100) period_end = getdate()
period_start = add_days(period_end, -abs(health_monitor_settings.monitor_for_last_x_days))
run_date = get_datetime() run_date = get_datetime()
# Debit-Credit mismatch report # Debit-Credit mismatch report
voucher_wise = frappe.get_doc("Report", "Voucher-wise Balance") if health_monitor_settings.debit_credit_mismatch:
voucher_wise = frappe.get_doc("Report", "Voucher-wise Balance")
filters = {"company": "நுண்ணறி", "from_date": period_start, "to_date": period_end}
# todo: company and dates should be configurable res = voucher_wise.execute_script_report(filters=filters)
filters = {"company": "நுண்ணறி", "from_date": period_start, "to_date": period_end} for x in res[1]:
doc = frappe.new_doc("Ledger Health")
doc.voucher_type = x.voucher_type
doc.voucher_no = x.voucher_no
doc.debit_credit_mismatch = True
doc.checked_on = run_date
doc.save()
res = voucher_wise.execute_script_report(filters=filters) # General Ledger and Payment Ledger discrepancy
for x in res[1]: if health_monitor_settings.general_and_payment_ledger_mismatch:
doc = frappe.new_doc("Ledger Health") gl_pl_comparison = frappe.get_doc("Report", "General and Payment Ledger Comparison")
doc.voucher_type = x.voucher_type filters = {
doc.voucher_no = x.voucher_no "company": "நுண்ணறி",
doc.debit_credit_mismatch = True "period_start_date": period_start,
doc.checked_on = run_date "period_end_date": period_end,
doc.save() }
res = gl_pl_comparison.execute_script_report(filters=filters)
# General Ledger and Payment Ledger discrepancy for x in res[1]:
gl_pl_comparison = frappe.get_doc("Report", "General and Payment Ledger Comparison") doc = frappe.new_doc("Ledger Health")
# todo: company and dates should be configurable doc.voucher_type = x.voucher_type
filters = {"company": "நுண்ணறி", "period_start_date": period_start, "period_end_date": period_end} doc.voucher_no = x.voucher_no
res = gl_pl_comparison.execute_script_report(filters=filters) doc.general_and_payment_ledger_mismatch = True
doc.checked_on = run_date
for x in res[1]: doc.save()
doc = frappe.new_doc("Ledger Health")
doc.voucher_type = x.voucher_type
doc.voucher_no = x.voucher_no
doc.general_and_payment_ledger_mismatch = True
doc.checked_on = run_date
doc.save()