diff --git a/erpnext/assets/doctype/asset/depreciation.py b/erpnext/assets/doctype/asset/depreciation.py index 1a9788be48e..1ee43cb6d63 100644 --- a/erpnext/assets/doctype/asset/depreciation.py +++ b/erpnext/assets/doctype/asset/depreciation.py @@ -7,6 +7,7 @@ from frappe import _ from frappe.query_builder import Order from frappe.query_builder.functions import Max, Min from frappe.utils import ( + DateTimeLikeObject, add_months, cint, flt, @@ -359,7 +360,8 @@ def get_message_for_depr_entry_posting_error(asset_links, error_log_links): @frappe.whitelist() -def scrap_asset(asset_name, scrap_date=None): +def scrap_asset(asset_name: str, scrap_date: DateTimeLikeObject | None = None): + frappe.has_permission("Asset", "write", asset_name, throw=True) asset = frappe.get_doc("Asset", asset_name) scrap_date = getdate(scrap_date) or getdate(today()) asset.db_set("disposal_date", scrap_date) @@ -448,7 +450,8 @@ def create_journal_entry_for_scrap(asset, scrap_date): @frappe.whitelist() -def restore_asset(asset_name): +def restore_asset(asset_name: str): + frappe.has_permission("Asset", "write", asset_name, throw=True) asset = frappe.get_doc("Asset", asset_name) reverse_depreciation_entry_made_on_disposal(asset) reset_depreciation_schedule(asset, get_note_for_restore(asset))