Merge branch 'develop' into FIX-34354
diff --git a/.github/helper/install.sh b/.github/helper/install.sh
index 0c71b41..48337ce 100644
--- a/.github/helper/install.sh
+++ b/.github/helper/install.sh
@@ -8,8 +8,9 @@
pip install frappe-bench
+githubbranch=${GITHUB_BASE_REF:-${GITHUB_REF##*/}}
frappeuser=${FRAPPE_USER:-"frappe"}
-frappebranch=${FRAPPE_BRANCH:-${GITHUB_BASE_REF:-${GITHUB_REF##*/}}}
+frappebranch=${FRAPPE_BRANCH:-$githubbranch}
git clone "https://github.com/${frappeuser}/frappe" --branch "${frappebranch}" --depth 1
bench init --skip-assets --frappe-path ~/frappe --python "$(which python)" frappe-bench
@@ -60,7 +61,7 @@
sed -i 's/socketio:/# socketio:/g' Procfile
sed -i 's/redis_socketio:/# redis_socketio:/g' Procfile
-bench get-app payments
+bench get-app payments --branch ${githubbranch%"-hotfix"}
bench get-app erpnext "${GITHUB_WORKSPACE}"
if [ "$TYPE" == "server" ]; then bench setup requirements --dev; fi
diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index 9a15263..2c9772d 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -828,8 +828,8 @@
expected_schedules = [
["2030-12-31", 28630.14, 28630.14],
["2031-12-31", 35684.93, 64315.07],
- ["2032-12-31", 17842.47, 82157.54],
- ["2033-06-06", 5342.46, 87500.0],
+ ["2032-12-31", 17842.46, 82157.53],
+ ["2033-06-06", 5342.47, 87500.0],
]
schedules = [
diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
index b75fbcb..5912329 100644
--- a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
+++ b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
@@ -140,8 +140,8 @@
self.asset = asset_doc.name
self.finance_book = row.finance_book
self.finance_book_id = row.idx
- self.opening_accumulated_depreciation = asset_doc.opening_accumulated_depreciation
- self.number_of_depreciations_booked = asset_doc.number_of_depreciations_booked
+ self.opening_accumulated_depreciation = asset_doc.opening_accumulated_depreciation or 0
+ self.number_of_depreciations_booked = asset_doc.number_of_depreciations_booked or 0
self.gross_purchase_amount = asset_doc.gross_purchase_amount
self.depreciation_method = row.depreciation_method
self.total_number_of_depreciations = row.total_number_of_depreciations
@@ -185,14 +185,14 @@
):
asset_doc.validate_asset_finance_books(row)
- value_after_depreciation = _get_value_after_depreciation_for_making_schedule(asset_doc, row)
+ value_after_depreciation = self._get_value_after_depreciation_for_making_schedule(asset_doc, row)
row.value_after_depreciation = value_after_depreciation
if update_asset_finance_book_row:
row.db_update()
number_of_pending_depreciations = cint(row.total_number_of_depreciations) - cint(
- asset_doc.number_of_depreciations_booked
+ self.number_of_depreciations_booked
)
has_pro_rata = asset_doc.check_is_pro_rata(row)
@@ -235,13 +235,12 @@
self.add_depr_schedule_row(
date_of_disposal,
depreciation_amount,
- row.depreciation_method,
)
break
# For first row
- if has_pro_rata and not asset_doc.opening_accumulated_depreciation and n == 0:
+ if has_pro_rata and not self.opening_accumulated_depreciation and n == 0:
from_date = add_days(
asset_doc.available_for_use_date, -1
) # needed to calc depr amount for available_for_use_date too
@@ -260,7 +259,7 @@
# In case of increase_in_asset_life, the asset.to_date is already set on asset_repair submission
asset_doc.to_date = add_months(
asset_doc.available_for_use_date,
- (n + asset_doc.number_of_depreciations_booked) * cint(row.frequency_of_depreciation),
+ (n + self.number_of_depreciations_booked) * cint(row.frequency_of_depreciation),
)
depreciation_amount_without_pro_rata = depreciation_amount
@@ -298,7 +297,6 @@
self.add_depr_schedule_row(
schedule_date,
depreciation_amount,
- row.depreciation_method,
)
# to ensure that final accumulated depreciation amount is accurate
@@ -325,14 +323,12 @@
self,
schedule_date,
depreciation_amount,
- depreciation_method,
):
self.append(
"depreciation_schedule",
{
"schedule_date": schedule_date,
"depreciation_amount": depreciation_amount,
- "depreciation_method": depreciation_method,
},
)
@@ -346,7 +342,7 @@
straight_line_idx = [
d.idx
for d in self.get("depreciation_schedule")
- if d.depreciation_method == "Straight Line" or d.depreciation_method == "Manual"
+ if self.depreciation_method == "Straight Line" or self.depreciation_method == "Manual"
]
accumulated_depreciation = flt(self.opening_accumulated_depreciation)
@@ -377,16 +373,15 @@
accumulated_depreciation, d.precision("accumulated_depreciation_amount")
)
+ def _get_value_after_depreciation_for_making_schedule(self, asset_doc, fb_row):
+ if asset_doc.docstatus == 1 and fb_row.value_after_depreciation:
+ value_after_depreciation = flt(fb_row.value_after_depreciation)
+ else:
+ value_after_depreciation = flt(self.gross_purchase_amount) - flt(
+ self.opening_accumulated_depreciation
+ )
-def _get_value_after_depreciation_for_making_schedule(asset_doc, fb_row):
- if asset_doc.docstatus == 1 and fb_row.value_after_depreciation:
- value_after_depreciation = flt(fb_row.value_after_depreciation)
- else:
- value_after_depreciation = flt(asset_doc.gross_purchase_amount) - flt(
- asset_doc.opening_accumulated_depreciation
- )
-
- return value_after_depreciation
+ return value_after_depreciation
def make_draft_asset_depr_schedules_if_not_present(asset_doc):
diff --git a/erpnext/assets/doctype/depreciation_schedule/depreciation_schedule.json b/erpnext/assets/doctype/depreciation_schedule/depreciation_schedule.json
index 882c4bf..abe295c 100644
--- a/erpnext/assets/doctype/depreciation_schedule/depreciation_schedule.json
+++ b/erpnext/assets/doctype/depreciation_schedule/depreciation_schedule.json
@@ -12,8 +12,7 @@
"column_break_3",
"accumulated_depreciation_amount",
"journal_entry",
- "make_depreciation_entry",
- "depreciation_method"
+ "make_depreciation_entry"
],
"fields": [
{
@@ -58,20 +57,11 @@
"fieldname": "make_depreciation_entry",
"fieldtype": "Button",
"label": "Make Depreciation Entry"
- },
- {
- "fieldname": "depreciation_method",
- "fieldtype": "Select",
- "hidden": 1,
- "label": "Depreciation Method",
- "options": "\nStraight Line\nDouble Declining Balance\nWritten Down Value\nManual",
- "print_hide": 1,
- "read_only": 1
}
],
"istable": 1,
"links": [],
- "modified": "2022-12-06 20:35:50.264281",
+ "modified": "2023-03-13 23:17:15.849950",
"modified_by": "Administrator",
"module": "Assets",
"name": "Depreciation Schedule",
diff --git a/erpnext/e_commerce/doctype/website_item/test_website_item.py b/erpnext/e_commerce/doctype/website_item/test_website_item.py
index bbe04d5..e41c9da 100644
--- a/erpnext/e_commerce/doctype/website_item/test_website_item.py
+++ b/erpnext/e_commerce/doctype/website_item/test_website_item.py
@@ -226,11 +226,11 @@
self.assertTrue(bool(data.product_info["price"]))
price_object = data.product_info["price"]
- self.assertEqual(price_object.get("discount_percent"), 25)
+ self.assertEqual(price_object.get("discount_percent"), 25.0)
self.assertEqual(price_object.get("price_list_rate"), 750)
self.assertEqual(price_object.get("formatted_mrp"), "₹ 1,000.00")
self.assertEqual(price_object.get("formatted_price"), "₹ 750.00")
- self.assertEqual(price_object.get("formatted_discount_percent"), "25%")
+ self.assertEqual(price_object.get("formatted_discount_percent"), "25.0%")
# switch to admin and disable show price
frappe.set_user("Administrator")