From 9b3f3095983f834e407e0841151b2592c891b327 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E2=80=9CKhushi?= <“khushirawat.sophia@gamil.com”>
Date: Mon, 22 Apr 2024 14:13:10 +0530
Subject: [PATCH 1/5] refactor: renamed purchase receipt amount field to
purchase amount
(cherry picked from commit 31841b4ab239f133f9df6d868137a6fb0e248554)
# Conflicts:
# erpnext/assets/doctype/asset/asset.json
# erpnext/assets/doctype/asset/asset.py
# erpnext/patches.txt
---
.../purchase_invoice/purchase_invoice.py | 2 +-
erpnext/assets/doctype/asset/asset.js | 2 +-
erpnext/assets/doctype/asset/asset.json | 39 ++++++++++++-------
erpnext/assets/doctype/asset/asset.py | 21 ++++++----
erpnext/assets/doctype/asset/test_asset.py | 2 +-
.../asset_capitalization.py | 6 +--
.../test_asset_capitalization.py | 8 ++--
erpnext/controllers/buying_controller.py | 2 +-
erpnext/patches.txt | 5 +++
...chase_receipt_amount_to_purchase_amount.py | 8 ++++
.../purchase_receipt/purchase_receipt.py | 2 +-
11 files changed, 63 insertions(+), 34 deletions(-)
create mode 100644 erpnext/patches/v15_0/rename_purchase_receipt_amount_to_purchase_amount.py
diff --git a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
index 272a180ca8d..496ffcd2648 100644
--- a/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -1182,7 +1182,7 @@ class PurchaseInvoice(BuyingController):
asset.name,
{
"gross_purchase_amount": purchase_amount,
- "purchase_receipt_amount": purchase_amount,
+ "purchase_amount": purchase_amount,
},
)
diff --git a/erpnext/assets/doctype/asset/asset.js b/erpnext/assets/doctype/asset/asset.js
index 0f71e5d6f60..5ed62cb132f 100644
--- a/erpnext/assets/doctype/asset/asset.js
+++ b/erpnext/assets/doctype/asset/asset.js
@@ -652,7 +652,7 @@ frappe.ui.form.on("Asset", {
);
frm.set_value("gross_purchase_amount", purchase_amount);
- frm.set_value("purchase_receipt_amount", purchase_amount);
+ frm.set_value("purchase_amount", purchase_amount);
frm.set_value("asset_quantity", asset_quantity);
frm.set_value("cost_center", item.cost_center || purchase_doc.cost_center);
if (item.asset_location) {
diff --git a/erpnext/assets/doctype/asset/asset.json b/erpnext/assets/doctype/asset/asset.json
index 39a0867d984..785bccb689c 100644
--- a/erpnext/assets/doctype/asset/asset.json
+++ b/erpnext/assets/doctype/asset/asset.json
@@ -15,6 +15,7 @@
"asset_owner_company",
"is_existing_asset",
"is_composite_asset",
+ "is_composite_component",
"supplier",
"customer",
"image",
@@ -72,7 +73,7 @@
"status",
"booked_fixed_asset",
"column_break_51",
- "purchase_receipt_amount",
+ "purchase_amount",
"default_finance_book",
"depr_entry_posting_status",
"amended_from",
@@ -202,8 +203,7 @@
"fieldname": "purchase_date",
"fieldtype": "Date",
"label": "Purchase Date",
- "mandatory_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset",
- "read_only_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset"
+ "mandatory_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset"
},
{
"fieldname": "disposal_date",
@@ -234,7 +234,7 @@
"fieldname": "available_for_use_date",
"fieldtype": "Date",
"label": "Available-for-use Date",
- "mandatory_depends_on": "eval:(!doc.is_composite_asset || doc.docstatus==1)"
+ "mandatory_depends_on": "eval:(!doc.is_composite_component && doc.docstatus==1)"
},
{
"default": "0",
@@ -408,15 +408,6 @@
"options": "Purchase Receipt",
"print_hide": 1
},
- {
- "fieldname": "purchase_receipt_amount",
- "fieldtype": "Currency",
- "hidden": 1,
- "label": "Purchase Receipt Amount",
- "no_copy": 1,
- "print_hide": 1,
- "read_only": 1
- },
{
"depends_on": "eval:!doc.is_composite_asset && !doc.is_existing_asset",
"fieldname": "purchase_invoice",
@@ -518,7 +509,7 @@
},
{
"default": "0",
- "depends_on": "eval:!doc.is_existing_asset",
+ "depends_on": "eval:(!doc.is_existing_asset && !doc.is_composite_component)",
"fieldname": "is_composite_asset",
"fieldtype": "Check",
"label": "Is Composite Asset"
@@ -546,6 +537,22 @@
"label": "Additional Asset Cost",
"options": "Company:company:default_currency",
"read_only": 1
+ },
+ {
+ "default": "0",
+ "depends_on": "eval:(!doc.is_existing_asset && !doc.is_composite_asset)",
+ "fieldname": "is_composite_component",
+ "fieldtype": "Check",
+ "label": "Is Composite Component"
+ },
+ {
+ "fieldname": "purchase_amount",
+ "fieldtype": "Currency",
+ "hidden": 1,
+ "label": "Purchase Amount",
+ "no_copy": 1,
+ "print_hide": 1,
+ "read_only": 1
}
],
"idx": 72,
@@ -589,7 +596,11 @@
"link_fieldname": "target_asset"
}
],
+<<<<<<< HEAD
"modified": "2024-01-15 17:35:49.226603",
+=======
+ "modified": "2024-04-18 16:45:47.306032",
+>>>>>>> 31841b4ab2 (refactor: renamed purchase receipt amount field to purchase amount)
"modified_by": "Administrator",
"module": "Assets",
"name": "Asset",
diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py
index 3a05a598b1c..4fd5970f5bd 100644
--- a/erpnext/assets/doctype/asset/asset.py
+++ b/erpnext/assets/doctype/asset/asset.py
@@ -80,6 +80,7 @@ class Asset(AccountsController):
insured_value: DF.Data | None
insurer: DF.Data | None
is_composite_asset: DF.Check
+ is_composite_component: DF.Check
is_existing_asset: DF.Check
is_fully_depreciated: DF.Check
item_code: DF.Link
@@ -92,10 +93,10 @@ class Asset(AccountsController):
number_of_depreciations_booked: DF.Int
opening_accumulated_depreciation: DF.Currency
policy_number: DF.Data | None
+ purchase_amount: DF.Currency
purchase_date: DF.Date | None
purchase_invoice: DF.Link | None
purchase_receipt: DF.Link | None
- purchase_receipt_amount: DF.Currency
split_from: DF.Link | None
status: DF.Literal[
"Draft",
@@ -354,7 +355,7 @@ class Asset(AccountsController):
if self.is_existing_asset:
return
- if self.gross_purchase_amount and self.gross_purchase_amount != self.purchase_receipt_amount:
+ if self.gross_purchase_amount and self.gross_purchase_amount != self.purchase_amount:
error_message = _(
"Gross Purchase Amount should be equal to purchase amount of one single Asset."
)
@@ -696,7 +697,11 @@ class Asset(AccountsController):
purchase_document = self.get_purchase_document()
fixed_asset_account, cwip_account = self.get_fixed_asset_account(), self.get_cwip_account()
+<<<<<<< HEAD
if purchase_document and self.purchase_receipt_amount and self.available_for_use_date <= nowdate():
+=======
+ if purchase_document and self.purchase_amount and getdate(self.available_for_use_date) <= getdate():
+>>>>>>> 31841b4ab2 (refactor: renamed purchase receipt amount field to purchase amount)
gl_entries.append(
self.get_gl_dict(
{
@@ -704,8 +709,8 @@ class Asset(AccountsController):
"against": fixed_asset_account,
"remarks": self.get("remarks") or _("Accounting Entry for Asset"),
"posting_date": self.available_for_use_date,
- "credit": self.purchase_receipt_amount,
- "credit_in_account_currency": self.purchase_receipt_amount,
+ "credit": self.purchase_amount,
+ "credit_in_account_currency": self.purchase_amount,
"cost_center": self.cost_center,
},
item=self,
@@ -719,8 +724,8 @@ class Asset(AccountsController):
"against": cwip_account,
"remarks": self.get("remarks") or _("Accounting Entry for Asset"),
"posting_date": self.available_for_use_date,
- "debit": self.purchase_receipt_amount,
- "debit_in_account_currency": self.purchase_receipt_amount,
+ "debit": self.purchase_amount,
+ "debit_in_account_currency": self.purchase_amount,
"cost_center": self.cost_center,
},
item=self,
@@ -1116,8 +1121,8 @@ def create_new_asset_after_split(asset, split_qty):
)
new_asset.gross_purchase_amount = new_gross_purchase_amount
- if asset.purchase_receipt_amount:
- new_asset.purchase_receipt_amount = new_gross_purchase_amount
+ if asset.purchase_amount:
+ new_asset.purchase_amount = new_gross_purchase_amount
new_asset.opening_accumulated_depreciation = opening_accumulated_depreciation
new_asset.asset_quantity = split_qty
new_asset.split_from = asset.name
diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index 1b3951e86a6..5f5268180d4 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -1698,7 +1698,7 @@ def create_asset(**args):
"opening_accumulated_depreciation": args.opening_accumulated_depreciation or 0,
"number_of_depreciations_booked": args.number_of_depreciations_booked or 0,
"gross_purchase_amount": args.gross_purchase_amount or 100000,
- "purchase_receipt_amount": args.purchase_receipt_amount or 100000,
+ "purchase_amount": args.purchase_amount or 100000,
"maintenance_required": args.maintenance_required or 0,
"warehouse": args.warehouse or "_Test Warehouse - _TC",
"available_for_use_date": args.available_for_use_date or "2020-06-06",
diff --git a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
index 8d3bcfc153d..66e8bd83e24 100644
--- a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
+++ b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
@@ -616,8 +616,8 @@ class AssetCapitalization(StockController):
asset_doc.available_for_use_date = self.posting_date
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.purchase_receipt_amount = total_target_asset_value
+ asset_doc.purchase_amount = total_target_asset_value
+ asset_doc.purchase_amount = total_target_asset_value
asset_doc.capitalized_in = self.name
asset_doc.flags.ignore_validate = True
asset_doc.flags.asset_created_via_asset_capitalization = True
@@ -653,7 +653,7 @@ class AssetCapitalization(StockController):
asset_doc = frappe.get_doc("Asset", self.target_asset)
asset_doc.gross_purchase_amount = total_target_asset_value
- asset_doc.purchase_receipt_amount = total_target_asset_value
+ asset_doc.purchase_amount = total_target_asset_value
asset_doc.capitalized_in = self.name
asset_doc.flags.ignore_validate = True
asset_doc.save()
diff --git a/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py b/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py
index 86a18c07d1f..31723ef3be3 100644
--- a/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py
+++ b/erpnext/assets/doctype/asset_capitalization/test_asset_capitalization.py
@@ -89,7 +89,7 @@ class TestAssetCapitalization(unittest.TestCase):
# Test Target Asset values
target_asset = frappe.get_doc("Asset", asset_capitalization.target_asset)
self.assertEqual(target_asset.gross_purchase_amount, total_amount)
- self.assertEqual(target_asset.purchase_receipt_amount, total_amount)
+ self.assertEqual(target_asset.purchase_amount, total_amount)
# Test Consumed Asset values
self.assertEqual(consumed_asset.db_get("status"), "Capitalized")
@@ -179,7 +179,7 @@ class TestAssetCapitalization(unittest.TestCase):
# Test Target Asset values
target_asset = frappe.get_doc("Asset", asset_capitalization.target_asset)
self.assertEqual(target_asset.gross_purchase_amount, total_amount)
- self.assertEqual(target_asset.purchase_receipt_amount, total_amount)
+ self.assertEqual(target_asset.purchase_amount, total_amount)
# Test Consumed Asset values
self.assertEqual(consumed_asset.db_get("status"), "Capitalized")
@@ -256,7 +256,7 @@ class TestAssetCapitalization(unittest.TestCase):
# Test Target Asset values
target_asset = frappe.get_doc("Asset", asset_capitalization.target_asset)
self.assertEqual(target_asset.gross_purchase_amount, total_amount)
- self.assertEqual(target_asset.purchase_receipt_amount, total_amount)
+ self.assertEqual(target_asset.purchase_amount, total_amount)
# Test General Ledger Entries
expected_gle = {
@@ -526,7 +526,7 @@ def create_depreciation_asset(**args):
asset.available_for_use_date = args.available_for_use_date or asset.purchase_date
asset.gross_purchase_amount = args.asset_value or 100000
- asset.purchase_receipt_amount = asset.gross_purchase_amount
+ asset.purchase_amount = asset.gross_purchase_amount
finance_book = asset.append("finance_books")
finance_book.depreciation_start_date = args.depreciation_start_date or "2020-12-31"
diff --git a/erpnext/controllers/buying_controller.py b/erpnext/controllers/buying_controller.py
index 58bcc8c5fbe..14bf8ad7436 100644
--- a/erpnext/controllers/buying_controller.py
+++ b/erpnext/controllers/buying_controller.py
@@ -787,7 +787,7 @@ class BuyingController(SubcontractingController):
"supplier": self.supplier,
"purchase_date": self.posting_date,
"calculate_depreciation": 0,
- "purchase_receipt_amount": purchase_amount,
+ "purchase_amount": purchase_amount,
"gross_purchase_amount": purchase_amount,
"asset_quantity": asset_quantity,
"purchase_receipt": self.name if self.doctype == "Purchase Receipt" else None,
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 0465f2ca53e..1e476d14892 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -363,3 +363,8 @@ erpnext.patches.v14_0.set_maintain_stock_for_bom_item
erpnext.patches.v15_0.delete_orphaned_asset_movement_item_records
erpnext.patches.v15_0.fix_debit_credit_in_transaction_currency
erpnext.patches.v15_0.remove_cancelled_asset_capitalization_from_asset
+<<<<<<< HEAD
+=======
+erpnext.patches.v15_0.fix_debit_credit_in_transaction_currency
+erpnext.patches.v15_0.rename_purchase_receipt_amount_to_purchase_amount
+>>>>>>> 31841b4ab2 (refactor: renamed purchase receipt amount field to purchase amount)
diff --git a/erpnext/patches/v15_0/rename_purchase_receipt_amount_to_purchase_amount.py b/erpnext/patches/v15_0/rename_purchase_receipt_amount_to_purchase_amount.py
new file mode 100644
index 00000000000..8af3ed26323
--- /dev/null
+++ b/erpnext/patches/v15_0/rename_purchase_receipt_amount_to_purchase_amount.py
@@ -0,0 +1,8 @@
+import frappe
+from frappe.model.utils.rename_field import rename_field
+
+
+def execute():
+ frappe.reload_doc("assets", "doctype", "asset")
+ if frappe.db.has_column("Asset", "purchase_receipt_amount"):
+ rename_field("Asset", "purchase_receipt_amount", "purchase_amount")
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
index af7b6c57a82..5f898b94268 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -858,7 +858,7 @@ class PurchaseReceipt(BuyingController):
asset.name,
{
"gross_purchase_amount": purchase_amount,
- "purchase_receipt_amount": purchase_amount,
+ "purchase_amount": purchase_amount,
},
)
From 0aca1e8e05dead191ee323df7f0615e6e12457f4 Mon Sep 17 00:00:00 2001
From: Khushi Rawat <142375893+khushi8112@users.noreply.github.com>
Date: Fri, 10 May 2024 14:39:59 +0530
Subject: [PATCH 2/5] fix: removed unrelated code modification
(cherry picked from commit 360c3b36edd76faa23d620c04073111804287461)
---
erpnext/assets/doctype/asset/asset.json | 15 ++++-----------
erpnext/assets/doctype/asset/asset.py | 1 -
.../asset_capitalization/asset_capitalization.py | 1 -
3 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/erpnext/assets/doctype/asset/asset.json b/erpnext/assets/doctype/asset/asset.json
index 785bccb689c..da1a6eb07a9 100644
--- a/erpnext/assets/doctype/asset/asset.json
+++ b/erpnext/assets/doctype/asset/asset.json
@@ -15,7 +15,6 @@
"asset_owner_company",
"is_existing_asset",
"is_composite_asset",
- "is_composite_component",
"supplier",
"customer",
"image",
@@ -203,7 +202,8 @@
"fieldname": "purchase_date",
"fieldtype": "Date",
"label": "Purchase Date",
- "mandatory_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset"
+ "mandatory_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset",
+ "read_only_depends_on": "eval:!doc.is_existing_asset && !doc.is_composite_asset"
},
{
"fieldname": "disposal_date",
@@ -234,7 +234,7 @@
"fieldname": "available_for_use_date",
"fieldtype": "Date",
"label": "Available-for-use Date",
- "mandatory_depends_on": "eval:(!doc.is_composite_component && doc.docstatus==1)"
+ "mandatory_depends_on": "eval:(!doc.is_composite_asset || doc.docstatus==1)"
},
{
"default": "0",
@@ -509,7 +509,7 @@
},
{
"default": "0",
- "depends_on": "eval:(!doc.is_existing_asset && !doc.is_composite_component)",
+ "depends_on": "eval:!doc.is_existing_asset",
"fieldname": "is_composite_asset",
"fieldtype": "Check",
"label": "Is Composite Asset"
@@ -538,13 +538,6 @@
"options": "Company:company:default_currency",
"read_only": 1
},
- {
- "default": "0",
- "depends_on": "eval:(!doc.is_existing_asset && !doc.is_composite_asset)",
- "fieldname": "is_composite_component",
- "fieldtype": "Check",
- "label": "Is Composite Component"
- },
{
"fieldname": "purchase_amount",
"fieldtype": "Currency",
diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py
index 4fd5970f5bd..ffdd8b358df 100644
--- a/erpnext/assets/doctype/asset/asset.py
+++ b/erpnext/assets/doctype/asset/asset.py
@@ -80,7 +80,6 @@ class Asset(AccountsController):
insured_value: DF.Data | None
insurer: DF.Data | None
is_composite_asset: DF.Check
- is_composite_component: DF.Check
is_existing_asset: DF.Check
is_fully_depreciated: DF.Check
item_code: DF.Link
diff --git a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
index 66e8bd83e24..6c329b0da78 100644
--- a/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
+++ b/erpnext/assets/doctype/asset_capitalization/asset_capitalization.py
@@ -617,7 +617,6 @@ class AssetCapitalization(StockController):
asset_doc.purchase_date = self.posting_date
asset_doc.gross_purchase_amount = total_target_asset_value
asset_doc.purchase_amount = total_target_asset_value
- asset_doc.purchase_amount = total_target_asset_value
asset_doc.capitalized_in = self.name
asset_doc.flags.ignore_validate = True
asset_doc.flags.asset_created_via_asset_capitalization = True
From 8cca74d5ef720788512108e0a2610db42935c6a9 Mon Sep 17 00:00:00 2001
From: Nabin Hait
Date: Tue, 14 May 2024 19:29:23 +0530
Subject: [PATCH 3/5] fix: resolved conflict
---
erpnext/assets/doctype/asset/asset.json | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/erpnext/assets/doctype/asset/asset.json b/erpnext/assets/doctype/asset/asset.json
index da1a6eb07a9..3a2a942bdf2 100644
--- a/erpnext/assets/doctype/asset/asset.json
+++ b/erpnext/assets/doctype/asset/asset.json
@@ -589,11 +589,7 @@
"link_fieldname": "target_asset"
}
],
-<<<<<<< HEAD
- "modified": "2024-01-15 17:35:49.226603",
-=======
"modified": "2024-04-18 16:45:47.306032",
->>>>>>> 31841b4ab2 (refactor: renamed purchase receipt amount field to purchase amount)
"modified_by": "Administrator",
"module": "Assets",
"name": "Asset",
@@ -637,4 +633,4 @@
"states": [],
"title_field": "asset_name",
"track_changes": 1
-}
\ No newline at end of file
+}
From 3a72f4bd309602358457406652433d11e0995f2c Mon Sep 17 00:00:00 2001
From: Nabin Hait
Date: Tue, 14 May 2024 19:34:29 +0530
Subject: [PATCH 4/5] fix: resolved conflict
---
erpnext/assets/doctype/asset/asset.py | 4 ----
1 file changed, 4 deletions(-)
diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py
index ffdd8b358df..4edfcd11c89 100644
--- a/erpnext/assets/doctype/asset/asset.py
+++ b/erpnext/assets/doctype/asset/asset.py
@@ -696,11 +696,7 @@ class Asset(AccountsController):
purchase_document = self.get_purchase_document()
fixed_asset_account, cwip_account = self.get_fixed_asset_account(), self.get_cwip_account()
-<<<<<<< HEAD
- if purchase_document and self.purchase_receipt_amount and self.available_for_use_date <= nowdate():
-=======
if purchase_document and self.purchase_amount and getdate(self.available_for_use_date) <= getdate():
->>>>>>> 31841b4ab2 (refactor: renamed purchase receipt amount field to purchase amount)
gl_entries.append(
self.get_gl_dict(
{
From 520e1e9c8f5771b5209e4d2fc5b8a7bd774ff06a Mon Sep 17 00:00:00 2001
From: Nabin Hait
Date: Tue, 14 May 2024 19:37:34 +0530
Subject: [PATCH 5/5] fix: resolved conflict
---
erpnext/patches.txt | 4 ----
1 file changed, 4 deletions(-)
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 1e476d14892..f2868b90d5c 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -363,8 +363,4 @@ erpnext.patches.v14_0.set_maintain_stock_for_bom_item
erpnext.patches.v15_0.delete_orphaned_asset_movement_item_records
erpnext.patches.v15_0.fix_debit_credit_in_transaction_currency
erpnext.patches.v15_0.remove_cancelled_asset_capitalization_from_asset
-<<<<<<< HEAD
-=======
-erpnext.patches.v15_0.fix_debit_credit_in_transaction_currency
erpnext.patches.v15_0.rename_purchase_receipt_amount_to_purchase_amount
->>>>>>> 31841b4ab2 (refactor: renamed purchase receipt amount field to purchase amount)