From d47ab7870dbe762f63018efedde513354cb831a3 Mon Sep 17 00:00:00 2001 From: Khushi Rawat <142375893+khushi8112@users.noreply.github.com> Date: Tue, 22 Oct 2024 12:37:06 +0530 Subject: [PATCH] Revert "chore: use selectbox instead of checkbox" --- .../accounts_settings/accounts_settings.json | 19 +++++++++---------- .../accounts_settings/accounts_settings.py | 4 +--- .../asset_depreciation_schedule.py | 5 +---- .../test_asset_depreciation_schedule.py | 16 ++++------------ 4 files changed, 15 insertions(+), 29 deletions(-) diff --git a/erpnext/accounts/doctype/accounts_settings/accounts_settings.json b/erpnext/accounts/doctype/accounts_settings/accounts_settings.json index 6a7d8d995ba8..d895cba21e93 100644 --- a/erpnext/accounts/doctype/accounts_settings/accounts_settings.json +++ b/erpnext/accounts/doctype/accounts_settings/accounts_settings.json @@ -55,7 +55,7 @@ "post_change_gl_entries", "assets_tab", "asset_settings_section", - "calculate_daily_depreciation_using", + "calculate_depr_using_total_days", "column_break_gjcc", "book_asset_depreciation_entry_automatically", "closing_settings_tab", @@ -471,6 +471,13 @@ "fieldname": "column_break_gjcc", "fieldtype": "Column Break" }, + { + "default": "0", + "description": "Enable this option to calculate daily depreciation by considering the total number of days in the entire depreciation period, (including leap years) while using daily pro-rata based depreciation", + "fieldname": "calculate_depr_using_total_days", + "fieldtype": "Check", + "label": "Calculate daily depreciation using total days in depreciation period" + }, { "description": "Payment Request created from Sales Order or Purchase Order will be in Draft status. When disabled document will be in unsaved state.", "fieldname": "payment_request_settings", @@ -482,14 +489,6 @@ "fieldname": "create_pr_in_draft_status", "fieldtype": "Check", "label": "Create in Draft Status" - }, - { - "default": "Total years in depreciation period", - "description": "This field lets you select your preferred method for calculating pro rata depreciation. Each approach has different implication. For detailed explanations, please refer to the Documentation.", - "fieldname": "calculate_daily_depreciation_using", - "fieldtype": "Select", - "label": "Calculate Daily Pro-rata Depreciation Using", - "options": "Total days in depreciation period\nTotal years in depreciation period" } ], "icon": "icon-cog", @@ -497,7 +496,7 @@ "index_web_pages_for_search": 1, "issingle": 1, "links": [], - "modified": "2024-10-21 04:29:02.556355", + "modified": "2024-07-26 06:48:52.714630", "modified_by": "Administrator", "module": "Accounts", "name": "Accounts Settings", diff --git a/erpnext/accounts/doctype/accounts_settings/accounts_settings.py b/erpnext/accounts/doctype/accounts_settings/accounts_settings.py index ab5e8e7e678b..608b3a96f2f2 100644 --- a/erpnext/accounts/doctype/accounts_settings/accounts_settings.py +++ b/erpnext/accounts/doctype/accounts_settings/accounts_settings.py @@ -33,9 +33,7 @@ class AccountsSettings(Document): book_deferred_entries_based_on: DF.Literal["Days", "Months"] book_deferred_entries_via_journal_entry: DF.Check book_tax_discount_loss: DF.Check - calculate_daily_depreciation_using: DF.Literal[ - "Total days in depreciation period", "Total years in depreciation period" - ] + calculate_depr_using_total_days: DF.Check check_supplier_invoice_uniqueness: DF.Check create_pr_in_draft_status: DF.Check credit_controller: DF.Link | None diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py index 97058f9bd8e9..679fbfe2e58d 100644 --- a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py +++ b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py @@ -724,10 +724,7 @@ def get_daily_prorata_based_straight_line_depr( def get_daily_depr_amount(asset, row, schedule_idx, amount): - if ( - frappe.db.get_single_value("Accounts Settings", "calculate_daily_depreciation_using") - == "Total days in depreciation period" - ): + if cint(frappe.db.get_single_value("Accounts Settings", "calculate_depr_using_total_days")): total_days = ( date_diff( get_last_day( diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py b/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py index 2ae31435e4a4..61e3761719e9 100644 --- a/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py +++ b/erpnext/assets/doctype/asset_depreciation_schedule/test_asset_depreciation_schedule.py @@ -85,9 +85,7 @@ def test_daily_prorata_based_depr_on_sl_method(self): self.assertEqual(schedules, expected_schedules) def test_schedule_for_slm_for_existing_asset_daily_pro_rata_enabled(self): - frappe.db.set_single_value( - "Accounts Settings", "calculate_daily_depreciation_using", "Total days in depreciation period" - ) + frappe.db.set_single_value("Accounts Settings", "calculate_depr_using_total_days", 1) asset = create_asset( calculate_depreciation=1, depreciation_method="Straight Line", @@ -125,9 +123,7 @@ def test_schedule_for_slm_for_existing_asset_daily_pro_rata_enabled(self): for d in get_depr_schedule(asset.name, "Draft") ] self.assertEqual(schedules, expected_schedules) - frappe.db.set_single_value( - "Accounts Settings", "calculate_daily_depreciation_using", "Total years in depreciation period" - ) + frappe.db.set_single_value("Accounts Settings", "calculate_depr_using_total_days", 0) def test_schedule_for_slm_for_existing_asset(self): asset = create_asset( @@ -200,9 +196,7 @@ def test_schedule_sl_method_for_existing_asset_with_frequency_of_3_months(self): # Enable Checkbox to Calculate depreciation using total days in depreciation period def test_daily_prorata_based_depr_after_enabling_configuration(self): - frappe.db.set_single_value( - "Accounts Settings", "calculate_daily_depreciation_using", "Total days in depreciation period" - ) + frappe.db.set_single_value("Accounts Settings", "calculate_depr_using_total_days", 1) asset = create_asset( calculate_depreciation=1, @@ -260,9 +254,7 @@ def test_daily_prorata_based_depr_after_enabling_configuration(self): for d in get_depr_schedule(asset.name, "Draft") ] self.assertEqual(schedules, expected_schedule) - frappe.db.set_single_value( - "Accounts Settings", "calculate_daily_depreciation_using", "Total years in depreciation period" - ) + frappe.db.set_single_value("Accounts Settings", "calculate_depr_using_total_days", 0) # Test for Written Down Value Method # Frequency of deprciation = 3