From f8524d526b5922e8223e21409f2997f2e7cd2f5b Mon Sep 17 00:00:00 2001 From: Ninad1306 Date: Fri, 8 Nov 2024 12:51:05 +0530 Subject: [PATCH 1/2] fix: added disable_rounded_total field --- .../selling/doctype/quotation/quotation.json | 21 +++++++++++++------ .../selling/doctype/quotation/quotation.py | 1 + 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/erpnext/selling/doctype/quotation/quotation.json b/erpnext/selling/doctype/quotation/quotation.json index 885675a3257..bd908dd2caf 100644 --- a/erpnext/selling/doctype/quotation/quotation.json +++ b/erpnext/selling/doctype/quotation/quotation.json @@ -65,6 +65,7 @@ "grand_total", "rounding_adjustment", "rounded_total", + "disable_rounded_total", "in_words", "section_break_44", "apply_discount_on", @@ -663,6 +664,7 @@ "width": "200px" }, { + "depends_on": "eval:!doc.disable_rounded_total", "fieldname": "base_rounding_adjustment", "fieldtype": "Currency", "label": "Rounding Adjustment (Company Currency)", @@ -711,6 +713,7 @@ "width": "200px" }, { + "depends_on": "eval:!doc.disable_rounded_total", "fieldname": "rounding_adjustment", "fieldtype": "Currency", "label": "Rounding Adjustment", @@ -1073,23 +1076,29 @@ }, { "fieldname": "utm_medium", - "print_hide": 1, "fieldtype": "Link", "label": "Medium", - "options": "UTM Medium" + "options": "UTM Medium", + "print_hide": 1 }, { "fieldname": "utm_content", - "print_hide": 1, "fieldtype": "Data", - "label": "Content" + "label": "Content", + "print_hide": 1 + }, + { + "default": "0", + "fieldname": "disable_rounded_total", + "fieldtype": "Check", + "label": "Disable Rounded Total" } ], "icon": "fa fa-shopping-cart", "idx": 82, "is_submittable": 1, "links": [], - "modified": "2024-06-28 10:32:47.638342", + "modified": "2024-11-07 18:37:11.715189", "modified_by": "Administrator", "module": "Selling", "name": "Quotation", @@ -1187,4 +1196,4 @@ "states": [], "timeline_field": "party_name", "title_field": "title" -} +} \ No newline at end of file diff --git a/erpnext/selling/doctype/quotation/quotation.py b/erpnext/selling/doctype/quotation/quotation.py index e15749dbc54..95b8084e037 100644 --- a/erpnext/selling/doctype/quotation/quotation.py +++ b/erpnext/selling/doctype/quotation/quotation.py @@ -60,6 +60,7 @@ class Quotation(SellingController): customer_address: DF.Link | None customer_group: DF.Link | None customer_name: DF.Data | None + disable_rounded_total: DF.Check discount_amount: DF.Currency enq_det: DF.Text | None grand_total: DF.Currency From 5a6261d3b4b3084dc1f45bef6584c55043084336 Mon Sep 17 00:00:00 2001 From: Ninad1306 Date: Tue, 12 Nov 2024 15:25:14 +0530 Subject: [PATCH 2/2] test: test to validate rounded total --- .../selling/doctype/quotation/test_quotation.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/erpnext/selling/doctype/quotation/test_quotation.py b/erpnext/selling/doctype/quotation/test_quotation.py index 88fd12b638a..da6c02a2ec0 100644 --- a/erpnext/selling/doctype/quotation/test_quotation.py +++ b/erpnext/selling/doctype/quotation/test_quotation.py @@ -738,6 +738,20 @@ class TestQuotation(IntegrationTestCase): item_doc.taxes = [] item_doc.save() + def test_grand_total_and_rounded_total_values(self): + quotation = make_quotation(qty=6, rate=12.3, do_not_submit=1) + + self.assertEqual(quotation.grand_total, 73.8) + self.assertEqual(quotation.rounding_adjustment, 0.2) + self.assertEqual(quotation.rounded_total, 74) + + quotation.disable_rounded_total = 1 + quotation.save() + + self.assertEqual(quotation.grand_total, 73.8) + self.assertEqual(quotation.rounding_adjustment, 0) + self.assertEqual(quotation.rounded_total, 0) + def enable_calculate_bundle_price(enable=1): selling_settings = frappe.get_doc("Selling Settings")