mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-15 03:01:22 +00:00
Merge pull request #40663 from barredterra/uom-data
This commit is contained in:
1
babel_extractors.csv
Normal file
1
babel_extractors.csv
Normal file
@@ -0,0 +1 @@
|
|||||||
|
**/setup/setup_wizard/data/uom_data.json,erpnext.gettext.extractors.uom_data.extract
|
||||||
|
@@ -172,7 +172,7 @@ class OpeningInvoiceCreationTool(Document):
|
|||||||
income_expense_account_field = (
|
income_expense_account_field = (
|
||||||
"income_account" if row.party_type == "Customer" else "expense_account"
|
"income_account" if row.party_type == "Customer" else "expense_account"
|
||||||
)
|
)
|
||||||
default_uom = frappe.db.get_single_value("Stock Settings", "stock_uom") or _("Nos")
|
default_uom = frappe.db.get_single_value("Stock Settings", "stock_uom") or "Nos"
|
||||||
rate = flt(row.outstanding_amount) / flt(row.qty)
|
rate = flt(row.outstanding_amount) / flt(row.qty)
|
||||||
|
|
||||||
item_dict = frappe._dict(
|
item_dict = frappe._dict(
|
||||||
|
|||||||
0
erpnext/gettext/__init__.py
Normal file
0
erpnext/gettext/__init__.py
Normal file
0
erpnext/gettext/extractors/__init__.py
Normal file
0
erpnext/gettext/extractors/__init__.py
Normal file
17
erpnext/gettext/extractors/uom_data.py
Normal file
17
erpnext/gettext/extractors/uom_data.py
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
import json
|
||||||
|
|
||||||
|
|
||||||
|
def extract(fileobj, *args, **kwargs):
|
||||||
|
"""
|
||||||
|
Extract messages from a JSON file with standard UOM data. To be used by the Babel extractor.
|
||||||
|
|
||||||
|
:param fileobj: the file-like object the messages should be extracted from
|
||||||
|
:rtype: `iterator`
|
||||||
|
"""
|
||||||
|
uom_list = json.load(fileobj)
|
||||||
|
|
||||||
|
if not isinstance(uom_list, list):
|
||||||
|
return
|
||||||
|
|
||||||
|
for uom_data in uom_list:
|
||||||
|
yield None, "_", uom_data.get("uom_name"), ["Name of a UOM"]
|
||||||
@@ -159,7 +159,7 @@ def get_invoice_summary(items, taxes):
|
|||||||
rate=reference_row.tax_amount,
|
rate=reference_row.tax_amount,
|
||||||
qty=1.0,
|
qty=1.0,
|
||||||
amount=reference_row.tax_amount,
|
amount=reference_row.tax_amount,
|
||||||
stock_uom=frappe.db.get_single_value("Stock Settings", "stock_uom") or _("Nos"),
|
stock_uom=frappe.db.get_single_value("Stock Settings", "stock_uom") or "Nos",
|
||||||
tax_rate=tax.rate,
|
tax_rate=tax.rate,
|
||||||
tax_amount=(reference_row.tax_amount * tax.rate) / 100,
|
tax_amount=(reference_row.tax_amount * tax.rate) / 100,
|
||||||
net_amount=reference_row.tax_amount,
|
net_amount=reference_row.tax_amount,
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
"icon": "fa fa-compass",
|
"icon": "fa fa-compass",
|
||||||
"idx": 1,
|
"idx": 1,
|
||||||
"links": [],
|
"links": [],
|
||||||
"modified": "2024-03-21 14:46:48.422406",
|
"modified": "2024-03-25 22:59:03.975975",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Setup",
|
"module": "Setup",
|
||||||
"name": "UOM",
|
"name": "UOM",
|
||||||
@@ -104,5 +104,6 @@
|
|||||||
"show_name_in_global_search": 1,
|
"show_name_in_global_search": 1,
|
||||||
"sort_field": "modified",
|
"sort_field": "modified",
|
||||||
"sort_order": "ASC",
|
"sort_order": "ASC",
|
||||||
"states": []
|
"states": [],
|
||||||
|
"translated_doctype": 1
|
||||||
}
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -33,7 +33,7 @@ def set_default_settings(args):
|
|||||||
stock_settings.default_warehouse = frappe.db.get_value(
|
stock_settings.default_warehouse = frappe.db.get_value(
|
||||||
"Warehouse", {"warehouse_name": _("Stores")}
|
"Warehouse", {"warehouse_name": _("Stores")}
|
||||||
)
|
)
|
||||||
stock_settings.stock_uom = _("Nos")
|
stock_settings.stock_uom = "Nos"
|
||||||
stock_settings.auto_indent = 1
|
stock_settings.auto_indent = 1
|
||||||
stock_settings.auto_insert_price_list_rate_if_missing = 1
|
stock_settings.auto_insert_price_list_rate_if_missing = 1
|
||||||
stock_settings.set_qty_in_transactions_based_on_serial_no_input = 1
|
stock_settings.set_qty_in_transactions_based_on_serial_no_input = 1
|
||||||
|
|||||||
@@ -336,16 +336,10 @@ def add_uom_data():
|
|||||||
open(frappe.get_app_path("erpnext", "setup", "setup_wizard", "data", "uom_data.json")).read()
|
open(frappe.get_app_path("erpnext", "setup", "setup_wizard", "data", "uom_data.json")).read()
|
||||||
)
|
)
|
||||||
for d in uoms:
|
for d in uoms:
|
||||||
if not frappe.db.exists("UOM", _(d.get("uom_name"))):
|
if not frappe.db.exists("UOM", d.get("uom_name")):
|
||||||
frappe.get_doc(
|
doc = frappe.new_doc("UOM")
|
||||||
{
|
doc.update(d)
|
||||||
"doctype": "UOM",
|
doc.save()
|
||||||
"uom_name": _(d.get("uom_name")),
|
|
||||||
"name": _(d.get("uom_name")),
|
|
||||||
"must_be_whole_number": d.get("must_be_whole_number"),
|
|
||||||
"enabled": 1,
|
|
||||||
}
|
|
||||||
).db_insert()
|
|
||||||
|
|
||||||
# bootstrap uom conversion factors
|
# bootstrap uom conversion factors
|
||||||
uom_conversions = json.loads(
|
uom_conversions = json.loads(
|
||||||
@@ -359,14 +353,14 @@ def add_uom_data():
|
|||||||
|
|
||||||
if not frappe.db.exists(
|
if not frappe.db.exists(
|
||||||
"UOM Conversion Factor",
|
"UOM Conversion Factor",
|
||||||
{"from_uom": _(d.get("from_uom")), "to_uom": _(d.get("to_uom"))},
|
{"from_uom": d.get("from_uom"), "to_uom": d.get("to_uom")},
|
||||||
):
|
):
|
||||||
frappe.get_doc(
|
frappe.get_doc(
|
||||||
{
|
{
|
||||||
"doctype": "UOM Conversion Factor",
|
"doctype": "UOM Conversion Factor",
|
||||||
"category": _(d.get("category")),
|
"category": _(d.get("category")),
|
||||||
"from_uom": _(d.get("from_uom")),
|
"from_uom": d.get("from_uom"),
|
||||||
"to_uom": _(d.get("to_uom")),
|
"to_uom": d.get("to_uom"),
|
||||||
"value": d.get("value"),
|
"value": d.get("value"),
|
||||||
}
|
}
|
||||||
).db_insert()
|
).db_insert()
|
||||||
@@ -480,7 +474,7 @@ def update_stock_settings():
|
|||||||
stock_settings.default_warehouse = frappe.db.get_value(
|
stock_settings.default_warehouse = frappe.db.get_value(
|
||||||
"Warehouse", {"warehouse_name": _("Stores")}
|
"Warehouse", {"warehouse_name": _("Stores")}
|
||||||
)
|
)
|
||||||
stock_settings.stock_uom = _("Nos")
|
stock_settings.stock_uom = "Nos"
|
||||||
stock_settings.auto_indent = 1
|
stock_settings.auto_indent = 1
|
||||||
stock_settings.auto_insert_price_list_rate_if_missing = 1
|
stock_settings.auto_insert_price_list_rate_if_missing = 1
|
||||||
stock_settings.set_qty_in_transactions_based_on_serial_no_input = 1
|
stock_settings.set_qty_in_transactions_based_on_serial_no_input = 1
|
||||||
|
|||||||
Reference in New Issue
Block a user