chore: use make_new_active_asset_depr_schedules_and_cancel_current_ones instead of prepare_depreciation_data

This commit is contained in:
anandbaburajan 2022-12-01 15:15:32 +05:30
parent 96ede2fcf9
commit f20238fa3e
5 changed files with 27 additions and 25 deletions

View File

@ -1185,11 +1185,11 @@ class SalesInvoice(SellingController):
if asset.calculate_depreciation:
posting_date = frappe.db.get_value("Sales Invoice", self.return_against, "posting_date")
reverse_depreciation_entry_made_after_disposal(asset, posting_date)
reset_depreciation_schedule(asset, self.posting_date)
reset_depreciation_schedule(asset, self.posting_date, "Return asset")
else:
if asset.calculate_depreciation:
depreciate_asset(asset, self.posting_date, notes="Sell asset")
depreciate_asset(asset, self.posting_date, "Sell asset")
fixed_asset_gl_entries = get_gl_entries_on_asset_disposal(
asset, item.base_net_amount, item.finance_book, self.get("doctype"), self.get("name")

View File

@ -214,7 +214,7 @@ def scrap_asset(asset_name):
date = today()
depreciate_asset(asset, date, notes="Scrap asset")
depreciate_asset(asset, date, "Scrap asset")
depreciation_series = frappe.get_cached_value(
"Company", asset.company, "series_for_depreciation_entry"
@ -246,7 +246,7 @@ def restore_asset(asset_name):
asset = frappe.get_doc("Asset", asset_name)
reverse_depreciation_entry_made_after_disposal(asset, asset.disposal_date)
reset_depreciation_schedule(asset, asset.disposal_date)
reset_depreciation_schedule(asset, asset.disposal_date, "Restore asset")
je = asset.journal_entry_for_scrap
@ -258,20 +258,20 @@ def restore_asset(asset_name):
asset.set_status()
def depreciate_asset(asset, date, notes):
def depreciate_asset(asset_doc, date, notes):
make_new_active_asset_depr_schedules_and_cancel_current_ones(
asset, date_of_disposal=date, notes=notes
asset_doc, notes, date_of_disposal=date
)
make_depreciation_entry_for_all_asset_depr_schedules(asset, date)
make_depreciation_entry_for_all_asset_depr_schedules(asset_doc, date)
def reset_depreciation_schedule(asset, date, notes):
def reset_depreciation_schedule(asset_doc, date, notes):
make_new_active_asset_depr_schedules_and_cancel_current_ones(
asset, date_of_return=date, notes=notes
asset_doc, notes, date_of_return=date
)
modify_depreciation_schedule_for_asset_repairs(asset)
modify_depreciation_schedule_for_asset_repairs(asset_doc)
def modify_depreciation_schedule_for_asset_repairs(asset):
@ -283,7 +283,7 @@ def modify_depreciation_schedule_for_asset_repairs(asset):
if repair.increase_in_asset_life:
asset_repair = frappe.get_doc("Asset Repair", repair.name)
asset_repair.modify_depreciation_schedule()
asset.prepare_depreciation_data()
make_new_active_asset_depr_schedules_and_cancel_current_ones(asset, "Asset Repair TODO")
def reverse_depreciation_entry_made_after_disposal(asset, date):

View File

@ -19,6 +19,9 @@ from erpnext.assets.doctype.asset.depreciation import (
reverse_depreciation_entry_made_after_disposal,
)
from erpnext.assets.doctype.asset_category.asset_category import get_asset_category_account
from erpnext.assets.doctype.asset_depreciation_schedule.asset_depreciation_schedule import (
make_new_active_asset_depr_schedules_and_cancel_current_ones,
)
from erpnext.assets.doctype.asset_value_adjustment.asset_value_adjustment import (
get_current_asset_value,
)
@ -427,7 +430,7 @@ class AssetCapitalization(StockController):
asset = self.get_asset(item)
if asset.calculate_depreciation:
depreciate_asset(asset, self.posting_date, notes="TODO")
depreciate_asset(asset, self.posting_date, "Asset Capitalization TODO")
fixed_asset_gl_entries = get_gl_entries_on_asset_disposal(
asset,
@ -512,9 +515,9 @@ class AssetCapitalization(StockController):
asset_doc.purchase_date = self.posting_date
asset_doc.gross_purchase_amount = total_target_asset_value
asset_doc.purchase_receipt_amount = total_target_asset_value
asset_doc.prepare_depreciation_data()
asset_doc.flags.ignore_validate_update_after_submit = True
asset_doc.save()
make_new_active_asset_depr_schedules_and_cancel_current_ones(
asset_doc, "Asset Capitalization TODO"
)
elif self.docstatus == 2:
for item in self.asset_items:
asset = self.get_asset(item)
@ -523,7 +526,7 @@ class AssetCapitalization(StockController):
if asset.calculate_depreciation:
reverse_depreciation_entry_made_after_disposal(asset, self.posting_date)
reset_depreciation_schedule(asset, self.posting_date)
reset_depreciation_schedule(asset, self.posting_date, "Asset Capitalization TODO")
def get_asset(self, item):
asset = frappe.get_doc("Asset", item.asset)

View File

@ -84,7 +84,7 @@ def convert_draft_asset_depr_schedules_into_active(asset_doc):
def make_new_active_asset_depr_schedules_and_cancel_current_ones(
asset_doc, date_of_disposal=None, date_of_return=None, notes=None
asset_doc, notes, date_of_disposal=None, date_of_return=None
):
for row in asset_doc.get("finance_books"):
current_asset_depr_schedule_name = get_asset_depr_schedule_name(asset_doc.name, row.finance_book)

View File

@ -10,6 +10,7 @@ from erpnext.accounts.general_ledger import make_gl_entries
from erpnext.assets.doctype.asset.asset import get_asset_account
from erpnext.assets.doctype.asset_depreciation_schedule.asset_depreciation_schedule import (
get_depr_schedule_from_asset_depr_schedule_of_asset,
make_new_active_asset_depr_schedules_and_cancel_current_ones,
)
from erpnext.controllers.accounts_controller import AccountsController
@ -54,10 +55,9 @@ class AssetRepair(AccountsController):
and self.increase_in_asset_life
):
self.modify_depreciation_schedule()
self.asset_doc.flags.ignore_validate_update_after_submit = True
self.asset_doc.prepare_depreciation_data()
self.asset_doc.save()
make_new_active_asset_depr_schedules_and_cancel_current_ones(
self.asset_doc, "Asset Repair submit TODO"
)
def before_cancel(self):
self.asset_doc = frappe.get_doc("Asset", self.asset)
@ -75,10 +75,9 @@ class AssetRepair(AccountsController):
and self.increase_in_asset_life
):
self.revert_depreciation_schedule_on_cancellation()
self.asset_doc.flags.ignore_validate_update_after_submit = True
self.asset_doc.prepare_depreciation_data()
self.asset_doc.save()
make_new_active_asset_depr_schedules_and_cancel_current_ones(
self.asset_doc, "Asset Repair cancel TODO"
)
def check_repair_status(self):
if self.repair_status == "Pending":