mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-02 11:49:10 +00:00
Merge pull request #42294 from ruthra-kumar/implicit_repost_on_invoice_update
refactor: make reposting implicit
This commit is contained in:
@@ -204,6 +204,7 @@ class JournalEntry(AccountsController):
|
|||||||
if self.needs_repost:
|
if self.needs_repost:
|
||||||
self.validate_for_repost()
|
self.validate_for_repost()
|
||||||
self.db_set("repost_required", self.needs_repost)
|
self.db_set("repost_required", self.needs_repost)
|
||||||
|
self.repost_accounting_entries()
|
||||||
|
|
||||||
def on_cancel(self):
|
def on_cancel(self):
|
||||||
# References for this Journal are removed on the `on_cancel` event in accounts_controller
|
# References for this Journal are removed on the `on_cancel` event in accounts_controller
|
||||||
|
|||||||
@@ -454,12 +454,9 @@ class TestJournalEntry(unittest.TestCase):
|
|||||||
# Change cost center for bank account - _Test Cost Center for BS Account
|
# Change cost center for bank account - _Test Cost Center for BS Account
|
||||||
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
|
create_cost_center(cost_center_name="_Test Cost Center for BS Account", company="_Test Company")
|
||||||
jv.accounts[1].cost_center = "_Test Cost Center for BS Account - _TC"
|
jv.accounts[1].cost_center = "_Test Cost Center for BS Account - _TC"
|
||||||
|
# Ledger reposted implicitly upon 'Update After Submit'
|
||||||
jv.save()
|
jv.save()
|
||||||
|
|
||||||
# Check if repost flag gets set on update after submit
|
|
||||||
self.assertTrue(jv.repost_required)
|
|
||||||
jv.repost_accounting_entries()
|
|
||||||
|
|
||||||
# Check GL entries after reposting
|
# Check GL entries after reposting
|
||||||
jv.load_from_db()
|
jv.load_from_db()
|
||||||
self.expected_gle[0]["cost_center"] = "_Test Cost Center for BS Account - _TC"
|
self.expected_gle[0]["cost_center"] = "_Test Cost Center for BS Account - _TC"
|
||||||
|
|||||||
@@ -809,6 +809,7 @@ class PurchaseInvoice(BuyingController):
|
|||||||
if self.needs_repost:
|
if self.needs_repost:
|
||||||
self.validate_for_repost()
|
self.validate_for_repost()
|
||||||
self.db_set("repost_required", self.needs_repost)
|
self.db_set("repost_required", self.needs_repost)
|
||||||
|
self.repost_accounting_entries()
|
||||||
|
|
||||||
def make_gl_entries(self, gl_entries=None, from_repost=False):
|
def make_gl_entries(self, gl_entries=None, from_repost=False):
|
||||||
update_outstanding = "No" if (cint(self.is_paid) or self.write_off_account) else "Yes"
|
update_outstanding = "No" if (cint(self.is_paid) or self.write_off_account) else "Yes"
|
||||||
|
|||||||
@@ -2015,10 +2015,9 @@ class TestPurchaseInvoice(FrappeTestCase, StockTestMixin):
|
|||||||
check_gl_entries(self, pi.name, expected_gle, nowdate())
|
check_gl_entries(self, pi.name, expected_gle, nowdate())
|
||||||
|
|
||||||
pi.items[0].expense_account = "Service - _TC"
|
pi.items[0].expense_account = "Service - _TC"
|
||||||
|
# Ledger reposted implicitly upon 'Update After Submit'
|
||||||
pi.save()
|
pi.save()
|
||||||
pi.load_from_db()
|
pi.load_from_db()
|
||||||
self.assertTrue(pi.repost_required)
|
|
||||||
pi.repost_accounting_entries()
|
|
||||||
|
|
||||||
expected_gle = [
|
expected_gle = [
|
||||||
["Creditors - _TC", 0.0, 1000, nowdate()],
|
["Creditors - _TC", 0.0, 1000, nowdate()],
|
||||||
|
|||||||
@@ -740,6 +740,7 @@ class SalesInvoice(SellingController):
|
|||||||
if self.needs_repost:
|
if self.needs_repost:
|
||||||
self.validate_for_repost()
|
self.validate_for_repost()
|
||||||
self.db_set("repost_required", self.needs_repost)
|
self.db_set("repost_required", self.needs_repost)
|
||||||
|
self.repost_accounting_entries()
|
||||||
|
|
||||||
def set_paid_amount(self):
|
def set_paid_amount(self):
|
||||||
paid_amount = 0.0
|
paid_amount = 0.0
|
||||||
|
|||||||
@@ -2953,13 +2953,9 @@ class TestSalesInvoice(FrappeTestCase):
|
|||||||
si.items[0].income_account = "Service - _TC"
|
si.items[0].income_account = "Service - _TC"
|
||||||
si.additional_discount_account = "_Test Account Sales - _TC"
|
si.additional_discount_account = "_Test Account Sales - _TC"
|
||||||
si.taxes[0].account_head = "TDS Payable - _TC"
|
si.taxes[0].account_head = "TDS Payable - _TC"
|
||||||
|
# Ledger reposted implicitly upon 'Update After Submit'
|
||||||
si.save()
|
si.save()
|
||||||
|
|
||||||
si.load_from_db()
|
|
||||||
self.assertTrue(si.repost_required)
|
|
||||||
|
|
||||||
si.repost_accounting_entries()
|
|
||||||
|
|
||||||
expected_gle = [
|
expected_gle = [
|
||||||
["_Test Account Sales - _TC", 22.0, 0.0, nowdate()],
|
["_Test Account Sales - _TC", 22.0, 0.0, nowdate()],
|
||||||
["Debtors - _TC", 88, 0.0, nowdate()],
|
["Debtors - _TC", 88, 0.0, nowdate()],
|
||||||
|
|||||||
Reference in New Issue
Block a user